|
|
|
@ -50,6 +50,7 @@ import lombok.AllArgsConstructor;
|
|
|
|
|
import lombok.extern.log4j.Log4j2; |
|
|
|
|
import org.jetbrains.annotations.Nullable; |
|
|
|
|
import org.mapstruct.factory.Mappers; |
|
|
|
|
import org.springblade.common.cache.CacheNames; |
|
|
|
|
import org.springblade.common.constant.RedisKeyConstant; |
|
|
|
|
import org.springblade.common.constant.common.IsOrNoConstant; |
|
|
|
|
import org.springblade.common.exception.CustomerException; |
|
|
|
@ -196,8 +197,8 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
|
|
|
|
|
QuestDetailEntity detailEntity = buildQuestDetailEntity(taskQuest, i, user, trayEntityList); |
|
|
|
|
if (detailEntity == null) { |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
|
detailEntityList.add(detailEntity); |
|
|
|
|
|
|
|
|
|
}); |
|
|
|
@ -258,32 +259,24 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
detailEntity.setBrandName(i.getBrandName()); |
|
|
|
|
detailEntity.setHasData(1); |
|
|
|
|
// detailEntity.setQuestType();
|
|
|
|
|
//盘点对象;1.定制品 2零担 3 库存品
|
|
|
|
|
//盘点对象;1 定制品 2 库存品 3零担
|
|
|
|
|
//查询托盘名称
|
|
|
|
|
if (ObjectUtils.isNotNull(i.getTrayId())) { |
|
|
|
|
// boolean b = trayEntityList.stream().anyMatch(a -> i.getTrayId().equals(String.valueOf(a.getId()) ));
|
|
|
|
|
// log.info("托盘是否有值>>>>>>>>>>{}",b);
|
|
|
|
|
// Optional<BasicdataTrayEntity> first = trayEntityList.stream().filter(t -> i.getTrayId().equals(String.valueOf(t.getId()))).findFirst();
|
|
|
|
|
// if (first.isPresent()) {
|
|
|
|
|
// BasicdataTrayEntity basicdataTrayEntity = first.get();
|
|
|
|
|
// detailEntity.setTrayName(basicdataTrayEntity.getPalletName());
|
|
|
|
|
// }
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Integer conditions = i.getConditions(); |
|
|
|
|
if (conditions.equals(1)) { |
|
|
|
|
if (1==conditions) { |
|
|
|
|
detailEntity.setQuestTarget(1); |
|
|
|
|
} else if (conditions.equals(2)) { |
|
|
|
|
|
|
|
|
|
} else if (2==conditions) { |
|
|
|
|
detailEntity.setQuestTarget(3); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (ObjectUtils.isNotNull(i.getConditions()) && i.getConditions().equals(1)) { |
|
|
|
|
detailEntity.setQuestTarget(i.getConditions()); |
|
|
|
|
} else if (ObjectUtils.isNotNull(i.getConditions()) && i.getConditions().equals(2)) { |
|
|
|
|
detailEntity.setQuestTarget(3); // 库存品
|
|
|
|
|
} else { |
|
|
|
|
log.info("包件信息!数据信息不存在!!"); |
|
|
|
|
}else if( 3==conditions){ |
|
|
|
|
detailEntity.setQuestTarget(2); |
|
|
|
|
}else{ |
|
|
|
|
log.warn(">>>>>>>>>>> 警告 错误的包件数据类型 ,{}",i); |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// detailEntity.setQuestTarget(1);
|
|
|
|
|
detailEntity.setOrderPackageCode(i.getOrderPackageCode()); |
|
|
|
|
detailEntity.setWaybillNumber(i.getWaybillNumber()); |
|
|
|
@ -306,11 +299,32 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
|
|
|
|
|
detailEntity.setMaterialCode(i.getMaterialCode()); |
|
|
|
|
detailEntity.setMaterialName(i.getMaterialName()); |
|
|
|
|
detailEntity.setMarketName(i.getMallName()); |
|
|
|
|
if (ObjectUtils.isNull(i.getMallName())) { |
|
|
|
|
// 根据包件查询订单的上的商城信息
|
|
|
|
|
DistributionStockArticleEntity stockArticleEntity = getCacheEntityByStockArticleId(i); |
|
|
|
|
if (ObjectUtils.isNotNull(stockArticleEntity)) { |
|
|
|
|
detailEntity.setMarketName(stockArticleEntity.getMallName()); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
detailEntity.setIncomingBatch(i.getOrderCode()); |
|
|
|
|
return detailEntity; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private DistributionStockArticleEntity getCacheEntityByStockArticleId(DistributionParcelListEntity i) { |
|
|
|
|
|
|
|
|
|
String key = CacheNames.tenantKeyObj(AuthUtil.getTenantId(),"getEntityByStockArticleId", i.getStockArticleId()); |
|
|
|
|
DistributionStockArticleEntity temp = bladeRedis.get(key); |
|
|
|
|
if(ObjectUtils.isNotNull(temp)){ |
|
|
|
|
temp = distributionStockArticleClient.findEntityByStockArticleId(i.getStockArticleId()); |
|
|
|
|
if(ObjectUtils.isNotNull(temp)){ |
|
|
|
|
// 设定该条数据的缓存时间 10分钟
|
|
|
|
|
bladeRedis.setEx(key,temp,600L); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
return temp; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 获取用户部门最大的部门ID |
|
|
|
|
* |
|
|
|
@ -453,9 +467,9 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
for (DistributionStockListVO distributionStockListVO : stockListInfo) { |
|
|
|
|
|
|
|
|
|
// 订单转换的
|
|
|
|
|
if("1".equals(distributionStockListVO.getSourceType())){ |
|
|
|
|
if ("1".equals(distributionStockListVO.getSourceType())) { |
|
|
|
|
|
|
|
|
|
}else { |
|
|
|
|
} else { |
|
|
|
|
// 导入的‘
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -768,7 +782,6 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
* @return |
|
|
|
|
*/ |
|
|
|
|
@Override |
|
|
|
|
|
|
|
|
|
public R addDataInfo(TaskSearchDTO taskSearchDTO) { |
|
|
|
|
log.info("开始添加数据{}", taskSearchDTO.toString()); |
|
|
|
|
String questNum = taskSearchDTO.getQuestNum(); |
|
|
|
@ -790,7 +803,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
// 在库包件状态修改
|
|
|
|
|
if (ObjectUtils.isNotNull(taskSearchDTO.getQuestDetailIds()) && ObjectUtils.isNotNull(taskSearchDTO.getQuestDetailIds().get(0))) { |
|
|
|
|
QuestDetailEntity quest = new QuestDetailEntity(); |
|
|
|
|
List<QuestDetailEntity> questDetailList = baseMapper.selectTaskInfoForIds(questNum, quest, taskSearchDTO.getQuestDetailIds()); |
|
|
|
|
// List<QuestDetailEntity> questDetailList = baseMapper.selectTaskInfoForIds(questNum, quest, taskSearchDTO.getQuestDetailIds());
|
|
|
|
|
|
|
|
|
|
log.info(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> tag {}", 1); |
|
|
|
|
List<QuestDetailEntity> list = new ArrayList<>(); |
|
|
|
@ -950,7 +963,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
questDetail.setNewTrayId(i.getNewTrayId()); |
|
|
|
|
questDetail.setNewTrayCode(i.getNewTrayCode()); |
|
|
|
|
// 通过托盘ID 查询托盘名称
|
|
|
|
|
if(ObjectUtils.isNotNull(i.getNewTrayCode())){ |
|
|
|
|
if (ObjectUtils.isNotNull(i.getNewTrayCode())) { |
|
|
|
|
BasicdataTrayEntity trayEntity = basicdataTrayClient.getTrayByTrayCode(i.getNewTrayCode()); |
|
|
|
|
questDetail.setNewTrayName(trayEntity.getPalletName()); |
|
|
|
|
} |
|
|
|
@ -1158,13 +1171,13 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
q.setMaterialName(entityByStockArticle.getDescriptionGoods()); |
|
|
|
|
|
|
|
|
|
v.forEach(i -> { |
|
|
|
|
if (i.getQuestStatus() == 1) { |
|
|
|
|
yi.updateAndGet(v1 -> v1 + 1); |
|
|
|
|
q.setQuestStatusName("部分盘点"); |
|
|
|
|
User user = UserCache.getUser(i.getUpdateUser()); |
|
|
|
|
q.setUpdateUser(user.getAccount()); |
|
|
|
|
q.setUpdateTime(i.getUpdateTime()); |
|
|
|
|
} |
|
|
|
|
if (i.getQuestStatus() == 1) { |
|
|
|
|
yi.updateAndGet(v1 -> v1 + 1); |
|
|
|
|
q.setQuestStatusName("部分盘点"); |
|
|
|
|
User user = UserCache.getUser(i.getUpdateUser()); |
|
|
|
|
q.setUpdateUser(user.getAccount()); |
|
|
|
|
q.setUpdateTime(i.getUpdateTime()); |
|
|
|
|
} |
|
|
|
|
q.setOrderCode(i.getOrderCode()); |
|
|
|
|
if (ObjectUtils.isNull(i.getGroundingPositionCode())) { |
|
|
|
|
q.setGroundingPositionCode("无更新"); |
|
|
|
@ -1269,7 +1282,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
|
|
|
|
|
String[] split1 = i.getTrayId().split(","); |
|
|
|
|
for (String s : split1) { |
|
|
|
|
if(StringUtil.isNoneBlank(s)){ |
|
|
|
|
if (StringUtil.isNoneBlank(s)) { |
|
|
|
|
List<BasicdataTrayEntity> collect = trayEntityList.stream().filter(w -> w.getId().equals(Long.valueOf(s))).collect(Collectors.toList()); |
|
|
|
|
//托盘
|
|
|
|
|
if (ObjectUtils.isNull(collect)) { |
|
|
|
@ -1554,10 +1567,10 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
List<DistributionParcelListEntity> byPacketBarCode = distributionParcelListClient.findByPacketBarCode(packageListVO.getOrderPackageCode()); |
|
|
|
|
|
|
|
|
|
for (DistributionParcelListEntity distributionParcelListEntity : byPacketBarCode) { |
|
|
|
|
if(distributionParcelListEntity.getWarehouseId().equals(taskSearchDTO.getWarehouseId())){ |
|
|
|
|
QuestDetailEntity questDetailEntity= buildQuestDetailEntity(taskSearchDTO.getQuestId(),distributionParcelListEntity,user,null); |
|
|
|
|
if (distributionParcelListEntity.getWarehouseId().equals(taskSearchDTO.getWarehouseId())) { |
|
|
|
|
QuestDetailEntity questDetailEntity = buildQuestDetailEntity(taskSearchDTO.getQuestId(), distributionParcelListEntity, user, null); |
|
|
|
|
questDetailEntities.add(questDetailEntity); |
|
|
|
|
baseMapper.insertQuestDetail(taskSearchDTO.getQuestNum(),questDetailEntities); |
|
|
|
|
baseMapper.insertQuestDetail(taskSearchDTO.getQuestNum(), questDetailEntities); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
@ -1652,24 +1665,24 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
if (Func.isEmpty(questDetailEntityList)) { |
|
|
|
|
// 从业务系统获取数据
|
|
|
|
|
DistributionParcelListEntity byPacketBarCodeAndWarehouseId = distributionParcelListClient.findByPacketBarCodeAndWarehouseId(questDetail.getCode(), taskSearchDTO.getWarehouseId()); |
|
|
|
|
if (ObjectUtils.isNotNull(byPacketBarCodeAndWarehouseId)){ |
|
|
|
|
if (ObjectUtils.isNotNull(byPacketBarCodeAndWarehouseId)) { |
|
|
|
|
// 得到下面的订单信息
|
|
|
|
|
|
|
|
|
|
List<DistributionParcelListEntity> byPacketBarCode = distributionParcelListClient.findEntityListByOrderCode(byPacketBarCodeAndWarehouseId.getOrderCode(), taskSearchDTO.getWarehouseId()); |
|
|
|
|
|
|
|
|
|
if(ObjectUtils.isEmpty(byPacketBarCode)){ |
|
|
|
|
if (ObjectUtils.isEmpty(byPacketBarCode)) { |
|
|
|
|
throw new ServiceException("包件信息不存在"); |
|
|
|
|
}else{ |
|
|
|
|
} else { |
|
|
|
|
List<QuestDetailEntity> list1 = new ArrayList<>(); |
|
|
|
|
for (DistributionParcelListEntity distributionParcelListEntity : byPacketBarCode) { |
|
|
|
|
if(distributionParcelListEntity.getWarehouseId().equals(taskSearchDTO.getWarehouseId())){ |
|
|
|
|
if (distributionParcelListEntity.getWarehouseId().equals(taskSearchDTO.getWarehouseId())) { |
|
|
|
|
QuestDetailEntity questDetailEntity1 = buildQuestDetailEntity(taskSearchDTO.getQuestId(), distributionParcelListEntity, user, null); |
|
|
|
|
// 这里新增2
|
|
|
|
|
questDetailEntity1.setIsNew(1); |
|
|
|
|
list1.add(questDetailEntity1); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
baseMapper.insertQuestDetail(taskSearchDTO.getQuestNum(),list1); |
|
|
|
|
baseMapper.insertQuestDetail(taskSearchDTO.getQuestNum(), list1); |
|
|
|
|
// return taskPageList.setRecords(list);
|
|
|
|
|
questDetailEntityList = list1; |
|
|
|
|
} |
|
|
|
@ -1855,7 +1868,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
// return baseMapper.selecttrayList(page,taskSearchDTO,collect);// 查询有没有当次盘点任务的托盘数据
|
|
|
|
|
|
|
|
|
|
TaskTrayVO taskTrayVO = new TaskTrayVO(); |
|
|
|
|
if(list1.isEmpty()){ |
|
|
|
|
if (list1.isEmpty()) { |
|
|
|
|
return taskTrayVO; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -2084,8 +2097,8 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
// questDetail.setAllocationId(String.valueOf(warehouseUpdownGoodsEntity.getAllocationId()));
|
|
|
|
|
// }
|
|
|
|
|
// questDetail.setIsNew(0);//是否新增
|
|
|
|
|
DistributionParcelListEntity byPacketBarCodeAndWarehouseId = distributionParcelListClient.findByPacketBarCodeAndWarehouseId(i.getAssociationValue(), warehouseId); |
|
|
|
|
questDetail =buildQuestDetailEntity(taskSearchDTO.getQuestId(),byPacketBarCodeAndWarehouseId,user,null); |
|
|
|
|
DistributionParcelListEntity byPacketBarCodeAndWarehouseId = distributionParcelListClient.findByPacketBarCodeAndWarehouseId(taskSearchDTO.getCode(), warehouseId); |
|
|
|
|
questDetail = buildQuestDetailEntity(taskSearchDTO.getQuestId(), byPacketBarCodeAndWarehouseId, user, null); |
|
|
|
|
break; |
|
|
|
|
case "4": //4库存品
|
|
|
|
|
questDetail.setCreateUser(user.getUserId()); |
|
|
|
@ -2123,7 +2136,6 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
questDetail.setQuestType(4);//托盘
|
|
|
|
|
questDetail.setQuestStatus(0); //包件盘点状态
|
|
|
|
|
questDetail.setStockNum(i.getNum()); //数量
|
|
|
|
@ -2737,7 +2749,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
} |
|
|
|
|
if (taskSearchDTO.getTypeState().equals(1)) { |
|
|
|
|
//有
|
|
|
|
|
if (ObjectUtils.isNull(questDetailEntity.getHasData())||questDetailEntity.getHasData().equals(0)) { |
|
|
|
|
if (ObjectUtils.isNull(questDetailEntity.getHasData()) || questDetailEntity.getHasData().equals(0)) { |
|
|
|
|
continue; |
|
|
|
|
} |
|
|
|
|
//查询包件信息
|
|
|
|
@ -2933,28 +2945,26 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
// 需要去业务系统上进行查询信息
|
|
|
|
|
List<DistributionParcelListEntity> byPacketBarCode = distributionParcelListClient.findByPacketBarCode(questDetail.getOrderPackageCode()); |
|
|
|
|
|
|
|
|
|
if(ObjectUtils.isEmpty(byPacketBarCode)){ |
|
|
|
|
if (ObjectUtils.isEmpty(byPacketBarCode)) { |
|
|
|
|
return R.fail(5000, "包件信息不存在!!"); |
|
|
|
|
}else{ |
|
|
|
|
} else { |
|
|
|
|
for (DistributionParcelListEntity distributionParcelListEntity : byPacketBarCode) { |
|
|
|
|
if(distributionParcelListEntity.getWarehouseId().equals(warehouseId)){ |
|
|
|
|
if (distributionParcelListEntity.getWarehouseId().equals(warehouseId)) { |
|
|
|
|
QuestDetailEntity questDetailEntity1 = buildQuestDetailEntity(questId, distributionParcelListEntity, user, null); |
|
|
|
|
// 这里新增2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
questDetailEntity1.setIsNew(1); |
|
|
|
|
List<QuestDetailEntity> list = Arrays.asList(questDetailEntity1); |
|
|
|
|
baseMapper.insertQuestDetail(taskSearchDTO.getQuestNum(),list); |
|
|
|
|
baseMapper.insertQuestDetail(taskSearchDTO.getQuestNum(), list); |
|
|
|
|
return R.data(list); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
for (QuestDetailEntity i : questDetailEntityList) { |
|
|
|
|
if (i.getQuestStatus().equals(1)) { |
|
|
|
@ -3459,7 +3469,7 @@ public class TaskQuestServiceImpl extends BaseServiceImpl<TaskQuestMapper, TaskQ
|
|
|
|
|
public List<TaskQueryDataExcel> exportContrastStockInfo(QuestDetailDTO questDetailDTO) { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<TaskQueryDataExcel> datas = baseMapper.selectContrastStockInfo(questDetailDTO.getQuestNum(),questDetailDTO.getQuestStatus()); |
|
|
|
|
List<TaskQueryDataExcel> datas = baseMapper.selectContrastStockInfo(questDetailDTO.getQuestNum(), questDetailDTO.getQuestStatus()); |
|
|
|
|
return datas; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|