1. 工单表增加时间字段,已确定更新时间点。

This commit is contained in:
梁州 2025-12-15 11:00:51 +08:00
parent feaa3f6377
commit 45da059027
5 changed files with 35 additions and 6 deletions

View File

@ -253,7 +253,7 @@ public class ExcelController {
} }
uploadFileHashStringList.add(fileVo.getHash()); uploadFileHashStringList.add(fileVo.getHash());
// 获取之前工单表的内容 // 获取之前工单表的内容
Map<String, KateOrders> kateOrdersMap = kateOrdersService.list().stream().collect(Collectors.toMap(kateOrders -> kateOrders.getWorkOrder() + kateOrders.getGoodsId() + kateOrders.getSupplyArea(), kateOrders -> kateOrders)); Map<String, KateOrders> kateOrdersMap = kateOrdersService.list().stream().collect(Collectors.toMap(kateOrders -> kateOrders.getWorkOrder() + "_" + kateOrders.getGoodsId() + "_" + kateOrders.getSupplyArea(), kateOrders -> kateOrders));
// 导入excel // 导入excel
EasyExcel.read(file.getInputStream(), KateOrdersExcelVo.class, new UploadKateOrdersListener(kateOrdersService, kateOrdersMap, fileVo.getUserName(),reqmtsDate)).sheet().doRead(); EasyExcel.read(file.getInputStream(), KateOrdersExcelVo.class, new UploadKateOrdersListener(kateOrdersService, kateOrdersMap, fileVo.getUserName(),reqmtsDate)).sheet().doRead();
// 添加导入记录 // 添加导入记录

View File

@ -110,4 +110,19 @@ public class KateOrders {
*/ */
@TableField("plan_start_date") @TableField("plan_start_date")
private LocalDate planStartDate; private LocalDate planStartDate;
/**
* 创建时间
*/
@TableField("create_time")
private LocalDateTime createTime;
/**
* 最后更新时间
*/
@TableField("last_update_time")
private LocalDateTime lastUpdateTime;
/**
* 最后更新原因
*/
@TableField("last_update_reason")
private String lastUpdateReason;
} }

View File

