From a4fc5084c9e83b1457af33bf6876faa9cfb8321e Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期五, 23 八月 2024 15:23:45 +0800
Subject: [PATCH] 接口日志不同步处理

---
 _Main/BL/Type_InterfaceLoginfoMiddle/DefaultValue_Response.qbl                                      |    6 +
 _Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl                                          |   21 +++++
 _Main/BL/Type_InterfaceLoginfoMiddle/TypeIndex_InterfaceLoginfoMiddleTypeIndex.qbl                  |   12 +++
 _Main/UI/MacroPlannerWebApp/Component_FormInterfaceLoginfo/Component_ListInterfaceLoginfo.def       |    3 
 _Main/BL/Type_InterfaceLoginfoMiddle/DefaultValue_Name.qbl                                          |    6 +
 _Main/BL/Type_InterfaceLoginfoMiddle/Attribute_ID.qbl                                               |    8 ++
 _Main/BL/Type_InterfaceLoginfoMiddle/Attribute_Response.qbl                                         |    8 ++
 _Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl                                    |   18 ++--
 _Main/BL/EDI/Broker_IL_InterfaceLogInfoMiddlesBroker.qbl                                            |   68 +++++++++++++++++
 _Main/BL/Relations/Relation_InterfaceLoginfoMiddle_InterfaceDataset_InterfaceDataset_InterfaceL.qbl |   23 +++++
 /dev/null                                                                                           |    7 -
 _Main/BL/Type_InterfaceLoginfoMiddle/Attribute_Name.qbl                                             |    8 ++
 _Main/BL/Type_InterfaceLoginfoMiddle/Attribute_FinishTime.qbl                                       |    8 ++
 _Main/BL/Type_InterfaceLoginfoMiddle/_ROOT_Type_InterfaceLoginfoMiddle.qbl                          |   10 ++
 14 files changed, 189 insertions(+), 17 deletions(-)

diff --git a/_Main/BL/EDI/Broker_IL_InterfaceLogInfoMiddlesBroker.qbl b/_Main/BL/EDI/Broker_IL_InterfaceLogInfoMiddlesBroker.qbl
new file mode 100644
index 0000000..09ca4c4
--- /dev/null
+++ b/_Main/BL/EDI/Broker_IL_InterfaceLogInfoMiddlesBroker.qbl
@@ -0,0 +1,68 @@
+Quintiq file version 2.0
+#parent: #root
+EDIBroker IL_InterfaceLogInfoMiddlesBroker
+{
+  MDSDefinition: InterfaceDataset
+  TimeZone: 'ACT'
+  UseOSTimeZone: false
+  EDIModelLink.Destination DestinationInterfaceLogInfoMiddles
+  {
+    EDIMLTable InterfaceLoginfoMiddle
+    {
+      PrimaryKeyColumns: ID
+      TargetType: InterfaceLoginfoMiddle
+      TypeIndex: InterfaceLoginfoMiddleTypeIndex
+      EDIMLColumn FinishTime { Attribute: FinishTime ValueType: DateTime }
+      EDIMLColumn ID { Attribute: ID ValueType: Number }
+      EDIMLColumn Name { Attribute: Name ValueType: String }
+      EDIMLColumn Response { Attribute: Response ValueType: String }
+    }
+  }
+  EDIODBCLink.Source SourceInterfaceLogInfoMiddles
+  {
+    DataIntegrityStrategy: 'Disabled'
+    SettingsEngineLink: 'domainmodel.ediremotedatasourcedefinition.remotestorage.vwed'
+    EDIODBCLinkTable InterfaceLoginfoMiddle
+    {
+      OthersMayCreateTable: true
+      OthersMayDeleteRow: true
+      OthersMayDropTable: true
+      OthersMayFlushTable: true
+      OthersMayInsertRow: true
+      PrimaryKeyColumns: ID
+      RecordModificationHintStrategy: 'None'
+      EDIODBCLinkColumn FinishTime
+      {
+        OthersMayUpdateColumn: true
+        ValueType: DateTime
+      }
+      EDIODBCLinkColumn ID
+      {
+        OthersMayUpdateColumn: true
+        ValueType: Number
+      }
+      EDIODBCLinkColumn Name
+      {
+        OthersMayUpdateColumn: true
+        ValueType: String
+      }
+      EDIODBCLinkColumn Response
+      {
+        OthersMayUpdateColumn: true
+        ValueType: String
+      }
+    }
+  }
+  EDITransformation.Transformation TransformationInterfaceLogInfoMiddles
+  {
+    EDITableTransformation
+    {
+      InputTable: InterfaceLoginfoMiddle
+      OutputTable: InterfaceLoginfoMiddle
+      EDIColumnMatch { InputColumn: FinishTime OutputColumn: FinishTime }
+      EDIColumnMatch { InputColumn: ID OutputColumn: ID }
+      EDIColumnMatch { InputColumn: Name OutputColumn: Name }
+      EDIColumnMatch { InputColumn: Response OutputColumn: Response }
+    }
+  }
+}
diff --git a/_Main/BL/Relations/Relation_InterfaceLoginfoMiddle_InterfaceDataset_InterfaceDataset_InterfaceL.qbl b/_Main/BL/Relations/Relation_InterfaceLoginfoMiddle_InterfaceDataset_InterfaceDataset_InterfaceL.qbl
new file mode 100644
index 0000000..e081a8f
--- /dev/null
+++ b/_Main/BL/Relations/Relation_InterfaceLoginfoMiddle_InterfaceDataset_InterfaceDataset_InterfaceL.qbl
@@ -0,0 +1,23 @@
+Quintiq file version 2.0
+#parent: #root
+Relation InterfaceLoginfoMiddle_InterfaceDataset_InterfaceDataset_InterfaceLoginfoMiddle
+{
+  #keys: '1[415136.0.1035642038]'
+  DefaultRelationStrategy
+  {
+  }
+  RelationSide.LeftSide InterfaceDataset
+  {
+    #keys: '3[415136.0.1035642040][415136.0.1035642039][415136.0.1035642041]'
+    Cardinality: '0to1'
+    ObjectDefinition: InterfaceLoginfoMiddle
+    OwningSide: 'Reference'
+  }
+  RelationSide.RightSide InterfaceLoginfoMiddle
+  {
+    #keys: '3[415136.0.1035642043][415136.0.1035642042][415136.0.1035642044]'
+    Cardinality: '1toN'
+    ObjectDefinition: InterfaceDataset
+    OwningSide: 'Owned'
+  }
+}
diff --git a/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl b/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
index 1ce13b4..6ab92b1 100644
--- a/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_CustomerDemandPPAIDS/StaticMethod_GenerateData.qbl
@@ -22,15 +22,15 @@
       interfaceDataset.CustomerDemandPPAIDS( relflush );
     }
     nowdate                := DateTime::ActualTime();
