tao.mo

biz-customer | 修改 | 用户运单中间表入库逻辑调整

mt
2025年1月2日16:23:54
......@@ -307,23 +307,21 @@ public class ConsignmentUtil {
* 保存附件表信息
*/
attachmentRepository.saveOrUpdateAll(attachmentList);
//用户uuid与运单uuid不一致,则需要添加用户运单中间表信息
if(!user.getUserUuid().equals(consignment.getUserUuid())){
/**
* 查找用户与运单关联信息
*/
UserConsignmentMapping userConsignmentMapping = userConsignmentMappingRepository.findByUserIdConsignmentId(user.getId(),consignment.getId());
if(Objects.isNull(userConsignmentMapping)){
/**
* 查找用户与运单关联信息
* 初始化插入预清关文件推送任务日志
*/
UserConsignmentMapping userConsignmentMapping = userConsignmentMappingRepository.findByUserIdConsignmentId(user.getId(),consignment.getId());
if(Objects.isNull(userConsignmentMapping)){
/**
* 初始化插入预清关文件推送任务日志
*/
userConsignmentMapping = userConsignmentMappingUtil.initUserConsignmentMapping(user.getId(),consignment.getId(),ceFlag);
/**
* 初始化插入预清关文件推送任务日志
*/
userConsignmentMappingRepository.saveOrUpdate(userConsignmentMapping);
}
userConsignmentMapping = userConsignmentMappingUtil.initUserConsignmentMapping(user.getId(),consignment);
}
userConsignmentMapping.setCeFlag(ceFlag);
/**
* 初始化插入预清关文件推送任务日志
*/
userConsignmentMappingRepository.saveOrUpdate(userConsignmentMapping);
/**
* 初始化插入预清关文件推送日志,mt添加
*/
......
......@@ -2,6 +2,7 @@ package com.fedex.connect.customer.util.service.biz;
import com.fedex.connect.common.dependencies.enums.base.StatusEnum;
import com.fedex.connect.common.dependencies.util.AssignmentFieldUtils;
import com.fedex.connect.common.model.biz.Consignment;
import com.fedex.connect.common.model.biz.UserConsignmentMapping;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
......@@ -22,12 +23,12 @@ public class UserConsignmentMappingUtil {
* @param
* @return com.fedex.connect.common.model.biz.PushOb
*/
public UserConsignmentMapping initUserConsignmentMapping(Long userId,Long consignmentId,Long ceFlag) throws Exception{
public UserConsignmentMapping initUserConsignmentMapping(Long userId, Consignment consignment) throws Exception{
UserConsignmentMapping userConsignmentMapping = new UserConsignmentMapping();
userConsignmentMapping.setUserId(userId);
userConsignmentMapping.setConsignmentId(consignmentId);
userConsignmentMapping.setConsignmentId(consignment.getId());
userConsignmentMapping.setConsignmentCode(consignment.getConsignmentCode());
userConsignmentMapping.setStatus(StatusEnum.YES.getCode());
userConsignmentMapping.setCeFlag(ceFlag);
AssignmentFieldUtils.assignmentTableBaseField(userConsignmentMapping);
return userConsignmentMapping;
}
......
......@@ -64,7 +64,7 @@ public class UserConsignmentMapping implements Serializable {
private String consignmentCode;
/**
* 是否使用CE数据标志
* 是否使用CE数据标志(0“非501数据,1:501数据)
*/
private Long ceFlag;
......
......@@ -7,6 +7,7 @@ import com.fedex.connect.common.dao.sys.KafkaStorageHistoryMapper;
import com.fedex.connect.common.dao.sys.KafkaTemporaryStorageMapper;
import com.fedex.connect.kafka.repository.dao.CeInfoMapperExt;
import com.fedex.connect.kafka.repository.dao.KafkaTemporaryStorageMapperExt;
import com.fedex.connect.kafka.repository.dao.UserConsignmentMappingMapperExt;
import com.fedex.connect.kafka.repository.dao.UserMapperExt;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -27,4 +28,6 @@ public class BaseRepository {
protected UserMapperExt userMapperExt;
@Autowired
protected EmailMapper emailMapper;
@Autowired
protected UserConsignmentMappingMapperExt userConsignmentMappingMapperExt;
}
\ No newline at end of file
......
package com.fedex.connect.kafka.repository.dao;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Update;
@Mapper
public interface UserConsignmentMappingMapperExt {
@Update( "<script>" +
"UPDATE T_BIZ_USER_CONSIGNMENT_MAPPING SET CE_FLAG = 1 WHERE ID IN( " +
"SELECT CM.ID FROM T_BIZ_USER_CONSIGNMENT_MAPPING CM INNER JOIN T_SYS_USER SU ON(CM.USER_ID = SU.ID) WHERE SU.ACCOUNT_NO = #{shipperAccount} OR SU.USER_UUID = #{uuid})" +
"</script>")
void updateUserChmMappingByAnUuId(@Param("shipperAccount") String shipperAccount,@Param("uuid") String uuid);
}
\ No newline at end of file
package com.fedex.connect.kafka.repository.repo;
public interface IUserConsignmentMappingRepository {
void updateUserChmMappingByAnUuId(String shipperAccount, String uuid);
}
package com.fedex.connect.kafka.repository.repo.impl;
import com.fedex.connect.kafka.repository.base.BaseRepository;
import com.fedex.connect.kafka.repository.repo.IUserConsignmentMappingRepository;
import org.springframework.stereotype.Repository;
/**
* @Author mt
* @Description 用户运单映射
* @Date 2025/1/2
*/
@Repository
public class UserConsignmentMappingRepositoryImpl extends BaseRepository implements IUserConsignmentMappingRepository {
/**
* @Author mt
* @Description 根据shipperAccount、uuid更新用户运单映射表ce标志
* @Date 2025/1/2
* @param shipperAccount
* @param uuid
* @return void
*/
public void updateUserChmMappingByAnUuId(String shipperAccount, String uuid){
userConsignmentMappingMapperExt.updateUserChmMappingByAnUuId(shipperAccount,uuid);
}
}
\ No newline at end of file
......@@ -68,5 +68,4 @@ public class Dm501ServiceImpl extends BaseService implements IDm501Service {
});
return processResults;
}
}
\ No newline at end of file
......
......@@ -13,10 +13,7 @@ import com.fedex.connect.common.model.sys.User;
import com.fedex.connect.kafka.constants.Constant;
import com.fedex.connect.kafka.data.dto.dm.dm501.Dm501ConAddresses;
import com.fedex.connect.kafka.data.dto.dm.dm501.Dm501Consignments;
import com.fedex.connect.kafka.repository.repo.ICeInfoRepository;
import com.fedex.connect.kafka.repository.repo.IConsignmentRepository;
import com.fedex.connect.kafka.repository.repo.IEmailRepository;
import com.fedex.connect.kafka.repository.repo.IUserRepository;
import com.fedex.connect.kafka.repository.repo.*;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -42,6 +39,8 @@ public class Dm501Util {
IUserRepository userRepository;
@Autowired
IEmailRepository emailRepository;
@Autowired
IUserConsignmentMappingRepository userConsignmentMappingRepository;
/**
* @Author mt
......@@ -334,6 +333,8 @@ public class Dm501Util {
//绑定ceInfo表Id
consignment.setCeInfoId(ceInfo.getId());
consignmentRepository.save(consignment);
//根据shipperAccount、uuid更新用户运单映射表ce标志
userConsignmentMappingRepository.updateUserChmMappingByAnUuId(consignment.getShipperAccount(),consignment.getUserUuid());
/**
* 保存入库
*/
......@@ -341,4 +342,4 @@ public class Dm501Util {
emailRepository.save(email);
}
}
}
}
\ No newline at end of file
......