Browse Source

1.优化配送主表重复更新的问题

pre-production
pref_mail@163.com 4 months ago
parent
commit
0ed09308b7
  1. 108
      blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesWorkOrderServiceImpl.java
  2. 849
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java
  3. 1
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java

108
blade-service/logpm-aftersales/src/main/java/com/logpm/aftersales/service/impl/AftersalesWorkOrderServiceImpl.java

@ -1222,116 +1222,8 @@ public class AftersalesWorkOrderServiceImpl extends BaseServiceImpl<AftersalesWo
}
}
}
}
/* List<AftersalesWorkOrderEntity> aftersalesWorkOrderEntities = baseMapper.selectList(Wrappers.<AftersalesWorkOrderEntity>query().lambda()
.eq(AftersalesWorkOrderEntity::getIsDeleted,0)
.apply("work_order_status in (10,20)")
);
if(!aftersalesWorkOrderEntities.isEmpty()){
List<AftersalesWorkOrderVO> workOrderVOList = new ArrayList<>();
for (AftersalesWorkOrderEntity i : aftersalesWorkOrderEntities) {
// 获取当前时间
LocalDateTime now = LocalDateTime.now();
// 获取48小时前的时间
LocalDateTime before48Hours = now.minusHours(48);
// 获取48小时前的时间戳(秒数)
long timestamp = before48Hours.toEpochSecond(ZoneOffset.ofHours(8));
long l = i.getCreateTime().getTime() / 1000;
long l1 = timestamp - l;
if (l1 > 0) {
//查询处理方是否处理
List<AftersalesProcessorEntity> list = aftersalesProcessorService.list(Wrappers.<AftersalesProcessorEntity>query().lambda()
.eq(AftersalesProcessorEntity::getWorkOrderId, i.getId())
.eq(AftersalesProcessorEntity::getTypesOf, "2")
.eq(AftersalesProcessorEntity::getProcessingStatus, "1")
);
if(list.isEmpty()){
continue;
}
list.forEach( a ->{
AftersalesWorkOrderVO aftersalesWorkOrderVO = new AftersalesWorkOrderVO();
BeanUtil.copyProperties(i,aftersalesWorkOrderVO);
//以超时
aftersalesWorkOrderVO.setBusinessName(a.getBusinessName());
aftersalesWorkOrderVO.setBusinessId(a.getBusinessId());
aftersalesWorkOrderVO.setProcessorId(a.getId());
workOrderVOList.add(aftersalesWorkOrderVO);
});
} else {
continue;
}
}
if(!workOrderVOList.isEmpty()){
workOrderVOList.forEach(i ->{
// 假设有两个时间戳(秒数)
long timestamp1 = new Date().getTime() / 1000; // 现在时间
long timestamp2 = i.getCreateTime().getTime() / 1000; // 创建时间
// 将时间戳转换为Instant对象
Instant instant1 = Instant.ofEpochSecond(timestamp1);
Instant instant2 = Instant.ofEpochSecond(timestamp2);
// 计算两个时间戳之间的小时差
Duration duration = Duration.between(instant1, instant2);
long hours = duration.toHours();
Integer number = Integer.valueOf((int)hours);
int i1 = 48;
int ci = 0;
while (number > i1) {
i1 +=48;
ci += 1;
}
//查询超时的记录
List<AftersalesOvertimeFineEntity> list = aftersalesOvertimeFineService.list(Wrappers.<AftersalesOvertimeFineEntity>query().lambda()
.eq(AftersalesOvertimeFineEntity::getWorkOrderId, i.getId())
);
int size = list.size();
for (int q = 0; q < ci ; q++){
//第一次超时
if(size == 0 ){
//处理超时数据
AftersalesProcessorEntity processor = new AftersalesProcessorEntity();
processor.setProcessingStatus("3");//回复超时
processor.setId(i.getProcessorId());
aftersalesProcessorService.updateById(processor);
//添加超时记录
AftersalesOvertimeFineEntity overtimeFineEntity = new AftersalesOvertimeFineEntity();
overtimeFineEntity.setWorkOrderId(i.getId());
overtimeFineEntity.setMoney(BigDecimal.valueOf(50));
overtimeFineEntity.setTimeout(String.valueOf(hours));
overtimeFineEntity.setBusinessId(i.getBusinessId());
overtimeFineEntity.setBusinessName(i.getBusinessName());
overtimeFineEntity.setProcessorId(i.getProcessorId());
aftersalesOvertimeFineService.save(overtimeFineEntity);
}else if(q > size){
//添加新的超时记录
AftersalesOvertimeFineEntity overtimeFineEntity = new AftersalesOvertimeFineEntity();
overtimeFineEntity.setWorkOrderId(i.getId());
overtimeFineEntity.setMoney(BigDecimal.valueOf(50));
overtimeFineEntity.setTimeout(String.valueOf(hours));
overtimeFineEntity.setBusinessId(i.getBusinessId());
overtimeFineEntity.setBusinessName(i.getBusinessName());
overtimeFineEntity.setProcessorId(i.getProcessorId());
aftersalesOvertimeFineService.save(overtimeFineEntity);
}
}
});
}
}*/
}
/**

849
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionDeliveryListServiceImpl.java

File diff suppressed because it is too large Load Diff

1
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionStockArticleServiceImpl.java

@ -1982,7 +1982,6 @@ public class DistributionStockArticleServiceImpl extends BaseServiceImpl<Distrib
baseMapper.updateDistributionStockArticleEntityById(t);
}
// 根据跳进进行更新
}
} else if (IsOrNoConstant.yes.getValue().equals(stockArticleEntity.getIsZero())) {

Loading…
Cancel
Save