代码备份

workplace
anthonywj 11 months ago
parent 2284b641b7
commit e04b28efe1

@ -102,7 +102,9 @@ public class IoCollectOrderCodeAutoController extends BaseController {
BeanUtils.copyProperties(collectOrderBiz, collectOrderBizResponse);
for (IoCollectOrderCodeAuto collectOrderCodeAuto : collectOrderCodeAutos) {
if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId()) &&
(StrUtil.isNotEmpty(collectOrderBiz.getBatchNo()) && collectOrderBiz.getBatchNo().equals(collectOrderCodeAuto.getBatchNo()))) {
(StrUtil.isNotEmpty(collectOrderCodeAuto.getBatchNo()) && collectOrderBiz.getBatchNo().equals(collectOrderCodeAuto.getBatchNo()))) {
collectOrderBizResponse.setUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getUdiCode()) + "," + collectOrderCodeAuto.getUdiCode());
} else if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId())) {
collectOrderBizResponse.setUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getUdiCode()) + "," + collectOrderCodeAuto.getUdiCode());
}
}

@ -42,6 +42,7 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@ -211,7 +212,7 @@ public class IoCollectOrderCodeManController extends BaseController {
// }
//按单不校验三期
collectOrderBiz = vailNoBatchNo(udiRelevanceResponses, collectOrderBizs);
collectOrderBiz = vailNoBatchNo(udiRelevanceResponses, collectOrderBizs, udiEntity);
switch (workPlace.getCheckInsert()) {
case 1: //插入
if (collectOrderBiz == null) {
@ -260,6 +261,7 @@ public class IoCollectOrderCodeManController extends BaseController {
IoCollectOrderCodeMan exitCode = collectOrderCodeManService.findByCode(collectOrderBiz.getOrderIdFk(), code);
if (StrUtil.isEmpty(udiEntity.getSerialNo()) && exitCode != null) {
exitCode.setScanCount(IntUtil.value(exitCode.getScanCount()) + 1);
exitCode.setBizIdFk(collectOrderBiz.getId());
collectOrderCodeManService.updateById(exitCode);
} else if (StrUtil.isNotEmpty(udiEntity.getSerialNo()) && exitCode != null) {
return ResultVOUtils.error(500, "重复扫码!");
@ -268,6 +270,7 @@ public class IoCollectOrderCodeManController extends BaseController {
IoCollectOrderCodeMan.builder()
.udiCode(code)
.orderIdFk(collectOrder.getBillNo())
.bizIdFk(collectOrderBiz.getId())
.relId(collectOrderBiz.getRelId())
.nameCode(udiRelevanceResponse.getNameCode())
.batchNo(udiEntity.getBatchNo())
@ -345,15 +348,26 @@ public class IoCollectOrderCodeManController extends BaseController {
}
public IoCollectOrderBiz vailNoBatchNo(List<UdiRelevanceResponse> udiRelevanceResponses, List<IoCollectOrderBiz> collectOrderBizs) {
public IoCollectOrderBiz vailNoBatchNo(List<UdiRelevanceResponse> udiRelevanceResponses, List<IoCollectOrderBiz> collectOrderBizs, UdiEntity udiEntity) {
List<IoCollectOrderBiz> addList = new ArrayList<>();
for (UdiRelevanceResponse udiRelevanceResponse : udiRelevanceResponses) {
for (IoCollectOrderBiz collectOrderBiz : collectOrderBizs) {
if (udiRelevanceResponse.getId().equals(collectOrderBiz.getRelId())
) {
return collectOrderBiz;
if (udiRelevanceResponse.getId().equals(collectOrderBiz.getRelId())) {
addList.add(collectOrderBiz);
}
}
}
if (addList.size() > 0) {
for (IoCollectOrderBiz collectOrderBiz : addList) {
if (StrUtil.trimToEmpty(collectOrderBiz.getBatchNo()).equals(StrUtil.trimToEmpty(udiEntity.getBatchNo()))) {
return collectOrderBiz;
}
if (IntUtil.value(collectOrderBiz.getCount()) > IntUtil.value(collectOrderBiz.getScanCount())) {
return collectOrderBiz;
}
}
return addList.get(0);
}
return null;
}

@ -11,6 +11,8 @@ import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.basic.BasicSkPrescribeEntity;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderCodeAuto;
import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
import com.glxp.api.req.basic.PrescribeBindWorkRequest;
import com.glxp.api.req.collect.CollectOrderBindWorkRequest;
import com.glxp.api.req.collect.CollectOrderBizRequest;
@ -21,6 +23,8 @@ import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.collect.CollectOrderBizResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.service.collect.IoCollectOrderBizService;
import com.glxp.api.service.collect.IoCollectOrderCodeAutoService;
import com.glxp.api.service.collect.IoCollectOrderCodeManService;
import com.glxp.api.service.collect.IoCollectOrderService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Controller;
@ -93,6 +97,77 @@ public class IoCollectOrderController extends BaseController {
return ResultVOUtils.success(pageSimpleResponse);
}
@Resource
IoCollectOrderCodeAutoService collectOrderCodeAutoService;
@Resource
IoCollectOrderCodeManService collectOrderCodeManService;
@GetMapping("/udiwms/basic/collect/order/allDetail")
public BaseResponse allDetail(CollectOrderBizRequest collectOrderBizRequest) {
if (StrUtil.isBlank(collectOrderBizRequest.getOrderIdFk())) {
return ResultVOUtils.error(500, "单据号不能为空");
}
IoCollectOrder collectOrder = collectOrderService.getByBillNo(collectOrderBizRequest.getOrderIdFk());
if (collectOrder == null) {
return ResultVOUtils.error(500, "未找到单据");
}
List<CollectOrderBizResponse> list = collectOrderBizService.filterList(collectOrderBizRequest);
List<IoCollectOrderCodeAuto> splitCodes = collectOrderCodeAutoService.listByBillNo(collectOrderBizRequest.getOrderIdFk(), 1);
List<IoCollectOrderCodeAuto> unSplitCodes = collectOrderCodeAutoService.listByBillNo(collectOrderBizRequest.getOrderIdFk(), 2);
List<IoCollectOrderCodeMan> manList = collectOrderCodeManService.listByBillNo(collectOrderBizRequest.getOrderIdFk());
List<CollectOrderBizResponse> collectOrderBizResponses = new ArrayList<>();
for (CollectOrderBizResponse collectOrderBiz : list) {
CollectOrderBizResponse collectOrderBizResponse = new CollectOrderBizResponse();
BeanUtils.copyProperties(collectOrderBiz, collectOrderBizResponse);
//拆零
for (IoCollectOrderCodeAuto collectOrderCodeAuto : splitCodes) {
if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId()) &&
(StrUtil.isNotEmpty(collectOrderCodeAuto.getBatchNo()) && collectOrderBiz.getBatchNo().equals(collectOrderCodeAuto.getBatchNo()))) {
collectOrderBizResponse.setSplitUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getSplitUdiCode()) + "," + collectOrderCodeAuto.getUdiCode());
} else if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId())) {
collectOrderBizResponse.setSplitUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getSplitUdiCode()) + "," + collectOrderCodeAuto.getUdiCode());
}
}
if (StrUtil.isNotEmpty(collectOrderBizResponse.getSplitUdiCode())) {
collectOrderBizResponse.setSplitUdiCode(collectOrderBizResponse.getSplitUdiCode().substring(1));
}
//整取
for (IoCollectOrderCodeAuto collectOrderCodeAuto : unSplitCodes) {
if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId()) &&
(StrUtil.isNotEmpty(collectOrderCodeAuto.getBatchNo()) && collectOrderBiz.getBatchNo().equals(collectOrderCodeAuto.getBatchNo()))) {
collectOrderBizResponse.setUnSplitUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getUnSplitUdiCode()) + "," + collectOrderCodeAuto.getUdiCode());
} else if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId())) {
collectOrderBizResponse.setUnSplitUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getUnSplitUdiCode()) + "," + collectOrderCodeAuto.getUdiCode());
}
}
if (StrUtil.isNotEmpty(collectOrderBizResponse.getUnSplitUdiCode())) {
collectOrderBizResponse.setUnSplitUdiCode(collectOrderBizResponse.getUnSplitUdiCode().substring(1));
}
//手动
for (IoCollectOrderCodeMan collectOrderCodeAuto : manList) {
if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId()) &&
(StrUtil.isNotEmpty(collectOrderCodeAuto.getBatchNo()) && collectOrderBiz.getBatchNo().equals(collectOrderCodeAuto.getBatchNo()))) {
collectOrderBizResponse.setScanUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getScanUdiCode()) + "," + collectOrderCodeAuto.getUdiCode());
} else if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId())) {
collectOrderBizResponse.setScanUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getScanUdiCode()) + "," + collectOrderCodeAuto.getUdiCode());
}
}
if (StrUtil.isNotEmpty(collectOrderBizResponse.getScanUdiCode())) {
collectOrderBizResponse.setUnSplitUdiCode(collectOrderBizResponse.getScanUdiCode().substring(1));
}
collectOrderBizResponses.add(collectOrderBizResponse);
}
PageInfo<CollectOrderBizResponse> pageInfo = new PageInfo<>(collectOrderBizResponses);
PageSimpleResponse<CollectOrderBizResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(collectOrderBizResponses);
return ResultVOUtils.success(pageSimpleResponse);
}
@PostMapping("/udiwms/basic/collect/order/deleteOrder")
public BaseResponse deleteOrder(@RequestBody DeleteRequest deleteRequest) {
@ -203,6 +278,4 @@ public class IoCollectOrderController extends BaseController {
}
}

