From ccd7dc7d863341c202220c6c26bbef368d969446 Mon Sep 17 00:00:00 2001
From: rislai <risheng.lai@capgemini.com>
Date: 星期五, 14 六月 2024 18:22:08 +0800
Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev

---
 _Main/BL/Type_Routing/StaticMethod_ThermalTrialRatio.qbl                                                              |   15 +++++++
 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditThermalTrialRatio/Method_OnOK.def                               |    5 ++
 _Main/BL/Type_Routing/StaticMethod_Test.qbl                                                                           |   29 ++++++++++++++
 _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_listContextMenuRoutings_MenuTest_OnClick.def |   16 ++++++++
 _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def                              |   10 +++++
 5 files changed, 74 insertions(+), 1 deletions(-)

diff --git a/_Main/BL/Type_Routing/StaticMethod_Test.qbl b/_Main/BL/Type_Routing/StaticMethod_Test.qbl
new file mode 100644
index 0000000..12b6165
--- /dev/null
+++ b/_Main/BL/Type_Routing/StaticMethod_Test.qbl
@@ -0,0 +1,29 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod Test (
+  MacroPlan macroplan
+)
+{
+  TextBody:
+  [*
+    // 鐢勫叞楦� Jun-13-2024 (created)
+    traverse( macroplan, Unit, unit, unit.HasCapacityTypeQuantity() and unit.Operation( relsize ) < 2 ){
+      info( '----------------------', unit.ID(), unit.MinCapacity(), unit.MaxCapacity(), unit.Operation( relsize ), unit.UnitPeriod( relsize ) );
+      traverse( unit, UnitPeriod.astype( UnitPeriodQuantity ), upq, upq.Period_MP().TimeUnit() = Translations::MP_GlobalParameters_Day() and upq.Period_MP().Start().Year() = 2020 and upq.Period_MP().Start().Month() = 4 and upq.Period_MP().Start().Day() = 1 ){
+        info( upq.MaxCapacityPerTimeUnit(), upq.MinCapacityPerTimeUnit(), upq.TotalAvailableCapacity(),upq.HasUnitCapacity(), upq.End() );
+        if( upq.HasUnitCapacity() ){
+          uc := upq.UnitCapacity();
+          info( uc.MaxCapacity(), uc.MinCapacity(), uc.Start(), uc.TimeUnit() );
+        }
+      }
+    //  traverse( unit, Operation, operation ){
+    ////    info( '----------------------', operation.OperationBOM( relsize ), operation.OperationOutput( relsize ), operation.OperationInput( relsize ) );
+    //    traverse( operation, OperationBOM, obom ){
+    //      info( '----------------------', obom.OperationID(), '-------------', obom.ProductID(), '-------------', obom.StockingPointID() );
+    //      info( '----------------------', obom.Quantity(), obom.OutputQuantity(), obom.InputQuantity() );
+    //      info( '----------------------', obom.OperationLinkEdge().OperationOutput().Quantity() );
+    //    }
+    //  }
+    }
+  *]
+}
diff --git a/_Main/BL/Type_Routing/StaticMethod_ThermalTrialRatio.qbl b/_Main/BL/Type_Routing/StaticMethod_ThermalTrialRatio.qbl
index 54256b2..601bc91 100644
--- a/_Main/BL/Type_Routing/StaticMethod_ThermalTrialRatio.qbl
+++ b/_Main/BL/Type_Routing/StaticMethod_ThermalTrialRatio.qbl
@@ -15,7 +15,22 @@
     thermaltrial := '鐑紡';
     newroutings := construct( Routings );
     unit := selectobject( routing.MacroPlan(), Unit, unit, unit.ID() = thermaltrial and unit.HasCapacityTypeQuantity() );
+    
+    for( starttime := start; starttime <= end; starttime := starttime + 1 ){
+      uc := selectobject( unit, UnitCapacity, uc, uc.Start().Date() = starttime );
+      if( isnull( uc ) ){
+        uc := UnitCapacity::Create( unit, starttime.DateTime(), 'Day', 0.0, [Real]capacity, 100.0, 1, false );
+      }
+      uc.MaxCapacity( [Real]capacity );
+    }
+    
     newrouting := routing.Copy();
+    name := newrouting.Name().ReplaceAll( 'Copy', thermaltrial );
+    newrouting.Name( name );
+    newrouting.UpdateTypeIndex( name );
+    routing.Start( start );
+    routing.End( end );
+    
     routingstep := newrouting.LastStep();
     //info( '------------------', routingstep.Tool(), ',', unit.ID() );
     newroutingstep := RoutingStep::Create( newrouting, thermaltrial, routingstep.Tool(), false );
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditThermalTrialRatio/Method_OnOK.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditThermalTrialRatio/Method_OnOK.def
index 352eda7..6abc3b1 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditThermalTrialRatio/Method_OnOK.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditThermalTrialRatio/Method_OnOK.def
@@ -13,7 +13,10 @@
     data := dhDialogData.Data();
     
     newroutings := Routing::ThermalTrialRatio( data, [Number]efMaxCapacity.Text(), dsStartTime.Date(), dsEndTime.Date(), [Number]efThermalTrialRatio.Text() );
-    
+    info( '------------web---------------' );
+    traverse( newroutings, Elements, e ){
+      info( e.Key(), e.Name() );
+    }
     ApplicationMacroPlanner.SelectListObjects( dhForm.Data().ListRoutings(), newroutings );
     
     this.Close();
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def
index 75bed4b..684c5df 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def
@@ -46,5 +46,15 @@
         Title: '璁剧疆浜у搧鐖潯宸ヨ壓璺嚎'
       ]
     }
+    Component MenuTest
+    {
+      #keys: '[415136.0.789811702]'
+      BaseType: 'WebMenu'
+      Properties:
+      [
+        Taborder: 13
+        Title: 'Test'
+      ]
+    }
   ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_listContextMenuRoutings_MenuTest_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_listContextMenuRoutings_MenuTest_OnClick.def
new file mode 100644
index 0000000..f616d0b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_listContextMenuRoutings_MenuTest_OnClick.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: listContextMenuRoutings/MenuTest
+Response OnClick () id:Response_MacroPlanner_listContextMenuRoutings_MenuTest_OnClick
+{
+  #keys: '[415136.0.789811732]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebMenu_OnClick'
+  QuillAction
+  {
+    Body:
+    [*
+      Routing::Test( MacroPlan );
+    *]
+    GroupServerCalls: false
+  }
+}

--
Gitblit v1.9.3