From 6d3afbb413ae163ac9cd68ae210adf979af9e7fd Mon Sep 17 00:00:00 2001
From: lihongji <3117313295@qq.com>
Date: 星期一, 27 五月 2024 09:48:10 +0800
Subject: [PATCH] 需求导入优化
---
_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl | 3
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_dhRequirementImportExecuti.def | 14 +++
_Main/BL/Type_Archive/StaticMethod_HandlePR.qbl | 6 +
_Main/BL/Type_Archive/StaticMethod_OnException.qbl | 17 ++++
_Main/BL/Relations/Relation_RequirementImportExecutionStatus_ArchiveExecutionStatus_ArchiveExec.qbl | 23 +++++
_Main/BL/Type_Archive/StaticMethod_Success.qbl | 9 ++
_Main/BL/Type_RequirementImportExecutionStatus/Attribute_ExecutionIsSuccess.qbl | 7 +
_Main/BL/Type_ArchiveExecutionStatus/StaticMethod_OnServerStartup.qbl | 21 +++++
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_deRequirementImportExecuti.def | 16 ++++
/dev/null | 16 ----
_Main/BL/Type_RequirementImportExecutionStatus/Method_Filter.qbl | 8 ++
_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_OnOK.def | 2
_Main/BL/Dataset_ArchiveExecutionStatus/_ROOT_Dataset_ArchiveExecutionStatus.qbl | 9 ++
_Main/BL/Type_ArchiveExecutionStatus/_ROOT_Type_ArchiveExecutionStatus.qbl | 9 ++
_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgRequirementPreprocessing.def | 16 ---
_Main/BL/Type_Archive/StaticMethod_RequirementProcessing.qbl | 9 +-
16 files changed, 149 insertions(+), 36 deletions(-)
diff --git a/_Main/BL/Dataset_ArchiveExecutionStatus/_ROOT_Dataset_ArchiveExecutionStatus.qbl b/_Main/BL/Dataset_ArchiveExecutionStatus/_ROOT_Dataset_ArchiveExecutionStatus.qbl
new file mode 100644
index 0000000..7dee537
--- /dev/null
+++ b/_Main/BL/Dataset_ArchiveExecutionStatus/_ROOT_Dataset_ArchiveExecutionStatus.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Dataset ArchiveExecutionStatus
+{
+ #keys: '2[413988.0.1210041499][413988.0.1210041498]'
+ DefaultMDSName: 'ArchiveExecutionStatus'
+ InstanceType: ArchiveExecutionStatus
+}
diff --git a/_Main/BL/Relations/Relation_RequirementImportExecutionStatus_ArchiveExecutionStatus_ArchiveExec.qbl b/_Main/BL/Relations/Relation_RequirementImportExecutionStatus_ArchiveExecutionStatus_ArchiveExec.qbl
new file mode 100644
index 0000000..5fc73cd
--- /dev/null
+++ b/_Main/BL/Relations/Relation_RequirementImportExecutionStatus_ArchiveExecutionStatus_ArchiveExec.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation RequirementImportExecutionStatus_ArchiveExecutionStatus_ArchiveExecutionStatus_RequirementImportExecutionStatus
+{
+ #keys: '1[413988.0.1210041505]'
+ DefaultRelationStrategy
+ {
+ }
+ RelationSide.LeftSide ArchiveExecutionStatus
+ {
+ #keys: '3[413988.0.1210041507][413988.0.1210041506][413988.0.1210041508]'
+ Cardinality: '0to1'
+ ObjectDefinition: RequirementImportExecutionStatus
+ OwningSide: 'Reference'
+ }
+ RelationSide.RightSide RequirementImportExecutionStatus
+ {
+ #keys: '3[413988.0.1210041510][413988.0.1210041509][413988.0.1210041511]'
+ Cardinality: '1toN'
+ ObjectDefinition: ArchiveExecutionStatus
+ OwningSide: 'Owned'
+ }
+}
diff --git a/_Main/BL/Relations/Relation_RequirementImportExecutionStatus_Archive_Archive_RequirementImportE.qbl b/_Main/BL/Relations/Relation_RequirementImportExecutionStatus_Archive_Archive_RequirementImportE.qbl
deleted file mode 100644
index 6e283ed..0000000
--- a/_Main/BL/Relations/Relation_RequirementImportExecutionStatus_Archive_Archive_RequirementImportE.qbl
+++ /dev/null
@@ -1,23 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-Relation RequirementImportExecutionStatus_Archive_Archive_RequirementImportExecutionStatus
-{
- #keys: '1[414996.0.382770175]'
- DefaultRelationStrategy
- {
- }
- RelationSide.LeftSide Archive
- {
- #keys: '3[414996.0.382770177][414996.0.382770176][414996.0.382770178]'
- Cardinality: '0to1'
- ObjectDefinition: RequirementImportExecutionStatus
- OwningSide: 'Reference'
- }
- RelationSide.RightSide RequirementImportExecutionStatus
- {
- #keys: '3[414996.0.382770180][414996.0.382770179][414996.0.382770181]'
- Cardinality: '1toN'
- ObjectDefinition: Archive
- OwningSide: 'Owned'
- }
-}
diff --git a/_Main/BL/Type_Archive/StaticMethod_HandlePR.qbl b/_Main/BL/Type_Archive/StaticMethod_HandlePR.qbl
index f14945f..4744b67 100644
--- a/_Main/BL/Type_Archive/StaticMethod_HandlePR.qbl
+++ b/_Main/BL/Type_Archive/StaticMethod_HandlePR.qbl
@@ -25,7 +25,11 @@
Archive::WriteTempFile( pathPR, prBinaryValue );
info( json );
-
+ for ( i := 0; i < 10000; i++ ) {
+ for ( j := 0; j < 20000; j++ ) {
+ info( i + j );
+ }
+ }
// 璋冪敤鎺ュ彛
url := "/PR/Import";
diff --git a/_Main/BL/Type_Archive/StaticMethod_OnException.qbl b/_Main/BL/Type_Archive/StaticMethod_OnException.qbl
new file mode 100644
index 0000000..061db6c
--- /dev/null
+++ b/_Main/BL/Type_Archive/StaticMethod_OnException.qbl
@@ -0,0 +1,17 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod OnException (
+ Exception e,
+ ArchiveExecutionStatus archiveExecutionStatus,
+ String userName
+)
+{
+ TextBody:
+ [*
+ archiveExecutionStatus.RequirementImportExecutionStatus( relnew,
+ ExecutionStatus := "Complete",
+ ExecutionUserName := userName,
+ ExecutionRespMessage := e.Message(),
+ ExecutionIsSuccess := false );
+ *]
+}
diff --git a/_Main/BL/Type_Archive/StaticMethod_RequirementProcessing.qbl b/_Main/BL/Type_Archive/StaticMethod_RequirementProcessing.qbl
index 3fca737..f482917 100644
--- a/_Main/BL/Type_Archive/StaticMethod_RequirementProcessing.qbl
+++ b/_Main/BL/Type_Archive/StaticMethod_RequirementProcessing.qbl
@@ -2,6 +2,7 @@
#parent: #root
StaticMethod RequirementProcessing (
Archive archive,
+ ArchiveExecutionStatus archiveExecutionStatus,
MacroPlan macroPlan,
String userName,
String prFileName,
@@ -28,12 +29,12 @@
OS::CreateDirectory( filePath );
// 鍒涘缓鎵ц鐘舵��
- archive.RequirementImportExecutionStatus( relnew,
- ExecutionStatus := "InProgress",
- ExecutionUserName := userName );
+ archiveExecutionStatus.RequirementImportExecutionStatus( relnew,
+ ExecutionStatus := "InProgress",
+ ExecutionUserName := userName );
if ( prBinaryValue.Size() > 0 ) {
- archive -> Archive::HandlePR( macroPlan, userName, prFileName, prBinaryValue, isPRArchive, filePath );
+ archive -> Archive::HandlePR( macroPlan, userName, prFileName, prBinaryValue, isPRArchive, filePath ) ->Archive::Success() -> Exception() -> Archive::OnException( archiveExecutionStatus, userName );
} else if ( ppBinaryValue.Size() > 0 ) {
Archive::HandlePP( archive, macroPlan, userName, ppFileName, ppBinaryValue, isPPArchive, filePath );
} else if ( budgetBinaryValue.Size() > 0 ) {
diff --git a/_Main/BL/Type_Archive/StaticMethod_Success.qbl b/_Main/BL/Type_Archive/StaticMethod_Success.qbl
new file mode 100644
index 0000000..5897825
--- /dev/null
+++ b/_Main/BL/Type_Archive/StaticMethod_Success.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod Success
+{
+ TextBody:
+ [*
+ // lihongji May-25-2024 (created)
+ *]
+}
diff --git a/_Main/BL/Type_ArchiveExecutionStatus/StaticMethod_OnServerStartup.qbl b/_Main/BL/Type_ArchiveExecutionStatus/StaticMethod_OnServerStartup.qbl
new file mode 100644
index 0000000..a52baa6
--- /dev/null
+++ b/_Main/BL/Type_ArchiveExecutionStatus/StaticMethod_OnServerStartup.qbl
@@ -0,0 +1,21 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod OnServerStartup
+{
+ TextBody:
+ [*
+ // lihongji May-15-2024 (created)
+ folder := DomainModel::Domain().MDSFolderDefinitions().FindFolder( "/root" );
+
+ datasetName := typeof( ArchiveExecutionStatus ).Name();
+
+ oinfo := MDSEditor::Editor().ObjectInfos( datasetName, folder.FolderID(), datasetName );
+
+ o := select( oinfo, Elements, o, not o.IsLoaded() );
+ emptydataset := isnull( o );
+
+ if ( emptydataset ) {
+ MDSArchiveExecutionStatus::CreateMDS( datasetName, DMF_Utility::StorageState_MemoryOnly() );
+ }
+ *]
+}
diff --git a/_Main/BL/Type_ArchiveExecutionStatus/_ROOT_Type_ArchiveExecutionStatus.qbl b/_Main/BL/Type_ArchiveExecutionStatus/_ROOT_Type_ArchiveExecutionStatus.qbl
new file mode 100644
index 0000000..2747db3
--- /dev/null
+++ b/_Main/BL/Type_ArchiveExecutionStatus/_ROOT_Type_ArchiveExecutionStatus.qbl
@@ -0,0 +1,9 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type ArchiveExecutionStatus
+{
+ #keys: '5[413988.0.1210041495][413988.0.1210041493][0.0.0][413988.0.1210041494][413988.0.1210041496]'
+ BaseType: Object
+ StructuredName: 'ArchiveExecutionStatuss'
+}
diff --git a/_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl b/_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl
index 5202502..60920c4 100644
--- a/_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl
+++ b/_Main/BL/Type_DMF_CustomLogic/Method_OnFinished.qbl
@@ -15,6 +15,9 @@
// 鍒涘缓瀛樻。鏁版嵁闆�
Archive::OnServerStartup();
+ // 鍒涘缓瀛樻。鐘舵�佹暟鎹泦
+ ArchiveExecutionStatus::OnServerStartup();
+
// Create MPDomainHandler
MPDomainHandler::OnServerStartup();
diff --git a/_Main/BL/Type_RequirementImportExecutionStatus/Attribute_ExecutionIsSuccess.qbl b/_Main/BL/Type_RequirementImportExecutionStatus/Attribute_ExecutionIsSuccess.qbl
new file mode 100644
index 0000000..5aca29a
--- /dev/null
+++ b/_Main/BL/Type_RequirementImportExecutionStatus/Attribute_ExecutionIsSuccess.qbl
@@ -0,0 +1,7 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ExecutionIsSuccess
+{
+ #keys: '3[413988.0.1207255621][413988.0.1207255620][413988.0.1207255622]'
+ ValueType: Boolean
+}
diff --git a/_Main/BL/Type_RequirementImportExecutionStatus/Method_Filter.qbl b/_Main/BL/Type_RequirementImportExecutionStatus/Method_Filter.qbl
new file mode 100644
index 0000000..d440f2f
--- /dev/null
+++ b/_Main/BL/Type_RequirementImportExecutionStatus/Method_Filter.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Method Filter (
+ String userName
+) declarative remote as Boolean
+{
+ TextBody: 'return this.ExecutionUserName() = userName;'
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgRequirementPreprocessing.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgRequirementPreprocessing.def
index 75c409e..93f5269 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgRequirementPreprocessing.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Component_abgRequirementPreprocessing.def
@@ -44,10 +44,8 @@
BaseType: 'WebDataExtractor'
Properties:
[
- DataType: 'Archive'
- FilterArguments: 'userName:QLibMacroPlannerWebUI::ApplicationMacroPlanner.ActionBarMacroPlanner.dhUserName'
- FixedFilter: 'object.ExecutionUserName() = userName'
- Source: 'Archive'
+ DataType: 'ArchiveExecutionStatus'
+ Source: 'ArchiveExecutionStatus'
Taborder: 0
Transformation: 'RequirementImportExecutionStatus'
]
@@ -56,16 +54,6 @@
Properties:
[
Taborder: 2
- ]
- }
- Component dhUserName
- {
- #keys: '[414996.0.387620508]'
- BaseType: 'WebDataHolder'
- Databinding: 'String*'
- Properties:
- [
- Taborder: 3
]
}
]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_deRequirementImportExecuti.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_deRequirementImportExecuti.def
new file mode 100644
index 0000000..d6ab223
--- /dev/null
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_deRequirementImportExecuti.def
@@ -0,0 +1,16 @@
+Quintiq file version 2.0
+#parent: abgRequirementPreprocessing/deRequirementImportExecutionStatus
+Response OnCreated () id:Response_MacroPlanner_abgRequirementPreprocessing_deRequirementImportExecutionStatus_OnCreated
+{
+ #keys: '[413988.0.1211520534]'
+ CanBindMultiple: false
+ DefinitionID: 'Responsedef_WebComponent_OnCreated'
+ QuillAction
+ {
+ Body:
+ [*
+ this.FixedFilter( "object.Filter( '" + ApplicationMacroPlanner.GetUserName() + "' )" );
+ *]
+ GroupServerCalls: false
+ }
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_dhRequirementImportExecuti.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_dhRequirementImportExecuti.def
index 2860d95..2c02609 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_dhRequirementImportExecuti.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_dhRequirementImportExecuti.def
@@ -10,7 +10,21 @@
Body:
[*
if ( not isnull( this.Data() ) ) {
+ ries := this.Data();
+ info( "鎵ц鐢ㄦ埛锛�", this.Data().ExecutionUserName(), " 鎵ц鐘舵�侊細", this.Data().ExecutionUserName(), " 鎵ц娑堟伅锛�", this.Data().ExecutionRespMessage() );
+
+ if ( ries.ExecutionIsSuccess() ) {
+
+ } else {
+ if ( ries.ExecutionStatus() = "InProgress" ) {
+ bRequirementUpload.Image( "APPLICATION_STOP" );
+ } else if ( ries.ExecutionStatus() = "Complete" ) {
+ bRequirementUpload.Image( "FLASH" );
+ }
+ }
+
+ this.Data().Delete();
}
*]
GroupServerCalls: false
diff --git a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_dhUserName_OnCreated.def b/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_dhUserName_OnCreated.def
deleted file mode 100644
index f76bb67..0000000
--- a/_Main/UI/MacroPlannerWebApp/Component_ApplicationMacroPlanner/Response_MacroPlanner_abgRequirementPreprocessing_dhUserName_OnCreated.def
+++ /dev/null
@@ -1,16 +0,0 @@
-Quintiq file version 2.0
-#parent: abgRequirementPreprocessing/dhUserName
-Response OnCreated () id:Response_MacroPlanner_abgRequirementPreprocessing_dhUserName_OnCreated
-{
- #keys: '[414996.0.387620588]'
- CanBindMultiple: false
- DefinitionID: 'Responsedef_WebComponent_OnCreated'
- QuillAction
- {
- Body:
- [*
- this.Data( ApplicationMacroPlanner.GetUserName() );
- *]
- GroupServerCalls: false
- }
-}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_OnOK.def b/_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_OnOK.def
index 43d9cf4..b2a892f 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_OnOK.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogRequirementUpload/Method_OnOK.def
@@ -7,7 +7,7 @@
[*
Form.ApplyChanges();
- Archive::RequirementProcessing( Archive, MacroPlan, ApplicationMacroPlanner.GetUserName(),
+ Archive::RequirementProcessing( Archive, ArchiveExecutionStatus, MacroPlan, ApplicationMacroPlanner.GetUserName(),
efPR.Text() , guard( dhBinaryDataPR.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ), cPR.Checked(),
efPP.Text() , guard( dhBinaryDataPP.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ), cPP.Checked(),
efBudget.Text() , guard( dhBinaryDataBudget.Data().AsBinaryValue(), BinaryValue::Construct( 0 ) ), cBudget.Checked(),
--
Gitblit v1.9.3