From ef8f21e52512f07fa25f32da253c2849761ae64f Mon Sep 17 00:00:00 2001 From: xiang2lin <251481237@qq.com> Date: Tue, 9 Jul 2024 17:52:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E6=BA=90=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../seeyon/service/ISeeyonExtService.java | 7 -- .../service/impl/SeeyonExtServiceImpl.java | 81 ++++++++----------- 2 files changed, 35 insertions(+), 53 deletions(-) diff --git a/service/src/main/java/com/hzya/frame/seeyon/service/ISeeyonExtService.java b/service/src/main/java/com/hzya/frame/seeyon/service/ISeeyonExtService.java index bf5d9f35..4f06472d 100644 --- a/service/src/main/java/com/hzya/frame/seeyon/service/ISeeyonExtService.java +++ b/service/src/main/java/com/hzya/frame/seeyon/service/ISeeyonExtService.java @@ -26,11 +26,4 @@ public interface ISeeyonExtService { * @param logEntity */ void ydcSeeyon2u8CallBack(SysMessageManageLogEntity logEntity); - - /** - * 更新英德赛表单 - * @param dataSourceCode - * @param sql - */ - void updateYdcForm(String sql); } diff --git a/service/src/main/java/com/hzya/frame/seeyon/service/impl/SeeyonExtServiceImpl.java b/service/src/main/java/com/hzya/frame/seeyon/service/impl/SeeyonExtServiceImpl.java index f5029cf9..e49a5592 100644 --- a/service/src/main/java/com/hzya/frame/seeyon/service/impl/SeeyonExtServiceImpl.java +++ b/service/src/main/java/com/hzya/frame/seeyon/service/impl/SeeyonExtServiceImpl.java @@ -1,31 +1,30 @@ package com.hzya.frame.seeyon.service.impl; import cn.hutool.core.date.DateUtil; -import cn.hutool.core.map.MapBuilder; import cn.hutool.core.util.StrUtil; -import cn.hutool.crypto.SecureUtil; -import cn.hutool.http.HttpRequest; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; -import com.baomidou.dynamic.datasource.annotation.DS; import com.hzya.frame.execsql.service.IExecSqlService; import com.hzya.frame.seeyon.entity.OAWorkflowEventDataEntity; import com.hzya.frame.seeyon.service.ISeeyonExtService; +import com.hzya.frame.seeyon.ydc.entity.FormmainEntity; +import com.hzya.frame.seeyon.ydc.service.IFormmainService; import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity; import com.hzya.frame.sysnew.integtationTaskLivingDetails.entity.IntegrationTaskLivingDetailsEntity; import com.hzya.frame.sysnew.integtationTaskLivingDetails.service.IIntegrationTaskLivingDetailsService; import com.hzya.frame.sysnew.messageManageLog.entity.SysMessageManageLogEntity; import com.hzya.frame.sysnew.messageManageLog.entity.SysMessageManageLogStatusEnum; -import com.hzya.frame.u8.util.U8Util; -import com.hzya.frame.uuid.UUIDLong; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; -import java.util.*; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; /** * @Description seeyon扩展类 @@ -36,8 +35,13 @@ import java.util.*; public class SeeyonExtServiceImpl implements ISeeyonExtService { static final String KEY = "`o7eotan9ws8c:aj"; + //static String oaDataSourceCode = "ydc_oa_sqlserver"; + @Value("${oa.datasource_code}") + public String dataSourceCode; Logger logger = LogManager.getLogger(getClass()); + @Autowired + private IFormmainService formmainService; //存货属性枚举 private static Map inventoryAttrMap; @@ -119,52 +123,52 @@ public class SeeyonExtServiceImpl implements ISeeyonExtService { JSONObject targetHeaders = targetData.getJSONObject("header");//源数据header JSONObject sourceBody = sourceData.getJSONObject("body");//源数据body JSONObject hzyaExtData = targetHeaders.getJSONObject("hzyaExtData");// 这里刚开始用sourceHeaders取的,2024-06-04 14:24:19改成从target里取,因为从apipost请求后在source里取不到 + String targetFormApp = targetHeaders.getString("formApp");//这个字段可以判断出来是新增还是修改 JSONArray formMainIds = new JSONArray(); formMainIds.add(sourceBody.getString("id")); JSONObject param = new JSONObject(); String formApp = sourceBody.getString("formApp"); param.put("formAppId",formApp); param.put("formMainIds",formMainIds); - param.put("dataSourceCode","ydc_oa_sqlserver"); + param.put("dataSourceCode",dataSourceCode); param.put("eventType",sourceBody.getString("eventType")); //把返回的单号更新到oa档案表 String returnDataStr = logEntity.getReturnData(); - if (JSONUtil.isTypeJSON(returnDataStr)){ + if (JSONUtil.isTypeJSON(returnDataStr) && !targetFormApp.contains("edit")){ JSONObject returnData = JSONObject.parseObject(returnDataStr); String success = returnData.getString("success"); if ("true".equals(success)){ JSONArray dataArr = returnData.getJSONArray("data"); if (null != dataArr){ String code = dataArr.getString(0); - String sql = ""; switch (formApp){ case "-8691606453890363968"://存货 - sql = "update formmain_0231 set field0014 = '"+code +"' where field0009 = '"+hzyaExtData.getString("billCode")+"' and field0024 = '"+hzyaExtData.getString("serialNumber")+"'"; + FormmainEntity inventory = new FormmainEntity(); + //sql = "update formmain_0231 set field0014 = '"+code +"' where field0009 = '"+hzyaExtData.getString("billCode")+"' and field0024 = '"+hzyaExtData.getString("serialNumber")+"'"; + inventory.setField0014(code); + inventory.setField0009(hzyaExtData.getString("billCode")); + inventory.setField0024(hzyaExtData.getString("serialNumber")); + inventory.setDataSourceCode(dataSourceCode); + formmainService.updateInventoryCode(inventory); break; case "6223456019738676230"://供应商 - sql = "update formmain_0229 set field0002 = '"+ code + "' where field0001 = '"+hzyaExtData.getString("billCode")+"'"; + FormmainEntity supplier = new FormmainEntity(); + //sql = "update formmain_0229 set field0002 = '"+ code + "' where field0001 = '"+hzyaExtData.getString("billCode")+"'"; + supplier.setField0002(code); + supplier.setField0001(hzyaExtData.getString("billCode")); + supplier.setDataSourceCode(dataSourceCode); + formmainService.updateSupplierCode(supplier); break; case "-9122508232154527168"://客户 - sql = "update formmain_0230 set field0002 = '"+ code + "' where field0001 = '"+hzyaExtData.getString("billCode")+"'"; + //sql = "update formmain_0230 set field0002 = '"+ code + "' where field0001 = '"+hzyaExtData.getString("billCode")+"'"; + FormmainEntity customer = new FormmainEntity(); + //sql = "update formmain_0229 set field0002 = '"+ code + "' where field0001 = '"+hzyaExtData.getString("billCode")+"'"; + customer.setField0002(code); + customer.setField0001(hzyaExtData.getString("billCode")); + customer.setDataSourceCode(dataSourceCode); + formmainService.updateCustomerCode(customer); break; } - if (StrUtil.isNotEmpty(sql)){ - logger.info("要执行的sql:{}",sql); - //不调rest接口了,改成直接更新 - updateYdcForm(sql); -// String sign = SecureUtil.md5(sql); -// String data = SecureUtil.aes(KEY.getBytes()).encryptHex(sql); -// Map headerMap = MapBuilder.create(true) -// .put("apiCode", "8000190001") -// .put("publicKey","ZJYA+I8JEYTh7Mkjr7ncOp1uISzUk/ugy0uL4OTJgepuip9Ce7eDIk+3zDUT+v578prj") -// .put("secretKey","cYLV+V7qcvBEWU/hAhH4Mgd6Zjs43nALsmzdNApb142abKpMCMTwodlKbQQe5/oEj3JzOP8MtA1LSGvL+2BWG8c/o7DKi92S4mr3zcGearA=") -// .put("appId","800019") -// .build(); -// JSONObject params = new JSONObject(); -// params.put("sign",sign); -// params.put("data",data); -// String body = HttpRequest.post("http://127.0.0.1:9999/kangarooDataCenterV3/entranceController/externalCallInterface").addHeaders(headerMap).body(JSON.toJSONString(params)).timeout(60000).execute().body(); - } } } } @@ -196,22 +200,6 @@ public class SeeyonExtServiceImpl implements ISeeyonExtService { } } - /** - * 更新英德赛表单 - * - * @param sql - * @param - */ - @Override - @DS("ydc_oa_sqlserver_test") - public void updateYdcForm(String sql) { - try { - executionService.execUpdateSql(sql,null); - } catch (Exception e) { - throw new RuntimeException(e); - } - } - //存货参数组装 private SysExtensionApiEntity getInventory(JSONObject businessData,SysExtensionApiEntity param,JSONObject hzyaExtData){ if (null != businessData){ @@ -242,6 +230,7 @@ public class SeeyonExtServiceImpl implements ISeeyonExtService { oArchives.put("cInvName", formson0228.getString("field0003")); oArchives.put("cGroupCode", formson0228.getString("field0018")); oArchives.put("cComUnitCode", formson0228.getString("field0017")); + oArchives.put("cInvStd", formson0228.getString("field0004")); //存货属性勾选 String attr = formson0228.getString("field0007"); if (StrUtil.isNotEmpty(attr)){