From ca14226903569c614172d572df169eb9470ec435 Mon Sep 17 00:00:00 2001
From: lvleigang <957075182@qq.com>
Date: Fri, 2 Aug 2024 10:34:00 +0800
Subject: [PATCH 1/7] =?UTF-8?q?oa=E9=94=80=E5=94=AE=E5=BC=80=E7=A5=A8?=
 =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E7=8A=B6=E6=80=81=E5=90=8C=E6=AD=A5u8c?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../plugin/SalesBillingPluginInitializer.java | 98 +++++++++++++++++++
 .../u8c/service/ISalesBillingService.java     | 17 ++++
 .../service/impl/SalesBillingServiceImpl.java | 31 ++++++
 .../cfgHome/plugin/u8c/pluginCfg.xml          |  6 ++
 .../u8c/spring/spring-buildpackage-plugin.xml |  5 +
 .../spring/spring-buildpackage-service.xml    |  5 +
 6 files changed, 162 insertions(+)
 create mode 100644 buildpackage/src/main/java/com/hzya/frame/plugin/u8c/plugin/SalesBillingPluginInitializer.java
 create mode 100644 buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/ISalesBillingService.java
 create mode 100644 buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/impl/SalesBillingServiceImpl.java
 create mode 100644 buildpackage/src/main/resources/cfgHome/plugin/u8c/pluginCfg.xml
 create mode 100644 buildpackage/src/main/resources/cfgHome/plugin/u8c/spring/spring-buildpackage-plugin.xml
 create mode 100644 buildpackage/src/main/resources/cfgHome/plugin/u8c/spring/spring-buildpackage-service.xml

diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/plugin/SalesBillingPluginInitializer.java b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/plugin/SalesBillingPluginInitializer.java
new file mode 100644
index 00000000..5aba75cb
--- /dev/null
+++ b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/plugin/SalesBillingPluginInitializer.java
@@ -0,0 +1,98 @@
+package com.hzya.frame.plugin.u8c.plugin;
+
+import com.alibaba.fastjson.JSONObject;
+import com.hzya.frame.base.PluginBaseEntity;
+import com.hzya.frame.plugin.u8c.service.ISalesBillingService;
+import com.hzya.frame.web.entity.JsonResultEntity;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+
+
+public class SalesBillingPluginInitializer extends PluginBaseEntity {
+    Logger logger = LoggerFactory.getLogger(SalesBillingPluginInitializer.class);
+
+    @Autowired
+    private ISalesBillingService salesBillingService;
+
+    /***
+     * 插件初始化方法
+     * @Author 👻👻👻👻👻👻👻👻 gjh
+     * @Date 2023-08-02 10:48
+     * @Param []
+     * @return void
+     **/
+    @Override
+    public void initialize() {
+
+    }
+
+    /****
+     * 插件销毁方法
+     * @author 👻👻👻👻👻👻👻👻 gjh
+     * @date 2023-08-02 10:48
+     * @return void
+     **/
+    @Override
+    public void destroy() {
+        logger.info(getPluginLabel() + "執行銷毀方法destroy()");
+    }
+
+    /****
+     * 插件的ID
+     * @author 👻👻👻👻👻👻👻👻 gjh
+     * @date 2023-08-02 10:48
+     * @return void
+     **/
+    @Override
+    public String getPluginId() {
+        return "SalesBillingPlugin";
+    }
+
+    /****
+     * 插件的名称
+     * @author 👻👻👻👻👻👻👻👻 gjh
+     * @date 2023-08-02 10:48
+     * @return void
+     **/
+    @Override
+    public String getPluginName() {
+        return "u8c销售开票审核状态同步插件";
+    }
+
+    /****
+     * 插件的显示值
+     * @author 👻👻👻👻👻👻👻👻 gjh
+     * @date 2023-08-02 10:48
+     * @return void
+     **/
+    @Override
+    public String getPluginLabel() {
+        return "u8c销售开票审核状态同步插件";
+    }
+
+    /***
+     * 插件类型 1、场景插件
+     * @Author 👻👻👻👻👻👻👻👻 gjh
+     * @Date 2023-08-02 14:01
+     * @Param []
+     * @return java.lang.String
+     **/
+    @Override
+    public String getPluginType() {
+        return "1";
+    }
+
+    /***
+     * 执行业务代码
+     * @Author 👻👻👻👻👻👻👻👻 gjh
+     * @Date 2023-08-07 11:20
+     * @param requestJson  执行业务代码的参数
+     * @return void
+     **/
+    @Override
+    public JsonResultEntity executeBusiness(JSONObject requestJson) throws Exception {
+        JsonResultEntity jsonResultEntity = salesBillingService.doSalesBilling(requestJson);
+        return jsonResultEntity;
+    }
+}
diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/ISalesBillingService.java b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/ISalesBillingService.java
new file mode 100644
index 00000000..ee491c26
--- /dev/null
+++ b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/ISalesBillingService.java
@@ -0,0 +1,17 @@
+package com.hzya.frame.plugin.u8c.service;
+
+import com.alibaba.fastjson.JSONObject;
+import com.hzya.frame.web.entity.JsonResultEntity;
+
+public interface ISalesBillingService {
+
+
+    /**
+     * @Author lvleigang
+     * @Description  同步销售开票审核状态
+     * @Date 10:21 上午 2024/8/2
+     * @param requestJson
+     * @return com.hzya.frame.web.entity.JsonResultEntity
+     **/
+    JsonResultEntity doSalesBilling(JSONObject requestJson);
+}
diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/impl/SalesBillingServiceImpl.java b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/impl/SalesBillingServiceImpl.java
new file mode 100644
index 00000000..d33ea735
--- /dev/null
+++ b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/impl/SalesBillingServiceImpl.java
@@ -0,0 +1,31 @@
+package com.hzya.frame.plugin.u8c.service.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.hzya.frame.plugin.u8c.service.ISalesBillingService;
+import com.hzya.frame.web.entity.JsonResultEntity;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Value;
+
+
+public class SalesBillingServiceImpl implements ISalesBillingService {
+
+    Logger logger = LoggerFactory.getLogger(SalesBillingServiceImpl.class);
+
+    @Value("${OA.data_source_code}")
+    private String oa_data_source_code;
+
+    /**
+     * @param requestJson
+     * @return com.hzya.frame.web.entity.JsonResultEntity
+     * @Author lvleigang
+     * @Description 同步销售开票审核状态
+     * @Date 10:21 上午 2024/8/2
+     **/
+    @Override
+    public JsonResultEntity doSalesBilling(JSONObject requestJson) {
+
+
+        return null;
+    }
+}
diff --git a/buildpackage/src/main/resources/cfgHome/plugin/u8c/pluginCfg.xml b/buildpackage/src/main/resources/cfgHome/plugin/u8c/pluginCfg.xml
new file mode 100644
index 00000000..c6c0d8e4
--- /dev/null
+++ b/buildpackage/src/main/resources/cfgHome/plugin/u8c/pluginCfg.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<plugin>
+<id>SalesBilling</id>
+<name>u8c插件</name>
+<category>202408020001</category>
+</plugin>
diff --git a/buildpackage/src/main/resources/cfgHome/plugin/u8c/spring/spring-buildpackage-plugin.xml b/buildpackage/src/main/resources/cfgHome/plugin/u8c/spring/spring-buildpackage-plugin.xml
new file mode 100644
index 00000000..593229f6
--- /dev/null
+++ b/buildpackage/src/main/resources/cfgHome/plugin/u8c/spring/spring-buildpackage-plugin.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
+<beans default-autowire="byName">
+<bean name="salesBillingPluginInitializer" class="com.hzya.frame.plugin.u8c.plugin.SalesBillingPluginInitializer" />
+</beans>
diff --git a/buildpackage/src/main/resources/cfgHome/plugin/u8c/spring/spring-buildpackage-service.xml b/buildpackage/src/main/resources/cfgHome/plugin/u8c/spring/spring-buildpackage-service.xml
new file mode 100644
index 00000000..c011db17
--- /dev/null
+++ b/buildpackage/src/main/resources/cfgHome/plugin/u8c/spring/spring-buildpackage-service.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
+<beans default-autowire="byName">
+    <bean name="salesBillingServiceImpl" class="com.hzya.frame.plugin.u8c.service.impl.SalesBillingServiceImpl" />
+</beans>

