出入库移交任务及移除任务项;

This commit is contained in:
王奎兴
2026-07-10 17:06:29 +08:00
parent 4852b4496a
commit 5030ca2a8a
8 changed files with 120 additions and 0 deletions
@@ -584,6 +584,38 @@ public class StockInOrderApplicationService {
.eq(StockInOrder::getInOrderId, stockInOrder.getInOrderId()));
}
public void removeTask(StockInOrderDO stockInOrder){
Long inOrderId = stockInOrder.getInOrderId();
String removeUserId = stockInOrder.getRemoveUserId();
if (removeUserId == null) {
throw new ServiceException("移除任务用户ID为空!");
}
if (inOrderId == null) {
throw new ServiceException("入库单不存在!");
}
StockInOrder stock = stockInOrderService.getById(inOrderId);
if (stock == null) {
throw new ServiceException("入库单不存在!");
}
String taskIssueUserId = stock.getTaskIssueUserId();
if (taskIssueUserId == null) {
return;
}
String[] split = taskIssueUserId.split(",");
List<String> taskIds = Arrays.asList(split);
// 删除匹配元素
taskIds.removeIf(str -> removeUserId.equals(str));
if (taskIds != null && taskIds.size() > 0) {
String newTaskIssueUserId = String.join(",", taskIds);
stock.setTaskIssueUserId(newTaskIssueUserId);
stockInOrderService.updateById(stock);
} else {
stockInOrderService.update(null ,new LambdaUpdateWrapper<StockInOrder>()
.set(StockInOrder::getTaskIssueUserId, null)
.eq(StockInOrder::getInOrderId, stockInOrder.getInOrderId()));
}
}
public void omsOrderAddDetail(List<InMaterialDetail> inMaterialDetails){
stockInOrderDomainService.omsOrderAddDetail(inMaterialDetails);
}
@@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.mhd.common.core.constant.SecurityConstants;
import com.mhd.common.core.constant.SnowFlakeConstants;
import com.mhd.common.core.domain.entity.R;
@@ -51,6 +52,7 @@ import com.mhd.wms.domain.stockInOrder.entity.StockInOrder;
import com.mhd.wms.domain.receiptOrderAccount.entity.ReceiptOrderAccount;
import com.mhd.wms.domain.receiptOrderAccount.repository.facade.IReceiptOrderAccountService;
import com.mhd.wms.domain.stockInOrder.repository.mapper.StockInOrderMapper;
import com.mhd.wms.domain.stockInOrder.repository.todo.StockInOrderDO;
import com.mhd.wms.domain.stockOutOrder.entity.StockOutOrder;
import com.mhd.wms.domain.stockOutOrder.repository.facade.IStockOutOrderService;
import com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper;
@@ -1617,6 +1619,52 @@ public class StockOutOrderApplicationService {
public void acceptTask(StockOutOrder stockOutOrder){
Long workUserId = stockOutOrder.getWorkUserId();
String workUserName = stockOutOrder.getWorkUserName();
if (workUserId == null || workUserName == null) {
throw new ServiceException("作业人员id或名称为空!");
}
stockOutOrderService.update(null, new LambdaUpdateWrapper<StockOutOrder>()
.set(StockOutOrder::getWorkUserId, workUserId)
.set(StockOutOrder::getWorkUserName, workUserName)
.eq(StockOutOrder::getOutOrderId, stockOutOrder.getOutOrderId()));
}
public void removeTask(StockOutOrderDO stockOutOrder){
Long outOrderId = stockOutOrder.getOutOrderId();
String removeUserId = stockOutOrder.getRemoveUserId();
if (removeUserId == null) {
throw new ServiceException("移除任务用户ID为空!");
}
if (outOrderId == null) {
throw new ServiceException("出库单不存在!");
}
StockOutOrder stock = stockOutOrderService.getById(outOrderId);
if (stock == null) {
throw new ServiceException("入库单不存在!");
}
String taskIssueUserId = stock.getTaskIssueUserId();
if (taskIssueUserId == null) {
return;
}
String[] split = taskIssueUserId.split(",");
List<String> taskIds = Arrays.asList(split);
// 删除匹配元素
taskIds.removeIf(str -> removeUserId.equals(str));
if (taskIds != null && taskIds.size() > 0) {
String newTaskIssueUserId = String.join(",", taskIds);
stock.setTaskIssueUserId(newTaskIssueUserId);
stockOutOrderService.updateById(stock);
} else {
stockOutOrderService.update(null ,new LambdaUpdateWrapper<StockOutOrder>()
.set(StockOutOrder::getTaskIssueUserId, null)
.eq(StockOutOrder::getOutOrderId, stockOutOrder.getOutOrderId()));
}
}
public void omsOrderAdd(StockOutOrder stockOutOrder){
stockOutOrderDomainService.omsOrderAdd(stockOutOrder);
}
@@ -445,4 +445,7 @@ public class StockInOrderDO extends BaseVOEntity {
@ApiModelProperty("任务下发用户ID")
private String taskIssueUserId;
@ApiModelProperty("任务移除用户ID")
private String removeUserId;
}
@@ -510,4 +510,7 @@ public class StockOutOrderDO extends BaseVOEntity {
private Long queryUserId;
@ApiModelProperty("状态列表")
private List<Integer> statusList;
@ApiModelProperty("任务移除用户ID")
private String removeUserId;
}
@@ -442,4 +442,7 @@ public class StockInOrderDTO extends StockInOrderBaseDTO {
@ApiModelProperty("任务下发用户ID")
private String taskIssueUserId;
@ApiModelProperty("任务移除用户ID")
private String removeUserId;
}
@@ -499,4 +499,7 @@ public class StockOutOrderDTO extends StockOutOrderBaseDTO {
private Long queryUserId;
@ApiModelProperty("状态列表")
private List<Integer> statusList;
@ApiModelProperty("任务移除用户ID")
private String removeUserId;
}
@@ -181,6 +181,15 @@ public class StockInOrderApi extends BaseController {
stockInOrderApplicationService.acceptTask(stockInOrder);
}
/**
* oms下发单保存
*/
@ApiOperation("pda取消接收任务")
@PostMapping(value = "/removeTask")
public void removeTask(@RequestBody StockInOrderDO stockInOrderDO) {
stockInOrderApplicationService.removeTask(stockInOrderDO);
}
/**
* oms下发单明细保存
*/
@@ -18,6 +18,7 @@ import com.mhd.wms.domain.outMaterialDetail.entity.OutMaterialDetail;
import com.mhd.wms.domain.outMaterialDetail.repository.po.OutMaterialDetailPO;
import com.mhd.wms.domain.outMaterialDetail.repository.todo.OutMaterialDetailDO;
import com.mhd.wms.domain.stockInOrder.entity.StockInOrder;
import com.mhd.wms.domain.stockInOrder.repository.todo.StockInOrderDO;
import com.mhd.wms.domain.stockOutOrder.entity.StockOutOrder;
import com.mhd.wms.domain.stockOutOrder.repository.facade.IStockOutOrderService;
import com.mhd.wms.domain.stockOutOrder.repository.listener.ExcelParseService;
@@ -464,6 +465,24 @@ public class StockOutOrderApi extends BaseController {
stockOutOrderApplicationService.omsOrderAdd(stockOutOrder);
}
/**
* oms下发单保存
*/
@ApiOperation("pda接收任务")
@PostMapping(value = "/acceptTask")
public void acceptTask(@RequestBody StockOutOrder stockOutOrder) {
stockOutOrderApplicationService.acceptTask(stockOutOrder);
}
/**
* oms下发单保存
*/
@ApiOperation("pda取消接收任务")
@PostMapping(value = "/removeTask")
public void removeTask(@RequestBody StockOutOrderDO stockOutOrderDO) {
stockOutOrderApplicationService.removeTask(stockOutOrderDO);
}
/**
* oms下发单明细保存
*/