From db4a0cee22a752f4728c9ff9f4c28f557cf6fd4f Mon Sep 17 00:00:00 2001
From: lazhen <17772815105@139.com>
Date: 星期四, 28 十一月 2024 17:57:05 +0800
Subject: [PATCH] sap接口提示错误信息

---
 _Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_GenerateData.qbl |    4 +-
 _Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl             |   20 +++++-----
 _Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_Publish.qbl      |    5 +-
 _Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl |   21 ++++++++--
 _Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_OnOk.def |    4 +-
 _Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_GenerateData.qbl  |    6 +-
 _Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_OnOk.def  |    4 +-
 _Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_Publish.qbl       |    5 +-
 8 files changed, 42 insertions(+), 27 deletions(-)

diff --git a/_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_GenerateData.qbl b/_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_GenerateData.qbl
index c17c3d5..92fef6f 100644
--- a/_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_GenerateData.qbl
@@ -10,7 +10,7 @@
   Boolean versionflag,
   const Product_MPs products,
   String executor
-)
+) as String
 {
   TextBody:
   [*
@@ -49,7 +49,7 @@
       
     }
     loginfo.TotalRow( ms64.MS64Data( relsize ) );
-    AOnlineAndMOfflinePlanMS64::Publish( owner, loginfo );
+    return AOnlineAndMOfflinePlanMS64::Publish( owner, loginfo );
     //InterfaceLoginfo::CallInterfaceForSAPGet( owner, loginfo );
   *]
 }
diff --git a/_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_Publish.qbl b/_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_Publish.qbl
index a7d5ca8..6800114 100644
--- a/_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_Publish.qbl
+++ b/_Main/BL/Type_AOnlineAndMOfflinePlanMS64/StaticMethod_Publish.qbl
@@ -3,7 +3,7 @@
 StaticMethod Publish (
   InterfaceDataset owner,
   InterfaceLoginfo loginfo
-)
+) as String
 {
   TextBody:
   [*
@@ -30,6 +30,7 @@
     loginfo.RequestBody( jsondata.Build().AsString() );
     info( loginfo.RequestBody() );
     data              := InterfaceLoginfo::CallInterfaceForSAPGet( owner, loginfo );
-    info( '----------------', data.Size() );
+    info( '----------------', data );
+    return data;
   *]
 }
diff --git a/_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_GenerateData.qbl b/_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_GenerateData.qbl
index 028aa86..b6203e2 100644
--- a/_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_GenerateData.qbl
+++ b/_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_GenerateData.qbl
@@ -7,7 +7,7 @@
   Date startdate,
   Date enddate,
   String executor
-)
+) as String
 {
   TextBody:
   [*
@@ -19,7 +19,7 @@
       }else{
         loginfo.Last( false );
       }
-    //  owner.AOnlineAndMOfflinePlanPIR( relflush );
+    //  owner.AOnlineAndMOfflinePlanPIR( relflush ); 
     }
     owner.AOnlineAndMOfflinePlanPIR( relflush );
     nowdate                := DateTime::ActualTime();
@@ -80,6 +80,6 @@
       }
     }
     loginfo.TotalRow( pir.PIRData( relsize ) );
-    AOnlineAndMOfflinePlanPIR::Publish( owner, loginfo );
+    return AOnlineAndMOfflinePlanPIR::Publish( owner, loginfo );
   *]
 }
diff --git a/_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_Publish.qbl b/_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_Publish.qbl
index 652cc37..43b904f 100644
--- a/_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_Publish.qbl
+++ b/_Main/BL/Type_AOnlineAndMOfflinePlanPIR/StaticMethod_Publish.qbl
@@ -3,7 +3,7 @@
 StaticMethod Publish (
   InterfaceDataset owner,
   InterfaceLoginfo loginfo
-)
+) as String
 {
   TextBody:
   [*
@@ -30,6 +30,7 @@
     loginfo.RequestBody( jsondata.Build().AsString() );
     info( loginfo.RequestBody() );
     data              := InterfaceLoginfo::CallInterfaceForSAPGet( owner, loginfo );
-    info( '----------------', data.Size() );
+    info( '----------------', data );
+    return data;
   *]
 }
diff --git a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl
index abf4b39..3867624 100644
--- a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl
+++ b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_CallInterfaceForSAPGet.qbl
@@ -3,7 +3,7 @@
 StaticMethod CallInterfaceForSAPGet (
   InterfaceDataset owner,
   InterfaceLoginfo loginfo
-) as owning InterfaceSAPResponseLoginfos
+) as String
 {
   Description: '璋冪敤鏁版嵁涓彴鎺ュ彛'
   TextBody:
@@ -31,7 +31,8 @@
     //鍚庣画鍏叡澶勭悊
     loginfo.FinishTime( DateTime::ActualTime() );
     data             := JSON::Null().Build();
-    saploginfos      := construct( InterfaceSAPResponseLoginfos );
+    sapresponse      := construct( InterfaceSAPResponseLoginfos );
+    feedback         := '';
     if( loginfo.Success() ){
       resultJson     := JSON::Parse( loginfo.Response() );
       code           := resultJson.Get( "code" ).GetNumber();
@@ -47,10 +48,22 @@
       }
       for( i := 0; i < data.Size(); i++ ){
         item := data.Get( i );
-        saploginfos.Add( InterfaceSAPResponseLoginfo::GenerateData( loginfo, item ) );
+        sapresponse.Add( InterfaceSAPResponseLoginfo::GenerateData( loginfo, item ) );
       }
+      sucproduct     := selectuniquevalues( sapresponse, Elements, e, e.IsSuccess(), e.Msg_v1() );
+      failmssages    := selectuniquevalues( sapresponse, Elements, e, not e.IsSuccess(), ifexpr( e.Msg().FindString( e.Msg_v1(), 0 ) > -1, e.Msg().ReplaceAll( e.Msg_v1(), '*' ), e.Msg() ) );
+      feedback.Concat( '浜у搧' ).Concat( sucproduct.Concatenate( "銆�" ) ).Concat( '鎺ㄩ�佹垚鍔�' ).Concat( '锛�' );
+      traverse( failmssages, Elements, failmsg ){
+        failproduct  := selectuniquevalues( sapresponse, Elements, e, not e.IsSuccess() and ( failmsg = e.Msg() or failmsg = e.Msg().ReplaceAll( e.Msg_v1(), '*' ) ), e.Msg_v1() );
+        if( failmsg.FindString( '*', 0  ) > -1 ){
+          feedback.Concat( failmsg.ReplaceAll( '*', failproduct.Concatenate( '銆�' ) ) ).Concat( '锛�' );
+        }else{
+          feedback.Concat( '浜у搧' ).Concat( failproduct.Concatenate( '銆�' ) ).Concat( '鍥犱负' ).Concat( failmsg ).Concat( '鎺ㄩ�佸け璐�' ).Concat( '锛�' );
+        }
+      }
+      feedback       := feedback.Replace( feedback.Length() - 1, 1, '銆�' );
     }
     
-    return &saploginfos;
+    return feedback;
   *]
 }
diff --git a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl
index 6d3fbe2..2aecbd1 100644
--- a/_Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl
+++ b/_Main/BL/Type_InterfaceLoginfo/StaticMethod_SyncMiddle.qbl
@@ -7,15 +7,15 @@
   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( true );
-      middle.Delete();
-    }
+    //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( true );
+    //  middle.Delete();
+    //}
   *]
 }
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_OnOk.def b/_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_OnOk.def
index 048ad37..22d75dd 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_OnOk.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSMS64/Method_OnOk.def
@@ -18,8 +18,8 @@
     if( WebMessageBox::Question( this, '鏄惁纭鎺ㄩ��', 'OK|Cancel' ) = 0 ){
       currentuser     := QuintiqUser::CurrentUser().DisplayName();
       
-      AOnlineAndMOfflinePlanMS64::GenerateData( InterfaceDataset, ddslFactory.Text(), dsStartDate.Date(), dsEndDate.Date(), efVersionFrom.Text(), efVersionTo.Text(), cbActiveVersion.Checked(), dhProducts.Data(), currentuser );
-      WebMessageBox::Success( "鎺ㄩ�佹垚鍔燂紒" );
+      msg             := AOnlineAndMOfflinePlanMS64::GenerateData( InterfaceDataset, ddslFactory.Text(), dsStartDate.Date(), dsEndDate.Date(), efVersionFrom.Text(), efVersionTo.Text(), cbActiveVersion.Checked(), dhProducts.Data(), currentuser );
+      WebMessageBox::Success( msg );
     }
     Form.Close();
   *]
diff --git a/_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_OnOk.def b/_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_OnOk.def
index 05d0b9e..e5d36b7 100644
--- a/_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_OnOk.def
+++ b/_Main/UI/MacroPlannerWebApp/Component_DialogZEDPPSPIR/Method_OnOk.def
@@ -7,8 +7,8 @@
   [*
     Form.ApplyChanges();
     if( WebMessageBox::Question( this, '鏄惁纭鎺ㄩ��', 'OK|Cancel' ) = 0 ){
-      AOnlineAndMOfflinePlanPIR::GenerateData( InterfaceDataset, ddslFactory.Text(), efVersion.Text(), dsStartDate.Date(), dsEndDate.Date(), QuintiqUser::CurrentUser().DisplayName() );
-      WebMessageBox::Success( "鎺ㄩ�佹垚鍔燂紒" );
+      msg   := AOnlineAndMOfflinePlanPIR::GenerateData( InterfaceDataset, ddslFactory.Text(), efVersion.Text(), dsStartDate.Date(), dsEndDate.Date(), QuintiqUser::CurrentUser().DisplayName() );
+      WebMessageBox::Success( msg );
     }
     Form.Close();
   *]

--
Gitblit v1.9.3