法务推送代码修正
This commit is contained in:
+10
-3
@@ -554,13 +554,20 @@ public class ContractLaunchServiceImpl implements ContractLaunchService {
|
|||||||
contractLaunchMapper.updateContract(contract);
|
contractLaunchMapper.updateContract(contract);
|
||||||
replaceArchiveChildren(id, archiveDto, currentUser.getUsername());
|
replaceArchiveChildren(id, archiveDto, currentUser.getUsername());
|
||||||
|
|
||||||
Map<String, Object> payload = buildArchivePayload(contract, archiveDto, false);
|
// 1. 构造归档报文(true → 附件路径转为法务系统路径)
|
||||||
|
// buildArchivePayload(..., true) 内部会调用 legalFileBridgeService.buildCollectionPayload,
|
||||||
|
// 自动上传未缓存的附件到法务系统并缓存 legalFileUrl。
|
||||||
|
Map<String, Object> payload = buildArchivePayload(contract, archiveDto, true);
|
||||||
log.info("合同归档参数:{}", JsonUtils.toJson(payload));
|
log.info("合同归档参数:{}", JsonUtils.toJson(payload));
|
||||||
insertLog(id, ContractLaunchConstants.ACTION_ARCHIVE, "合同归档", ContractLaunchConstants.ACTION_STATUS_PENDING, "合同归档接口当前先注释,使用测试按钮流转", payload, currentUser);
|
insertLog(id, ContractLaunchConstants.ACTION_ARCHIVE, "合同归档",
|
||||||
|
ContractLaunchConstants.ACTION_STATUS_PENDING,
|
||||||
|
"合同归档接口当前先注释,使用测试按钮流转",
|
||||||
|
payload, currentUser);
|
||||||
|
|
||||||
// TODO: 法务接口当前不可用,真实联调时打开下面调用即可
|
// TODO: 法务接口当前不可用,真实联调时打开下面调用即可
|
||||||
|
// payload 已构造好(含法务路径),直接用
|
||||||
// PushPayloadDTO requestDTO = new PushPayloadDTO();
|
// PushPayloadDTO requestDTO = new PushPayloadDTO();
|
||||||
// requestDTO.setPayload(buildArchivePayload(contract, archiveDto, true));
|
// requestDTO.setPayload(payload);
|
||||||
// dataCollectionPushService.collectContractArchive(requestDTO);
|
// dataCollectionPushService.collectContractArchive(requestDTO);
|
||||||
|
|
||||||
return getDetail(id);
|
return getDetail(id);
|
||||||
|
|||||||
@@ -2,6 +2,9 @@ package com.nbport.zgwl.partner.service;
|
|||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.nbport.zgwl.common.PageResult;
|
import com.nbport.zgwl.common.PageResult;
|
||||||
|
import com.nbport.zgwl.contractlaunch.utils.JsonUtils;
|
||||||
|
import com.nbport.zgwl.contractpush.dto.PushPayloadDTO;
|
||||||
|
import com.nbport.zgwl.contractpush.service.DataCollectionPushService;
|
||||||
import com.nbport.zgwl.exception.ServiceException;
|
import com.nbport.zgwl.exception.ServiceException;
|
||||||
import com.nbport.zgwl.partner.dto.PartnerContactDto;
|
import com.nbport.zgwl.partner.dto.PartnerContactDto;
|
||||||
import com.nbport.zgwl.partner.dto.PartnerManageDto;
|
import com.nbport.zgwl.partner.dto.PartnerManageDto;
|
||||||
@@ -35,6 +38,8 @@ public class PartnerManageServiceImpl implements PartnerManageService {
|
|||||||
|
|
||||||
private final PartnerDataHandler partnerDataHandler;
|
private final PartnerDataHandler partnerDataHandler;
|
||||||
|
|
||||||
|
private final DataCollectionPushService dataCollectionPushService;
|
||||||
|
|
||||||
/** 分页查询相对方列表(结果中会带上联系人数据) */
|
/** 分页查询相对方列表(结果中会带上联系人数据) */
|
||||||
@Override
|
@Override
|
||||||
public PageResult<PartnerManageDto> queryPartnerList(PartnerQueryDto queryDto) {
|
public PageResult<PartnerManageDto> queryPartnerList(PartnerQueryDto queryDto) {
|
||||||
@@ -141,7 +146,7 @@ public class PartnerManageServiceImpl implements PartnerManageService {
|
|||||||
PartnerManageConstants.PARTNER_IS_DELETED_DELETED);
|
PartnerManageConstants.PARTNER_IS_DELETED_DELETED);
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 模拟同步相对方到法务系统(本地测试用,TODO:替换为真实 collectOpposites 调用) */
|
/** 同步相对方到法务系统 */
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public PartnerManageDto mockSyncPartner(Long customerSysid) {
|
public PartnerManageDto mockSyncPartner(Long customerSysid) {
|
||||||
@@ -153,31 +158,66 @@ public class PartnerManageServiceImpl implements PartnerManageService {
|
|||||||
attachContacts(Collections.singletonList(partner));
|
attachContacts(Collections.singletonList(partner));
|
||||||
|
|
||||||
LocalDateTime now = LocalDateTime.now();
|
LocalDateTime now = LocalDateTime.now();
|
||||||
String oppositeId = StrUtilHelper.hasText(partner.getOppositeId())
|
|
||||||
|
// 1. 构造报文并调用法务相对方信息采集接口
|
||||||
|
PushPayloadDTO payloadDTO =
|
||||||
|
PartnerSyncPayloadBuilder.buildCollectOppositesPayload(partner);
|
||||||
|
log.info("法务系统同步参数: {}", JsonUtils.toJson(payloadDTO));
|
||||||
|
// Map<String, Object> response = dataCollectionPushService.collectOpposites(payloadDTO);
|
||||||
|
//
|
||||||
|
// // 2. 解析法务返回结果
|
||||||
|
// // 响应格式: { "code": "200", "data": [{ "o_id": "11007", "jtId": "10256" }], "msg": "接收成功" }
|
||||||
|
// String returnedOppositeId = null; // jtId → oppositeId
|
||||||
|
// String syncMessage;
|
||||||
|
|
||||||
|
// Object codeObj = response.get("code");
|
||||||
|
// if (codeObj != null && ("200".equals(String.valueOf(codeObj)) || Integer.valueOf(200).equals(codeObj))) {
|
||||||
|
// Object dataObj = response.get("data");
|
||||||
|
// if (dataObj instanceof List) {
|
||||||
|
// List<?> dataList = (List<?>) dataObj;
|
||||||
|
// if (!dataList.isEmpty() && dataList.get(0) instanceof Map) {
|
||||||
|
// Map<?, ?> firstItem = (Map<?, ?>) dataList.get(0);
|
||||||
|
// Object jtId = firstItem.get("jtId");
|
||||||
|
// returnedOppositeId = jtId != null ? String.valueOf(jtId) : null;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// syncMessage = response.containsKey("msg")
|
||||||
|
// ? String.valueOf(response.get("msg"))
|
||||||
|
// : "相对方信息采集同步成功";
|
||||||
|
// } else {
|
||||||
|
// syncMessage = "相对方信息采集接口返回异常: code=" + codeObj
|
||||||
|
// + ", msg=" + response.get("msg");
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// // 3. 回写法务返回的 oppositeId(jtId → oppositeId)
|
||||||
|
// String finalOppositeId = returnedOppositeId != null
|
||||||
|
// ? returnedOppositeId
|
||||||
|
// : partner.getOppositeId();
|
||||||
|
|
||||||
|
// partnerManageMapper.updatePartnerSyncInfo(
|
||||||
|
// customerSysid,
|
||||||
|
// finalOppositeId,
|
||||||
|
// returnedOppositeId != null
|
||||||
|
// ? PartnerManageConstants.SYNC_STATUS_SYNCED
|
||||||
|
// : PartnerManageConstants.SYNC_STATUS_FAILED,
|
||||||
|
// now,
|
||||||
|
// syncMessage,
|
||||||
|
// PartnerManageConstants.DEFAULT_OPERATOR,
|
||||||
|
// now);
|
||||||
|
|
||||||
|
String finalOppositeId = StrUtilHelper.hasText(partner.getOppositeId())
|
||||||
? partner.getOppositeId()
|
? partner.getOppositeId()
|
||||||
: PartnerIdUtils.buildGroupPartnerId();
|
: PartnerIdUtils.buildGroupPartnerId();
|
||||||
|
|
||||||
PartnerSyncPayloadBuilder.buildCollectOppositesPayload(partner);
|
|
||||||
// PushPayloadDTO payloadDTO =
|
|
||||||
// PartnerSyncPayloadBuilder.buildCollectOppositesPayload(partner);
|
|
||||||
// Map<String, Object> response =
|
|
||||||
// dataCollectionPushService.collectOpposites(payloadDTO);
|
|
||||||
String syncMessage = "本地测试模拟同步成功。TODO:后续在这里调用相对方信息采集接口 collectOpposites。";
|
String syncMessage = "本地测试模拟同步成功。TODO:后续在这里调用相对方信息采集接口 collectOpposites。";
|
||||||
// // 从法务系统响应中取出返回的 oppositeId(比如 response 里有个 "jtId" 字段)
|
partnerManageMapper.updatePartnerSyncInfo(
|
||||||
// String oppositeIdFromLawSystem = ...; // 具体 key 看法务返回的字段名
|
|
||||||
// String syncMessage = response.containsKey("msg")
|
|
||||||
// ? String.valueOf(response.get("msg"))
|
|
||||||
// : "相对方信息采集同步成功";
|
|
||||||
|
|
||||||
// // 回写法务返回的 oppositeId,而不是本地生成的
|
|
||||||
partnerManageMapper.updatePartnerSyncInfo(
|
|
||||||
customerSysid,
|
customerSysid,
|
||||||
oppositeId,
|
finalOppositeId,
|
||||||
PartnerManageConstants.SYNC_STATUS_SYNCED,
|
PartnerManageConstants.SYNC_STATUS_SYNCED,
|
||||||
now,
|
now,
|
||||||
syncMessage,
|
syncMessage,
|
||||||
PartnerManageConstants.DEFAULT_OPERATOR,
|
PartnerManageConstants.DEFAULT_OPERATOR,
|
||||||
now);
|
now);
|
||||||
|
|
||||||
return selectPartnerById(customerSysid);
|
return selectPartnerById(customerSysid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user