From c425d960e4eefbe0565de33aabbdc83552580e88 Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期三, 05 六月 2024 15:29:57 +0800
Subject: [PATCH] 换型损失设置前端form建
---
_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuEdit_OnClick.def | 24 ++++++
/dev/null | 9 --
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_OnOK.def | 27 ++++++
_Main/BL/InfoMessages.qbl | 8 ++
_Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl | 25 ++++++
_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuDelete_OnClick.def | 21 +++++
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Response_pnlActions_btnOk_OnClick.def | 7 +
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Component_pnlContent.def | 3
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_New.def | 20 +++++
_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuNew_OnClick.def | 22 +++++
_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_Edit.def | 17 ++++
_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Component_ListChangeLossSetting.def | 18 ++++
12 files changed, 190 insertions(+), 11 deletions(-)
diff --git a/_Main/BL/InfoMessages.qbl b/_Main/BL/InfoMessages.qbl
index a1293ed..25d5179 100644
--- a/_Main/BL/InfoMessages.qbl
+++ b/_Main/BL/InfoMessages.qbl
@@ -86,6 +86,14 @@
{
DefaultText: 'There are duplicate three digit codes present'
}
+ InfoMessage MP_ChangeLossSetting_CheckNull
+ {
+ DefaultText: 'The required field is blank.'
+ }
+ InfoMessage MP_ChangeLossSetting_Exist
+ {
+ DefaultText: 'The same data already exists.'
+ }
InfoMessage MP_LibCal_EventType_Exist
{
DefaultText: 'The ID or name is the same.'
diff --git a/_Main/BL/Type_ChangeLossSetting/Attribute_Line.qbl b/_Main/BL/Type_ChangeLossSetting/Attribute_Line.qbl
deleted file mode 100644
index 384d089..0000000
--- a/_Main/BL/Type_ChangeLossSetting/Attribute_Line.qbl
+++ /dev/null
@@ -1,9 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-Attribute Line
-{
- #keys: '3[415136.0.738030059][415136.0.738030058][415136.0.738030060]'
- Description: '浜х嚎'
- IsReadOnly: true
- ValueType: String
-}
diff --git a/_Main/BL/Type_ChangeLossSetting/Attribute_Product1.qbl b/_Main/BL/Type_ChangeLossSetting/Attribute_Product1.qbl
deleted file mode 100644
index 55e4355..0000000
--- a/_Main/BL/Type_ChangeLossSetting/Attribute_Product1.qbl
+++ /dev/null
@@ -1,9 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-Attribute Product1
-{
- #keys: '3[415136.0.738030069][415136.0.738030068][415136.0.738030070]'
- Description: '浜у搧1'
- IsReadOnly: true
- ValueType: String
-}
diff --git a/_Main/BL/Type_ChangeLossSetting/Attribute_Product2.qbl b/_Main/BL/Type_ChangeLossSetting/Attribute_Product2.qbl
deleted file mode 100644
index e850926..0000000
--- a/_Main/BL/Type_ChangeLossSetting/Attribute_Product2.qbl
+++ /dev/null
@@ -1,9 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-Attribute Product2
-{
- #keys: '3[415136.0.738030079][415136.0.738030078][415136.0.738030080]'
- Description: '浜у搧2'
- IsReadOnly: true
- ValueType: String
-}
diff --git a/_Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl b/_Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl
new file mode 100644
index 0000000..55452d1
--- /dev/null
+++ b/_Main/BL/Type_ChangeLossSetting/StaticMethod_ValidateInput.qbl
@@ -0,0 +1,25 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod ValidateInput (
+ MacroPlan owner,
+ ChangeLossSetting old,
+ Unit unit,
+ Product_MP product1,
+ Product_MP product2,
+ Number number
+) as Boolean
+{
+ TextBody:
+ [*
+ // 鐢勫叞楦� Jun-5-2024 (created)
+ feedback := '';
+ if( isnull( unit ) or isnull( product1 ) or isnull( product2 ) or number < 1 ){
+ feedback := Translations::MP_ChangeLossSetting_CheckNull();
+ }
+ if( exists( owner, ChangeLossSetting, cls, cls <> old and cls.Unit() = unit and cls.ProductFirst() = product1 and cls.ProductSecond() = product2 ) ){
+ feedback := Translations::MP_ChangeLossSetting_Exist()
+ }
+
+ return feedback = '';
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Component_pnlContent.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Component_pnlContent.def
index c499774..935fb73 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Component_pnlContent.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Component_pnlContent.def
@@ -9,6 +9,7 @@
{
#keys: '[415136.0.735612418]'
BaseType: 'WebDropDownList'
+ Databinding: 'Unit'
Children:
[
Component deUnit
@@ -36,6 +37,7 @@
{
#keys: '[415136.0.738250065]'
BaseType: 'WebDropDownList'
+ Databinding: 'Product_MP'
Children:
[
Component deProductFirst
@@ -62,6 +64,7 @@
{
#keys: '[415136.0.738250142]'
BaseType: 'WebDropDownList'
+ Databinding: 'Product_MP'
Children:
[
Component deProductSecond
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_Edit.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_Edit.def
new file mode 100644
index 0000000..fc9c24e
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_Edit.def
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+Method Edit (
+ ChangeLossSetting selection
+) id:Method_DialogCreateEditChangeLossSetting_Edit
+{
+ #keys: '[415136.0.746200731]'
+ Body:
+ [*
+ // Edit Product(s)
+
+ data := shadow( selection );
+ dhDialogData.Data( &data );
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_New.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_New.def
new file mode 100644
index 0000000..ee307d3
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_New.def
@@ -0,0 +1,20 @@
+Quintiq file version 2.0
+#parent: #root
+Method New (
+ FormChangeLossSetting form
+) id:Method_DialogCreateEditChangeLossSetting_New
+{
+ #keys: '[415136.0.746200358]'
+ Body:
+ [*
+ // To create a new product
+ owner := LibCal_GlobalState.dhGlobalCalendarRegistry().Data();
+ obj := MacroPlan.ChangeLossSetting( relshadow, Line := '', Product1 := '', Product2 := '' );
+
+ dhDialogData.Data( &obj );
+
+ dhForm.Data( form );
+
+ ApplicationMacroPlanner.ShowFormModal( this );
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_OnOK.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_OnOK.def
new file mode 100644
index 0000000..8135b6d
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Method_OnOK.def
@@ -0,0 +1,27 @@
+Quintiq file version 2.0
+#parent: #root
+Method OnOK () id:Method_DialogCreateEditChangeLossSetting_OnOK
+{
+ #keys: '[415136.0.746200837]'
+ Body:
+ [*
+ // onOK for ProductDialog
+ // When the user clicks ok,
+ // we either create or edit the data
+ this.ApplyChanges();
+
+ data := dhDialogData.Data();
+
+ if( isnull( data.WrappedInstance() ) ) // New
+ {
+ data.Commit();
+ dhForm.Data().ListChangeLossSetting().SelectByKey( data.WrappedInstance().Key() );
+ }
+ else
+ {
+ data.Commit();
+ }
+
+ this.Close();
+ *]
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Response_pnlActions_btnOk_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Response_pnlActions_btnOk_OnClick.def
index a46ffc6..142ea94 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Response_pnlActions_btnOk_OnClick.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogCreateEditChangeLossSetting/Response_pnlActions_btnOk_OnClick.def
@@ -5,12 +5,15 @@
#keys: '[415136.0.735612174]'
DefinitionID: 'Responsedef_WebButton_OnClick'
GroupServerCalls: true
+ Precondition:
+ [*
+ return ChangeLossSetting::ValidateInput( MacroPlan, dhDialogData.Data().WrappedInstance(), ddlUnit.Data(), ddlProduct1.Data(), ddlProduct2.Data(), [Number]npChangeLossNr.Number() );
+ *]
QuillAction
{
Body:
[*
- Form.ApplyChanges();
- Form.Close();
+ Form.OnOK();
*]
}
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Component_ListChangeLossSetting.def b/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Component_ListChangeLossSetting.def
index 69b56e8..aa58182 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Component_ListChangeLossSetting.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Component_ListChangeLossSetting.def
@@ -38,4 +38,22 @@
[
Taborder: 0
]
+ ResponseDefinitions:
+ [
+ DelegatedResponseDefinition OnClick id:Responsedef_ListChangeLossSetting_WebMenu_OnClick
+ {
+ #keys: '[415136.0.747540770]'
+ Initiator: 'WebMenu'
+ IsInherited: false
+ ResponseType: 'OnClick'
+ Arguments:
+ [
+ ResponseDefinitionArgument selection
+ {
+ #keys: '[913.0.7765768]'
+ Binding: 'this.Selection()'
+ }
+ ]
+ }
+ ]
}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuDelete_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuDelete_OnClick.def
new file mode 100644
index 0000000..ae6d5c1
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuDelete_OnClick.def
@@ -0,0 +1,21 @@
+Quintiq file version 2.0
+#parent: ListChangeLossSetting
+Response OnClick (
+ structured[ChangeLossSetting] selection
+) id:Response_ListChangeLossSetting_MenuDelete_OnClick
+{
+ #keys: '[415136.0.747541132]'
+ CanBindMultiple: false
+ DefinitionID => /ListChangeLossSetting/Responsedef_ListChangeLossSetting_WebMenu_OnClick
+ Initiator: 'MenuDelete'
+ QuillAction
+ {
+ Body:
+ [*
+ traverse( selection, Elements, e ){
+ e.Delete();
+ }
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuEdit_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuEdit_OnClick.def
new file mode 100644
index 0000000..94565f7
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuEdit_OnClick.def
@@ -0,0 +1,24 @@
+Quintiq file version 2.0
+#parent: ListChangeLossSetting
+Response OnClick (
+ ChangeLossSetting selection
+) id:Response_ListChangeLossSetting_MenuEdit_OnClick
+{
+ #keys: '[415136.0.747540962]'
+ CanBindMultiple: false
+ DefinitionID => /ListChangeLossSetting/Responsedef_ListChangeLossSetting_WebMenu_OnClick
+ Initiator: 'MenuEdit'
+ Precondition:
+ [*
+ return MacroPlan::HasMacroPlan( MacroPlan, feedback );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogCreateEditChangeLossSetting );
+ dlg.Edit( selection );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuNew_OnClick.def b/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuNew_OnClick.def
new file mode 100644
index 0000000..0ad7fde
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormChangeLossSetting/Response_ListChangeLossSetting_MenuNew_OnClick.def
@@ -0,0 +1,22 @@
+Quintiq file version 2.0
+#parent: ListChangeLossSetting
+Response OnClick () id:Response_ListChangeLossSetting_MenuNew_OnClick
+{
+ #keys: '[415136.0.747540787]'
+ CanBindMultiple: false
+ DefinitionID => /ListChangeLossSetting/Responsedef_ListChangeLossSetting_WebMenu_OnClick
+ Initiator: 'MenuNew'
+ Precondition:
+ [*
+ return MacroPlan::HasMacroPlan( MacroPlan, feedback );
+ *]
+ QuillAction
+ {
+ Body:
+ [*
+ dlg := construct( DialogCreateEditChangeLossSetting );
+ dlg.New( FormChangeLossSetting );
+ *]
+ GroupServerCalls: false
+ }
+}
--
Gitblit v1.9.3