From 57ad64fb6d51a2ba876854a1cfd42ac6e4f1a782 Mon Sep 17 00:00:00 2001
From: yuqh <123456>
Date: Fri, 2 Aug 2024 15:20:21 +0800
Subject: [PATCH 2/7] 1

---
 .../plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java b/buildpackage/src/main/java/com/hzya/frame/plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java
index 15e50c1f..37cdeb34 100644
--- a/buildpackage/src/main/java/com/hzya/frame/plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java
+++ b/buildpackage/src/main/java/com/hzya/frame/plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java
@@ -474,7 +474,7 @@ public class MdmModulePluginInitializer extends PluginBaseEntity {
                     //查询主数据
                     MdmModuleEntity queryMdmModuleEntity = new MdmModuleEntity();
                     queryMdmModuleEntity.setSts("Y");
-                    queryMdmModuleEntity.setMdmCode(10021L);
+//                    queryMdmModuleEntity.setMdmCode(10021L);
                     List<MdmModuleEntity> mdmModuleEntities = mdmModuleDao.queryBase(queryMdmModuleEntity);
                     if(mdmModuleEntities == null || mdmModuleEntities.size() == 0){
                         return BaseResult.getSuccessMessageEntity("主数据未设置,不需要下发");

From e6f9c5824e13cdad3ca3bfc323fb7664976dd2bb Mon Sep 17 00:00:00 2001
From: lvleigang <957075182@qq.com>
Date: Fri, 2 Aug 2024 15:57:52 +0800
Subject: [PATCH 3/7] =?UTF-8?q?=E4=B8=BB=E6=95=B0=E6=8D=AE=E4=BF=AE?=
 =?UTF-8?q?=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../plugin/MdmModulePluginInitializer.java           | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java b/buildpackage/src/main/java/com/hzya/frame/plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java
index 3106085e..fc3be07e 100644
--- a/buildpackage/src/main/java/com/hzya/frame/plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java
+++ b/buildpackage/src/main/java/com/hzya/frame/plugin/mdmDistribute/plugin/MdmModulePluginInitializer.java
@@ -1009,6 +1009,18 @@ public class MdmModulePluginInitializer extends PluginBaseEntity {
                 parameterJson.put("body",apiEntity.getBodyIn());
                 parameterJson.put("query",apiEntity.getQueryIn());
                 parameterJson.put("data",doObjects.get(i));
+                //1、根据主数据id、数据id、应用ID默认查询主数据应用下发三方id表,只查询最新的一条数据
+                MdmModuleDistributeTripartiteEntity mdmModuleDistributeTripartiteEntity1 = new MdmModuleDistributeTripartiteEntity();
+                mdmModuleDistributeTripartiteEntity1.setSts("Y");
+                mdmModuleDistributeTripartiteEntity1.setMdmId(mdmId);
+                mdmModuleDistributeTripartiteEntity1.setDataId(objects.get(i).getString("id"));
+                mdmModuleDistributeTripartiteEntity1.setAppId(sysApplicationEntity.getId());
+                mdmModuleDistributeTripartiteEntity1 = mdmModuleDistributeTripartiteDao.queryOneTripartite(mdmModuleDistributeTripartiteEntity1);
+                String tripartiteId = "";
+                if(mdmModuleDistributeTripartiteEntity1 != null && mdmModuleDistributeTripartiteEntity1.getTripartiteId() != null  ){
+                    tripartiteId = mdmModuleDistributeTripartiteEntity1.getTripartiteId();
+                }
+                parameterJson.put("tripartiteId", tripartiteId);
                 /**  head */
                 Map<String, String> header = null;
                 /**  query */

From 99ad32eb0aef0f6199d159500645c76a64678c07 Mon Sep 17 00:00:00 2001
From: hecan <1718492867@qq.com>
Date: Mon, 5 Aug 2024 11:56:08 +0800
Subject: [PATCH 4/7] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=8E=A5=E5=8F=A3?=
 =?UTF-8?q?=E4=B8=AD=E6=A0=B9=E6=8D=AEdata=5Fid=E5=88=A4=E6=96=AD=E6=95=B0?=
 =?UTF-8?q?=E6=8D=AE=E6=98=AF=E5=90=A6=E5=B7=B2=E7=BB=8F=E4=BF=9D=E5=AD=98?=
 =?UTF-8?q?=E8=BF=87?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../service/impl/ComparisonServiceImpl.java       | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/service/src/main/java/com/hzya/frame/sysnew/comparison/service/impl/ComparisonServiceImpl.java b/service/src/main/java/com/hzya/frame/sysnew/comparison/service/impl/ComparisonServiceImpl.java
index 9defee72..fa22661d 100644
--- a/service/src/main/java/com/hzya/frame/sysnew/comparison/service/impl/ComparisonServiceImpl.java
+++ b/service/src/main/java/com/hzya/frame/sysnew/comparison/service/impl/ComparisonServiceImpl.java
@@ -206,11 +206,24 @@ public class ComparisonServiceImpl extends BaseService<ComparisonEntity, String>
            }
         }
         if(jsonObjectMain!=null && jsonObjectMain.size()>0) {
-              Map<String, Object> map = new HashMap<>();//将主表数据存到map中
+            Map<String, Object> map = new HashMap<>();//将主表数据存到map中
               List<List<Map<String, Object>>> mapDetails = new ArrayList<>();//将子表数据存到map中
               if (comparisonEntities != null && comparisonEntities.size() > 0) {
                   map = spliceMainMap(comparisonEntities, jsonObjectMain, map, comparisonEntity, comparisonDetailsEntity);
 
+                  //根据data_id判断数据是否已经保存在相关表中,避免重复保存
+                  List<String> fields = getFields(comparisonEntity);
+                  Map<String,Object> mapDataId=new HashMap<>();
+                  mapDataId.put("data_id",jsonObjectMain.getString("data_id"));
+                  ComparisonEntity comparisonDataId=new ComparisonEntity();
+                  comparisonDataId.setMap(mapDataId);
+                  comparisonDataId.setDbName(comparisonEntity.getDbName());
+                  comparisonDataId.setFields(fields);
+                  List<Map<String, Object>> listDataId = comparisonDao.queryComparisonPage(comparisonDataId);
+                  if(CollectionUtils.isNotEmpty(listDataId)){
+                      return BaseResult.getFailureMessageEntity(comparisonEntity.getDbName()+"表中已经存在data_id为:"+jsonObjectMain.getString("data_id")+"的数据");
+                  }
+
                   //判断输入的主表字段是否是必填项
                   for (ComparisonEntity entity : comparisonEntities) {
                       //如果必填字段不为空

From c5664ad86b164d140f1fa1db98cc3e6642ab70a8 Mon Sep 17 00:00:00 2001
From: lvleigang <957075182@qq.com>
Date: Mon, 5 Aug 2024 15:45:09 +0800
Subject: [PATCH 5/7] =?UTF-8?q?=E4=B8=9C=E8=BF=9BOA=E5=AE=A1=E6=89=B9?=
 =?UTF-8?q?=E7=BB=93=E6=9E=9C=E5=9B=9E=E4=BC=A0U8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../u8c/service/ISalesBillingService.java     |   2 +-
 .../service/impl/SalesBillingServiceImpl.java | 120 +++++++++++++++++-
 .../src/main/resources/application-llg.yml    |   2 +-
 .../cfgHome/plugin/u8c/pluginCfg.xml          |   2 +-
 .../salesBilling/dao/IU8cSalesBillingDao.java |  20 +++
 .../dao/impl/U8cSalesBillingDaoImpl.java      |  29 +++++
 .../entity/U8cSalesBillingEntity.java         | 111 ++++++++++++++++
 .../entity/U8cSalesBillingEntity.xml          |  40 ++++++
 .../service/IU8cSalesBillingService.java      |  13 ++
 .../impl/U8cSalesBillingServiceImpl.java      |  35 +++++
 10 files changed, 370 insertions(+), 4 deletions(-)
 create mode 100644 service/src/main/java/com/hzya/frame/u8c/salesBilling/dao/IU8cSalesBillingDao.java
 create mode 100644 service/src/main/java/com/hzya/frame/u8c/salesBilling/dao/impl/U8cSalesBillingDaoImpl.java
 create mode 100644 service/src/main/java/com/hzya/frame/u8c/salesBilling/entity/U8cSalesBillingEntity.java
 create mode 100644 service/src/main/java/com/hzya/frame/u8c/salesBilling/entity/U8cSalesBillingEntity.xml
 create mode 100644 service/src/main/java/com/hzya/frame/u8c/salesBilling/service/IU8cSalesBillingService.java
 create mode 100644 service/src/main/java/com/hzya/frame/u8c/salesBilling/service/impl/U8cSalesBillingServiceImpl.java

diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/ISalesBillingService.java b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/ISalesBillingService.java
index ee491c26..5b0b6184 100644
--- a/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/ISalesBillingService.java
+++ b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/ISalesBillingService.java
@@ -8,7 +8,7 @@ public interface ISalesBillingService {
 
     /**
      * @Author lvleigang
-     * @Description  同步销售开票审核状态
+     * @Description  OA同步销售开票审核状态到U8C
      * @Date 10:21 上午 2024/8/2
      * @param requestJson
      * @return com.hzya.frame.web.entity.JsonResultEntity
diff --git a/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/impl/SalesBillingServiceImpl.java b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/impl/SalesBillingServiceImpl.java
index d33ea735..6318757b 100644
--- a/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/impl/SalesBillingServiceImpl.java
+++ b/buildpackage/src/main/java/com/hzya/frame/plugin/u8c/service/impl/SalesBillingServiceImpl.java
@@ -1,12 +1,23 @@
 package com.hzya.frame.plugin.u8c.service.impl;
 
+import cn.hutool.core.map.MapBuilder;
+import cn.hutool.http.HttpRequest;
+import cn.hutool.json.JSONUtil;
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.hzya.frame.plugin.u8c.service.ISalesBillingService;
+import com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity;
+import com.hzya.frame.u8c.salesBilling.service.IU8cSalesBillingService;
+import com.hzya.frame.web.entity.BaseResult;
 import com.hzya.frame.web.entity.JsonResultEntity;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 
+import java.util.List;
+import java.util.Map;
+
 
 public class SalesBillingServiceImpl implements ISalesBillingService {
 
@@ -14,6 +25,13 @@ public class SalesBillingServiceImpl implements ISalesBillingService {
 
     @Value("${OA.data_source_code}")
     private String oa_data_source_code;
+    @Autowired
+    private IU8cSalesBillingService iu8cSalesBillingService;
+
+    private final String appId = "800035";
+    private final String apiCode = "8000350047";
+    private final String publicKey = "ZJYATW/MfYZX7zF0eAh4DJXbyTLwUtwSoSz5Y/o1ksAaN/dCe7eDIk+3zDUT+v578prj";
+    private final String secretKey = "+5BUkLQh3iX3VHgEt5bE2IPh+ZeebGvDaEspsvVu739Ar6sFnwg+fpPod4t6XhoTj3JzOP8MtA1LSGvL+2BWG8c/o7DKi92S4mr3zcGearA=";
 
     /**
      * @param requestJson
@@ -24,8 +42,108 @@ public class SalesBillingServiceImpl implements ISalesBillingService {
      **/
     @Override
     public JsonResultEntity doSalesBilling(JSONObject requestJson) {
+        //查询需要同步的数据
+
+        try {
+            U8cSalesBillingEntity u8cSalesBillingEntity = new U8cSalesBillingEntity();
+            u8cSalesBillingEntity.setDataSourceCode(oa_data_source_code);
+            List<U8cSalesBillingEntity> u8cSalesBillingEntities = iu8cSalesBillingService.queryDoSalesBilling(u8cSalesBillingEntity);
+
+            if (u8cSalesBillingEntities != null && u8cSalesBillingEntities.size() > 0) {
+                for (int i = 0; i < u8cSalesBillingEntities.size(); i++) {
+                    U8cSalesBillingEntity entity = u8cSalesBillingEntities.get(i);
+                    String params = getSendData(entity);
+                    //发送数据
+                    String returnData = executeEsb(params,appId,apiCode,publicKey,secretKey);
+                    //解析结果
+                    boolean flag = analyzeReturnData(returnData);
+                    if(flag){
+                        entity.setPushStatus("Y");
+                    }else {
+                        entity.setPushStatus("N");
+                    }
+                    entity.setDataSourceCode(oa_data_source_code);
+                    iu8cSalesBillingService.updateDoSalesBilling(entity);
+                }
+                return BaseResult.getSuccessMessageEntity("同步销售开票审核状态成功");
+            } else {
+                return BaseResult.getSuccessMessageEntity("同步销售开票审核状态成功");
+            }
+        } catch (Exception e) {
+            return BaseResult.getFailureMessageEntity("同步销售开票审核状态失败" + e.getMessage());
+        }
+    }
+
+    /**
+     * @Author lvleigang
+     * @Description  解析返回状态
+     * @Date 2:50 下午 2024/8/2
+     * @param returnData
+     * @return boolean
+     **/
+    private boolean analyzeReturnData(String returnData) {
+        boolean falg = false ;
+        if (JSONUtil.isTypeJSON(returnData)) {
+            JSONObject jsonObject = JSONObject.parseObject(returnData);
+            if(jsonObject != null && jsonObject.get("flag") != null && jsonObject.getBoolean("flag")) {
+                JSONObject attribute = jsonObject.getJSONObject("attribute");
+                if(attribute != null && attribute.get("status") != null && "success".equals(attribute.getString("status"))) {
+                    falg = true;
+                }
+            }
+        }
+        return falg;
+    }
+
+    private String getSendData(U8cSalesBillingEntity entity) {
+        String params = "";
+        //{
+        //	"queryinfo": {
+        //		"code": [
+        //			"SITH1904180026",
+        //			"SOTH1805240023"
+        //		],
+        //		"corp": "1000",
+        //		"date_begin": "2019-03-24",
+        //		"date_end": "2019-05-24"
+        //	},
+        //	"approveinfo": {
+        //		"approvid": "18612329914",
+        //		"approveDate": "2018-04-19",
+        //		"status": "Y",
+        //		"note": "哈哈"
+        //	}
+        //}
+        JSONObject data = new JSONObject();
+        JSONObject queryinfo = new JSONObject();
+        JSONObject approveinfo = new JSONObject();
+        JSONArray code = new JSONArray();
+        code.add(entity.getCode());//单据号
+        queryinfo.put("code", code);
+        queryinfo.put("corp", entity.getCorp());//公司编码
+        queryinfo.put("date_begin", entity.getDateBegin());//单据开始日期
+        queryinfo.put("date_end", entity.getDateEnd());//单据结束日期
+        approveinfo.put("approvid", entity.getApprovid());//审批人
+        approveinfo.put("approveDate", entity.getApprovedate());//审核时间
+        approveinfo.put("status", entity.getStatus());//审批状态(Y:通过,N:不通过,R:驳回)
+        approveinfo.put("note", entity.getNote());//批语
+
+        data.put("queryinfo", queryinfo);
+        data.put("approveinfo", approveinfo);
+        params = data.toJSONString();
+        return params;
+    }
 
 
-        return null;
+    public String executeEsb(String params, String appId, String apiCode, String publicKey, String secretKey) {
+        logger.info("请求apiCode:{},参数:{}", apiCode, params);
+        Map<String, String> header = MapBuilder.<String, String>create(true)
+                .put("apiCode", apiCode)
+                .put("publicKey", publicKey)
+                .put("secretKey", secretKey)
+                .put("appId", appId)
+                .build();
+        String res = HttpRequest.post("http://127.0.0.1:9999/kangarooDataCenterV3/entranceController/externalCallInterface").addHeaders(header).body(params).timeout(60000).execute().body();
+        return res;
     }
 }
diff --git a/buildpackage/src/main/resources/application-llg.yml b/buildpackage/src/main/resources/application-llg.yml
index 2920f2eb..f24d567c 100644
--- a/buildpackage/src/main/resources/application-llg.yml
+++ b/buildpackage/src/main/resources/application-llg.yml
@@ -49,4 +49,4 @@ cbs8:
   #电子回单下载临时存放位置
   elec_path: /Users/xiangerlin/Downloads/
 OA:
-  data_source_code: yc_oa
\ No newline at end of file
+  data_source_code: djoatest
\ No newline at end of file
diff --git a/buildpackage/src/main/resources/cfgHome/plugin/u8c/pluginCfg.xml b/buildpackage/src/main/resources/cfgHome/plugin/u8c/pluginCfg.xml
index c6c0d8e4..70c76f15 100644
--- a/buildpackage/src/main/resources/cfgHome/plugin/u8c/pluginCfg.xml
+++ b/buildpackage/src/main/resources/cfgHome/plugin/u8c/pluginCfg.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <plugin>
-<id>SalesBilling</id>
+<id>SalesBillingPlugin</id>
 <name>u8c插件</name>
 <category>202408020001</category>
 </plugin>
diff --git a/service/src/main/java/com/hzya/frame/u8c/salesBilling/dao/IU8cSalesBillingDao.java b/service/src/main/java/com/hzya/frame/u8c/salesBilling/dao/IU8cSalesBillingDao.java
new file mode 100644
index 00000000..ce8ccd13
--- /dev/null
+++ b/service/src/main/java/com/hzya/frame/u8c/salesBilling/dao/IU8cSalesBillingDao.java
@@ -0,0 +1,20 @@
+package com.hzya.frame.u8c.salesBilling.dao;
+
+import com.hzya.frame.basedao.dao.IBaseDao;
+import com.hzya.frame.mdm.mdmModule.entity.MdmModuleEntity;
+import com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity;
+
+import java.util.List;
+
+/**
+ * 脚本表(u8c_sales_billing: table)表数据库访问层
+ *
+ * @author makejava
+ * @since 2024-08-02 11:07:43
+ */
+public interface IU8cSalesBillingDao extends IBaseDao<U8cSalesBillingEntity, String> {
+    List<U8cSalesBillingEntity> queryDoSalesBilling(U8cSalesBillingEntity entity);
+
+    int updateDoSalesBilling(U8cSalesBillingEntity entity);
+}
+
diff --git a/service/src/main/java/com/hzya/frame/u8c/salesBilling/dao/impl/U8cSalesBillingDaoImpl.java b/service/src/main/java/com/hzya/frame/u8c/salesBilling/dao/impl/U8cSalesBillingDaoImpl.java
new file mode 100644
index 00000000..411317d0
--- /dev/null
+++ b/service/src/main/java/com/hzya/frame/u8c/salesBilling/dao/impl/U8cSalesBillingDaoImpl.java
@@ -0,0 +1,29 @@
+package com.hzya.frame.u8c.salesBilling.dao.impl;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.hzya.frame.basedao.dao.MybatisGenericDao;
+import com.hzya.frame.mdm.mdmModule.entity.MdmModuleEntity;
+import com.hzya.frame.u8c.salesBilling.dao.IU8cSalesBillingDao;
+import com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Repository(value = "U8cSalesBillingDaoImpl")
+public class U8cSalesBillingDaoImpl extends MybatisGenericDao<U8cSalesBillingEntity, String> implements IU8cSalesBillingDao{
+    @DS("#entity.dataSourceCode")
+    @Override
+    public List<U8cSalesBillingEntity> queryDoSalesBilling(U8cSalesBillingEntity entity) {
+        List<U8cSalesBillingEntity> o = (List<U8cSalesBillingEntity>) super.selectList(getSqlIdPrifx() + "queryDoSalesBilling", entity);
+        return o;
+    }
+
+
+    @DS("#entity.dataSourceCode")
+    @Override
+    public int updateDoSalesBilling(U8cSalesBillingEntity entity) {
+        Integer o = super.update(getSqlIdPrifx() + "updateDoSalesBilling", entity);
+        return o;
+    }
+}
+
diff --git a/service/src/main/java/com/hzya/frame/u8c/salesBilling/entity/U8cSalesBillingEntity.java b/service/src/main/java/com/hzya/frame/u8c/salesBilling/entity/U8cSalesBillingEntity.java
new file mode 100644
index 00000000..ff4c1951
--- /dev/null
+++ b/service/src/main/java/com/hzya/frame/u8c/salesBilling/entity/U8cSalesBillingEntity.java
@@ -0,0 +1,111 @@
+package com.hzya.frame.u8c.salesBilling.entity;
+
+
+import com.hzya.frame.web.entity.BaseEntity;
+
+public class U8cSalesBillingEntity extends BaseEntity {
+ 
+  /**  单据号 */
+   private String code;
+  /**  公司编码 */
+   private String corp;
+  /**  单据开始日期 */
+   private String dateBegin;
+  /**  单据结束日期 */
+   private String dateEnd;
+  /**  审批人 */
+   private String approvid;
+  /**  审核时间 */
+   private String approvedate;
+  /**  审批状态(Y:通过,N:不通过,R:驳回) */
+   private String status;
+  /**  批语 */
+   private String note;
+   //数据源
+    private String dataSourceCode;
+   //推送状态 Y成功N失败
+    private String pushStatus;
+
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getCorp() {
+        return corp;
+    }
+
+    public void setCorp(String corp) {
+        this.corp = corp;
+    }
+
+    public String getDateBegin() {
+        return dateBegin;
+    }
+
+    public void setDateBegin(String dateBegin) {
+        this.dateBegin = dateBegin;
+    }
+
+    public String getDateEnd() {
+        return dateEnd;
+    }
+
+    public void setDateEnd(String dateEnd) {
+        this.dateEnd = dateEnd;
+    }
+
+    public String getApprovid() {
+        return approvid;
+    }
+
+    public void setApprovid(String approvid) {
+        this.approvid = approvid;
+    }
+
+    public String getApprovedate() {
+        return approvedate;
+    }
+
+    public void setApprovedate(String approvedate) {
+        this.approvedate = approvedate;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getNote() {
+        return note;
+    }
+
+    public void setNote(String note) {
+        this.note = note;
+    }
+
+    @Override
+    public String getDataSourceCode() {
+        return dataSourceCode;
+    }
+
+    @Override
+    public void setDataSourceCode(String dataSourceCode) {
+        this.dataSourceCode = dataSourceCode;
+    }
+
+    public String getPushStatus() {
+        return pushStatus;
+    }
+
+    public void setPushStatus(String pushStatus) {
+        this.pushStatus = pushStatus;
+    }
+}
+
diff --git a/service/src/main/java/com/hzya/frame/u8c/salesBilling/entity/U8cSalesBillingEntity.xml b/service/src/main/java/com/hzya/frame/u8c/salesBilling/entity/U8cSalesBillingEntity.xml
new file mode 100644
index 00000000..e3f49a5d
--- /dev/null
+++ b/service/src/main/java/com/hzya/frame/u8c/salesBilling/entity/U8cSalesBillingEntity.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.hzya.frame.u8c.salesBilling.dao.impl.U8cSalesBillingDaoImpl">
+
+    <resultMap id="get-U8cSalesBillingEntity-result" type="com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity" >
+           <result property="code" column="code" jdbcType="VARCHAR"/>
+           <result property="corp" column="corp" jdbcType="VARCHAR"/>
+           <result property="dateBegin" column="date_begin" jdbcType="VARCHAR"/>
+           <result property="dateEnd" column="date_end" jdbcType="VARCHAR"/>
+           <result property="approvid" column="approvid" jdbcType="VARCHAR"/>
+           <result property="approvedate" column="approveDate" jdbcType="VARCHAR"/>
+           <result property="status" column="status" jdbcType="VARCHAR"/>
+           <result property="note" column="note" jdbcType="VARCHAR"/>
+        </resultMap>
+    <!-- 查询的字段-->
+
+    <!-- 分页查询列表 采用like格式 -->
+    <select id="queryDoSalesBilling" resultType="com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity" parameterType = "com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity">
+        SELECT
+            formmain_0049.id as id,
+            formmain_0049.field0001 as code, -- 单据号
+            formmain_0049.field0045 as corp, -- 公司编码
+            CONVERT(varchar,formmain_0049.start_date, 23)  as dateBegin,-- 单据开始日期
+            CONVERT(varchar,formmain_0049.modify_date, 23) as dateEnd, -- 单据结束日期
+            '15639671252' as approvid, -- 审批人
+            CONVERT(varchar,formmain_0049.modify_date, 23) as approvedate, -- 审核时间
+            case when COL_SUMMARY.STATE = '1' then 'R' when COL_SUMMARY.STATE = '3' then 'Y' ELSE 'Y' END as status, -- 审批状态(Y:通过,N:不通过,R:驳回)
+            '已阅' as note -- 批语
+        FROM
+            formmain_0049
+                LEFT JOIN COL_SUMMARY ON COL_SUMMARY.FORM_RECORDID = formmain_0049.id
+        WHERE formmain_0049.field0044 is NULL  and  COL_SUMMARY.STATE in ( '1','3','0')
+    </select>
+    <update id="updateDoSalesBilling" parameterType="com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity">
+        update formmain_0049 set
+            field0044 = #{pushStatus}
+        where id = #{id}
+    </update>
+</mapper>
+
diff --git a/service/src/main/java/com/hzya/frame/u8c/salesBilling/service/IU8cSalesBillingService.java b/service/src/main/java/com/hzya/frame/u8c/salesBilling/service/IU8cSalesBillingService.java
new file mode 100644
index 00000000..80b7b9e5
--- /dev/null
+++ b/service/src/main/java/com/hzya/frame/u8c/salesBilling/service/IU8cSalesBillingService.java
@@ -0,0 +1,13 @@
+package com.hzya.frame.u8c.salesBilling.service;
+
+import com.hzya.frame.basedao.service.IBaseService;
+import com.hzya.frame.mdm.mdmModule.entity.MdmModuleEntity;
+import com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity;
+
+import java.util.List;
+
+public interface IU8cSalesBillingService extends IBaseService<U8cSalesBillingEntity, String> {
+    List<U8cSalesBillingEntity> queryDoSalesBilling(U8cSalesBillingEntity u8cSalesBillingEntity);
+
+    int updateDoSalesBilling(U8cSalesBillingEntity entity);
+}
diff --git a/service/src/main/java/com/hzya/frame/u8c/salesBilling/service/impl/U8cSalesBillingServiceImpl.java b/service/src/main/java/com/hzya/frame/u8c/salesBilling/service/impl/U8cSalesBillingServiceImpl.java
new file mode 100644
index 00000000..56ea26f8
--- /dev/null
+++ b/service/src/main/java/com/hzya/frame/u8c/salesBilling/service/impl/U8cSalesBillingServiceImpl.java
@@ -0,0 +1,35 @@
+package com.hzya.frame.u8c.salesBilling.service.impl;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.hzya.frame.basedao.service.impl.BaseService;
+import com.hzya.frame.mdm.mdmModule.dao.IMdmModuleDao;
+import com.hzya.frame.u8c.salesBilling.dao.IU8cSalesBillingDao;
+import com.hzya.frame.u8c.salesBilling.entity.U8cSalesBillingEntity;
+import com.hzya.frame.u8c.salesBilling.service.IU8cSalesBillingService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+@Service(value = "u8cSalesBillingService")
+public class U8cSalesBillingServiceImpl extends BaseService<U8cSalesBillingEntity, String> implements IU8cSalesBillingService {
+
+    private IU8cSalesBillingDao u8cSalesBillingDao;
+
+    @Autowired
+	public void setU8cSalesBillingDao(IU8cSalesBillingDao dao) {
+		this.u8cSalesBillingDao = dao;
+        this.dao = dao;
+    }
+    @Override
+    public List<U8cSalesBillingEntity> queryDoSalesBilling(U8cSalesBillingEntity entity) {
+        List<U8cSalesBillingEntity> u8cSalesBillingEntityList = u8cSalesBillingDao.queryDoSalesBilling(entity);
+        return u8cSalesBillingEntityList;
+    }
+
+    @Override
+    public int updateDoSalesBilling(U8cSalesBillingEntity entity) {
+        return u8cSalesBillingDao.updateDoSalesBilling(entity);
+    }
+}

From 8ece0ab087872139af89b52d116e6f70d2e9465e Mon Sep 17 00:00:00 2001
From: yuqh <123456>
Date: Tue, 6 Aug 2024 15:43:39 +0800
Subject: [PATCH 6/7] 1

---
 common/src/main/java/com/hzya/frame/util/GroovyUtil.java | 1 +
 1 file changed, 1 insertion(+)

diff --git a/common/src/main/java/com/hzya/frame/util/GroovyUtil.java b/common/src/main/java/com/hzya/frame/util/GroovyUtil.java
index eec3019b..2b88f25f 100644
--- a/common/src/main/java/com/hzya/frame/util/GroovyUtil.java
+++ b/common/src/main/java/com/hzya/frame/util/GroovyUtil.java
@@ -51,6 +51,7 @@ public class GroovyUtil {
             logger.info("创建newInstance失败:"+ e);
             throw new BaseSystemException(e);
         }
+        logger.info("开始执行脚本:"+parameterJson);
          Object  returnObj = groovyObject.invokeMethod("execute",parameterJson);
         logger.info("执行脚本结束:"+returnObj);
         return returnObj;

From 9f6009bd9639c9199cae6a8d432ccf67ff080337 Mon Sep 17 00:00:00 2001
From: yuqh <123456>
Date: Tue, 6 Aug 2024 15:44:18 +0800
Subject: [PATCH 7/7] 1

---
 .../impl/GroovyIntegrationServiceImpl.java    | 73 ++++++++++---------
 1 file changed, 38 insertions(+), 35 deletions(-)

diff --git a/service/src/main/java/com/hzya/frame/sysnew/grovy/service/impl/GroovyIntegrationServiceImpl.java b/service/src/main/java/com/hzya/frame/sysnew/grovy/service/impl/GroovyIntegrationServiceImpl.java
index a93ed74b..e8c9e6e0 100644
--- a/service/src/main/java/com/hzya/frame/sysnew/grovy/service/impl/GroovyIntegrationServiceImpl.java
+++ b/service/src/main/java/com/hzya/frame/sysnew/grovy/service/impl/GroovyIntegrationServiceImpl.java
@@ -34,49 +34,32 @@ public class GroovyIntegrationServiceImpl implements IGroovyIntegrationService {
     }
 
     public static void main(String[] args) {
-//        java.lang.String str = "{\"data\":{\"document_rule\":\"WLFL-2024-07-31-00025\",\"create_user_id\":\"1\",\"create_time\":1722405930000,\"company_id\":\"Y\",\"modify_time\":1722405930000,\"materiel_classify_name\":\"测试下发一级\",\"document_rule_num\":25,\"materiel_classify_code\":\"09\",\"add_status\":\"0\",\"update_status\":\"0\",\"sts\":\"Y\",\"delete_status\":\"1\",\"org_id\":\"Y\",\"id\":\"3dac9727cc0648baa8c1355464ad44b8\",\"data_status\":\"F\",\"modify_user_id\":\"1\",\"sorts\":34},\"query\":\"[]\",\"header\":\"[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":0,\\\"parameterName\\\":\\\"usercode\\\",\\\"id\\\":\\\"e2c4013a-a5ad-4d21-9e91-aac0dd738838\\\",\\\"example\\\":\\\"17633965916\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":1,\\\"parameterName\\\":\\\"password\\\",\\\"id\\\":\\\"22373440-45f5-450c-9497-40ede659e831\\\",\\\"example\\\":\\\"92d40fd65a74377608c0039eaafdba99\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":2,\\\"parameterName\\\":\\\"trantype\\\",\\\"id\\\":\\\"12fd925a-29c1-42ca-a3e6-edf3c925c495\\\",\\\"example\\\":\\\"code\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":3,\\\"parameterName\\\":\\\"system\\\",\\\"id\\\":\\\"11dd627c-bb82-4304-bff0-2ba54e2b8907\\\",\\\"example\\\":\\\"01\\\"}]\",\"tripartiteId\":\"0001A110000000000R6D\",\"body\":\"[{\\\"parameterType\\\":\\\"complex\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"complexlist\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":2,\\\"description\\\":\\\"分类编码\\\",\\\"parameterName\\\":\\\"invclasscode\\\",\\\"id\\\":\\\"3b2af319-87c8-400a-b38a-d54f9b207f26\\\",\\\"example\\\":\\\"04\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":3,\\\"description\\\":\\\"分类名称\\\",\\\"parameterName\\\":\\\"invclassname\\\",\\\"id\\\":\\\"7c5bd695-ed84-4a92-a1c7-31c862e98d21\\\",\\\"example\\\":\\\"成品测试1\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":4,\\\"description\\\":\\\"公司编码默认0001\\\",\\\"parameterName\\\":\\\"pk_corp\\\",\\\"id\\\":\\\"482d659b-b374-4fb5-b31b-32bca4a6d8be\\\",\\\"example\\\":\\\"0001\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":5,\\\"description\\\":\\\"分类主键\\\",\\\"parameterName\\\":\\\"pk_invcl\\\",\\\"id\\\":\\\"3fa6caac-e0cd-4ec7-8df4-7c990504ee25\\\",\\\"example\\\":\\\"0001F11000000000I6NN\\\"}],\\\"concreteType\\\":\\\"ObjectCom\\\",\\\"index\\\":1,\\\"parameterName\\\":\\\"invcl\\\",\\\"id\\\":\\\"0638670a-e65d-46e1-aabd-adc7a956c4cb\\\"}],\\\"concreteType\\\":\\\"Object\\\",\\\"index\\\":0,\\\"id\\\":\\\"81cdd912-9bf3-4cb4-b74f-2a8ee27de93a\\\",\\\"parameterName\\\":\\\"body\\\",\\\"first\\\":true}]\"}";
-//        A88772 s = new A88772();
-//        System.out.println(s.execute(str));
+        java.lang.String str = "{\"data\":{\"pk_areacl\":\"01\",\"document_rule\":\"KH-2024-08-02-00001\",\"create_user_id\":\"1\",\"code\":\"K202408010001\",\"create_time\":1722580487000,\"company_id\":\"Y\",\"modify_time\":1722580487000,\"document_rule_num\":1,\"mdm_customer_bank\":[],\"add_status\":\"0\",\"update_status\":\"1\",\"sts\":\"Y\",\"delete_status\":\"1\",\"org_id\":\"Y\",\"name\":\"测试手动下发\",\"id\":\"f0daa2ce563949968aeb2b4cfd7f4fad\",\"data_status\":\"Y\",\"modify_user_id\":\"1\",\"sorts\":136,\"custshortname\":\"测试手动下发\"},\"query\":\"[]\",\"header\":\"[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":0,\\\"parameterName\\\":\\\"usercode\\\",\\\"id\\\":\\\"7e7c7f83-9cb1-491d-bd1a-d23744bacba8\\\",\\\"example\\\":\\\"17633965916\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":1,\\\"parameterName\\\":\\\"password\\\",\\\"id\\\":\\\"e6c1a7c7-0bcc-4246-b62c-e2313b092438\\\",\\\"example\\\":\\\"92d40fd65a74377608c0039eaafdba99\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":2,\\\"parameterName\\\":\\\"trantype\\\",\\\"id\\\":\\\"b4ff0ceb-d797-462a-8c93-124f5a053628\\\",\\\"example\\\":\\\"code\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":3,\\\"parameterName\\\":\\\"system\\\",\\\"id\\\":\\\"a8962ee0-108f-427a-8862-8f8e5c8e61ab\\\",\\\"example\\\":\\\"01\\\"}]\",\"body\":\"[{\\\"parameterType\\\":\\\"complexlist\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"complexlist\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":2,\\\"parameterName\\\":\\\"accname\\\",\\\"id\\\":\\\"69014133-b81e-4a9d-82fc-7c29821e77f9\\\",\\\"example\\\":\\\"666601\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":3,\\\"parameterName\\\":\\\"account\\\",\\\"id\\\":\\\"51980e53-c1dd-448a-bf36-d24fd817b1a5\\\",\\\"example\\\":\\\"test001\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":4,\\\"parameterName\\\":\\\"accountname\\\",\\\"id\\\":\\\"97111e2d-8df9-4465-a241-e1969b032287\\\",\\\"example\\\":\\\"zy测试银行账户\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":5,\\\"parameterName\\\":\\\"banktypename\\\",\\\"id\\\":\\\"176cd4c8-5228-4dd6-bee7-2101f09a16d3\\\",\\\"example\\\":\\\"6666\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":6,\\\"parameterName\\\":\\\"defflag\\\",\\\"id\\\":\\\"8d833cbf-a396-41af-ba52-cb58b3aa5a74\\\",\\\"example\\\":\\\"Y\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":7,\\\"parameterName\\\":\\\"pk_currtype\\\",\\\"id\\\":\\\"d80241ec-c9fb-480c-9e0a-bd1589595a20\\\",\\\"example\\\":\\\"CNY\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":8,\\\"parameterName\\\":\\\"status\\\",\\\"id\\\":\\\"2c7d4b42-b26e-4aa9-a294-3b330e08cf70\\\",\\\"example\\\":\\\"2\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":9,\\\"parameterName\\\":\\\"unitname\\\",\\\"id\\\":\\\"9e6a593f-e35f-456e-879a-41d3d63bb94b\\\",\\\"example\\\":\\\"测试001\\\"}],\\\"concreteType\\\":\\\"ObjectCom\\\",\\\"index\\\":1,\\\"parameterName\\\":\\\"banks\\\",\\\"id\\\":\\\"3815c339-d96b-40d6-a96c-81b8cf68be28\\\"},{\\\"parameterType\\\":\\\"complex\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":11,\\\"parameterName\\\":\\\"conaddr\\\",\\\"id\\\":\\\"b5990933-94e0-4015-9f53-2ce6fa9bc3da\\\",\\\"example\\\":\\\"测试33145411113\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":12,\\\"parameterName\\\":\\\"creator\\\",\\\"id\\\":\\\"f0cce0b5-b5fa-4ea7-8f15-f1ac075eb7f1\\\",\\\"example\\\":\\\"0001F8100000000000PL\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":13,\\\"parameterName\\\":\\\"custcode\\\",\\\"id\\\":\\\"853453c3-dad1-4155-998b-9d1c4b8e2acd\\\",\\\"example\\\":\\\"ceshi007\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":14,\\\"parameterName\\\":\\\"custname\\\",\\\"id\\\":\\\"2b06423d-827a-465d-b829-42471733fa51\\\",\\\"example\\\":\\\"测试007\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":15,\\\"parameterName\\\":\\\"custprop\\\",\\\"id\\\":\\\"c4277bcb-7d80-4c12-8508-935086e2c7df\\\",\\\"example\\\":\\\"0\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":16,\\\"parameterName\\\":\\\"custshortname\\\",\\\"id\\\":\\\"6c02f4ec-618c-4973-babe-a0c81c179743\\\",\\\"example\\\":\\\"测试007\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":17,\\\"parameterName\\\":\\\"freecustflag\\\",\\\"id\\\":\\\"48c1d795-4396-4189-8f22-9228b2424fce\\\",\\\"example\\\":\\\"N\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":18,\\\"parameterName\\\":\\\"isconnflag\\\",\\\"id\\\":\\\"92be035c-eb7c-46be-a2c3-5e48ce18cf4f\\\",\\\"example\\\":\\\"N\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":19,\\\"parameterName\\\":\\\"pk_areacl\\\",\\\"id\\\":\\\"8bc3d731-ab42-46d5-afc3-3227de0df96b\\\",\\\"example\\\":\\\"01\\\"}],\\\"concreteType\\\":\\\"Object\\\",\\\"index\\\":10,\\\"parameterName\\\":\\\"parentvo\\\",\\\"id\\\":\\\"627af933-4b7f-433b-beb5-f2a49b50cfaa\\\"}],\\\"concreteType\\\":\\\"ObjectCom\\\",\\\"index\\\":0,\\\"parameterName\\\":\\\"cbdocvo\\\",\\\"id\\\":\\\"33aac70c-d95a-475d-8f98-28925223f305\\\"}]\"}";
+        A88772 s = new A88772();
+        System.out.println(s.execute(str));
 
-        String str = "{\"data\":\"{\\\"msg\\\":\\\"转发成功\\\",\\\"type\\\":null,\\\"flag\\\":true,\\\"status\\\":\\\"200\\\",\\\"attribute\\\":{\\\"data\\\":\\\"[{\\\\\\\"pk_invcl\\\\\\\":\\\\\\\"0001A110000000000QPW\\\\\\\",\\\\\\\"invclasscode\\\\\\\":\\\\\\\"09\\\\\\\",\\\\\\\"invclassname\\\\\\\":\\\\\\\"测试下发一级\\\\\\\",\\\\\\\"invclasslev\\\\\\\":\\\\\\\"1\\\\\\\",\\\\\\\"pk_corp\\\\\\\":\\\\\\\"0001\\\\\\\"}]\\\",\\\"taskNumber\\\":\\\"202407310125\\\",\\\"status\\\":\\\"success\\\"}}\"}";
-        g_482610back t = new g_482610back();
-        System.out.println(t.execute(str));
-    }
-    static class test0001{
-        String execute(String jsonStr) {
-            com.alibaba.fastjson.JSONObject returnObject = new com.alibaba.fastjson.JSONObject();
-            com.alibaba.fastjson.JSONObject reqData = com.alibaba.fastjson.JSON.parseObject(jsonStr);
-            if(null !=reqData){
-                com.alibaba.fastjson.JSONObject header = new com.alibaba.fastjson.JSONObject();
-                if(null !=reqData.getString("status")&& !"".equals(reqData.getString("status"))){
-                    com.alibaba.fastjson.JSONArray dataArr = com.alibaba.fastjson.JSON.parseArray(reqData.getString("data"));
-                    com.alibaba.fastjson.JSONObject data = (JSONObject) dataArr.get(0);
-                    returnObject.put("success","true");
-                    returnObject.put("tripartiteId",data.getString("pk_invcl"));
-                }else{
-                    returnObject.put("success","false");
-                }
-            }else{
-                returnObject.put("success","false");
-            }
-            return returnObject.toJSONString();
-        }
+//        String str = "{\"data\":\"{\\\"msg\\\":\\\"转发成功\\\",\\\"type\\\":null,\\\"flag\\\":true,\\\"status\\\":\\\"200\\\",\\\"attribute\\\":{\\\"data\\\":\\\"[{\\\\\\\"parentvo\\\\\\\":{\\\\\\\"pk_corp\\\\\\\":\\\\\\\"0001\\\\\\\",\\\\\\\"invcode\\\\\\\":\\\\\\\"CS202408020001\\\\\\\",\\\\\\\"invname\\\\\\\":\\\\\\\"测试存货档案\\\\\\\",\\\\\\\"pk_invcl\\\\\\\":\\\\\\\"0001A110000000000RB3\\\\\\\",\\\\\\\"invclcode\\\\\\\":\\\\\\\"0901\\\\\\\",\\\\\\\"invclname\\\\\\\":\\\\\\\"测试二级-1-1-1\\\\\\\",\\\\\\\"pk_measdoc\\\\\\\":\\\\\\\"0001A110000000000J7T\\\\\\\",\\\\\\\"meascode\\\\\\\":\\\\\\\"BAO\\\\\\\",\\\\\\\"measname\\\\\\\":\\\\\\\"包\\\\\\\",\\\\\\\"pk_taxitems\\\\\\\":\\\\\\\"40040000000000000037\\\\\\\",\\\\\\\"taxitemscode\\\\\\\":\\\\\\\"1001\\\\\\\",\\\\\\\"taxitemsname\\\\\\\":\\\\\\\"水泥\\\\\\\",\\\\\\\"unitvolume\\\\\\\":\\\\\\\"0.00000000\\\\\\\",\\\\\\\"unitweight\\\\\\\":\\\\\\\"0.00000000\\\\\\\",\\\\\\\"laborflag\\\\\\\":false,\\\\\\\"discountflag\\\\\\\":false,\\\\\\\"setpartsflag\\\\\\\":false,\\\\\\\"asset\\\\\\\":false,\\\\\\\"iselectrans\\\\\\\":false,\\\\\\\"isretail\\\\\\\":false,\\\\\\\"assistunit\\\\\\\":true,\\\\\\\"autobalancemeas\\\\\\\":false,\\\\\\\"ismngstockbygrswt\\\\\\\":false,\\\\\\\"isstorebyconvert\\\\\\\":false,\\\\\\\"creator\\\\\\\":\\\\\\\"openapi\\\\\\\",\\\\\\\"createtime\\\\\\\":\\\\\\\"2024-08-02 10:38:10\\\\\\\",\\\\\\\"pk_invbasdoc\\\\\\\":\\\\\\\"0001A110000000000SZM\\\\\\\",\\\\\\\"dr\\\\\\\":\\\\\\\"0\\\\\\\"},\\\\\\\"childrenvo\\\\\\\":[]}]\\\",\\\"taskNumber\\\":\\\"202408020006\\\",\\\"status\\\":\\\"success\\\"}}\"}";
+//        g_482610back t = new g_482610back();
+//        System.out.println(t.execute(str));
     }
 
+
     static class A88772 {
         String execute(String jsonStr) {
             com.alibaba.fastjson.JSONObject returnObject = new com.alibaba.fastjson.JSONObject();
             com.alibaba.fastjson.JSONObject bodys = new com.alibaba.fastjson.JSONObject();
-            com.alibaba.fastjson.JSONArray invcl = new com.alibaba.fastjson.JSONArray();
+            com.alibaba.fastjson.JSONArray cbdocvo = new com.alibaba.fastjson.JSONArray();
             com.alibaba.fastjson.JSONObject main = new com.alibaba.fastjson.JSONObject();
+            com.alibaba.fastjson.JSONObject parentvo = new com.alibaba.fastjson.JSONObject();
             com.alibaba.fastjson.JSONObject reqData = com.alibaba.fastjson.JSON.parseObject(jsonStr);
             com.alibaba.fastjson.JSONObject data = reqData.getJSONObject("data");
-            main.put("invclasscode", data.getString("materiel_classify_code"));
-            main.put("invclassname", data.getString("materiel_classify_name"));
-            main.put("pk_invcl", reqData.getString("tripartiteId"));
-            main.put("pk_corp", "0001");
-            invcl.add(main);
-            bodys.put("invcl",invcl);
+            parentvo.put("pk_areacl", data.getString("pk_areacl"));
+            parentvo.put("custcode", data.getString("code"));
+            parentvo.put("custshortname", data.getString("custshortname"));
+            parentvo.put("custname", data.getString("name"));
+            main.put("parentvo",parentvo);
+            cbdocvo.add(main);
+            bodys.put("cbdocvo",cbdocvo);
             returnObject.put("bodys",bodys.toJSONString());
             return returnObject.toJSONString();
 
@@ -96,10 +79,10 @@ public class GroovyIntegrationServiceImpl implements IGroovyIntegrationService {
                 com.alibaba.fastjson.JSONObject header = new com.alibaba.fastjson.JSONObject();
                 if(null !=reqData.getString("status")&& !"".equals(reqData.getString("status"))){
                     com.alibaba.fastjson.JSONArray dataArr = com.alibaba.fastjson.JSON.parseArray(reqData.getString("data"));
-//                    com.alibaba.fastjson.JSONObject data = (com.alibaba.fastjson.JSONObject) dataArr.get(0);
                     com.alibaba.fastjson.JSONObject data = dataArr.getJSONObject(0);
+                    com.alibaba.fastjson.JSONObject parentvo = data.getJSONObject("parentvo");
                     returnObject.put("success","true");
-                    returnObject.put("tripartiteId",data.getString("pk_invcl"));
+                    returnObject.put("tripartiteId",parentvo.getString("pk_invbasdoc"));
                 }else{
                     returnObject.put("success","false");
                 }
@@ -110,5 +93,25 @@ public class GroovyIntegrationServiceImpl implements IGroovyIntegrationService {
             returnObject.put("success","false");
         }
         return returnObject.toJSONString(); } }
+    static class g_494689 {
+        public static void main(String[] args) {
+            String str = "{\"data\":{\"pk_areacl\":\"01\",\"document_rule\":\"KH-2024-08-02-00007\",\"create_user_id\":\"1\",\"code\":\"K202408010006\",\"create_time\":1722584236000,\"company_id\":\"Y\",\"modify_time\":1722584236000,\"document_rule_num\":7,\"mdm_customer_bank\":[],\"add_status\":\"0\",\"update_status\":\"1\",\"sts\":\"Y\",\"delete_status\":\"1\",\"org_id\":\"Y\",\"custstate\":\"测试自动分配03\",\"id\":\"d9ccd167d0ae4e3884f2b76c31a88a34\",\"data_status\":\"Y\",\"modify_user_id\":\"1\",\"sorts\":142,\"custshortname\":\"测试自动分配03\"},\"query\":\"[]\",\"header\":\"[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"index\\\":0,\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"8e704f6e-20a8-49f9-b10a-fd1a6090565a\\\",\\\"parameterName\\\":\\\"usercode\\\",\\\"required\\\":false,\\\"example\\\":\\\"17633965916\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"index\\\":1,\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"5ca85472-dc42-45d8-9be6-dedf20cb09d9\\\",\\\"parameterName\\\":\\\"password\\\",\\\"example\\\":\\\"92d40fd65a74377608c0039eaafdba99\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"index\\\":2,\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"d32b0dfd-2f06-4ee1-a56d-03882f9003d4\\\",\\\"parameterName\\\":\\\"trantype\\\",\\\"example\\\":\\\"code\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"index\\\":3,\\\"concreteType\\\":\\\"String\\\",\\\"id\\\":\\\"1f48a05d-8f89-4bb2-b29a-e1a6eac7f5b7\\\",\\\"parameterName\\\":\\\"system\\\",\\\"example\\\":\\\"01\\\"}]\",\"body\":\"[{\\\"parameterType\\\":\\\"complexlist\\\",\\\"children\\\":[{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":1,\\\"parameterName\\\":\\\"pk_corp\\\",\\\"id\\\":\\\"33bc86ee-652c-4822-b6a8-dbd329a20779\\\",\\\"example\\\":\\\"1004\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":2,\\\"parameterName\\\":\\\"custprop\\\",\\\"id\\\":\\\"b5d55712-b378-4dbd-b2ae-04bcb3d0fb2b\\\",\\\"example\\\":\\\"0\\\"},{\\\"parameterType\\\":\\\"fundamental\\\",\\\"concreteType\\\":\\\"String\\\",\\\"index\\\":3,\\\"parameterName\\\":\\\"pk_cubasdoc\\\",\\\"id\\\":\\\"0c4a5614-effb-4d88-83e2-e9cd0f33ea3a\\\",\\\"example\\\":\\\"0001F810000000000FE0\\\"}],\\\"concreteType\\\":\\\"ObjectCom\\\",\\\"index\\\":0,\\\"parameterName\\\":\\\"custbasvo\\\",\\\"id\\\":\\\"df932132-3a93-463c-aaa7-7393b0abfa80\\\"}]\"}";
+            g_494689 s = new g_494689();
+            System.out.println(s.execute(str));
+        }
+        String execute (String jsonStr){
+        com.alibaba.fastjson.JSONObject returnObject = new com.alibaba.fastjson.JSONObject();
+        com.alibaba.fastjson.JSONObject bodys = new com.alibaba.fastjson.JSONObject();
+        com.alibaba.fastjson.JSONArray custbasvo = new com.alibaba.fastjson.JSONArray();
+        com.alibaba.fastjson.JSONObject main = new com.alibaba.fastjson.JSONObject();
+        com.alibaba.fastjson.JSONObject reqData = com.alibaba.fastjson.JSON.parseObject(jsonStr);
+        com.alibaba.fastjson.JSONObject data = reqData.getJSONObject("data");
+        main.put("pk_corp", "002");
+        main.put("pk_cubasdoc", reqData.getString("tripartiteId"));
+        main.put("custprop", "2");
+        custbasvo.add(main);
+        bodys.put("custbasvo",custbasvo);
+        returnObject.put("bodys",bodys.toJSONString());
+        return returnObject.toJSONString(); } }
 
 }