From ff58551ba28f475ad78c9eebbf543aee15ace8bf Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期五, 13 九月 2024 11:48:40 +0800
Subject: [PATCH] 换型损失设置添加时间范围

---
 _Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/_Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl b/_Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl
index b5ed7dc..4db4239 100644
--- a/_Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl
+++ b/_Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl
@@ -7,6 +7,8 @@
   Unit unit,
   Product_MP product1,
   Product_MP product2,
+  Date startdate,
+  Date enddate,
   Number number
 ) as Boolean
 {
@@ -21,11 +23,17 @@
     if( product1 = product2 ){
       feedback := Translations::MP_ChangeLossSetting_SameProduct();
     }
-    if( exists( owner, ChangeLossSetting, cls, cls <> old and cls.Unit() = unit 
+    if( startdate > enddate ){
+      feedback := Translations::MP_LibCal_Event_ValidDatePeriod();
+    }
+    if( exists( owner, ChangeLossSetting, cls, cls <> old and cls.Unit() = unit and not ( cls.StartDate() > enddate or cls.EndDate() < startdate )
                 and ( ( cls.ProductFirst() = product1 and cls.ProductSecond() = product2 ) 
                       or ( cls.ProductFirst() = product2 and cls.ProductSecond() = product1 ) ) ) ){
       feedback := Translations::MP_ChangeLossSetting_Exist()
     }
+    if( exists( owner, ChangeLossSetting, cls, cls <> old and not ( cls.StartDate() > enddate or cls.EndDate() < startdate ) ) ){
+      feedback := Translations::MP_ChangeLossSetting_DateCoincide()
+    }
     
     return feedback = '';
   *]

--
Gitblit v1.9.3