智洋最新程序

This commit is contained in:
itzhang 2025-06-07 11:42:24 +08:00
parent 0e8f11fb38
commit d8d1973a6f
13 changed files with 503 additions and 50 deletions

View File

@ -2,4 +2,5 @@ package org.ssssssss.magicboot.constant;
public class ERPURLConstant { public class ERPURLConstant {
public static final String ERP_URL = "http://192.168.31.233:8022";//erp地址 public static final String ERP_URL = "http://192.168.31.233:8022";//erp地址
public static final String ACCOUNT_ID = "2095345516136108032";//erp地址
} }

View File

@ -55,10 +55,12 @@ public class BankInfoController {
//将时间转换样式 //将时间转换样式
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String twoDaysAgoStr = twoDaysAgo.format(formatter); String twoDaysAgoStr = twoDaysAgo.format(formatter);
String nowStr = now.format(formatter);
//开始查询部门(暂时使用固定值) //开始查询部门(暂时使用固定值)
Map data = new HashMap<>(); Map data = new HashMap<>();
data.put("createtime", twoDaysAgoStr); data.put("startTime", twoDaysAgoStr);
data.put("endTime", nowStr);
//data.put("number", Arrays.asList("ZHY002.005.003.004")); //data.put("number", Arrays.asList("ZHY002.005.003.004"));
// data.put("level", "3"); // data.put("level", "3");
@ -277,10 +279,12 @@ public class BankInfoController {
//将时间转换样式 //将时间转换样式
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String twoDaysAgoStr = twoDaysAgo.format(formatter); String twoDaysAgoStr = twoDaysAgo.format(formatter);
String nowStr = now.format(formatter);
//开始查询部门(暂时使用固定值) //开始查询部门(暂时使用固定值)
Map data = new HashMap<>(); Map data = new HashMap<>();
data.put("modifytime", twoDaysAgoStr); data.put("startTime", twoDaysAgoStr);
data.put("endTime", nowStr);
//data.put("number", Arrays.asList("ZHY002.005.003.004")); //data.put("number", Arrays.asList("ZHY002.005.003.004"));
// data.put("level", "3"); // data.put("level", "3");

View File

@ -223,7 +223,7 @@ public class DesignController {
designDocDetailMap.put("materialtype", designDocDetailData.getString("customer_material_type__c"));//客指供应类型 designDocDetailMap.put("materialtype", designDocDetailData.getString("customer_material_type__c"));//客指供应类型
designDocDetailMap.put("crmentryid", designDocDetailData.getString("_id"));//crm明细行id designDocDetailMap.put("crmentryid", designDocDetailData.getString("_id"));//crm明细行id
designDocDetailMap.put("entrycomment", designDocDetailData.getString("remark__c") != null ? designDocDetailData.getString("remark__c") : "");//备注 designDocDetailMap.put("entrycomment", designDocDetailData.getString("remark__c") != null ? designDocDetailData.getString("remark__c") : "");//备注
designDocDetailMap.put("supplier_number", "G08000001");//todo 建议供应商 designDocDetailMap.put("supplier_number", "G03990003");//todo 建议供应商
designDocList.add(designDocDetailMap); designDocList.add(designDocDetailMap);
@ -489,7 +489,7 @@ public class DesignController {
List ownerIdList = designDocData.getJSONArray("owner"); List ownerIdList = designDocData.getJSONArray("owner");
JSONObject ownerReq = crmRequestUtil.getCRMList(Arrays.asList( JSONObject ownerReq = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "_id", ownerIdList) new Filter("EQ", "user_id", ownerIdList)
), "PersonnelObj"); ), "PersonnelObj");
JSONObject ownerRes = new JSONObject(); JSONObject ownerRes = new JSONObject();

View File

@ -15,6 +15,7 @@ import org.ssssssss.magicboot.constant.ERPURLConstant;
import org.ssssssss.magicboot.constant.URLConstant; import org.ssssssss.magicboot.constant.URLConstant;
import org.ssssssss.magicboot.entity.Filter; import org.ssssssss.magicboot.entity.Filter;
import org.ssssssss.magicboot.utils.CrmRequestUtil; import org.ssssssss.magicboot.utils.CrmRequestUtil;
import org.ssssssss.magicboot.utils.KingDeeUtils;
import java.util.*; import java.util.*;
@ -294,6 +295,10 @@ public class FrameContractController {
backReqMap.put("erp_id__c", contractRes.getJSONObject("data").getJSONArray("result").getJSONObject(0).getString("id")); backReqMap.put("erp_id__c", contractRes.getJSONObject("data").getJSONArray("result").getJSONObject(0).getString("id"));
backReqMap.put("sync_status__c", "option_sync_success__c"); backReqMap.put("sync_status__c", "option_sync_success__c");
backReqMap.put("response_info__c", "同步成功"); backReqMap.put("response_info__c", "同步成功");
//审核
KingDeeUtils kingDeeUtils = new KingDeeUtils();
kingDeeUtils.audit(contractRes.getJSONObject("data").getJSONArray("result").getJSONObject(0).getString("id"), "conm_salcontract");
} else { } else {
//同步失败 //同步失败
logMap.put("log_status", "1"); logMap.put("log_status", "1");

View File

@ -1,6 +1,9 @@
package org.ssssssss.magicboot.controller; package org.ssssssss.magicboot.controller;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import java.util.concurrent.*;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpEntity; import org.springframework.http.HttpEntity;
@ -34,8 +37,9 @@ public class GoodsPlanController {
private RestTemplate restTemplate = new RestTemplate(); private RestTemplate restTemplate = new RestTemplate();
public static void main(String[] args) { public static void main(String[] args) {
//new GoodsPlanController().syncGoodsPlan(); new GoodsPlanController().syncGoodsPlan();
new GoodsPlanController().updateGoodsPlan(); //new GoodsPlanController().updateGoodsPlan();
//new GoodsPlanController().syncTrackingNum();
} }
/** /**
@ -54,6 +58,7 @@ public class GoodsPlanController {
//要货计划请求 //要货计划请求
JSONObject getGoodsPlan = crmRequestUtil.getCRMList(Arrays.asList( JSONObject getGoodsPlan = crmRequestUtil.getCRMList(Arrays.asList(
//new Filter("IS", "erp_id__c", Arrays.asList("")), //new Filter("IS", "erp_id__c", Arrays.asList("")),
new Filter("EQ", "business_status__c", Arrays.asList("option_normal__c")),
new Filter("IN", "sync_status__c", Arrays.asList(syncStatus)), new Filter("IN", "sync_status__c", Arrays.asList(syncStatus)),
new Filter("GT", "create_time", Arrays.asList("1748923200000")), new Filter("GT", "create_time", Arrays.asList("1748923200000")),
//new Filter("EQ", "name", Arrays.asList("YHJH20250508-0002")), //new Filter("EQ", "name", Arrays.asList("YHJH20250508-0002")),
@ -115,7 +120,24 @@ public class GoodsPlanController {
erpGoodsPlanReq.put("f9w5_crmid", goodsPlanId); erpGoodsPlanReq.put("f9w5_crmid", goodsPlanId);
erpGoodsPlanReq.put("billno", goodsPlanName);//单据编号 erpGoodsPlanReq.put("billno", goodsPlanName);//单据编号
erpGoodsPlanReq.put("billtype_number", "f9w5_sm_purchaseplan_BT");//单据类型 erpGoodsPlanReq.put("billtype_number", "f9w5_sm_purchaseplan_BT");//单据类型
erpGoodsPlanReq.put("org_number", "zyierp");//组织编码
String orgNum = goodsPlanData.getString("erp_organization__c") != null ? goodsPlanData.getString("erp_organization__c") : "";
erpGoodsPlanReq.put("org_number", orgNum);//组织编码
String businessType = goodsPlanData.getString("business_status__c") != null ? goodsPlanData.getString("business_status__c") : "";
switch (businessType) {
case "option_normal__c":
erpGoodsPlanReq.put("f9w5_busstatus", "A");//业务状态
break;
case "option_close__c":
erpGoodsPlanReq.put("f9w5_busstatus", "B");//业务状态
break;
default:
erpGoodsPlanReq.put("f9w5_busstatus", "A");//业务状态
break;
}
//开始获取需求日期 //开始获取需求日期
long biztime = goodsPlanData.getLong("requirement_date__c"); long biztime = goodsPlanData.getLong("requirement_date__c");
@ -155,13 +177,13 @@ public class GoodsPlanController {
List ownerIdList = goodsPlanData.getJSONArray("owner"); List ownerIdList = goodsPlanData.getJSONArray("owner");
JSONObject ownerReq = crmRequestUtil.getCRMList(Arrays.asList( JSONObject ownerReq = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "_id", ownerIdList) new Filter("EQ", "user_id", ownerIdList)
), "PersonnelObj"); ), "PersonnelObj");
JSONObject ownerRes = new JSONObject(); JSONObject ownerRes = new JSONObject();
try { try {
ownerRes = restTemplate.postForObject(URLConstant.GET_CRM_LIST_URL, ownerReq, JSONObject.class); ownerRes = restTemplate.postForObject(URLConstant.GET_CUSTOMIZE_LIST_URL, ownerReq, JSONObject.class);
} catch (RestClientException e) { } catch (RestClientException e) {
e.printStackTrace(); e.printStackTrace();
} }
@ -196,23 +218,60 @@ public class GoodsPlanController {
log.info("要货计划明细存在,继续向下执行"); log.info("要货计划明细存在,继续向下执行");
//延时执行非阻塞
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
executor.schedule(() -> {
System.out.println("延时任务执行");
}, 5, TimeUnit.SECONDS); // 5秒后执行
executor.shutdown(); // 关闭线程池
//明细列表 //明细列表
List goodsPlanDetailList = new ArrayList<>(); List goodsPlanDetailList = new ArrayList<>();
//用来判断跟踪号是否传输成功
JSONObject trackingNumReason = new JSONObject();
for (Object goodsPlanDetailObj : goodsPlanDetailRes.getJSONObject("data").getJSONArray("dataList")) { for (Object goodsPlanDetailObj : goodsPlanDetailRes.getJSONObject("data").getJSONArray("dataList")) {
if (!trackingNumReason.isEmpty()) {
log.info("已经存在执行错误的明细,将不再执行本条数据");
continue;
}
JSONObject goodsPlanDetailData = JSON.parseObject(JSON.toJSONString(goodsPlanDetailObj)); JSONObject goodsPlanDetailData = JSON.parseObject(JSON.toJSONString(goodsPlanDetailObj));
System.out.println("当前正在处理的要货计划明细数据为:" + goodsPlanDetailData); System.out.println("当前正在处理的要货计划明细数据为:" + goodsPlanDetailData);
String trackingNum = goodsPlanDetailData.getString("batch_number__c") != null ? goodsPlanDetailData.getString("batch_number__c") : "";
if (trackingNum.equals("")) {
log.info("跟踪号不存在,将不再向下执行");
trackingNumReason.put("status", "false");
trackingNumReason.put("reason", "跟踪号不存在,将不再向下执行");
continue;
}
//跟踪号存在开始执行
JSONObject syncTrackingNum = syncTrackingNum(trackingNum);
//判断是否执行成功
if (!"success".equals(syncTrackingNum.getString("errorCode"))) {
trackingNumReason.put("status", "false");
trackingNumReason.put("reason", syncTrackingNum.getString("message"));
continue;
}
//开始封装要货计划明细数据 //开始封装要货计划明细数据
Map erpGoodsPlanDetailReq = new HashMap<>(); Map erpGoodsPlanDetailReq = new HashMap<>();
erpGoodsPlanDetailReq.put("f9w5_crmentryid", goodsPlanDetailData.getString("_id"));//crm明细id erpGoodsPlanDetailReq.put("f9w5_crmentryid", goodsPlanDetailData.getString("_id"));//crm明细id
erpGoodsPlanDetailReq.put("material_number", goodsPlanDetailData.getString("material_id__c__r"));//物料编号 erpGoodsPlanDetailReq.put("material_number", goodsPlanDetailData.getString("material_id__c__r"));//物料编号
erpGoodsPlanDetailReq.put("entryorg_number", "zyierp");//todo 组织编码 erpGoodsPlanDetailReq.put("entryorg_number", orgNum);//组织编码
erpGoodsPlanDetailReq.put("qty", goodsPlanDetailData.getBigDecimal("quantity__c") != null ? goodsPlanDetailData.getBigDecimal("quantity__c") : 0);//数量 erpGoodsPlanDetailReq.put("qty", goodsPlanDetailData.getBigDecimal("quantity__c") != null ? goodsPlanDetailData.getBigDecimal("quantity__c") : 0);//数量
//erpGoodsPlanDetailReq.put("lot_number", goodsPlanDetailData.getString("batch_number__c") != null ? goodsPlanDetailData.getString("batch_number__c") : "");//批号 //erpGoodsPlanDetailReq.put("lot_number", goodsPlanDetailData.getString("batch_number__c") != null ? goodsPlanDetailData.getString("batch_number__c") : "");//批号
erpGoodsPlanDetailReq.put("entrycomment", goodsPlanDetailData.getString("remark__c") != null ? goodsPlanDetailData.getString("remark__c") : "");//备注 erpGoodsPlanDetailReq.put("entrycomment", goodsPlanDetailData.getString("remark__c") != null ? goodsPlanDetailData.getString("remark__c") : "");//备注
erpGoodsPlanDetailReq.put("f9w5_contractno", goodsPlanDetailData.getString("sales_contract_number__c__r") != null ? goodsPlanDetailData.getString("sales_contract_number__c__r") : "");//销售合同编号 erpGoodsPlanDetailReq.put("f9w5_contractno", goodsPlanDetailData.getString("sales_contract_number__c__r") != null ? goodsPlanDetailData.getString("sales_contract_number__c__r") : "");//销售合同编号
erpGoodsPlanDetailReq.put("f9w5_tracknumber_number", trackingNum);//跟踪号
erpGoodsPlanDetailReq.put("f9w5_programversion_number", goodsPlanDetailData.getString("program_version_number__c"));//程序版本
//开始查询项目号 //开始查询项目号
String projectId = goodsPlanDetailData.getString("project_name__c") != null ? goodsPlanDetailData.getString("project_name__c") : ""; String projectId = goodsPlanDetailData.getString("project_name__c") != null ? goodsPlanDetailData.getString("project_name__c") : "";
@ -243,6 +302,33 @@ public class GoodsPlanController {
} }
//开始封装回写程序
Map backReqMap = new HashMap();
backReqMap.put("_id", goodsPlanId);
backReqMap.put("dataObjectApiName", "purchase_plan__c");
//开始判断
if (!trackingNumReason.isEmpty()) {
log.info("明细封装错误,将不再向下执行");
backReqMap.put("sync_status__c", "option_sync_failure__c");
backReqMap.put("response_info__c", trackingNumReason.getString("reason"));
//开始回写
JSONObject backReq = crmRequestUtil.updateCRM(backReqMap);
JSONObject backRes = new JSONObject();
try {
backRes = restTemplate.postForObject(URLConstant.UPDATE_CRM_CUSTOMIZE, backReq, JSONObject.class);
} catch (RestClientException e) {
e.printStackTrace();
}
System.out.println("回写结果为:" + backRes);
continue;
}
erpGoodsPlanReq.put("billentry", goodsPlanDetailList); erpGoodsPlanReq.put("billentry", goodsPlanDetailList);
//开始封装要货计划请求 //开始封装要货计划请求
@ -281,11 +367,6 @@ public class GoodsPlanController {
System.out.println("要货计划结果为:" + JSON.parseObject(JSON.toJSONString(erpGoodsPlanRes))); System.out.println("要货计划结果为:" + JSON.parseObject(JSON.toJSONString(erpGoodsPlanRes)));
//开始封装回写程序
Map backReqMap = new HashMap();
backReqMap.put("_id", goodsPlanId);
backReqMap.put("dataObjectApiName", "purchase_plan__c");
//开始封装日志 //开始封装日志
Map logMap = new HashMap<>(); Map logMap = new HashMap<>();
logMap.put("log_id", UUID.randomUUID().toString().replace("-", "")); logMap.put("log_id", UUID.randomUUID().toString().replace("-", ""));
@ -361,7 +442,11 @@ public class GoodsPlanController {
//要货计划请求 //要货计划请求
JSONObject getGoodsPlan = crmRequestUtil.getCRMList(Arrays.asList( JSONObject getGoodsPlan = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "name", Arrays.asList("YHJH20250508-0002")), //new Filter("IS", "erp_id__c", Arrays.asList("")),
new Filter("EQ", "business_status__c", Arrays.asList("option_close__c")),
//new Filter("IN", "sync_status__c", Arrays.asList(syncStatus)),
new Filter("GT", "create_time", Arrays.asList("1748923200000")),
//new Filter("EQ", "name", Arrays.asList("YHJH20250508-0002")),
new Filter("EQ", "life_status", Arrays.asList("normal")) new Filter("EQ", "life_status", Arrays.asList("normal"))
), "purchase_plan__c"); ), "purchase_plan__c");
@ -430,7 +515,25 @@ public class GoodsPlanController {
erpGoodsPlanReq.put("f9w5_crmid", goodsPlanId); erpGoodsPlanReq.put("f9w5_crmid", goodsPlanId);
erpGoodsPlanReq.put("billno", goodsPlanName);//单据编号 erpGoodsPlanReq.put("billno", goodsPlanName);//单据编号
erpGoodsPlanReq.put("billtype_number", "f9w5_sm_purchaseplan_BT");//单据类型 erpGoodsPlanReq.put("billtype_number", "f9w5_sm_purchaseplan_BT");//单据类型
erpGoodsPlanReq.put("org_number", "zyierp");//组织编码
//组织编码
String orgNum = goodsPlanData.getString("erp_organization__c") != null ? goodsPlanData.getString("erp_organization__c") : "";
erpGoodsPlanReq.put("org_number", orgNum);//组织编码
String businessType = goodsPlanData.getString("business_status__c") != null ? goodsPlanData.getString("business_status__c") : "";
switch (businessType) {
case "option_normal__c":
erpGoodsPlanReq.put("f9w5_busstatus", "A");//业务状态
break;
case "option_close__c":
erpGoodsPlanReq.put("f9w5_busstatus", "B");//业务状态
break;
default:
erpGoodsPlanReq.put("f9w5_busstatus", "A");//业务状态
break;
}
//开始获取需求日期 //开始获取需求日期
long biztime = goodsPlanData.getLong("requirement_date__c"); long biztime = goodsPlanData.getLong("requirement_date__c");
@ -461,7 +564,7 @@ public class GoodsPlanController {
deptCode = deptData.getString("field_Vj6sf__c") != null ? deptData.getString("field_Vj6sf__c") : ""; deptCode = deptData.getString("field_Vj6sf__c") != null ? deptData.getString("field_Vj6sf__c") : "";
} }
erpGoodsPlanReq.put("dept", "zyierp");//todo 归属部门 erpGoodsPlanReq.put("dept", deptCode);//todo 归属部门
//获取负责人编码 //获取负责人编码
String ownerCode = ""; String ownerCode = "";
@ -512,20 +615,43 @@ public class GoodsPlanController {
//明细列表 //明细列表
List goodsPlanDetailList = new ArrayList<>(); List goodsPlanDetailList = new ArrayList<>();
//用来判断跟踪号是否传输成功
JSONObject trackingNumReason = new JSONObject();
for (Object goodsPlanDetailObj : goodsPlanDetailRes.getJSONObject("data").getJSONArray("dataList")) { for (Object goodsPlanDetailObj : goodsPlanDetailRes.getJSONObject("data").getJSONArray("dataList")) {
JSONObject goodsPlanDetailData = JSON.parseObject(JSON.toJSONString(goodsPlanDetailObj)); JSONObject goodsPlanDetailData = JSON.parseObject(JSON.toJSONString(goodsPlanDetailObj));
System.out.println("当前正在处理的要货计划明细数据为:" + goodsPlanDetailData); System.out.println("当前正在处理的要货计划明细数据为:" + goodsPlanDetailData);
String trackingNum = goodsPlanDetailData.getString("batch_number__c") != null ? goodsPlanDetailData.getString("batch_number__c") : "";
if (trackingNum.equals("")) {
log.info("跟踪号不存在,将不再向下执行");
trackingNumReason.put("status", "false");
trackingNumReason.put("reason", "跟踪号不存在,将不再向下执行");
continue;
}
//跟踪号存在开始执行
JSONObject syncTrackingNum = syncTrackingNum(trackingNum);
//判断是否执行成功
if (!"success".equals(syncTrackingNum.getString("errorCode"))) {
trackingNumReason.put("status", "false");
trackingNumReason.put("reason", syncTrackingNum.getString("message"));
continue;
}
//开始封装要货计划明细数据 //开始封装要货计划明细数据
Map erpGoodsPlanDetailReq = new HashMap<>(); Map erpGoodsPlanDetailReq = new HashMap<>();
erpGoodsPlanDetailReq.put("f9w5_crmentryid", goodsPlanDetailData.getString("_id"));//crm明细id erpGoodsPlanDetailReq.put("f9w5_crmentryid", goodsPlanDetailData.getString("_id"));//crm明细id
erpGoodsPlanDetailReq.put("material_number", goodsPlanDetailData.getString("material_id__c__r"));//物料编号 erpGoodsPlanDetailReq.put("material_number", goodsPlanDetailData.getString("material_id__c__r"));//物料编号
erpGoodsPlanDetailReq.put("entryorg_number", "zyierp");//组织编码 erpGoodsPlanDetailReq.put("entryorg_number", orgNum);//组织编码
erpGoodsPlanDetailReq.put("qty", goodsPlanDetailData.getBigDecimal("quantity__c") != null ? goodsPlanDetailData.getBigDecimal("quantity__c") : 0);//数量 erpGoodsPlanDetailReq.put("qty", goodsPlanDetailData.getBigDecimal("quantity__c") != null ? goodsPlanDetailData.getBigDecimal("quantity__c") : 0);//数量
//erpGoodsPlanDetailReq.put("lot_number", goodsPlanDetailData.getString("batch_number__c") != null ? goodsPlanDetailData.getString("batch_number__c") : "");//批号 //erpGoodsPlanDetailReq.put("lot_number", goodsPlanDetailData.getString("batch_number__c") != null ? goodsPlanDetailData.getString("batch_number__c") : "");//批号
erpGoodsPlanDetailReq.put("entrycomment", goodsPlanDetailData.getString("remark__c") != null ? goodsPlanDetailData.getString("remark__c") : "");//备注 erpGoodsPlanDetailReq.put("entrycomment", goodsPlanDetailData.getString("remark__c") != null ? goodsPlanDetailData.getString("remark__c") : "");//备注
erpGoodsPlanDetailReq.put("f9w5_contractno", goodsPlanDetailData.getString("sales_contract_number__c__r") != null ? goodsPlanDetailData.getString("sales_contract_number__c__r") : "");//销售合同编号 erpGoodsPlanDetailReq.put("f9w5_contractno", goodsPlanDetailData.getString("sales_contract_number__c__r") != null ? goodsPlanDetailData.getString("sales_contract_number__c__r") : "");//销售合同编号
erpGoodsPlanDetailReq.put("f9w5_tracknumber_number", trackingNum);//跟踪号
//开始查询项目号 //开始查询项目号
String projectId = goodsPlanDetailData.getString("project_name__c") != null ? goodsPlanDetailData.getString("project_name__c") : ""; String projectId = goodsPlanDetailData.getString("project_name__c") != null ? goodsPlanDetailData.getString("project_name__c") : "";
@ -556,6 +682,32 @@ public class GoodsPlanController {
} }
//开始封装回写程序
Map backReqMap = new HashMap();
backReqMap.put("_id", goodsPlanId);
backReqMap.put("dataObjectApiName", "purchase_plan__c");
//开始判断
if (!trackingNumReason.isEmpty()) {
log.info("明细封装错误,将不再向下执行");
backReqMap.put("sync_status__c", "option_sync_failure__c");
backReqMap.put("response_info__c", trackingNumReason.getString("reason"));
//开始回写
JSONObject backReq = crmRequestUtil.updateCRM(backReqMap);
JSONObject backRes = new JSONObject();
try {
backRes = restTemplate.postForObject(URLConstant.UPDATE_CRM_CUSTOMIZE, backReq, JSONObject.class);
} catch (RestClientException e) {
e.printStackTrace();
}
System.out.println("回写结果为:" + backRes);
continue;
}
erpGoodsPlanReq.put("billentry", goodsPlanDetailList); erpGoodsPlanReq.put("billentry", goodsPlanDetailList);
//开始封装要货计划请求 //开始封装要货计划请求
@ -594,11 +746,6 @@ public class GoodsPlanController {
System.out.println("要货计划结果为:" + JSON.parseObject(JSON.toJSONString(erpGoodsPlanRes))); System.out.println("要货计划结果为:" + JSON.parseObject(JSON.toJSONString(erpGoodsPlanRes)));
//开始封装回写程序
Map backReqMap = new HashMap();
backReqMap.put("_id", goodsPlanId);
backReqMap.put("dataObjectApiName", "purchase_plan__c");
//开始封装日志 //开始封装日志
Map logMap = new HashMap<>(); Map logMap = new HashMap<>();
logMap.put("log_id", UUID.randomUUID().toString().replace("-", "")); logMap.put("log_id", UUID.randomUUID().toString().replace("-", ""));
@ -653,4 +800,238 @@ public class GoodsPlanController {
System.out.println("日志插入结果为:" + logResMap); System.out.println("日志插入结果为:" + logResMap);
} }
} }
/**
* 跟踪号同步方法
*
* @return java.lang.String
* @Author weiloong_zhang
*/
public JSONObject syncTrackingNum(String trackingNum) {
CrmRequestUtil crmRequestUtil = new CrmRequestUtil();
//String trackingNum = "YHJH2505290005-1";
JSONObject res = new JSONObject();
JSONObject getTrackNum = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "name", Arrays.asList(trackingNum))
), "tracking_number__c");
JSONObject trackingNumRes = new JSONObject();
try {
trackingNumRes = restTemplate.postForObject(URLConstant.GET_CUSTOMIZE_LIST_URL, getTrackNum, JSONObject.class);
} catch (RestClientException e) {
e.printStackTrace();
}
System.out.println("跟踪号查询结果为:" + trackingNumRes);
if (!"success".equals(trackingNumRes.getString("errorDescription")) || trackingNumRes.getJSONObject("data").getJSONArray("dataList").isEmpty()) {
log.info("查询失败或者不存在符合条件数据");
res.put("errorCode", "error");
res.put("message", "跟踪号查询失败或者不存在符合条件数据");
return res;
}
log.info("跟踪号查询成功,继续向下执行");
JSONObject trackingNumData = trackingNumRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0);
System.out.println("当前正在处理的跟踪号为:" + trackingNumData);
String trackingNumStr = trackingNumData.getString("name");
//开始封装跟踪号数据
Map trackingNumMap = new HashMap();
trackingNumMap.put("number", trackingNumStr);//跟踪号
trackingNumMap.put("status", "C");//数据状态
trackingNumMap.put("sourcebillno", trackingNumData.getString("purchase_plan__c__r") != null ? trackingNumData.getString("purchase_plan__c__r") : "");//todo 来源单据编号
trackingNumMap.put("description", "C");//todo 描述
String lineStr = trackingNumStr.split("-")[1];
trackingNumMap.put("sourcebillentryseq", lineStr);//来源单据分录行号
trackingNumMap.put("f9w5_materialname", trackingNumData.getString("material_name__c") != null ? trackingNumData.getString("material_name__c") : "");//物料名称
String isNeedForProduction = trackingNumData.getString("is_need_for_production__c") != null ? trackingNumData.getString("is_need_for_production__c") : "";
switch (isNeedForProduction) {
case "yes":
trackingNumMap.put("f9w5_isuse", true);//是否需要生产使用该参数
break;
case "no":
trackingNumMap.put("f9w5_isuse", false);//是否需要生产使用该参数
break;
default:
trackingNumMap.put("f9w5_isuse", null);//是否需要生产使用该参数
break;
}
trackingNumMap.put("f9w5_deviceid", trackingNumData.getString("device_id_third__c") != null ? trackingNumData.getString("device_id_third__c") : "");//设备ID第三方编号
trackingNumMap.put("f9w5_apn", trackingNumData.getString("apn_parameters__c") != null ? trackingNumData.getString("apn_parameters__c") : "");//APN参数
trackingNumMap.put("f9w5_ip", trackingNumData.getString("ip_address__c") != null ? trackingNumData.getString("ip_address__c") : "");//ip
trackingNumMap.put("f9w5_port", trackingNumData.getString("port__c") != null ? trackingNumData.getString("port__c") : "");//端口
//是否插卡
String isCard = trackingNumData.getString("is_card_inserted__c") != null ? trackingNumData.getString("is_card_inserted__c") : "";
switch (isCard) {
case "yes":
trackingNumMap.put("f9w5_bindingcard", true);//是否插卡
break;
case "no":
trackingNumMap.put("f9w5_bindingcard", false);//是否插卡
break;
default:
trackingNumMap.put("f9w5_bindingcard", null);//是否插卡
break;
}
//快快拍模式
String snapShot = trackingNumData.getString("snap_mode__c") != null ? trackingNumData.getString("snap_mode__c") : "";
switch (snapShot) {
case "yes":
trackingNumMap.put("f9w5_snapshot", true);//是否插卡
break;
case "no":
trackingNumMap.put("f9w5_snapshot", false);//是否插卡
break;
default:
trackingNumMap.put("f9w5_snapshot", null);//是否插卡
break;
}
//前端智能识别
String isFront = trackingNumData.getString("front_end_intelligent_reco__c") != null ? trackingNumData.getString("front_end_intelligent_reco__c") : "";
switch (isFront) {
case "yes":
trackingNumMap.put("f9w5_frontir", true);//前端智能识别
break;
case "no":
trackingNumMap.put("f9w5_frontir", false);//前端智能识别
break;
default:
trackingNumMap.put("f9w5_frontir", null);//前端智能识别
break;
}
//运行模式修改
String runMode = trackingNumData.getString("operation_mode_update__c") != null ? trackingNumData.getString("operation_mode_update__c") : "";
trackingNumMap.put("f9w5_runmodification", runMode);
//通道拍照时间间隔
trackingNumMap.put("f9w5_channelinterval", trackingNumData.getString("channel_photo_interval__c__r") != null ? trackingNumData.getString("channel_photo_interval__c__r") : "");
//通道图片分辨率/像素
trackingNumMap.put("f9w5_channelpixel", trackingNumData.getString("channel_image_resolution__c__r") != null ? trackingNumData.getString("channel_image_resolution__c__r") : "");
//机芯图片分辨率/像素
trackingNumMap.put("f9w5_movementpixel", trackingNumData.getString("core_image_resolution__c__r") != null ? trackingNumData.getString("core_image_resolution__c__r") : "");
//副机通道号
String auxiliarychannel = trackingNumData.getString("secondary_channel_number__c") != null ? trackingNumData.getString("secondary_channel_number__c") : "";
if (auxiliarychannel.equals("") || auxiliarychannel.equals("option_none__c")) {
auxiliarychannel = "";
}
trackingNumMap.put("f9w5_auxiliarychannel", auxiliarychannel);
//机芯拍照时间间隔
trackingNumMap.put("f9w5_movementinterval", trackingNumData.getString("core_photo_interval__c__r") != null ? trackingNumData.getString("core_photo_interval__c__r") : "");
//副机绑定地址
trackingNumMap.put("f9w5_auxiliaryip", trackingNumData.getString("secondary_device_bound_add__c__r") != null ? trackingNumData.getString("secondary_device_bound_add__c__r") : "");
//副机通道类型
String auxiliarychanneltype = trackingNumData.getString("secondary_channel_type__c__r") != null ? trackingNumData.getString("secondary_channel_type__c__r") : "";
if (auxiliarychanneltype.equals("") || auxiliarychanneltype.equals("option_none__c")) {
auxiliarychanneltype = "";
}
trackingNumMap.put("f9w5_auxiliarytype", auxiliarychanneltype);
//维护时间段
trackingNumMap.put("f9w5_maintenancetime", trackingNumData.getString("maintenance_time_period__c") != null ? trackingNumData.getString("maintenance_time_period__c") : "");
//出厂内外卡选择
trackingNumMap.put("f9w5_inoutcard", trackingNumData.getString("factory_external_card_choi__c__r") != null ? trackingNumData.getString("factory_external_card_choi__c__r") : "");
//出厂平台选择
trackingNumMap.put("f9w5_outplatform", trackingNumData.getString("factory_platform_choice__c__r") != null ? trackingNumData.getString("factory_platform_choice__c__r") : "");
//铭牌
trackingNumMap.put("f9w5_nameplate", trackingNumData.getString("tag_name__c__r") != null ? trackingNumData.getString("tag_name__c__r") : "");
//流量卡
trackingNumMap.put("f9w5_flowcard", trackingNumData.getString("traffic_card__c__r") != null ? trackingNumData.getString("traffic_card__c__r") : "");
//联网模式配置
trackingNumMap.put("f9w5_confignetset", trackingNumData.getString("network_mode_config__c__r") != null ? trackingNumData.getString("network_mode_config__c__r") : "");
//是否开启维护模式
String isMaintenance = trackingNumData.getString("is_maintenance_mode_enable__c") != null ? trackingNumData.getString("is_maintenance_mode_enable__c") : "";
switch (isMaintenance) {
case "yes":
trackingNumMap.put("f9w5_ismaintenance", true);//前端智能识别
break;
case "no":
trackingNumMap.put("f9w5_ismaintenance", false);//前端智能识别
break;
default:
trackingNumMap.put("f9w5_ismaintenance", null);//前端智能识别
break;
}
//物料编码
trackingNumMap.put("f9w5_material_number", trackingNumData.getString("material_code__c__r") != null ? trackingNumData.getString("material_code__c__r") : "");
//平台
trackingNumMap.put("f9w5_smplatform_number", trackingNumData.getString("platform_name_code__c") != null ? trackingNumData.getString("platform_name_code__c") : "");
//todo 来源单据类型.编码
trackingNumMap.put("sourcebilltype_number", "f9w5_sm_purchaseplan_BT");
Map erpTrackReq = new HashMap<>();
erpTrackReq.put("data", Arrays.asList(trackingNumMap));
//开始获取token
String accessToken = new KDTokenController().getKDAccessTokenTest();
if (accessToken == null || accessToken.equals("")) {
log.info("金蝶token为空或不存在");
res.put("errorCode", "error");
res.put("message", "跟踪号金蝶token为空或不存在");
return res;
}
String uuid = UUID.randomUUID().toString().replace("-", "");
//开始封装请求头
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("accessToken", accessToken);
headers.set("Idempotency-Key", uuid);
HttpEntity contractReqEntity = new HttpEntity(erpTrackReq, headers);
System.out.println(JSON.parseObject(JSON.toJSONString(contractReqEntity)));
String trackingNumUrl = ERPURLConstant.ERP_URL + "/ierp/kapi/v2/f9w5/sbd/bd_tracknumber/bdTracknumberSave";
//开始调用金蝶接口
JSONObject trackingNumERPRes = new JSONObject();
try {
trackingNumERPRes = restTemplate.postForObject(trackingNumUrl, contractReqEntity, JSONObject.class);
} catch (RestClientException e) {
e.printStackTrace();
res.put("errorCode", "error");
res.put("message", "跟踪号新增或更新请求失败");
return res;
}
System.out.println(JSON.parseObject(JSON.toJSONString(trackingNumERPRes)));
if ("0".equals(trackingNumERPRes.getString("errorCode"))) {
log.info("金蝶接口返回成功");
String trackingNumId = trackingNumERPRes.getJSONObject("data").getJSONArray("result").getJSONObject(0).getString("id");
res.put("errorCode", "success");
res.put("message", "请求成功");
} else {
log.info("金蝶接口返回失败");
res.put("errorCode", "error");
res.put("message", "跟踪号新增或更新请求失败" + trackingNumERPRes.getString("message"));
return res;
}
return res;
}
} }

