Commit 5f044cd8 authored by Smile's avatar Smile

需求 后台-集运-包裹更新报错问题修改

parent e8ad1442
......@@ -17,6 +17,7 @@ import cn.iocoder.yudao.module.customer.service.customerContacts.CustomerContact
import cn.iocoder.yudao.module.depository.dal.mysql.warehouse.WarehouseLineMapper;
import cn.iocoder.yudao.module.depository.dto.LogisticsInfoDto;
import cn.iocoder.yudao.module.order.convert.cons.ConsConvert;
import cn.iocoder.yudao.module.order.convert.consItem.ConsItemConvert;
import cn.iocoder.yudao.module.order.convert.consLocation.ConsLocationConvert;
import cn.iocoder.yudao.module.order.dal.dataobject.cons.ConsDO;
import cn.iocoder.yudao.module.order.dal.dataobject.consApproval.ConsApprovalDO;
......@@ -218,13 +219,22 @@ public class ConsServiceImpl extends AbstractService<ConsMapper, ConsDO> impleme
// 校验存在
this.validateConsExists(updateReqVO.getId());
List<ConsItemDO> consItemBackVOList = consItemService.selectList(ConsItemDO::getConsId, updateReqVO.getId());
for (ConsItemDO consItemDO : consItemBackVOList) {
consItemService.deleteConsItem(consItemDO.getId());
}
//根据id转成map
Map<Long, ConsItemDO> oldItemMap = consItemBackVOList.stream().collect(Collectors.toMap(ConsItemDO::getId, consItemDO -> consItemDO));
updateReqVO.getConsItemVOList().forEach(consItemVO -> {
consItemVO.setConsId(updateReqVO.getId());
consItemService.createConsItem(consItemVO);
if (consItemVO.getId() != null){
consItemService.updateById(ConsItemConvert.INSTANCE.convert(consItemVO));
oldItemMap.remove(consItemVO.getId());
}else{
consItemVO.setConsId(updateReqVO.getId());
consItemService.createConsItem(consItemVO);
}
});
if (!oldItemMap.isEmpty()) {
oldItemMap.forEach((k, v) -> {
consItemService.deleteConsItem(k);
});
}
//更新图片地址,仅签收情况
if (updateReqVO.getMediaUrl() != null && updateReqVO.getSigner() != null) {
if (!updateReqVO.getSigned()) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment