涉及变更操作以及部分字段更新

This commit is contained in:
itzhang 2025-06-24 16:28:45 +08:00
parent 01950969e5
commit 846e3bd84d
8 changed files with 116 additions and 54 deletions

View File

@ -18,6 +18,8 @@ import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.*;
/**
@ -409,8 +411,15 @@ public class DesignController {
public void upDesignDoc() {
CrmRequestUtil crmRequestUtil = new CrmRequestUtil();
long twoDaysAgo = LocalDateTime.now()
.minusDays(1)
.atZone(ZoneId.systemDefault())
.toInstant()
.toEpochMilli();
JSONObject getDesignBGDoc = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "name", Arrays.asList("2025-06-20-00015"))
//new Filter("EQ", "name", Arrays.asList("2025-06-24-00007")),
new Filter("GT", "create_time", Arrays.asList(String.valueOf(twoDaysAgo)))
), "design_file__c__changeObj__c");
System.out.println("设计文件变更接口请求为:" + JSON.parseObject(JSON.toJSONString(getDesignBGDoc)));
@ -484,8 +493,8 @@ public class DesignController {
}
String deptERPCode = deptRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0).getString("field_Vj6sf__c");
designBGDocMap.put("dept", "ZHY");//部门编码
//designBGDocMap.put("dept", deptERPCode);//部门
//designBGDocMap.put("dept", "ZHY");//部门编码
designBGDocMap.put("dept", deptERPCode);//部门
//申请日期
long changeDate = designBGDocData.getLong("changed_time");
@ -515,8 +524,8 @@ public class DesignController {
System.out.println("负责人数据为:" + ownerRes);
String ownerUserId = ownerRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0).getString("field_T1xid__c");
designBGDocData.put("bizuser", "ID-000016");//负责人
//designBGDocMap.put("bizuser", ownerUserId);//申请人
//designBGDocData.put("bizuser", "ID-000016");//负责人
designBGDocMap.put("bizuser", ownerUserId);//申请人
//采购组织
//判断组织编码
@ -581,6 +590,28 @@ public class DesignController {
designDocDetailMap.put("supplier", "");
//项目号
designDocDetailMap.put("project", designDocDetailData.getString("change_project_details__c__r") != null ? designDocDetailData.getString("change_project_details__c__r") : "");
//客指料类型
designDocDetailMap.put("materialType", designDocDetailData.getString("change_customer_material_type__c") != null ? designDocDetailData.getString("change_customer_material_type__c") : "");
//是否现场直发
String isSiteDirectStr = designDocDetailData.getString("change_is_direct_delivery__c") != null ? designDocDetailData.getString("change_is_direct_delivery__c") : "";
switch (isSiteDirectStr) {
case "yes":
designDocDetailMap.put("isDirectDelivery", "YES");
break;
case "no":
designDocDetailMap.put("isDirectDelivery", "NO");
break;
default:
designDocDetailMap.put("isDirectDelivery", "");
break;
}
//直发现场时间
long siteDirectTime = designDocDetailData.getLong("change_direct_delivery_time__c") != null ? designDocDetailData.getLong("change_direct_delivery_time__c") : 0;
designDocDetailMap.put("deliveryTime", new Date(siteDirectTime));
//直发现场地点
designDocDetailMap.put("deliveryLocation", designDocDetailData.getString("change_direct_delivery_location__c") != null ? designDocDetailData.getString("change_direct_delivery_location__c") : "");
//需求日期
long reqDate = designDocDetailData.getLong("create_time");
Date reqDateDate = new Date(reqDate);
@ -594,7 +625,7 @@ public class DesignController {
//行ID
log.info("新增行");
designDocDetailMap.put("changeType", "add");
designDocDetailMap.put("crmEntryId", designDocDetailData.getString("_id"));
designDocDetailMap.put("crmEntryId", designDocDetailData.getString("original_detail_data"));
designDocDetailMap.put("lineType", "010");
} else if (changeType.equals("update")) {
//变更类型为删除或者修改获取源单的行id

View File

@ -18,6 +18,8 @@ import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.*;
@RestController
@ -359,8 +361,15 @@ public class FrameContractController {
public void syncFrameContractBG() {
CrmRequestUtil crmRequestUtil = new CrmRequestUtil();
long twoDaysAgo = LocalDateTime.now()
.minusDays(1)
.atZone(ZoneId.systemDefault())
.toInstant()
.toEpochMilli();
JSONObject getFrameContract = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "name", Arrays.asList("2025-06-13-00002"))
//new Filter("EQ", "name", Arrays.asList("2025-06-13-00002"))
new Filter("GT", "create_time", Arrays.asList(String.valueOf(twoDaysAgo)))
), "framework_contract__c__changeObj__c");
JSONObject frameContractBGRes = new JSONObject();

View File

@ -727,9 +727,9 @@ public class InvoiceController {
JSONObject getInvoice = crmRequestUtil.getCRMList(Arrays.asList(
//new Filter("EQ", "name", Arrays.asList("2025-06-14-0005")),
new Filter("GT", "last_modified_time", Arrays.asList(String.valueOf(twoDaysAgo))),
new Filter("EQ", "life_status", Arrays.asList("invalid"))
), "ExpenseClaimFormObj");
new Filter("EQ", "life_status", Arrays.asList("invalid")),
new Filter("GT", "last_modified_time", Arrays.asList(String.valueOf(twoDaysAgo)))
), "InvoiceApplicationObj");
JSONObject invoiceRes = new JSONObject();
@ -828,7 +828,7 @@ public class InvoiceController {
JSONObject logRes = new JSONObject();
try {
logRes = restTemplate.postForObject("http://localhost:18088/Log/insert/log_data", logMap, JSONObject.class);
logRes = restTemplate.postForObject("http://localhost:18085/Log/insert/log_data", logMap, JSONObject.class);
} catch (RestClientException e) {
e.printStackTrace();
}

View File

@ -18,6 +18,8 @@ import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.*;
/**
@ -334,8 +336,15 @@ public class PreContractController {
public void bgPreContract() {
CrmRequestUtil crmRequestUtil = new CrmRequestUtil();
long twoDaysAgo = LocalDateTime.now()
.minusDays(1)
.atZone(ZoneId.systemDefault())
.toInstant()
.toEpochMilli();
JSONObject preContractBGReq = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "name", Arrays.asList("2025-06-13-00004"))
//new Filter("EQ", "name", Arrays.asList("2025-06-13-00004")),
new Filter("GT", "create_time", Arrays.asList(String.valueOf(twoDaysAgo)))
), "pre_signed_contract__c__changeObj__c");
JSONObject preContractBGRes = new JSONObject();

View File

@ -733,7 +733,7 @@ public class ReimbursementController {
JSONObject isLogRes = new JSONObject();
try {
isLogRes = restTemplate.getForObject("http://localhost:18085/Log/query/log_data?table=send_log_fybx&log_type=CL&dataId=" + erpId + "&mark=" + bizDate, JSONObject.class);
isLogRes = restTemplate.getForObject("http://localhost:18085/Log/query/log_data?table=send_log_fybx&log_type=CLFY&dataId=" + erpId + "&mark=" + bizDate, JSONObject.class);
} catch (RestClientException e) {
e.printStackTrace();
}
@ -906,7 +906,7 @@ public class ReimbursementController {
//开始封装日志
Map logMap = new HashMap<>();
logMap.put("log_id", UUID.randomUUID().toString().replace("-", ""));
logMap.put("log_type", "FY");
logMap.put("log_type", "CLFY");
logMap.put("data_name", billNo);
logMap.put("data_id", erpId);
logMap.put("mark", bizDate);

View File

@ -19,6 +19,8 @@ import org.springframework.web.client.RestClientException;
import org.springframework.web.client.RestTemplate;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.util.*;
/**
@ -515,8 +517,15 @@ public class XSHTController {
public void XSHTBGSync() {
CrmRequestUtil crmRequestUtil = new CrmRequestUtil();
long twoDaysAgo = LocalDateTime.now()
.minusDays(1)
.atZone(ZoneId.systemDefault())
.toInstant()
.toEpochMilli();
JSONObject getContract = crmRequestUtil.getCRMList(Arrays.asList(
new Filter("EQ", "name", Arrays.asList("2025-06-18-00007"))
//new Filter("EQ", "name", Arrays.asList("ZHY25062476-04")),
new Filter("GT", "create_time", Arrays.asList(String.valueOf(twoDaysAgo)))
), "SaleContractChangeObj");
JSONObject contractBGRes = new JSONObject();
@ -622,8 +631,8 @@ public class XSHTController {
//开始获取部门
String deptERPCode = deptRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0).getString("field_Vj6sf__c");
//contractBGMap.put("dept", deptERPCode);//部门编码
contractBGMap.put("dept", "zyierp");//部门编码
contractBGMap.put("dept", deptERPCode);//部门编码
//contractBGMap.put("dept", "zyierp");//部门编码
List ownerId = contractBGData.getJSONArray("owner") != null ? contractBGData.getJSONArray("owner") : new ArrayList<>();
@ -647,8 +656,8 @@ public class XSHTController {
System.out.println("负责人数据为:" + ownerRes);
String ownerUserId = ownerRes.getJSONObject("data").getJSONArray("dataList").getJSONObject(0).getString("field_T1xid__c");
//contractBGMap.put("operator", ownerUserId);//负责人
contractBGMap.put("operator", "ID-000016");//负责人
contractBGMap.put("operator", ownerUserId);//负责人
//contractBGMap.put("operator", "ID-000016");//负责人
//是否招投标
Boolean isBidding = null;
@ -753,11 +762,11 @@ public class XSHTController {
String changeType = contractBGDetailData.getString("changed_type") != null ? contractBGDetailData.getString("changed_type") : "";
if (changeType.equals("add")) {
log.info("删除");
log.info("新增");
//变更类型为新增获取当前的行ID
contractBGDetailMap.put("changeType", "add");
//行ID
contractBGDetailMap.put("crmentryid", contractBGDetailData.getString("_id"));
contractBGDetailMap.put("crmentryid", contractBGDetailData.getString("original_detail_data"));
//物料编码
String material = contractBGDetailData.getString("change_product_id") != null ? contractBGDetailData.getString("change_product_id") : "";

View File

@ -56,26 +56,30 @@ public class CrmTask {
* @return void
* @Author weiloong_zhang
*/
@Scheduled(cron = "0 0/1 * * * ?")
private void configureTasks() throws Exception {
System.out.println("开始同步ERP数据");
crmTokenController.tokenReSync();
preContractController.syncContract();
frameContractController.syncFrameContract();
xshtController.syncXSHT();
xshtController.isComplete();
designController.syncDesign();
goodsPlanController.syncGoodsPlan();
invoiceController.syncInvoice();
invoiceController.syncRedInvoice();
invoiceController.deleteInvoice();
qualityBackController.qualityFeedBack();
tenderingController.syncTendering();
bankInfoController.syncBankInfo();
reimbursementController.syncReimbursement();
reimbursementController.syncPublicExpenses();
reimbursementController.syncTravelExpenses();
System.out.println("ERP数据执行完毕");
}
// @Scheduled(cron = "0 0/1 * * * ?")
// private void configureTasks() throws Exception {
// System.out.println("开始同步ERP数据");
// crmTokenController.tokenReSync();
// preContractController.syncContract();
// preContractController.bgPreContract();
// frameContractController.syncFrameContract();
// frameContractController.syncFrameContractBG();
// xshtController.syncXSHT();
// xshtController.XSHTBGSync();
// xshtController.isComplete();
// designController.syncDesign();
// designController.upDesignDoc();
// goodsPlanController.syncGoodsPlan();
// invoiceController.syncInvoice();
// invoiceController.syncRedInvoice();
// invoiceController.deleteInvoice();
// qualityBackController.qualityFeedBack();
// tenderingController.syncTendering();
// bankInfoController.syncBankInfo();
// reimbursementController.syncReimbursement();
// reimbursementController.syncPublicExpenses();
// reimbursementController.syncTravelExpenses();
// System.out.println("ERP数据执行完毕");
// }
}

View File

@ -35,16 +35,16 @@ public class CrmTaskTZ {
* @return void
* @Author weiloong_zhang
*/
@Scheduled(cron = "0 0/2 * * * ?")
private void configureTasks() throws Exception {
System.out.println("开始同步台账数据");
projectInitiateController.syncProjectInitiate();
deliveryReqController.syncDeliveryReq();
deliveryReqController.syncRefund();
deviceInstallController.syncDeviceInstall();
deviceInstallController.upDeviceInstall();
xshtController.syncSaleOrder();
yqhtController.syncYQHT();
System.out.println("台账执行完毕");
}
// @Scheduled(cron = "0 0/2 * * * ?")
// private void configureTasks() throws Exception {
// System.out.println("开始同步台账数据");
// projectInitiateController.syncProjectInitiate();
// deliveryReqController.syncDeliveryReq();
// deliveryReqController.syncRefund();
// deviceInstallController.syncDeviceInstall();
// deviceInstallController.upDeviceInstall();
// xshtController.syncSaleOrder();
// yqhtController.syncYQHT();
// System.out.println("台账执行完毕");
// }
}