From 4f28b12edb52b278252ed2d8dbb34f42971c86d1 Mon Sep 17 00:00:00 2001
From: rislai <risheng.lai@capgemini.com>
Date: 星期一, 17 六月 2024 10:07:46 +0800
Subject: [PATCH] 添加维护爬坡工艺路线功能

---
 _Main/BL/Type_UphillRouting/StaticMethod_Create.qbl                                                                          |    4 -
 _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_PanelButtons_ButtonSetUnitUphillRouting_OnClick.def |   18 ++++
 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_dsEndDate_OnCreated.def              |   18 ++++
 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_dsStartDate_OnCreated.def            |   18 ++++
 LibMacroPlanner/BL/Type_Routing/Method_OnDelete.qbl                                                                          |   10 ++
 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/_ROOT_Component_DialogCreateEditUphillRoutings.def      |    2 
 LibMacroPlanner/BL/Type_Routing/_ROOT_Type_Routing.qbl                                                                       |    1 
 _Main/BL/Type_UphillRouting/Attribute_Type.qbl                                                                               |    7 +
 _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_PanelButtons.def                                                |   26 ++++++
 _Main/BL/Relations/Relation_UphillRouting_CopyRouting_Routing_CopyUphillRouting.qbl                                          |    2 
 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/Component_ListUphillRouting#943.def                     |    3 
 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_npPercentage_OnCreated.def           |   18 ++++
 _Main/BL/Type_Test/StaticMethod_Test.qbl                                                                                     |    4 +
 _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_ListRoutings.def                                                |    4 +
 _Main/BL/Type_UphillRouting/StaticMethod_Create#90.qbl                                                                       |    4 
 _Main/BL/Type_Routing/Method_OnDelete.qbl                                                                                    |   12 +++
 _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_ListRoutings_OnClick.def                            |    1 
 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/_ROOT_Component_DialogCreateEditUphillRouting.def        |    1 
 _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def                                     |   11 --
 _Main/UI/MacroPlannerWebApp/Component_FormRoutings/_ROOT_Component_FormRoutings.def                                          |   29 +++++++
 20 files changed, 173 insertions(+), 20 deletions(-)

diff --git a/LibMacroPlanner/BL/Type_Routing/Method_OnDelete.qbl b/LibMacroPlanner/BL/Type_Routing/Method_OnDelete.qbl
new file mode 100644
index 0000000..c2d4914
--- /dev/null
+++ b/LibMacroPlanner/BL/Type_Routing/Method_OnDelete.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#parent: #root
+Method OnDelete
+{
+  TextBody:
+  [*
+    // rislai Jun-14-2024 (created)
+  *]
+  InterfaceProperties { Accessibility: 'Module' }
+}
diff --git a/LibMacroPlanner/BL/Type_Routing/_ROOT_Type_Routing.qbl b/LibMacroPlanner/BL/Type_Routing/_ROOT_Type_Routing.qbl
index e556be4..5cac4b6 100644
--- a/LibMacroPlanner/BL/Type_Routing/_ROOT_Type_Routing.qbl
+++ b/LibMacroPlanner/BL/Type_Routing/_ROOT_Type_Routing.qbl
@@ -6,6 +6,7 @@
   #keys: '5[113694.1.1906651361][113694.1.1906651359][0.0.0][113694.1.1906651360][113694.1.1906651362]'
   BaseType: Object
   OnCommit: 'this.IsManuallyConfigured( true )'
+  OnDelete: 'this.OnDelete();'
   StructuredName: 'Routings'
   InterfaceProperties { Accessibility: 'Extensible' }
 }
diff --git a/_Main/BL/Relations/Relation_UphillRouting_CopyRouting_Routing_CopyUphillRouting.qbl b/_Main/BL/Relations/Relation_UphillRouting_CopyRouting_Routing_CopyUphillRouting.qbl
index a6ad716..b8e100e 100644
--- a/_Main/BL/Relations/Relation_UphillRouting_CopyRouting_Routing_CopyUphillRouting.qbl
+++ b/_Main/BL/Relations/Relation_UphillRouting_CopyRouting_Routing_CopyUphillRouting.qbl
@@ -9,7 +9,7 @@
   RelationSide.LeftSide CopyRouting
   {
     #keys: '3[412672.0.1042903931][412672.0.1042903930][412672.0.1042903932]'
-    Cardinality: '1toN'
+    Cardinality: '0to1'
     ObjectDefinition: UphillRouting
     OwningSide: 'Reference'
   }