-    loginfo                := interfaceDataset.InterfaceLoginfo( relnew, ExecuteUser := executor
-                                                                 , Name := Translations::InterfaceDataset_CustomerDemandPPAIDS_Name()
-                                                                 , InterfaceDateTime := nowdate
-                                                                 , Message := '瀹㈡埛闇�姹傦紙PPA+IDS锛夋暟鎹帹閫�'
-                                                                 , IsShow := false
-                                                                 , Last := true
-                                                                 , ReturnSuccess := true
-                                                                 , ReturnMsg := 'Success'
-                                                                 , Success := true
+    loginfo                := interfaceDataset.InterfaceLoginfo( relnew, ExecuteUser         := executor
+                                                                 , Name                      := Translations::InterfaceDataset_CustomerDemandPPAIDS_Name()
+                                                                 , InterfaceDateTime         := nowdate
+                                                                 , Message                   := '瀹㈡埛闇�姹傦紙PPA+IDS锛夋暟鎹帹閫�'
+                                                                 , Last                      := true
+                                                                 , IsShow                    := false
+                                                                 , ReturnSuccess             := true
+                                                                 , ReturnMsg                 := 'Success'
+                                                                 , Success                   := true
                                                                   );
     traverse( macroplan, SalesDemand.astype( Forecast ), forecast ){
       cd                  :=interfaceDataset.CustomerDemandPPAIDS( relnew, Product           := forecast.ProductID()
diff --git a/_Main/BL/Type_InterfaceLoginfo/DefaultValue_IsShow.qbl b/_Main/BL/Type_InterfaceLoginfo/DefaultValue_IsShow.qbl
deleted file mode 100644
index 8bd79cf..0000000
--- a/_Main/BL/Type_InterfaceLoginfo/DefaultValue_IsShow.qbl
+++ /dev/null
@@ -1,7 +0,0 @@
-Quintiq file version 2.0
-#parent: #root
-DefaultValue
-{
-  ISOValue: 'true'
-  TargetAttribute: IsShow
-}
diff --git a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl
new file mode 100644
index 0000000..2c269ac
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl
@@ -0,0 +1,21 @@
+Quintiq file version 2.0
+#parent: #root
+StaticMethod SyncMiddle (
+  InterfaceDataset owner
+)
+{
+  TextBody:
+  [*
+    // 鐢勫叞楦� Aug-23-2024 (created)
+    owner.IL_InterfaceLogInfoMiddlesBroker().Execute();
+    // 娓呯┖涓存椂鏁版嵁搴�
+    owner.IL_InterfaceLogInfoMiddlesBroker().Source().FlatQuery( "truncate table A_InterfaceLogInfoMiddle" );
+    traverse( owner, InterfaceLoginfoMiddle, middle ){
+      loginfo := selectobject( owner, InterfaceLoginfo, loginfo, loginfo.Name() = middle.Name() and loginfo.IsShow() = false and loginfo.Last() = true );
+      loginfo.FinishTime( middle.FinishTime() );
+      loginfo.Response( middle.Response() );
+      loginfo.IsShow( false );
+      middle.Delete();
+    }
+  *]
+}
diff --git a/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_FinishTime.qbl b/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_FinishTime.qbl
new file mode 100644
index 0000000..ef73cdd
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_FinishTime.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute FinishTime
+{
+  #keys: '3[415136.0.1035642031][415136.0.1035642030][415136.0.1035642032]'
+  Description: '瀹屾垚鏃堕棿'
+  ValueType: DateTime
+}
diff --git a/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_ID.qbl b/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_ID.qbl
new file mode 100644
index 0000000..543dca0
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_ID.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute ID
+{
+  #keys: '3[415136.0.1035643101][415136.0.1035643100][415136.0.1035643102]'
+  IsReadOnly: true
+  ValueType: Number
+}
diff --git a/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_Name.qbl b/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_Name.qbl
new file mode 100644
index 0000000..936f812
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_Name.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Name
+{
+  #keys: '3[415136.0.1035642019][415136.0.1035642018][415136.0.1035642020]'
+  Description: '鎺ュ彛鍚嶇О'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_Response.qbl b/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_Response.qbl
new file mode 100644
index 0000000..1c588e2
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfoMiddle/Attribute_Response.qbl
@@ -0,0 +1,8 @@
+Quintiq file version 2.0
+#parent: #root
+Attribute Response
+{
+  #keys: '3[415136.0.1035642035][415136.0.1035642034][415136.0.1035642036]'
+  Description: '鎺ュ彛杩斿洖鏁版嵁'
+  ValueType: String
+}
diff --git a/_Main/BL/Type_InterfaceLoginfoMiddle/DefaultValue_Name.qbl b/_Main/BL/Type_InterfaceLoginfoMiddle/DefaultValue_Name.qbl
new file mode 100644
index 0000000..86c3d59
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfoMiddle/DefaultValue_Name.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: Name
+}
diff --git a/_Main/BL/Type_InterfaceLoginfoMiddle/DefaultValue_Response.qbl b/_Main/BL/Type_InterfaceLoginfoMiddle/DefaultValue_Response.qbl
new file mode 100644
index 0000000..daf5a1a
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfoMiddle/DefaultValue_Response.qbl
@@ -0,0 +1,6 @@
+Quintiq file version 2.0
+#parent: #root
+DefaultValue
+{
+  TargetAttribute: Response
+}
diff --git a/_Main/BL/Type_InterfaceLoginfoMiddle/TypeIndex_InterfaceLoginfoMiddleTypeIndex.qbl b/_Main/BL/Type_InterfaceLoginfoMiddle/TypeIndex_InterfaceLoginfoMiddleTypeIndex.qbl
new file mode 100644
index 0000000..8f14f02
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfoMiddle/TypeIndex_InterfaceLoginfoMiddleTypeIndex.qbl
@@ -0,0 +1,12 @@
+Quintiq file version 2.0
+#parent: #root
+TypeIndex InterfaceLoginfoMiddleTypeIndex
+{
+  Attributes:
+  [
+    TypeIndexAttribute
+    {
+      ModelElement: ID
+    }
+  ]
+}
diff --git a/_Main/BL/Type_InterfaceLoginfoMiddle/_ROOT_Type_InterfaceLoginfoMiddle.qbl b/_Main/BL/Type_InterfaceLoginfoMiddle/_ROOT_Type_InterfaceLoginfoMiddle.qbl
new file mode 100644
index 0000000..a08d708
--- /dev/null
+++ b/_Main/BL/Type_InterfaceLoginfoMiddle/_ROOT_Type_InterfaceLoginfoMiddle.qbl
@@ -0,0 +1,10 @@
+Quintiq file version 2.0
+#root
+#parent: #DomainModel
+Type InterfaceLoginfoMiddle
+{
+  #keys: '5[415136.0.1035642012][415136.0.1035642010][0.0.0][415136.0.1035642011][415136.0.1035642013]'
+  BaseType: Object
+  Description: '鎺ュ彛鏃ュ織涓棿涓存椂琛�'
+  StructuredName: 'InterfaceLoginfoMiddles'
+}
diff --git a/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceLoginfo/Component_ListInterfaceLoginfo.def b/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceLoginfo/Component_ListInterfaceLoginfo.def
index 9c5085b..a3d7985 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceLoginfo/Component_ListInterfaceLoginfo.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_FormInterfaceLoginfo/Component_ListInterfaceLoginfo.def
@@ -11,7 +11,8 @@
       BaseType: 'WebDataExtractor'
       Properties:
       [
-        DataType: 'external[InterfaceDataset]'
+        DataType: 'InterfaceDataset'
+        FixedFilter: 'object.IsShow()'
         Source: 'InterfaceDataset'
         Taborder: 0
         Transformation: 'InterfaceLoginfo'

--
Gitblit v1.9.3