From cb304bf64fc6da151319b3f07c8327adb45e35dd Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期一, 14 十月 2024 16:49:24 +0800
Subject: [PATCH] Merge branch 'dev' of http://47.101.211.7:10101/r/VWED into dev-zlg

---
 _Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Component_matrixeditorContextMenu229.def                      |   11 +++
 _Main/UI/MacroPlannerWebApp/Component_DialogCreateEdit/Component_pnlContent.def                                        |   16 ++++
 _Main/BL/Type_NewOfflinePlanCell/StaticMethod_InterfaceArchive.qbl                                                     |   36 ++++++++++++
 _Main/BL/Type_TransferMinimumQuantity/Attribute_FactoryAbbreviation.qbl                                                |    8 ++
 _Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/_ROOT_Component_DialogTransferMinimumQuantity.def  |    2 
 _Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bConfirm_OnClick.def                         |   26 ++++++++
 _Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bDeductChangeoverLoss_OnClick.def            |   20 ++++++
 _Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRestore_OnClick#141.def                     |    2 
 _Main/BL/Type_TransferMinimumQuantity/Function_CalcFactoryAbbreviation.qbl                                             |   13 ++++
 _Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bImport_OnClick#568.def                      |    2 
 _Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/Component_lstContent.def                           |    2 
 _Main/BL/Type_TransferMinimumQuantity/Attribute_Factory.qbl                                                            |    8 ++
 _Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_matrixeditorContextMenu229_mResetArchive_OnClick.def |   20 ++++++
 _Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRefresh_OnClick.def                         |    2 
 _Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick#870.def                 |    2 
 15 files changed, 162 insertions(+), 8 deletions(-)