diff --git a/_Main/BL/Type_Routing/Method_OnDelete.qbl b/_Main/BL/Type_Routing/Method_OnDelete.qbl
new file mode 100644
index 0000000..8a470f9
--- /dev/null
+++ b/_Main/BL/Type_Routing/Method_OnDelete.qbl
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#parent: #root
+Method OnDelete #extension
+{
+  TextBody:
+  [*
+    // rislai Jun-14-2024 (created)
+    if( not isnull( this.CopyUphillRouting())){
+      this.CopyUphillRouting().Delete();
+    }
+  *]
+}
diff --git a/_Main/BL/Type_Test/StaticMethod_Test.qbl b/_Main/BL/Type_Test/StaticMethod_Test.qbl
index 6504f53..5a0ddf8 100644
--- a/_Main/BL/Type_Test/StaticMethod_Test.qbl
+++ b/_Main/BL/Type_Test/StaticMethod_Test.qbl
@@ -9,5 +9,9 @@
   TextBody:
   [*
     // rislai Jun-9-2024 (created)
+    
+    traverse( macroPlan,Routing,rt ){
+      rt.UphillRouting( relflush ); 
+    }
   *]
 }
diff --git a/_Main/BL/Type_UphillRouting/Attribute_Type.qbl b/_Main/BL/Type_UphillRouting/Attribute_Type.qbl
new file mode 100644
index 0000000..d2929c0
--- /dev/null
+++ b/_Main/BL/Type_UphillRouting/Attribute_Type.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Type
+{
+  #keys: '3[412672.0.1047812165][412672.0.1047812164][412672.0.1047812166]'
+  ValueType: String
+}
diff --git "a/_Main/BL/Type_UphillRouting/StaticMethod_Create\04390.qbl" "b/_Main/BL/Type_UphillRouting/StaticMethod_Create\04390.qbl"
index fce68c7..ce2b5af 100644
--- "a/_Main/BL/Type_UphillRouting/StaticMethod_Create\04390.qbl"
+++ "b/_Main/BL/Type_UphillRouting/StaticMethod_Create\04390.qbl"
@@ -12,12 +12,12 @@
   [*
     // rislai Jun-14-2024 (created)
     
-    verifyData := select( owner,UphillRouting,ur,LocalTool::IsOverlap( ur.StartDate(),ur.EndDate(),startDate,endDate ));
+    verifyData := select( owner,UphillRouting,ur,ur.Type() = suffix and LocalTool::IsOverlap( ur.StartDate(),ur.EndDate(),startDate,endDate ));
     if( not isnull( verifyData )){
       error( "璁剧疆鐨凷tart鍜孍nd涓嶅彲涓庡凡鏈夋暟鎹殑鏃堕棿鍖洪棿閲嶅彔銆�" ); 
     }
     
-    data := owner.UphillRouting( relnew,StartDate := startDate, EndDate := endDate,Percentage := percentage );
+    data := owner.UphillRouting( relnew,StartDate := startDate, EndDate := endDate,Percentage := percentage,Type := suffix );
     
     copy_routing := owner.Copy( suffix + startDate.Format( "Y-M2-D2") );
     
diff --git a/_Main/BL/Type_UphillRouting/StaticMethod_Create.qbl b/_Main/BL/Type_UphillRouting/StaticMethod_Create.qbl
index 671450e..91d1b68 100644
--- a/_Main/BL/Type_UphillRouting/StaticMethod_Create.qbl
+++ b/_Main/BL/Type_UphillRouting/StaticMethod_Create.qbl
@@ -13,9 +13,5 @@
     traverse( unit,Operation.RoutingForPlanningMatrix,routing , routing.IsEnabled() and LocalTool::IsOverlap( startDate,endDate,routing.Start(),routing.End())){
       UphillRouting::Create( routing,startDate,endDate,percentage,"_浜х嚎鐖潯_" );
     }
-    
-    
-    
-    // owner.UphillRouting( relnew,Unit := unit,StartDate := startDate, EndDate := endDate,Percentage := percentage );
   *]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_dsEndDate_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_dsEndDate_OnCreated.def