View File

@ -505,6 +505,60 @@ public class InvoiceController {
} }
invoiceMap.put("issoftworks", isSoftWorksFlag);//是否含软 invoiceMap.put("issoftworks", isSoftWorksFlag);//是否含软
//是否国网
String isGWStr = redInvoiceData.getString("is_state_grid__c") != null ? redInvoiceData.getString("is_state_grid__c") : "";
Boolean isGW = null;
switch (isGWStr) {
case "ubaL12a0M":
isGW = true;
break;
case "tiVjNIMLU":
isGW = false;
break;
default:
isGW = null;
break;
}
invoiceMap.put("isgw", isGW);//是否国网
//是否设计建筑服务
String isJZStr = redInvoiceData.getString("is_involved_construction__c") != null ? redInvoiceData.getString("is_involved_construction__c") : "";
Boolean isJZ = null;
switch (isJZStr) {
case "option_is_yes__c":
isJZ = true;
break;
case "option_is_no__c":
isJZ = false;
break;
default:
isJZ = null;
break;
}
invoiceMap.put("isjzfw", isJZ);//是否设计建筑服务
//是否跨地市
String isCityStr = redInvoiceData.getString("is_cross_city__c") != null ? redInvoiceData.getString("is_cross_city__c") : "";
Boolean isCity = null;
switch (isCityStr) {
case "option_is_yes__c":
isCity = true;
break;
case "option_is_no__c":
isCity = false;
break;
default:
isCity = null;
break;
}
invoiceMap.put("iskds", isCity);//是否跨地市
invoiceMap.put("jzaddr", redInvoiceData.getString("service_occurrence_locatio__c") != null ? redInvoiceData.getString("service_occurrence_locatio__c") : "");//建筑服务发生地
invoiceMap.put("jzpjname", redInvoiceData.getString("project_name__c") != null ? redInvoiceData.getString("project_name__c") : "");//建筑服务项目名称
invoiceMap.put("softworks_number", redInvoiceData.getString("registration_number__c") != null ? redInvoiceData.getString("registration_number__c") : "");//软著版本编码 invoiceMap.put("softworks_number", redInvoiceData.getString("registration_number__c") != null ? redInvoiceData.getString("registration_number__c") : "");//软著版本编码
invoiceMap.put("blueinvoiceno", redInvoiceData.getString("original_invoice_number__c") != null ? redInvoiceData.getString("original_invoice_number__c") : "");//待冲蓝字发票号码 invoiceMap.put("blueinvoiceno", redInvoiceData.getString("original_invoice_number__c") != null ? redInvoiceData.getString("original_invoice_number__c") : "");//待冲蓝字发票号码
invoiceMap.put("redreason", redInvoiceData.getString("redemption_reason__c") != null ? redInvoiceData.getString("redemption_reason__c") : "");//冲红原因 invoiceMap.put("redreason", redInvoiceData.getString("redemption_reason__c") != null ? redInvoiceData.getString("redemption_reason__c") : "");//冲红原因