diff --git a/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_InterfaceArchive.qbl b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_InterfaceArchive.qbl
new file mode 100644
index 0000000..3b178dd
--- /dev/null
+++ b/_Main/BL/Type_NewOfflinePlanCell/StaticMethod_InterfaceArchive.qbl
@@ -0,0 +1,36 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod InterfaceArchive (
+  MacroPlan macroPlan,
+  InterfaceDataset interfaceDataset
+)
+{
+  TextBody:
+  [*
+    nopt  := maxselect( macroPlan, NewOfflinePlanTable, tempNOPT, true, tempNOPT.SaveDateTime() );
+    
+    // 閫夋嫨鎸囧畾鐗堟湰涓嬬嚎璁″垝鎺ュ彛鏁版嵁
+    inopv   := select( interfaceDataset, InterfaceNewOfflinePlanVersion, tempINOPV, tempINOPV.ScenarioName() = macroPlan.ScenarioName() );
+    if ( isnull( inopv ) ) {
+      inopv := interfaceDataset.InterfaceNewOfflinePlanVersion( relnew, ScenarioName := macroPlan.ScenarioName() );
+    } else {
+      inopv.Delete();
+      inopv := interfaceDataset.InterfaceNewOfflinePlanVersion( relnew, ScenarioName := macroPlan.ScenarioName() );
+    }
+    
+    // 鍒涘缓涓嬬嚎璁″垝鎺ュ彛鏁版嵁
+    traverse ( nopt, NewOfflinePlanRow.NewOfflinePlanCell, nopcell, nopcell.NewOfflinePlanRow().Type() = "1" ) {
+      inopv.InterfaceNewOfflinePlanDetailData( relnew,
+                                               Order             := nopcell.Order(),
+                                               OrderNr           := nopcell.OrderNr(),
+                                               ProductID         := nopcell.NewOfflinePlanRow().ProductID(),
+                                               ProductionLine    := nopcell.NewOfflinePlanRow().ProductionLine(),
+                                               Quantity          := nopcell.Quantity(),
+                                               ShiftPatternEnd   := nopcell.ShiftPatternEnd(),
+                                               ShiftPatternName  := nopcell.ShiftPatternName(),
+                                               ShiftPatternStart := nopcell.ShiftPatternStart(),
+                                               StartDate         := nopcell.StartDate()
+                                              );
+    }
+  *]
+}
diff --git a/_Main/BL/Type_TransferMinimumQuantity/Attribute_Factory.qbl b/_Main/BL/Type_TransferMinimumQuantity/Attribute_Factory.qbl
new file mode 100644
index 0000000..72a890b
--- /dev/null
+++ b/_Main/BL/Type_TransferMinimumQuantity/Attribute_Factory.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Factory
+{
+  #keys: '3[413988.0.1657777327][413988.0.1657777326][413988.0.1657777328]'
+  Description: '澶ц繛宸ュ巶/闀挎槬宸ュ巶'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_TransferMinimumQuantity/Attribute_FactoryAbbreviation.qbl b/_Main/BL/Type_TransferMinimumQuantity/Attribute_FactoryAbbreviation.qbl
new file mode 100644
index 0000000..81a1048
--- /dev/null
+++ b/_Main/BL/Type_TransferMinimumQuantity/Attribute_FactoryAbbreviation.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute FactoryAbbreviation
+{
+  #keys: '3[413988.0.1657777340][413988.0.1657777339][413988.0.1657777341]'
+  Description: '宸ュ巶绠�鍐�'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_TransferMinimumQuantity/Function_CalcFactoryAbbreviation.qbl b/_Main/BL/Type_TransferMinimumQuantity/Function_CalcFactoryAbbreviation.qbl
new file mode 100644
index 0000000..dfde74c
--- /dev/null
+++ b/_Main/BL/Type_TransferMinimumQuantity/Function_CalcFactoryAbbreviation.qbl
@@ -0,0 +1,13 @@
+Quintiq file version 2.0
+#parent: #root
+Function CalcFactoryAbbreviation
+{
+  TextBody:
+  [*
+    // lihongji Oct-14-2024 (created)
+    
+    value := ifexpr( this.Factory() = "澶ц繛宸ュ巶", "DL", "CC" );
+    
+    this.FactoryAbbreviation( value );
+  *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEdit/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEdit/Component_pnlContent.def
index 62574ab..c5b5ff22 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEdit/Component_pnlContent.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEdit/Component_pnlContent.def
@@ -13,7 +13,7 @@
       [
         DataBinding: 'DataHolderDialogData.Data.ProductID'
         Label: 'Product ID'
-        Taborder: 0
+        Taborder: 1
       ]
     }
     Component npQuantity
@@ -24,7 +24,19 @@
       [
         DataBinding: 'DataHolderDialogData.Data.Quantity'
         Label: 'Quantity'
-        Taborder: 1
+        Taborder: 2
+      ]
+    }
+    Component ddslFactory
+    {
+      #keys: '[413988.0.1660241136]'
+      BaseType: 'WebDropDownStringList'
+      Properties:
+      [
+        DataBinding: 'DataHolderDialogData.Data.Factory'
+        Label: 'Factory'
+        Strings: '澶ц繛宸ュ巶;闀挎槬宸ュ巶'
+        Taborder: 0
       ]
     }
   ]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/Component_lstContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/Component_lstContent.def
index de9e1d8..583c564 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/Component_lstContent.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/Component_lstContent.def
@@ -28,7 +28,7 @@
       ]
       Properties:
       [
-        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}}]'
+        Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Factory","title":"Factory","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Factory"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"ProductID","title":"ProductID","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"ProductID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Quantity","title":"Quantity","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Quantity"}}]'
         ContextMenu: 'cmContent'
         Taborder: 2
       ]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/_ROOT_Component_DialogTransferMinimumQuantity.def b/_Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/_ROOT_Component_DialogTransferMinimumQuantity.def
index 12c8a5f..3772e42 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/_ROOT_Component_DialogTransferMinimumQuantity.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogTransferMinimumQuantity/_ROOT_Component_DialogTransferMinimumQuantity.def
@@ -16,7 +16,7 @@
     EnterButton: 'btnOk'
     EscapeButton: 'btnCancel'
     ExcludeFromActiveComponent: true
-    MinimumColumns: 50
+    MinimumColumns: 80
     MinimumRows: 30
     Padding: 'false'
   ]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Component_matrixeditorContextMenu229.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Component_matrixeditorContextMenu229.def
index 05fbee8..78892a7 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Component_matrixeditorContextMenu229.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Component_matrixeditorContextMenu229.def
@@ -26,6 +26,17 @@
         Title: 'Show/Hide total'
       ]
     }