new file mode 100644
index 0000000..a3fc5b6
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_dsEndDate_OnCreated.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: pnlContent/dsEndDate
+Response OnCreated () id:Response_pnlContent_dsEndDate_OnCreated
+{
+  #keys: '[412672.0.1049113591]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebComponent_OnCreated'
+  GroupServerCalls: true
+  QuillAction
+  {
+    Body:
+    [*
+      if( isnull( dhDialogData.Data())){
+        this.Date( Date::Today() ); 
+      }
+    *]
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_dsStartDate_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_dsStartDate_OnCreated.def
new file mode 100644
index 0000000..4cf5147
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_dsStartDate_OnCreated.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: pnlContent/dsStartDate
+Response OnCreated () id:Response_pnlContent_dsStartDate_OnCreated
+{
+  #keys: '[412672.0.1048071931]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebComponent_OnCreated'
+  GroupServerCalls: true
+  QuillAction
+  {
+    Body:
+    [*
+      if( isnull( dhDialogData.Data())){
+        this.Date( Date::Today() ); 
+      }
+    *]
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_npPercentage_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_npPercentage_OnCreated.def
new file mode 100644
index 0000000..d36b2e9
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/Response_pnlContent_npPercentage_OnCreated.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: pnlContent/npPercentage
+Response OnCreated () id:Response_pnlContent_npPercentage_OnCreated
+{
+  #keys: '[412672.0.1048031223]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebComponent_OnCreated'
+  GroupServerCalls: true
+  QuillAction
+  {
+    Body:
+    [*
+      if( isnull( dhDialogData.Data() )){
+        this.Number( 100 ); 
+      }
+    *]
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/_ROOT_Component_DialogCreateEditUphillRouting.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/_ROOT_Component_DialogCreateEditUphillRouting.def
index 5069a6d..bbba53c 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/_ROOT_Component_DialogCreateEditUphillRouting.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRouting/_ROOT_Component_DialogCreateEditUphillRouting.def
@@ -36,6 +36,7 @@
     EnterButton: 'btnOk'
     EscapeButton: 'btnCancel'
     ExcludeFromActiveComponent: true
+    Image: 'ESCALATOR_UP'
     Padding: 'false'
     Title: '浜у搧鐖潯宸ヨ壓璺嚎'
   ]
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/Component_ListUphillRouting\043943.def" "b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/Component_ListUphillRouting\043943.def"
index 950f73b..f203f9c 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/Component_ListUphillRouting\043943.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/Component_ListUphillRouting\043943.def"
@@ -12,6 +12,7 @@
       Properties:
       [
         DataType: 'Routing'
+        FixedFilter: 'object.Type() = "_浜у搧鐖潯_"'
         Source: 'dhRouting'
         Taborder: 0
         Transformation: 'UphillRouting'
@@ -28,7 +29,7 @@
       ]
       Properties:
       [
-        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EndDate","title":"EndDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EndDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Percentage","title":"Percentage","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Percentage"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"StartDate","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}}]'
+        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"StartDate","title":"Start date","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"StartDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"EndDate","title":"End date","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"EndDate"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Percentage","title":"Percentage","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Percentage"}}]'
         ContextMenu: 'listContextMenuUphillRouting'
         Taborder: 2
       ]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/_ROOT_Component_DialogCreateEditUphillRoutings.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/_ROOT_Component_DialogCreateEditUphillRoutings.def
index 1e0fcc7..362a310 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/_ROOT_Component_DialogCreateEditUphillRoutings.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditUphillRoutings/_ROOT_Component_DialogCreateEditUphillRoutings.def
@@ -14,6 +14,8 @@
     Alignment: 'trailing'
     ExcludeFromActiveComponent: true
     Image: 'ESCALATOR_UP'
+    MinimumColumns: 60
+    MinimumRows: 40
     Padding: 'false'
     Title: '浜у搧鐖潯宸ヨ壓璺嚎'
   ]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_ListRoutings.def b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_ListRoutings.def
