From a67dc2f0b8dd2803982cfa9c6ea42b77c191d22c Mon Sep 17 00:00:00 2001
From: lihongji <3117313295@qq.com>
Date: 星期一, 11 十一月 2024 12:02:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev

---
 _Main/BL/Type_DispatchShiftPlan/StaticMethod_Dispatch.qbl |   44 +++++++++++++++++++++++++++++---------------
 1 files changed, 29 insertions(+), 15 deletions(-)

diff --git a/_Main/BL/Type_DispatchShiftPlan/StaticMethod_Dispatch.qbl b/_Main/BL/Type_DispatchShiftPlan/StaticMethod_Dispatch.qbl
index 5d69146..fd802d5 100644
--- a/_Main/BL/Type_DispatchShiftPlan/StaticMethod_Dispatch.qbl
+++ b/_Main/BL/Type_DispatchShiftPlan/StaticMethod_Dispatch.qbl
@@ -1,18 +1,33 @@
 Quintiq file version 2.0
 #parent: #root
 StaticMethod Dispatch (
+  InterfaceDataset interfaceDataset,
   const MacroPlan macroPlan,
-  Archive owner,
-  String versionFlag
+  String executor
 )
 {
   TextBody:
   [*
     // Akari Aug-21-2024 (created)
-    // owner.DispatchShiftPlan( relflush );
-    // owner.RB_DispatchShiftPlanBroker().Source().FlatQuery( "truncate table A_DispatchShiftPlan" );
+    now := DateTime::Now();
     
-    dispatchShiftPlans := selectset( owner,DispatchShiftPlan,dispatchShiftPlan,true );
+    interfaceLoginfo := maxselect( interfaceDataset,InterfaceLoginfo,loginfo,loginfo.Name() = Translations::InterfaceDataset_ShiftPlanPPPSPush_Name() ,loginfo.InterfaceDateTime() );
+    if( not isnull( interfaceLoginfo )){
+      if( not interfaceLoginfo.IsShow() ){
+        interfaceLoginfo.Delete();
+      }else{
+        interfaceLoginfo.Last( false );
+      }
+    }
+    
+    interfaceLoginfo := interfaceDataset.InterfaceLoginfo( relnew,
+                                                           ExecuteUser := executor,
+                                                           Name := Translations::InterfaceDataset_ShiftPlanPPPSPush_Name(),
+                                                           InterfaceDateTime := now,
+                                                           Last := true,
+                                                           Message := '鐝璁″垝锛圥PA+IDS锛夋暟鎹帹閫�' );
+    
+    dispatchShiftPlans := selectset( interfaceLoginfo,DispatchShiftPlan,dispatchShiftPlan,true );
     dispatchShiftPlanIndexTree := NamedValueTree::Create();
     for( i := 0 ; i < dispatchShiftPlans.Size() ; i++){
       dispatchShiftPlan := dispatchShiftPlans.Element( i );
@@ -41,21 +56,20 @@
          dispatchShiftPlan := dispatchShiftPlans.Element( dispatchShiftPlanIndex.GetValueAsNumber() );
          dispatchShiftPlan.Tips( shiftPlan.Remark() );
          dispatchShiftPlan.VersionName( macroPlanName );
-         dispatchShiftPlan.VersionFlag( versionFlag );
          dispatchShiftPlan.InterfaceTime( now );
        }else{
-         owner.DispatchShiftPlan( relnew,ID := OS:: GenerateGUIDAsString(),
-                                  ProductLine := productLine,
-                                  FactoryName := factory.ID(),
+         interfaceLoginfo.DispatchShiftPlan( relnew,ID := OS:: GenerateGUIDAsString(),
+                                             ProductLine := productLine,
+                                             FactoryName := factory.ID(),
+                                             ShiftQty := shiftPlan.Outcome(),
                                   
-                                  ShiftDate := shiftDate,
-                                  Tips := shiftPlan.Remark(),
-                                  VersionName := macroPlanName,
-                                  VersionFlag := versionFlag,
-                                  InterfaceTime := now );
+                                             ShiftDate := shiftDate,
+                                             Tips := shiftPlan.Remark(),
+                                             VersionName := macroPlanName,
+                                             InterfaceTime := now );
        }
     }
-    
+    DispatchShiftPlan::Publish( interfaceLoginfo );
     // owner.RB_DispatchShiftPlanBroker().AsyncExecute();
   *]
 }

--
Gitblit v1.9.3