+    Component mResetArchive
+    {
+      #keys: '[413988.0.1657458774]'
+      BaseType: 'WebMenu'
+      Properties:
+      [
+        Image: 'UNDO'
+        Taborder: 4
+        Title: '閲嶇疆瀛樻。锛堟祴璇曚笓鐢級'
+      ]
+    }
   ]
   Properties:
   [
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_matrixeditorContextMenu229_mResetArchive_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_matrixeditorContextMenu229_mResetArchive_OnClick.def
new file mode 100644
index 0000000..1ebef98
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_matrixeditorContextMenu229_mResetArchive_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: matrixeditorContextMenu229/mResetArchive
+Response OnClick () id:Response_matrixeditorContextMenu229_mResetArchive_OnClick
+{
+  #keys: '[413988.0.1657340921]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebMenu_OnClick'
+  Precondition:
+  [*
+    return not isnull( MacroPlan );
+  *]
+  QuillAction
+  {
+    Body:
+    [*
+      MacroPlan.A_PreviousScenaioName( "" );
+    *]
+    GroupServerCalls: false
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bConfirm_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bConfirm_OnClick.def
new file mode 100644
index 0000000..fe7c4a0
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bConfirm_OnClick.def
@@ -0,0 +1,26 @@
+Quintiq file version 2.0
+#parent: pHeader/bConfirm_978
+Response OnClick () id:Response_pHeader_bConfirm_OnClick
+{
+  #keys: '[413988.0.1657320536]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebButton_OnClick'
+  Precondition:
+  [*
+    return not isnull( MacroPlan ) and not isnull( InterfaceDataset ) and MacroPlan.A_PreviousScenaioName() <> MacroPlan.ScenarioName()
+  *]
+  QuillAction
+  {
+    Body:
+    [*
+      // 瀛樻。
+      NewOfflinePlanCell::InterfaceArchive( MacroPlan, InterfaceDataset );
+      
+      // 璁剧疆鎸夐挳锛堥櫎涓嬭浇锛変笉鍙敤
+      MacroPlan.A_PreviousScenaioName( MacroPlan.ScenarioName() );
+      
+      WebMessageBox::Success( Translations::A_VWED_Success() );
+    *]
+    GroupServerCalls: false
+  }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bDeductChangeoverLoss_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bDeductChangeoverLoss_OnClick.def
new file mode 100644
index 0000000..a054df7
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bDeductChangeoverLoss_OnClick.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: pHeader/bDeductChangeoverLoss_737
+Response OnClick () id:Response_pHeader_bDeductChangeoverLoss_OnClick
+{
+  #keys: '[413988.0.1657320426]'
+  CanBindMultiple: false
+  DefinitionID: 'Responsedef_WebButton_OnClick'
+  Precondition:
+  [*
+    return not isnull( MacroPlan ) and MacroPlan.A_PreviousScenaioName() <> MacroPlan.ScenarioName();
+  *]
+  QuillAction
+  {
+    Body:
+    [*
+      WebMessageBox::Success( Translations::A_VWED_Success() );
+    *]
+    GroupServerCalls: false
+  }
+}
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bImport_OnClick\043568.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bImport_OnClick\043568.def"
index 66ab91b..12780f4 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bImport_OnClick\043568.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bImport_OnClick\043568.def"
@@ -7,7 +7,7 @@
   DefinitionID: 'Responsedef_WebButton_OnClick'
   Precondition:
   [*
-    return not isnull( MacroPlan );
+    return not isnull( MacroPlan ) and MacroPlan.A_PreviousScenaioName() <> MacroPlan.ScenarioName();
   *]
   QuillAction
   {
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRefresh_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRefresh_OnClick.def
index d422c3a..7ff95ea 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRefresh_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRefresh_OnClick.def
@@ -7,7 +7,7 @@
   DefinitionID: 'Responsedef_WebButton_OnClick'
   Precondition:
   [*
-    return not isnull( MacroPlan );
+    return not isnull( MacroPlan ) and MacroPlan.A_PreviousScenaioName() <> MacroPlan.ScenarioName();
   *]
   QuillAction
   {
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRestore_OnClick\043141.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRestore_OnClick\043141.def"
index 707c104..27481a8 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRestore_OnClick\043141.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bRestore_OnClick\043141.def"
@@ -7,7 +7,7 @@
   DefinitionID: 'Responsedef_WebButton_OnClick'
   Precondition:
   [*
-    return not isnull( MacroPlan );
+    return not isnull( MacroPlan ) and MacroPlan.A_PreviousScenaioName() <> MacroPlan.ScenarioName();
   *]
   QuillAction
   {
diff --git "a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick\043870.def" "b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick\043870.def"
index fd3f56c..6d4fc46 100644
--- "a/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick\043870.def"
+++ "b/_Main/UI/MacroPlannerWebApp/Component_FormNewOfflinePlan/Response_pHeader_bSaveAsDraft_OnClick\043870.def"
@@ -7,7 +7,7 @@
   DefinitionID: 'Responsedef_WebButton_OnClick'
   Precondition:
   [*
-    return not isnull( MacroPlan );
+    return not isnull( MacroPlan ) and MacroPlan.A_PreviousScenaioName() <> MacroPlan.ScenarioName();
   *]
   QuillAction
   {

--
Gitblit v1.9.3