|
|
|
@ -36,7 +36,6 @@ import com.glxp.api.service.inout.IoSplitCodeService;
|
|
|
|
|
import com.glxp.api.util.Excel.ExcelHandler;
|
|
|
|
|
import com.glxp.api.util.Excel.Exception.RenException;
|
|
|
|
|
import com.glxp.api.util.IntUtil;
|
|
|
|
|
import com.glxp.api.util.StringUtils;
|
|
|
|
|
import com.glxp.api.util.udi.FilterUdiUtils;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.springframework.beans.BeanUtils;
|
|
|
|
@ -81,9 +80,7 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
request.setUserId(userId.toString());
|
|
|
|
|
page = basicCollectUserService.filterList(request);
|
|
|
|
|
if (page != null && page.size() > 0) {
|
|
|
|
|
workPlaceCodes = page.stream()
|
|
|
|
|
.map(UserWorkResponse::getWorkplaceId)
|
|
|
|
|
.collect(Collectors.toList());
|
|
|
|
|
workPlaceCodes = page.stream().map(UserWorkResponse::getWorkplaceId).collect(Collectors.toList());
|
|
|
|
|
}
|
|
|
|
|
//通过工位列表 获取出 业务列表
|
|
|
|
|
workBindBusTypeRequest.setWorkPlaceCodes(workPlaceCodes);
|
|
|
|
@ -99,9 +96,7 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(sysWorkplaceDocumentResponses)) {
|
|
|
|
|
Set<String> uniqueDocumentTypeCodesLinkedHashSet = sysWorkplaceDocumentResponses.stream()
|
|
|
|
|
.map(SysWorkplaceDocumentResponse::getDocumentTypeCode)
|
|
|
|
|
.collect(Collectors.toCollection(LinkedHashSet::new));
|
|
|
|
|
Set<String> uniqueDocumentTypeCodesLinkedHashSet = sysWorkplaceDocumentResponses.stream().map(SysWorkplaceDocumentResponse::getDocumentTypeCode).collect(Collectors.toCollection(LinkedHashSet::new));
|
|
|
|
|
List<String> documentTypeCodes = new ArrayList<>(uniqueDocumentTypeCodesLinkedHashSet);
|
|
|
|
|
|
|
|
|
|
collectOrderRequest.setDocumentTypeCodes(documentTypeCodes);
|
|
|
|
@ -129,8 +124,7 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
request.setBusType(collectOrderRequest.getBusType());
|
|
|
|
|
request.setTagStatusList(List.of(1));
|
|
|
|
|
List<IoCollectOrderResponse> orderResponses = collectOrderService.filterList(request);
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses))
|
|
|
|
|
return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.error(500, "该工位已无待处理单据");
|
|
|
|
|
}
|
|
|
|
@ -155,20 +149,17 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
request.setUpdateUser(getUserId());
|
|
|
|
|
request.setTagStatus(2);
|
|
|
|
|
List<IoCollectOrderResponse> orderResponses = collectOrderService.filterList(request);
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses))
|
|
|
|
|
return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
else {
|
|
|
|
|
request.setTagStatus(-1);
|
|
|
|
|
orderResponses = collectOrderService.filterList(request);
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses))
|
|
|
|
|
return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
else {
|
|
|
|
|
IoCollectSet collectSet = collectSetService.getSet();
|
|
|
|
|
if (IntUtil.value(collectSet.getAutoAllotOrder())) {
|
|
|
|
|
request.setTagStatus(1);
|
|
|
|
|
orderResponses = collectOrderService.filterList(request);
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses))
|
|
|
|
|
return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -193,13 +184,11 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
request.setLimit(1);
|
|
|
|
|
request.setBillNo(collectOrderRequest.getBillNo());
|
|
|
|
|
List<IoCollectOrderResponse> orderResponses = collectOrderService.filterList(request);
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses))
|
|
|
|
|
return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
else {
|
|
|
|
|
request.setTagStatus(-1);
|
|
|
|
|
orderResponses = collectOrderService.filterList(request);
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses))
|
|
|
|
|
return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
if (CollUtil.isNotEmpty(orderResponses)) return ResultVOUtils.success(orderResponses.get(0));
|
|
|
|
|
}
|
|
|
|
|
return ResultVOUtils.error(500, "未查到待处理单据");
|
|
|
|
|
}
|
|
|
|
@ -415,13 +404,24 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
@PostMapping("/udiwms/basic/collect/order/finish")
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public BaseResponse saveFinishOrder(@RequestBody CollectOrderRequest collectOrderRequest) {
|
|
|
|
|
List<String> billNos = new ArrayList<>();
|
|
|
|
|
if (StrUtil.isEmpty(collectOrderRequest.getBillNo())) return ResultVOUtils.error(500, "单号不能为空!");
|
|
|
|
|
IoCollectOrder collectOrder = collectOrderService.getByBillNo(collectOrderRequest.getBillNo());
|
|
|
|
|
if (StrUtil.isNotEmpty(collectOrder.getSummaryNo())) {
|
|
|
|
|
billNos = collectOrderService.getBillBySummary(collectOrder.getSummaryNo());
|
|
|
|
|
} else {
|
|
|
|
|
billNos.add(collectOrderRequest.getBillNo());
|
|
|
|
|
}
|
|
|
|
|
boolean isAllTag = true;
|
|
|
|
|
|
|
|
|
|
if (!IntUtil.value(collectOrderRequest.getConfirmFinish())) {
|
|
|
|
|
//1.校验是否全部自动赋码
|
|
|
|
|
CollectOrderBizRequest collectOrderBizRequest = new CollectOrderBizRequest();
|
|
|
|
|
collectOrderBizRequest.setOrderIdFk(collectOrderRequest.getBillNo());
|
|
|
|
|
List<CollectOrderBizResponse> collectOrderBizResponses = collectOrderService.combieOrderDetail(collectOrderBizRequest);
|
|
|
|
|
boolean isAllTag = true;
|
|
|
|
|
String msg = "";
|
|
|
|
|
for (String billNo : billNos) {
|
|
|
|
|
collectOrderBizRequest.setOrderIdFk(billNo);
|
|
|
|
|
List<CollectOrderBizResponse> collectOrderBizResponses = collectOrderService.combieOrderDetail(collectOrderBizRequest);
|
|
|
|
|
if (CollUtil.isNotEmpty(collectOrderBizResponses)) {
|
|
|
|
|
for (int i = 0; i < collectOrderBizResponses.size(); i++) {
|
|
|
|
|
CollectOrderBizResponse collectOrderBizResponse = collectOrderBizResponses.get(i);
|
|
|
|
@ -434,12 +434,24 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
if (!isAllTag) {
|
|
|
|
|
return ResultVOUtils.error(502, "该业务单据未全部赋码【" + msg.replaceAll(";$", "") + "】,是否强制完成单据?");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (CollUtil.isNotEmpty(billNos)) {
|
|
|
|
|
List<IoCollectOrder> collectOrders = collectOrderService.list(new LambdaQueryWrapper<IoCollectOrder>().in(IoCollectOrder::getBillNo, billNos));
|
|
|
|
|
if (CollUtil.isNotEmpty(collectOrders)) {
|
|
|
|
|
for (IoCollectOrder temp : collectOrders) {
|
|
|
|
|
CollectOrderRequest tempRequest = new CollectOrderRequest();
|
|
|
|
|
BeanUtils.copyProperties(temp, tempRequest);
|
|
|
|
|
collectOrderService.finishOrder(tempRequest, getUser(), false);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
collectOrderService.finishOrder(collectOrderRequest, getUser(), false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return ResultVOUtils.success();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -453,9 +465,14 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
if (collectOrderRequest.getIsCheckFinish() != null) {
|
|
|
|
|
collectOrderBizRequest.setIsOrderCheck(collectOrderRequest.getIsCheckFinish());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
IoCollectOrder collectOrder = collectOrderService.getByBillNo(collectOrderRequest.getBillNo());
|
|
|
|
|
if (StrUtil.isNotEmpty(collectOrder.getSummaryNo())) {
|
|
|
|
|
collectOrderBizRequest.setSummaryNo(collectOrder.getSummaryNo());
|
|
|
|
|
}
|
|
|
|
|
List<CollectOrderBizResponse> collectOrderBizResponses = collectOrderService.combieOrderDetail(collectOrderBizRequest);
|
|
|
|
|
boolean isAllTag = collectOrderBizResponses.stream()
|
|
|
|
|
.allMatch(obj -> StrUtil.isNotEmpty(obj.getFinishUdiCode()) || obj.getAutoTagStatus() == 2);
|
|
|
|
|
boolean isAllTag = collectOrderBizResponses.stream().allMatch(obj -> StrUtil.isNotEmpty(obj.getFinishUdiCode()) || obj.getAutoTagStatus() == 2);
|
|
|
|
|
}
|
|
|
|
|
collectOrderService.finishOrder(collectOrderRequest, getUser(), false);
|
|
|
|
|
return ResultVOUtils.success();
|
|
|
|
@ -480,8 +497,7 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
if (!IntUtil.value(collectSet.getGetSplitConfirm())) {
|
|
|
|
|
confirmOrderBiz.setSkipSplitConfirm(true);
|
|
|
|
|
}
|
|
|
|
|
ConfirmResponse splitInfo = splitCodeService.confirmBizAutiTagCode(confirmOrderBiz, confirmOrderBiz.getQueueCode(),
|
|
|
|
|
confirmOrderBiz.getConfirmSplitCode(), confirmOrderBiz.getSkipSplitConfirm());
|
|
|
|
|
ConfirmResponse splitInfo = splitCodeService.confirmBizAutiTagCode(confirmOrderBiz, confirmOrderBiz.getQueueCode(), confirmOrderBiz.getConfirmSplitCode(), confirmOrderBiz.getSkipSplitConfirm());
|
|
|
|
|
return ResultVOUtils.success(splitInfo);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -498,8 +514,7 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
return ResultVOUtils.error(500, "单据号不能为空!");
|
|
|
|
|
}
|
|
|
|
|
List<IoCollectOrderBiz> collectOrderBizs = collectOrderBizService.listByBillNo(collectOrderRequest.getBillNo());
|
|
|
|
|
boolean allConfirmed = CollUtil.isNotEmpty(collectOrderBizs) &&
|
|
|
|
|
collectOrderBizs.stream().allMatch(biz -> IntUtil.value(biz.getGetConfirm()));
|
|
|
|
|
boolean allConfirmed = CollUtil.isNotEmpty(collectOrderBizs) && collectOrderBizs.stream().allMatch(biz -> IntUtil.value(biz.getGetConfirm()));
|
|
|
|
|
if (allConfirmed) {
|
|
|
|
|
collectOrderService.confirmFinishOrder(collectOrderRequest, getUser());
|
|
|
|
|
return ResultVOUtils.success("单据完成!");
|
|
|
|
@ -634,8 +649,7 @@ public class IoCollectOrderController extends BaseController {
|
|
|
|
|
@PostMapping("/udiwms/basic/collect/order/finishReturnOrder")
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public BaseResponse finishReturnOrder(@RequestBody CollectOrderRequest collectOrderRequest) {
|
|
|
|
|
return collectOriginService.finishReturnOrder(collectOrderRequest);
|
|
|
|
|
// return collectOriginService.submitreturnOrder(collectOrderRequest,1);
|
|
|
|
|
return collectOriginService.submitreturnOrder(collectOrderRequest,1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|