WMS出库交接任务下发修改

This commit is contained in:
秦鸿展
2026-03-06 19:53:04 +08:00
parent 6a25f97ddb
commit c91aedb344
3 changed files with 91 additions and 6 deletions
@@ -18,6 +18,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* 交接作业单Service业务层处理
@@ -88,6 +89,17 @@ public class HandoverTaskOrderImpl extends ServiceImpl<HandoverTaskOrderMapper,
@Override
public boolean taskDistribution(HandoverTaskOrderDO handoverTaskOrderDO) {
LoginUser loginUser = SecurityUtils.getLoginUser();
List<Long> handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds();
if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) {
return false;
}
// 过滤掉 null 值
handoverTaskOrderIds = handoverTaskOrderIds.stream()
.filter(id -> id != null)
.collect(Collectors.toList());
if (handoverTaskOrderIds.isEmpty()) {
return false;
}
HandoverTaskOrder handoverTaskOrder = new HandoverTaskOrder();
handoverTaskOrder.setTaskDistribution(1);
handoverTaskOrder.setTaskDistributionTime(new Date());
@@ -95,7 +107,7 @@ public class HandoverTaskOrderImpl extends ServiceImpl<HandoverTaskOrderMapper,
handoverTaskOrder.setUpdateByName(loginUser.getUsername());
handoverTaskOrder.setUpdateTime(new Date());
int i = handoverTaskOrderMapper.update(handoverTaskOrder, new QueryWrapper<HandoverTaskOrder>().lambda()
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds()));
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds));
return i > 0;
}
@@ -36,6 +36,7 @@ import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
* 交接作业单
@@ -108,6 +109,17 @@ public class HandoverTaskOrderDomainService {
* @return Boolean
*/
public Boolean allocationPlatform(HandoverTaskOrderDO handoverTaskOrderDO){
List<Long> handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds();
if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) {
return false;
}
// 过滤掉 null 值
handoverTaskOrderIds = handoverTaskOrderIds.stream()
.filter(id -> id != null)
.collect(Collectors.toList());
if (handoverTaskOrderIds.isEmpty()) {
return false;
}
LoginUser loginUser = SecurityUtils.getLoginUser();
return handoverTaskOrderService.update(null, new UpdateWrapper<HandoverTaskOrder>().lambda()
.set(HandoverTaskOrder::getPlatformUseStatus, 1)
@@ -120,7 +132,7 @@ public class HandoverTaskOrderDomainService {
.set(HandoverTaskOrder::getUpdateBy, loginUser.getUserid())
.set(HandoverTaskOrder::getUpdateByName, loginUser.getUsername())
.set(HandoverTaskOrder::getUpdateTime, new Date())
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds())
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds)
);
}
@@ -132,13 +144,24 @@ public class HandoverTaskOrderDomainService {
* @return Boolean
*/
public Boolean releasePlatform(HandoverTaskOrderDO handoverTaskOrderDO){
List<Long> handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds();
if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) {
return false;
}
// 过滤掉 null 值
handoverTaskOrderIds = handoverTaskOrderIds.stream()
.filter(id -> id != null)
.collect(Collectors.toList());
if (handoverTaskOrderIds.isEmpty()) {
return false;
}
LoginUser loginUser = SecurityUtils.getLoginUser();
return handoverTaskOrderService.update(null, new UpdateWrapper<HandoverTaskOrder>().lambda()
.set(HandoverTaskOrder::getPlatformUseStatus, 3)
.set(HandoverTaskOrder::getUpdateBy, loginUser.getUserid())
.set(HandoverTaskOrder::getUpdateByName, loginUser.getUsername())
.set(HandoverTaskOrder::getUpdateTime, new Date())
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds())
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds)
);
}
@@ -152,7 +175,14 @@ public class HandoverTaskOrderDomainService {
*/
public Boolean completeHandover(HandoverTaskOrderDO handoverTaskOrderDO) {
List<Long> handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds();
if (handoverTaskOrderIds == null || handoverTaskOrderIds.size() == 0) {
if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) {
return false;
}
// 过滤掉 null 值
handoverTaskOrderIds = handoverTaskOrderIds.stream()
.filter(id -> id != null)
.collect(Collectors.toList());
if (handoverTaskOrderIds.isEmpty()) {
return false;
}
LoginUser loginUser = SecurityUtils.getLoginUser();
@@ -163,7 +193,7 @@ public class HandoverTaskOrderDomainService {
.set(HandoverTaskOrder::getUpdateBy, loginUser.getUserid())
.set(HandoverTaskOrder::getUpdateByName, loginUser.getUsername())
.set(HandoverTaskOrder::getUpdateTime, new Date())
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds())
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds)
);
}
@@ -293,8 +323,21 @@ public class HandoverTaskOrderDomainService {
*/
@Transactional(rollbackFor = Exception.class)
public boolean taskDistribution(HandoverTaskOrderDO handoverTaskOrderDO) {
List<Long> handoverTaskOrderIds = handoverTaskOrderDO.getHandoverTaskOrderIds();
if (handoverTaskOrderIds == null || handoverTaskOrderIds.isEmpty()) {
throw new ServiceException("未选择交接作业单,请重新选择");
}
// 过滤掉 null 值
handoverTaskOrderIds = handoverTaskOrderIds.stream()
.filter(id -> id != null)
.collect(Collectors.toList());
if (handoverTaskOrderIds.isEmpty()) {
throw new ServiceException("交接作业单ID不能为空,请重新选择");
}
// 更新 DO 对象中的列表,确保后续调用使用过滤后的列表
handoverTaskOrderDO.setHandoverTaskOrderIds(handoverTaskOrderIds);
List<HandoverTaskOrder> handoverTaskOrders = handoverTaskOrderService.list(new LambdaQueryWrapper<HandoverTaskOrder>()
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderDO.getHandoverTaskOrderIds())
.in(HandoverTaskOrder::getHandoverTaskOrderId, handoverTaskOrderIds)
.eq(HandoverTaskOrder::getTaskDistribution, 2)
);
if (CollectionUtils.isEmpty(handoverTaskOrders)) {
@@ -6,6 +6,7 @@ import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@@ -132,6 +133,35 @@ public class HandoverTaskOrderDTO extends BaseVOEntity {
@ApiModelProperty("交接作业单id")
private List<Long> handoverTaskOrderIds;
/**
* 自定义setter方法,支持单个整数和数组两种格式
*/
public void setHandoverTaskOrderIds(Object value) {
if (value == null) {
this.handoverTaskOrderIds = null;
return;
}
List<Long> result = new ArrayList<>();
if (value instanceof List) {
// 如果是列表,遍历并转换
List<?> list = (List<?>) value;
for (Object item : list) {
if (item != null) {
if (item instanceof Number) {
result.add(((Number) item).longValue());
}
}
}
} else if (value instanceof Number) {
// 如果是单个数字,转换为列表
result.add(((Number) value).longValue());
}
this.handoverTaskOrderIds = result.isEmpty() ? null : result;
}
@ApiModelProperty("作业人用户ID")
@Excel(name = "作业人用户ID")
private Long operatorsBy;