@ -65,6 +65,7 @@ public class WorkServiceImplements implements IWorkService {
//获取配置文件的是否添加了需求时间 //获取配置文件的是否添加了需求时间
@Value("${reqmtsDate}") @Value("${reqmtsDate}")
private boolean isAddReqmtsDate; private boolean isAddReqmtsDate;
private List<String> orderIds;
/** /**
* 找到下一个工作日 * 找到下一个工作日
@ -638,6 +639,8 @@ public class WorkServiceImplements implements IWorkService {
if (!needUpdateOrderIds.isEmpty()) { if (!needUpdateOrderIds.isEmpty()) {
kateOrdersService.update(new LambdaUpdateWrapper<KateOrders>() kateOrdersService.update(new LambdaUpdateWrapper<KateOrders>()
.set(KateOrders::getOrderStatus, 2) .set(KateOrders::getOrderStatus, 2)
.set(KateOrders::getLastUpdateTime, LocalDateTime.now())
.set(KateOrders::getLastUpdateReason, "执行工作")
.in(KateOrders::getOrderId, needUpdateOrderIds)); .in(KateOrders::getOrderId, needUpdateOrderIds));
} }
} }
@ -728,6 +731,7 @@ public class WorkServiceImplements implements IWorkService {
/** /**
* 根据库位号获得设备号 * 根据库位号获得设备号
*
* @param locationId 库位号 * @param locationId 库位号
* @return 设备号/堆垛机号 * @return 设备号/堆垛机号
*/ */
@ -811,6 +815,8 @@ public class WorkServiceImplements implements IWorkService {
// 更新工单表 // 更新工单表
KateOrders tempKateOrder = new KateOrders(); KateOrders tempKateOrder = new KateOrders();
tempKateOrder.setOrderId(workFlow.getOrderId()); tempKateOrder.setOrderId(workFlow.getOrderId());
tempKateOrder.setLastUpdateTime(LocalDateTime.now());
tempKateOrder.setLastUpdateReason("完成工作");
tempKateOrder.setFinishTime(LocalDateTime.now()); tempKateOrder.setFinishTime(LocalDateTime.now());
tempKateOrder.setPickedQuantity(workFlow.getPickedNum()); tempKateOrder.setPickedQuantity(workFlow.getPickedNum());
tempKateOrder.setLackQuantity(workFlow.getNeedNum().subtract(workFlow.getPickedNum())); tempKateOrder.setLackQuantity(workFlow.getNeedNum().subtract(workFlow.getPickedNum()));
@ -1124,10 +1130,12 @@ public class WorkServiceImplements implements IWorkService {
// 存储数据 // 存储数据
workFlowService.saveBatch(finalWorkFlows); workFlowService.saveBatch(finalWorkFlows);
// 更新工单状态 // 更新工单状态
List<String> orderIds = finalWorkFlows.stream().map(WorkFlow::getOrderId).toList(); List<String> orderIds = finalWorkFlows.stream().map(WorkFlow::getOrderId).distinct().toList();
if (!orderIds.isEmpty()) { if (!orderIds.isEmpty()) {
kateOrdersService.update(new LambdaUpdateWrapper<KateOrders>() kateOrdersService.update(new LambdaUpdateWrapper<KateOrders>()
.set(KateOrders::getOrderStatus, 1) .set(KateOrders::getOrderStatus, 1)
.set(KateOrders::getLastUpdateTime, LocalDateTime.now())
.set(KateOrders::getLastUpdateReason, "创建工作流")
.in(KateOrders::getOrderId, orderIds) .in(KateOrders::getOrderId, orderIds)
.eq(KateOrders::getOrderStatus, 0)); .eq(KateOrders::getOrderStatus, 0));
} }

View File

@ -12,6 +12,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import static com.wms.config.InitLocalConfig.configMap; import static com.wms.config.InitLocalConfig.configMap;
@ -71,7 +72,7 @@ public class UploadKateOrdersListener implements ReadListener<KateOrdersExcelVo>
if(kateOrdersExcelVo.getPlanStartDate() != null){ if(kateOrdersExcelVo.getPlanStartDate() != null){
cachedDataList.add(kateOrdersExcelVo); cachedDataList.add(kateOrdersExcelVo);
} }
}else { } else {
// 符合条件 // 符合条件
cachedDataList.add(kateOrdersExcelVo); cachedDataList.add(kateOrdersExcelVo);
} }
@ -103,7 +104,7 @@ public class UploadKateOrdersListener implements ReadListener<KateOrdersExcelVo>
*/ */
private void saveData() { private void saveData() {
for (KateOrdersExcelVo kateOrdersExcelVo : cachedDataList) { for (KateOrdersExcelVo kateOrdersExcelVo : cachedDataList) {
String key = kateOrdersExcelVo.getWorkOrder() + kateOrdersExcelVo.getGoodsId() + kateOrdersExcelVo.getSupplyArea(); String key = kateOrdersExcelVo.getWorkOrder() + "_" + kateOrdersExcelVo.getGoodsId() + "_" + kateOrdersExcelVo.getSupplyArea();
if (newKateOrdersMap.containsKey(key)) { if (newKateOrdersMap.containsKey(key)) {
KateOrders currentOrder = newKateOrdersMap.get(key); KateOrders currentOrder = newKateOrdersMap.get(key);
// 设定数量 // 设定数量
@ -132,6 +133,9 @@ public class UploadKateOrdersListener implements ReadListener<KateOrdersExcelVo>
newKateOrders.setLackQuantity(kateOrdersExcelVo.getRequirementQuantity()); newKateOrders.setLackQuantity(kateOrdersExcelVo.getRequirementQuantity());
newKateOrders.setPickedQuantity(BigDecimal.ZERO); newKateOrders.setPickedQuantity(BigDecimal.ZERO);
newKateOrders.setUserName(uploadUser); newKateOrders.setUserName(uploadUser);
newKateOrders.setCreateTime(LocalDateTime.now());
newKateOrders.setLastUpdateTime(LocalDateTime.now());
newKateOrders.setLastUpdateReason("导入工单");
//计划开工时间这个替换后面的dbs的计划开始时间 //计划开工时间这个替换后面的dbs的计划开始时间
if(isAddReqmtDate) { if(isAddReqmtDate) {
newKateOrders.setPlanStartDate(kateOrdersExcelVo.getPlanStartDate()); newKateOrders.setPlanStartDate(kateOrdersExcelVo.getPlanStartDate());

View File

@ -59,6 +59,8 @@ mybatis-plus:
logging: logging:
config: classpath:logback.xml config: classpath:logback.xml
reqmtsDate: false
# file: # file:
# encoding: UTF-8 # encoding: UTF-8