View File

@ -157,7 +157,7 @@ public class KDTokenController {
appTokenParams.put("appId", "FXXKCRM"); appTokenParams.put("appId", "FXXKCRM");
appTokenParams.put("appSecret", "FXXKCRM20251234a!"); appTokenParams.put("appSecret", "FXXKCRM20251234a!");
appTokenParams.put("tenantid", "zyierp"); appTokenParams.put("tenantid", "zyierp");
appTokenParams.put("accountId", "2095345516136108032"); appTokenParams.put("accountId", "2226057923279195136");
//开始发起请求 //开始发起请求
String appTokenRes = ""; String appTokenRes = "";
@ -214,7 +214,7 @@ public class KDTokenController {
accessTokenParams.put("usertype", "Mobile"); accessTokenParams.put("usertype", "Mobile");
accessTokenParams.put("apptoken", getKDAppTokenTest()); accessTokenParams.put("apptoken", getKDAppTokenTest());
accessTokenParams.put("tenantid", "zyierp"); accessTokenParams.put("tenantid", "zyierp");
accessTokenParams.put("accountId", "2095345516136108032"); accessTokenParams.put("accountId", "2226057923279195136");
accessTokenParams.put("language", "zh_CN"); accessTokenParams.put("language", "zh_CN");
//开始向金蝶发起请求 //开始向金蝶发起请求

View File

@ -67,8 +67,10 @@ public class PreContractController {
e.printStackTrace(); e.printStackTrace();
} }
System.out.println("查询结果为:" + preContractRes);
//判断查询是否成功 //判断查询是否成功
if (!"success".equals(preContractRes.getString("errorDescription")) && preContractRes.getJSONObject("data").getJSONArray("records").isEmpty()) { if (!"success".equals(preContractRes.getString("errorDescription")) || preContractRes.getJSONObject("data").getJSONArray("dataList").isEmpty()) {
log.info("查询失败或者没有符合条件的单据"); log.info("查询失败或者没有符合条件的单据");
return; return;
} }
@ -125,6 +127,7 @@ public class PreContractController {
erpContractReq.put("party1st", preContractData.getString("contract_unit_name__c__r"));//甲方 erpContractReq.put("party1st", preContractData.getString("contract_unit_name__c__r"));//甲方
erpContractReq.put("party2nd", preContractData.getString("our_company_name__c"));//乙方 erpContractReq.put("party2nd", preContractData.getString("our_company_name__c"));//乙方
erpContractReq.put("bizmode", "C");//业务模式 A:统谈统签, B:统谈分签,C:分谈分签 erpContractReq.put("bizmode", "C");//业务模式 A:统谈统签, B:统谈分签,C:分谈分签
erpContractReq.put("isentrysumamt", false);//isentrysumamt
//部门编码 //部门编码
String deptCode = ""; String deptCode = "";
@ -463,7 +466,7 @@ public class PreContractController {
List ownerIdList = preContractBGData.getJSONArray("owner"); List ownerIdList = preContractBGData.getJSONArray("owner");
JSONObject ownerReq = crmRequestUtil.getCRMList(Arrays.asList( JSONObject ownerReq = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "_id", ownerIdList) new Filter("EQ", "user_id", ownerIdList)
), "PersonnelObj"); ), "PersonnelObj");
JSONObject ownerRes = new JSONObject(); JSONObject ownerRes = new JSONObject();