index 87a19d7..cd10dd9 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_ListRoutings.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_ListRoutings.def
@@ -11,4 +11,8 @@
       ]
     }
   ]
+  Properties:
+  [
+    Taborder: 1
+  ]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_PanelButtons.def b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_PanelButtons.def
new file mode 100644
index 0000000..349fb2b
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_PanelButtons.def
@@ -0,0 +1,26 @@
+Quintiq file version 2.0
+Component PanelButtons
+{
+  #keys: '[412672.0.1049243119]'
+  BaseType: 'WebPanel'
+  Children:
+  [
+    Component ButtonSetUnitUphillRouting
+    {
+      #keys: '[412672.0.1048002676]'
+      BaseType: 'WebButton'
+      Properties:
+      [
+        Image: 'ESCALATOR_UP'
+        Label: '璁剧疆浜х嚎鐖潯宸ヨ壓璺嚎'
+        Taborder: 0
+      ]
+    }
+  ]
+  Properties:
+  [
+    FixedSize: true
+    Orientation: 'horizontal'
+    Taborder: 0
+  ]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def
index 6cd59a5..e941fc9 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Component_listContextMenuRoutings.def
@@ -24,17 +24,6 @@
         Title: 'Thermal trial ratio'
       ]
     }
-    Component MenuSetUnitUphillRouting
-    {
-      #keys: '[412672.0.1040121042]'
-      BaseType: 'WebMenu'
-      Properties:
-      [
-        Image: 'ESCALATOR_UP'
-        Taborder: 13
-        Title: '璁剧疆浜х嚎鐖潯宸ヨ壓璺嚎'
-      ]
-    }
     Component MenuSetUphillRouting
     {
       #keys: '[412672.0.1040131623]'
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_ListRoutings_MenuSetUnitUphillRouting_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_ListRoutings_OnClick.def
similarity index 90%
rename from _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_ListRoutings_MenuSetUnitUphillRouting_OnClick.def
rename to _Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_ListRoutings_OnClick.def
index ecf02cc..48c0ca9 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_ListRoutings_MenuSetUnitUphillRouting_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_ListRoutings_OnClick.def
@@ -6,7 +6,6 @@
   CanBindMultiple: false
   DefinitionID => /ListRoutings/Responsedef_ListRoutings_WebMenu_OnClick
   GroupServerCalls: true
-  Initiator: 'MenuSetUnitUphillRouting'
   QuillAction
   {
     Body:
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_PanelButtons_ButtonSetUnitUphillRouting_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_PanelButtons_ButtonSetUnitUphillRouting_OnClick.def
new file mode 100644
index 0000000..2de2a66
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/Response_MacroPlanner_PanelButtons_ButtonSetUnitUphillRouting_OnClick.def
@@ -0,0 +1,18 @@
+Quintiq file version 2.0
+#parent: PanelButtons/ButtonSetUnitUphillRouting
+Response OnClick () id:Response_MacroPlanner_PanelButtons_ButtonSetUnitUphillRouting_OnClick
+{
+  #keys: '[412672.0.1049304924]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebButton_OnClick'
+  GroupServerCalls: true
+  QuillAction
+  {
+    Body:
+    [*
+      dlg := construct( DialogCreateEditUphillRouting );
+      
+      dlg.Create( );
+    *]
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/_ROOT_Component_FormRoutings.def b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/_ROOT_Component_FormRoutings.def
index 226312e..2d4b4d7 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/_ROOT_Component_FormRoutings.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormRoutings/_ROOT_Component_FormRoutings.def
@@ -6,5 +6,34 @@
   Children:
   [
     #child: ListRoutings
+    #child: PanelButtons
+    Component DataHolderFilteredRoutings #extension
+    {
+      Properties:
+      [
+        Taborder: 2
+      ]
+    }
+    Component DataHolderRoutingsFromNavigationSelection #extension
+    {
+      Properties:
+      [
+        Taborder: 3
+      ]
+    }
+    Component DataHolderRoutingsFromProducts #extension
+    {
+      Properties:
+      [
+        Taborder: 4
+      ]
+    }
+    Component DataHolderRoutingsFromUnits #extension
+    {
+      Properties:
+      [
+        Taborder: 5
+      ]
+    }
   ]
 }

--
Gitblit v1.9.3