@ -39,6 +39,7 @@ import com.glxp.api.res.basic.UdiRlSupResponse;
import com.glxp.api.res.inout.IoOrderDetailBizResponse;
import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.res.inout.IoOrderInvoiceResponse;
import com.glxp.api.res.inout.IoSplitCodeResponse;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.*;
import com.glxp.api.service.inout.*;
@ -636,12 +637,20 @@ public class IoOrderDetailBizController extends BaseController {
@GetMapping("/udiwms/inout/bizDetail/filterList")
public BaseResponse filterList(FilterOrderDetailBizRequest orderDetailBizRequest) {
List<IoOrderDetailBizResponse> list = orderDetailBizService.filterList(orderDetailBizRequest);
for (IoOrderDetailBizResponse ioSplitCodeResponse : list) {
if (StrUtil.isEmpty(ioSplitCodeResponse.getSpec())) {
ioSplitCodeResponse.setSpec(ioSplitCodeResponse.getBzgg());
}
}
String value = systemParamConfigService.selectValueByParamKey("order_detail_visible");
if (IntUtil.value(value) == 1) {
list = list.stream()
.sorted(Comparator.comparing(IoOrderDetailBizResponse::getNameCode))
.collect(Collectors.toList());
}
List<IoOrderDetailCodeEntity> orderDetailCodeEntities = orderDetailCodeService.findByOrderId(orderDetailBizRequest.getOrderIdFk());
ioCheckInoutService.bizOrderCheck2(list, orderDetailCodeEntities);
PageInfo<IoOrderDetailBizResponse> pageInfo = new PageInfo<>(list);

@ -1,5 +1,6 @@
package com.glxp.api.controller.inout;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
@ -40,6 +41,15 @@ public class IoSplitFifoController extends BaseController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
List<IoSplitCodeResponse> splitCodeEntities = splitFifoCodeService.filterGroupList(splitFifoCodeRequest);
for (IoSplitCodeResponse ioSplitCodeResponse : splitCodeEntities) {
if (StrUtil.isEmpty(ioSplitCodeResponse.getGgxh())) {
ioSplitCodeResponse.setGgxh(ioSplitCodeResponse.getBzgg());
}
if (StrUtil.isEmpty(ioSplitCodeResponse.getMeasname())) {
ioSplitCodeResponse.setMeasname(ioSplitCodeResponse.getUseLevelUnit());
}
}
PageInfo<IoSplitCodeResponse> pageInfo = new PageInfo<>(splitCodeEntities);
PageSimpleResponse<IoSplitCodeResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
@ -59,6 +69,15 @@ public class IoSplitFifoController extends BaseController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
List<IoSplitCodeResponse> splitCodeEntities = splitFifoCodeService.filterList(splitFifoCodeRequest);
for (IoSplitCodeResponse ioSplitCodeResponse : splitCodeEntities) {
if (StrUtil.isEmpty(ioSplitCodeResponse.getGgxh())) {
ioSplitCodeResponse.setGgxh(ioSplitCodeResponse.getBzgg());
}
if (StrUtil.isEmpty(ioSplitCodeResponse.getMeasname())) {
ioSplitCodeResponse.setMeasname(ioSplitCodeResponse.getUseLevelUnit());
}
}
PageInfo<IoSplitCodeResponse> pageInfo = new PageInfo<>(splitCodeEntities);
PageSimpleResponse<IoSplitCodeResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
@ -70,7 +89,7 @@ public class IoSplitFifoController extends BaseController {
public BaseResponse findInvRemind(IoSplitFifoCodeRequest splitFifoCodeRequest,
BindingResult bindingResult) {
Long workPlaceCode = splitFifoCodeRequest.getWorkPlaceCode();
if (workPlaceCode == null){
if (workPlaceCode == null) {
return ResultVOUtils.error("工位编号不可为空!");
}
String invRemind = splitFifoCodeService.findInvRemind(workPlaceCode);

@ -83,17 +83,17 @@ public class SysWorkplace implements Serializable {
private Integer operationType;
/**
*1: '',
*2: '',
*3: ''
* 1: '',
* 2: '',
* 3: ''
*/
@TableField(value = "checkInsert")
private Integer checkInsert;
/**
*1: '',
*2: '',
*3: ''
* 1: '',
* 2: '',
* 3: ''
*/
@TableField(value = "warnType")
private Integer warnType;
@ -129,7 +129,6 @@ public class SysWorkplace implements Serializable {
private Integer invRemindNumber;
@TableField(exist = false)
private String invName;
@ -146,5 +145,8 @@ public class SysWorkplace implements Serializable {
@TableField(exist = false)
private String fromTypeName;
@TableField(exist = false)
public Integer orderCount;
}

@ -39,7 +39,7 @@ public class IoCollectOrderCodeMan implements Serializable {
*/
@TableField(value = "bizIdFk")
@ApiModelProperty(value = "")
private String bizIdFk;
private Long bizIdFk;
@TableField(value = "udiCode")
@ApiModelProperty(value = "")

@ -225,5 +225,5 @@ public class FilterOrderRequest extends ListPageRequest {
/**
*
*/
private Integer productType = 1;
private Integer productType;
}

@ -117,4 +117,9 @@ public class CollectOrderBizResponse {
private Long relId;
private Integer unTagCount;
private String scanUdiCode;
private String splitUdiCode;
private String unSplitUdiCode;
}

@ -146,6 +146,8 @@ public class IoSplitCodeResponse {
private String zczbhhzbapzbh;
private String ybbm;
private String zxxsdycpbs;
private String bzgg;
private String useLevelUnit;
}

@ -48,4 +48,10 @@ public class SysWorkplaceService extends ServiceImpl<SysWorkplaceDao, SysWorkpla
return super.baseMapper.selectList(
new LambdaQueryWrapper<SysWorkplace>().eq(SysWorkplace::getOrderId, code).last("limit 1"));
}
public List<SysWorkplace> getAllByBusType(String code) {
return super.baseMapper.selectList(
new LambdaQueryWrapper<SysWorkplace>().eq(SysWorkplace::getOrderId, code));
}
}

@ -5,6 +5,7 @@ import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.basic.BasicSkPrescribeItemCodeMapper;
import com.glxp.api.dao.collect.IoCollectOrderCodeAutoMapper;
import com.glxp.api.entity.basic.BasicSkPrescribeItemCode;
import com.glxp.api.entity.collect.IoCollectOrderCodeAuto;
import com.glxp.api.req.collect.CollectOrderCodeAutoRequest;
import com.glxp.api.req.collect.CollectOrderCodeManRequest;
import com.glxp.api.res.collect.CollectOrderCodeAutoResponse;
@ -36,6 +37,10 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
}
public List<IoCollectOrderCodeMan> listByBillNo(String billNo) {
return collectOrderCodeManMapper.selectList(new LambdaQueryWrapper<IoCollectOrderCodeMan>()
.eq(IoCollectOrderCodeMan::getOrderIdFk, billNo));
}
public IoCollectOrderCodeMan findByCode(String billNo, String code) {
return collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo)

@ -5,7 +5,9 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.dao.collect.IoCollectOrderMapper;
import com.glxp.api.entity.auth.SysWorkplace;
import com.glxp.api.entity.basic.BasicCollectBustypeEntity;
import com.glxp.api.entity.basic.BasicSkPrescribeEntity;
import com.glxp.api.entity.basic.BasicSkPrescribeItemEntity;
@ -13,6 +15,7 @@ import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderBiz;
import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.exception.JsonException;
import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.req.inout.DeleteTageCodeRequest;
@ -20,22 +23,22 @@ import com.glxp.api.req.inout.FilterOrderRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.res.inout.IoOrderResponse;
import com.glxp.api.service.auth.SysWorkplaceService;
import com.glxp.api.service.basic.BasicCollectBustypeService;
import com.glxp.api.service.basic.BasicSkPrescirbeDetailService;
import com.glxp.api.service.basic.BasicSkPrescribeService;
import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.service.inout.IoCodeTempService;
import com.glxp.api.service.inout.IoOrderDetailBizService;
import com.glxp.api.service.inout.IoOrderService;
import com.glxp.api.service.inout.impl.IoCodeService;
import com.glxp.api.util.IntUtil;
import com.glxp.api.util.MsDateUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
import java.util.*;
@Service
public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoCollectOrder> {
@ -85,15 +88,49 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
importPrescribe();
}
@Resource
IoOrderDetailBizService orderDetailCodeService;
@Resource
IoCodeTempService codeTempService;
@Resource
IoCodeService codeService;
public void clearOrder() {
collectOrderMapper.clearOrder();
List<IoOrderEntity> orderEntities = new ArrayList<>();
List<IoOrderEntity> orderEntities1 = orderService.findAllByAction("SC72197936495755");
List<IoOrderEntity> orderEntities2 = orderService.findAllByAction("SC72249388338364");
orderEntities.addAll(orderEntities1);
orderEntities.addAll(orderEntities2);
orderEntities.parallelStream().forEach(item ->
{
List<String> delBillNos = new ArrayList<>();
delBillNos.add(item.getBillNo());
orderService.deleteInvByBillNo(delBillNos);
for (String billNo : delBillNos) {
orderService.deleteByBillNo(billNo);
orderDetailBizService.deleteByOrderId(billNo);
orderDetailCodeService.deleteByOrderId(billNo);
codeTempService.deleteByBillNo(billNo);
codeService.deleteCodeByOrderId(billNo);
}
}
);
}
@Resource
SysWorkplaceService sysWorkplaceService;
public void importUdi() {
//下载UDI内部单据
FilterOrderRequest filterOrderRequest = new FilterOrderRequest();
filterOrderRequest.setPage(1);
filterOrderRequest.setLimit(1000);
// filterOrderRequest.setPage(1);
// filterOrderRequest.setLimit(1000);
filterOrderRequest.setStatus(7);
filterOrderRequest.setProductType(null);
List<IoOrderResponse> list = orderService.filterList(filterOrderRequest);
@ -105,11 +142,39 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, ioOrderEntity.getBillNo()))) {
continue;
}
//自动分配工位
final Long[] defaultWorkplace = {null};
List<SysWorkplace> sysWorkplaces = sysWorkplaceService.getAllByBusType(collectBustypeEntity.getCode());
if (CollUtil.isNotEmpty(sysWorkplaces)) {
if (sysWorkplaces.size() == 1) {
defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
} else {
List<SysWorkplace> addWorkplace = new ArrayList<>();
for (SysWorkplace sysWorkplace : sysWorkplaces) {
//获取是否有正在处理的工位
List<IoCollectOrder> collectOrderList1 = collectOrderMapper.selectList(new LambdaQueryWrapper<IoCollectOrder>()
.eq(IoCollectOrder::getWorkPlaceCode, sysWorkplace.getWorkplaceId()).in(IoCollectOrder::getTagStatus, -1, 1, 2));
sysWorkplace.setOrderCount(collectOrderList1.size());
if (IntUtil.value(sysWorkplace.getOrderCount()) > 0) {
addWorkplace.add(sysWorkplace);
}
}
if (addWorkplace.size() > 0) {
Optional<SysWorkplace> minCountObject = addWorkplace.stream()
.min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount()));
minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId());
} else {
defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
}
}
}
IoCollectOrder collectOrder = IoCollectOrder.builder()
.billNo(ioOrderEntity.getBillNo())
.busType(collectBustypeEntity.getCode())
.fromType(collectBustypeEntity.getFromType())
.fromCorp(ioOrderEntity.getFromName())
.workPlaceCode(defaultWorkplace[0])
.billTime(ioOrderEntity.getCreateTime())
.createTime(ioOrderEntity.getCreateTime())
.createUser(ioOrderEntity.getCreateUser())
@ -117,6 +182,9 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
.splitStatus(0)
.tagStatus(0)
.build();
if (collectOrder.getWorkPlaceCode() != null) {
collectOrder.setTagStatus(1);
}
collectOrderList.add(collectOrder);
List<IoOrderDetailBizEntity> orderDetailBizEntities = orderDetailBizService.findByOrderId(ioOrderEntity.getBillNo());
@ -162,16 +230,47 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
List<IoCollectOrder> collectOrderList = new ArrayList<>();
for (BasicSkPrescribeEntity basicSkPrescribeEntity : basicSkPrescribeEntities) {
BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByAddr(String.valueOf(basicSkPrescribeEntity.getAddr()));
if (collectBustypeEntity == null)
continue;
if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, basicSkPrescribeEntity.getCode()))) {
continue;
}
//自动分配工位
final Long[] defaultWorkplace = {null};
List<SysWorkplace> sysWorkplaces = sysWorkplaceService.getAllByBusType(collectBustypeEntity.getCode());
if (CollUtil.isNotEmpty(sysWorkplaces)) {
if (sysWorkplaces.size() == 1) {
defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
} else {
List<SysWorkplace> addWorkplace = new ArrayList<>();
for (SysWorkplace sysWorkplace : sysWorkplaces) {
//获取是否有正在处理的工位
List<IoCollectOrder> collectOrderList1 = collectOrderMapper.selectList(new LambdaQueryWrapper<IoCollectOrder>()
.eq(IoCollectOrder::getWorkPlaceCode, sysWorkplace.getWorkplaceId()).in(IoCollectOrder::getTagStatus, -1, 1, 2));
sysWorkplace.setOrderCount(collectOrderList1.size());
if (IntUtil.value(sysWorkplace.getOrderCount()) > 0) {
addWorkplace.add(sysWorkplace);
}
}
if (addWorkplace.size() > 0) {
Optional<SysWorkplace> minCountObject = addWorkplace.stream()
.min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount()));
minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId());
} else {
defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
}
}
}
IoCollectOrder collectOrder = IoCollectOrder.builder()
.billNo(basicSkPrescribeEntity.getCode())
.busType(collectBustypeEntity.getCode())
.fromType(collectBustypeEntity.getFromType())
.fromCorp(basicSkPrescribeEntity.getSickerCode())
.workPlaceCode(defaultWorkplace[0])
.billTime(MsDateUtil.localToDate(basicSkPrescribeEntity.getCreateTime()))
.createTime(new Date())
.createUser(basicSkPrescribeEntity.getCreateUser())
@ -179,6 +278,9 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
.splitStatus(0)
.tagStatus(0)
.build();
if (collectOrder.getWorkPlaceCode() != null) {
collectOrder.setTagStatus(1);
}
collectOrderList.add(collectOrder);
List<BasicSkPrescribeItemEntity> basicSkPrescribeItemEntities = basicSkPrescirbeDetailService.findByPrescribeNum(basicSkPrescribeEntity.getCode());
@ -199,10 +301,10 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
.tagStatus(1)
.unTagCount(bizEntity.getCount()).build();
// if (IntUtil.value(udiRelevanceResponse.getProductsType()) == 2) {
// collectOrderBiz.setGgxh(udiRelevanceResponse.getBzgg());
// collectOrderBiz.setMeasureUnit(udiRelevanceResponse.getPrepnUnit());
// }
if (IntUtil.value(udiRelevanceResponse.getProductsType()) == 2) {
collectOrderBiz.setGgxh(udiRelevanceResponse.getBzgg());
collectOrderBiz.setMeasureUnit(udiRelevanceResponse.getPrepnUnit());
}
collectOrderBizs.add(collectOrderBiz);
}
if (CollUtil.isNotEmpty(collectOrderBizs))
@ -219,33 +321,33 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
Long codeManId = deleteTageCodeRequest.getCodeManId();
IoCollectOrderCodeMan ioCollectOrderCodeMan = ioCollectOrderCodeManService.getById(codeManId);
if (ioCollectOrderCodeMan == null) throw new JsonException("码明细id有误");
String bizIdFk = ioCollectOrderCodeMan.getBizIdFk();
Long bizIdFk = ioCollectOrderCodeMan.getBizIdFk();
Integer scanCount = ioCollectOrderCodeMan.getScanCount();
Integer delCount = 0;
if (delType == 1){//1.减一IoCollectOrderCodeMan-1 IoCollectOrderBiz-1
if (delType == 1) {//1.减一IoCollectOrderCodeMan-1 IoCollectOrderBiz-1
Integer newCount = scanCount - 1;
delCount = 1;
if (newCount == 0){
if (newCount == 0) {
ioCollectOrderCodeManService.removeById(codeManId);
}else {
} else {
ioCollectOrderCodeMan.setScanCount(newCount);
ioCollectOrderCodeManService.updateById(ioCollectOrderCodeMan);
}
}else if (delType == 2){//2.删除 IoCollectOrderCodeMan-删除 IoCollectOrderBiz-数量
} else if (delType == 2) {//2.删除 IoCollectOrderCodeMan-删除 IoCollectOrderBiz-数量
delCount = scanCount;
ioCollectOrderCodeManService.removeById(codeManId);
}
if (delCount >0){
if (delCount > 0) {
IoCollectOrderBiz bizServiceOne = collectOrderBizService.getOne(new LambdaQueryWrapper<IoCollectOrderBiz>()
.eq(IoCollectOrderBiz::getId, bizIdFk));
if (bizServiceOne == null) throw new JsonException("扫码详情未查找到");
Integer count = bizServiceOne.getCount();
Integer newCount = count - delCount;
if (newCount > 0){
if (newCount > 0) {
bizServiceOne.setCount(newCount);
collectOrderBizService.updateById(bizServiceOne);
}else {
} else {
collectOrderBizService.removeById(bizServiceOne.getId());
}
}

@ -4,7 +4,7 @@ server:
spring:
datasource:
driver-class-name: com.p6spy.engine.spy.P6SpyDriver
jdbc-url: jdbc:p6spy:mysql://192.168.0.166:3306/udi_wms_ct?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
jdbc-url: jdbc:p6spy:mysql://127.0.0.1:3306/udi_wms_ct?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
username: root
password: 123456
hikari:

@ -7,6 +7,8 @@
sum(totalCount) as groupCount,
bp.cpmctymc,
bp.ggxh,
bp.bzgg,
bu.useLevelUnit,
bp.ylqxzcrbarmc,
bp.manufactory,
bp.measname,
@ -49,7 +51,7 @@
<if test="productType != null">
AND productType = #{productType}
</if>
<if test=" workPlaceCode != null">
<if test="workPlaceCode != null">
AND workPlaceCode = #{workPlaceCode}
</if>
</where>
@ -62,9 +64,11 @@
SELECT io_split_fifo_code.*,
bp.cpmctymc,
bp.ggxh,
bp.bzgg,
bp.ylqxzcrbarmc,
bp.manufactory,
bp.measname,
bu.useLevelUnit,
bp.zczbhhzbapzbh,
bp.ybbm,
bp.zxxsdycpbs
@ -96,7 +100,7 @@
<if test="productType != null">
AND productType = #{productType}
</if>
<if test=" workPlaceCode != null">
<if test="workPlaceCode != null">
AND workPlaceCode = #{workPlaceCode}
</if>
</where>
@ -118,7 +122,7 @@
LEFT JOIN basic_udirel bu ON bu.id = io_split_fifo_code.relId
LEFT JOIN basic_products bp ON bu.uuid = bp.uuid
<where>
<if test=" workPlaceCode != null">
<if test="workPlaceCode != null">
AND workPlaceCode = #{workPlaceCode}
</if>
</where>

Loading…
Cancel
Save