View File

@ -377,7 +377,7 @@ public class ReimbursementController {
Map expensesMap = new HashMap<>(); Map expensesMap = new HashMap<>();
expensesMap.put("data", data); expensesMap.put("data", data);
expensesMap.put("pageNo", 1); expensesMap.put("pageNo", 1);
expensesMap.put("pageSize", 1); expensesMap.put("pageSize", 1999);
//开始获取金蝶token //开始获取金蝶token
String accessToken = new KDTokenController().getKDAccessTokenTest(); String accessToken = new KDTokenController().getKDAccessTokenTest();

View File

@ -62,7 +62,7 @@ public class TenderingController {
e.printStackTrace(); e.printStackTrace();
} }
if (!"success".equals(tenderingRes.getString("errorDescription")) && tenderingRes.getJSONObject("data").getJSONArray("dataList").isEmpty()) { if (!"success".equals(tenderingRes.getString("errorDescription")) || tenderingRes.getJSONObject("data").getJSONArray("dataList").isEmpty()) {
log.info("投标费用请求失败或者没有符合条件的数据"); log.info("投标费用请求失败或者没有符合条件的数据");
return; return;
} }

View File

@ -67,7 +67,7 @@ public class XSHTController {
} }
//判断查询是否成功 //判断查询是否成功
if (!"success".equals(ContractRes.getString("errorDescription")) && ContractRes.getJSONObject("data").getJSONArray("dataList").isEmpty()) { if (!"success".equals(ContractRes.getString("errorDescription")) || ContractRes.getJSONObject("data").getJSONArray("dataList").isEmpty()) {
log.info("查询失败或者没有符合条件的单据"); log.info("查询失败或者没有符合条件的单据");
return; return;
} }
@ -129,6 +129,25 @@ public class XSHTController {
String projectCode = projectRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0).getString("opportunity_id__c"); String projectCode = projectRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0).getString("opportunity_id__c");
//合同种类
String contractType = contractData.getString("contract_zl__c") != null ? contractData.getString("contract_zl__c") : "";
if (contractType.equals("")) {
log.info("合同种类不存在,将不再向下执行");
continue;
}
String contractMainType = "";
String contractTypeStr = "";
if (contractType.equals("option_sales_contract_details__c")) {
contractMainType = "XSHT-QD01";
contractTypeStr = "020";
} else if (contractType.equals("option_sales_contract_total_amoun__c")) {
contractMainType = "XSHT-QD02";
contractTypeStr = "020-1";
}
//开始封装传输至ERP的请求 //开始封装传输至ERP的请求
Map erpContractReq = new HashMap<>(); Map erpContractReq = new HashMap<>();
erpContractReq.put("billno", contractData.getString("name"));//合同编号 erpContractReq.put("billno", contractData.getString("name"));//合同编号
@ -138,7 +157,7 @@ public class XSHTController {
//erpContractReq.put("project_number", "SJ20250424-0033");//项目号 //erpContractReq.put("project_number", "SJ20250424-0033");//项目号
erpContractReq.put("billtype_number", "conm_salcontract_BT_QD");//单据类型 erpContractReq.put("billtype_number", "conm_salcontract_BT_QD");//单据类型
erpContractReq.put("billname", contractData.getString("project_name__c") != null ? contractData.getString("project_name__c") : "销售合同");//合同名称 erpContractReq.put("billname", contractData.getString("project_name__c") != null ? contractData.getString("project_name__c") : "销售合同");//合同名称
erpContractReq.put("type_number", "XSHT-QD01");//合同类型 erpContractReq.put("type_number", contractMainType);//合同类型
erpContractReq.put("contparties_number", contractData.getString("our_company_name__c") != null ? contractData.getString("our_company_name__c") : "");//合同主体 erpContractReq.put("contparties_number", contractData.getString("our_company_name__c") != null ? contractData.getString("our_company_name__c") : "");//合同主体
erpContractReq.put("createorg_number", contractData.getString("our_company_name__c") != null ? contractData.getString("our_company_name__c") : "");//销售组织编码 erpContractReq.put("createorg_number", contractData.getString("our_company_name__c") != null ? contractData.getString("our_company_name__c") : "");//销售组织编码
erpContractReq.put("org_number", contractData.getString("our_company_name__c") != null ? contractData.getString("our_company_name__c") : "");//销售组织编码 erpContractReq.put("org_number", contractData.getString("our_company_name__c") != null ? contractData.getString("our_company_name__c") : "");//销售组织编码
@ -228,7 +247,7 @@ public class XSHTController {
JSONObject customerData = customerRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0); JSONObject customerData = customerRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0);
erpContractReq.put("customer_number", customerData.getString("account_no"));//合同单位名称 erpContractReq.put("customer_number", customerData.getString("account_no"));//合同单位名称
erpContractReq.put("reccustomer_number", customerData.getString("account_no"));//收获客户单位名称 erpContractReq.put("reccustomer_number", contractData.getString("receiver_customer__c"));//收获客户单位名称
//erpContractReq.put("customer_number", "Cus-000001");//合同单位名称 //erpContractReq.put("customer_number", "Cus-000001");//合同单位名称
erpContractReq.put("settlecustomer_number", contractData.getString("billing_customer_code__c") != null ? contractData.getString("billing_customer_code__c") : "");//结算客户 erpContractReq.put("settlecustomer_number", contractData.getString("billing_customer_code__c") != null ? contractData.getString("billing_customer_code__c") : "");//结算客户
erpContractReq.put("payingcustomer_number", contractData.getString("payment_customer_code__c") != null ? contractData.getString("payment_customer_code__c") : "");//付款客户 erpContractReq.put("payingcustomer_number", contractData.getString("payment_customer_code__c") != null ? contractData.getString("payment_customer_code__c") : "");//付款客户
@ -287,22 +306,6 @@ public class XSHTController {
//销售方式 //销售方式
erpContractReq.put("salesmethod", contractData.getString("sales_method__c")); erpContractReq.put("salesmethod", contractData.getString("sales_method__c"));
//合同种类
String contractType = contractData.getString("contract_zl__c") != null ? contractData.getString("contract_zl__c") : "";
if (contractType.equals("")) {
log.info("合同种类不存在,将不再向下执行");
continue;
}
String contractTypeStr = "";
if (contractType.equals("option_sales_contract_details__c")) {
contractTypeStr = "020";
} else if (contractType.equals("option_sales_contract_total_amoun__c")) {
contractTypeStr = "020-1";
}
//根据合同号查询合同明细 //根据合同号查询合同明细
JSONObject contractDetailReq = crmRequestUtil.getCRMList(Arrays.asList( JSONObject contractDetailReq = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "sale_contract_id", Arrays.asList(contractId)) new Filter("EQ", "sale_contract_id", Arrays.asList(contractId))

View File

@ -28,7 +28,7 @@ public class ZHYTask {
@Autowired @Autowired
BankInfoController bankInfoController; BankInfoController bankInfoController;
@Scheduled(cron = "0 0/1 * * * ?") @Scheduled(cron = "*/45 * * * * ?")
private void configureTasks() throws Exception { private void configureTasks() throws Exception {
System.out.println("开始同步数据"); System.out.println("开始同步数据");
preContractController.syncContract(); preContractController.syncContract();

View File

@ -114,6 +114,8 @@ public class CrmRequestUtil {
request.put("corpAccessToken", corpAccessToken); request.put("corpAccessToken", corpAccessToken);
request.put("currentOpenUserId", CertificateConstant.CURRENT_OPEN_USERID); request.put("currentOpenUserId", CertificateConstant.CURRENT_OPEN_USERID);
request.put("corpId", CertificateConstant.CORP_ID); request.put("corpId", CertificateConstant.CORP_ID);
request.put("triggerWorkFlow", "false");
request.put("triggerApprovalFlow", "false");
request.put("data", objectData); request.put("data", objectData);
JSONObject requestJSON = new JSONObject(request); JSONObject requestJSON = new JSONObject(request);