正在处理单据

workplace
yewj 11 months ago
parent e7fbdab3c0
commit 5c8f6a7d00

@ -1,7 +1,6 @@
package com.glxp.api.controller.basic; package com.glxp.api.controller.basic;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
@ -38,8 +37,8 @@ public class SysWorkplaceDocumentController extends BaseController {
@GetMapping("/udiwms/sysWorkplace/getWorkBindBusTypes") @GetMapping("/udiwms/sysWorkplace/getWorkBindBusTypes")
public BaseResponse getUserBindWork(WorkBindBusTypeRequest request){ public BaseResponse getUserBindWork(WorkBindBusTypeRequest request) {
List<SysWorkplaceDocumentResponse> page = sysWorkplaceDocumentService.filterList(request); List<SysWorkplaceDocumentResponse> page = sysWorkplaceDocumentService.filterList(request);
PageInfo<SysWorkplaceDocumentResponse> pageInfo = new PageInfo<>(page); PageInfo<SysWorkplaceDocumentResponse> pageInfo = new PageInfo<>(page);
PageSimpleResponse<SysWorkplaceDocumentResponse> pageSimpleResponse = new PageSimpleResponse<>(); PageSimpleResponse<SysWorkplaceDocumentResponse> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal()); pageSimpleResponse.setTotal(pageInfo.getTotal());
@ -48,25 +47,25 @@ public class SysWorkplaceDocumentController extends BaseController {
} }
@PostMapping("/udiwms/sysWorkplace/workBindBusType") @PostMapping("/udiwms/sysWorkplace/workBindBusType")
public BaseResponse workBindBusType(@RequestBody WorkBindBusTypeRequest request){ public BaseResponse workBindBusType(@RequestBody WorkBindBusTypeRequest request) {
Long userId = this.getUserId(); Long userId = this.getUserId();
Boolean save = sysWorkplaceDocumentService.bindBusType(request,userId); Boolean save = sysWorkplaceDocumentService.bindBusType(request, userId);
if (!save){ if (!save) {
return ResultVOUtils.error("该工位已经绑定该单据类型"); return ResultVOUtils.error("该工位已经绑定该单据类型");
} }
return ResultVOUtils.success("绑定成功"); return ResultVOUtils.success("绑定成功");
} }
@PostMapping("/udiwms/sysWorkplace/addBusType") @PostMapping("/udiwms/sysWorkplace/addBusType")
public BaseResponse addBusType(@RequestBody SysWorkplaceDocumentEntity entity){ public BaseResponse addBusType(@RequestBody SysWorkplaceDocumentEntity entity) {
Long userId = this.getUserId(); Long userId = this.getUserId();
SysWorkplaceDocumentEntity one = sysWorkplaceDocumentService.getOne(new LambdaQueryWrapper<SysWorkplaceDocumentEntity>().eq(SysWorkplaceDocumentEntity::getDocumentTypeCode, entity.getDocumentTypeCode()) SysWorkplaceDocumentEntity one = sysWorkplaceDocumentService.getOne(new LambdaQueryWrapper<SysWorkplaceDocumentEntity>().eq(SysWorkplaceDocumentEntity::getDocumentTypeCode, entity.getDocumentTypeCode())
.eq(SysWorkplaceDocumentEntity::getWorkplaceCode, entity.getWorkplaceCode())); .eq(SysWorkplaceDocumentEntity::getWorkplaceCode, entity.getWorkplaceCode()));
if (one != null){ if (one != null) {
return ResultVOUtils.error("该工位已经有当前类型单据"); return ResultVOUtils.error("该工位已经有当前类型单据");
} }
boolean save = sysWorkplaceDocumentService.addBusType(entity,userId); boolean save = sysWorkplaceDocumentService.addBusType(entity, userId);
if (!save){ if (!save) {
return ResultVOUtils.error("新增失败"); return ResultVOUtils.error("新增失败");
} }
return ResultVOUtils.success("新增成功"); return ResultVOUtils.success("新增成功");
@ -74,28 +73,25 @@ public class SysWorkplaceDocumentController extends BaseController {
@PostMapping("/udiwms/sysWorkplace/updateType") @PostMapping("/udiwms/sysWorkplace/updateType")
public BaseResponse updateType(@RequestBody SysWorkplaceDocumentEntity entity){ public BaseResponse updateType(@RequestBody SysWorkplaceDocumentEntity entity) {
boolean save = sysWorkplaceDocumentService.updateById(entity); boolean save = sysWorkplaceDocumentService.updateById(entity);
if (!save){ if (!save) {
return ResultVOUtils.error("更新失败"); return ResultVOUtils.error("更新失败");
} }
return ResultVOUtils.success("更新成功"); return ResultVOUtils.success("更新成功");
} }
@PostMapping("/udiwms/sysWorkplace/removeBusTypeById") @PostMapping("/udiwms/sysWorkplace/removeBusTypeById")
public BaseResponse removeBusTypeById(@RequestBody SysWorkplaceDocumentEntity entity){ public BaseResponse removeBusTypeById(@RequestBody SysWorkplaceDocumentEntity entity) {
Boolean save = sysWorkplaceDocumentService.removeById(entity.getId()); Boolean save = sysWorkplaceDocumentService.removeById(entity.getId());
if (!save){ if (!save) {
return ResultVOUtils.error("移除失败"); return ResultVOUtils.error("移除失败");
} }
return ResultVOUtils.success("移除成功"); return ResultVOUtils.success("移除成功");
} }
} }

@ -26,6 +26,7 @@ import com.glxp.api.service.collect.IoCollectOrderBizService;
import com.glxp.api.service.collect.IoCollectOrderCodeAutoService; import com.glxp.api.service.collect.IoCollectOrderCodeAutoService;
import com.glxp.api.service.collect.IoCollectOrderCodeManService; import com.glxp.api.service.collect.IoCollectOrderCodeManService;
import com.glxp.api.service.collect.IoCollectOrderService; import com.glxp.api.service.collect.IoCollectOrderService;
import com.glxp.api.util.IntUtil;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult; import org.springframework.validation.BindingResult;
@ -113,6 +114,35 @@ public class IoCollectOrderController extends BaseController {
} }
/**
*
*
* @param collectOrderRequest
* @return
*/
@GetMapping("/udiwms/basic/collect/order/findByBill")
public BaseResponse findByBill(CollectOrderRequest collectOrderRequest) {
if (collectOrderRequest.getWorkPlaceCode() == null) {
return ResultVOUtils.error(500, "工位不能为空!");
}
CollectOrderRequest request = new CollectOrderRequest();
request.setPage(1);
request.setLimit(1);
request.setBillNo(collectOrderRequest.getBillNo());
List<IoCollectOrderResponse> orderResponses = collectOrderService.filterList(request);
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));
}
return ResultVOUtils.error(500, "未查到待处理单据");
}
@GetMapping("/udiwms/basic/collect/order/detail") @GetMapping("/udiwms/basic/collect/order/detail")
public BaseResponse detail(CollectOrderBizRequest collectOrderBizRequest) { public BaseResponse detail(CollectOrderBizRequest collectOrderBizRequest) {
if (StrUtil.isBlank(collectOrderBizRequest.getOrderIdFk())) { if (StrUtil.isBlank(collectOrderBizRequest.getOrderIdFk())) {
@ -179,12 +209,9 @@ public class IoCollectOrderController extends BaseController {
collectOrderBizResponse.setUnSplitUdiCode(collectOrderBizResponse.getUnSplitUdiCode().substring(1)); collectOrderBizResponse.setUnSplitUdiCode(collectOrderBizResponse.getUnSplitUdiCode().substring(1));
} }
//手动 //手动
for (IoCollectOrderCodeMan collectOrderCodeAuto : manList) { for (IoCollectOrderCodeMan collectOrderCodeMan : manList) {
if (collectOrderCodeAuto.getRelId().equals(collectOrderBiz.getRelId()) && if (IntUtil.value(collectOrderCodeMan.getBizIdFk()) == IntUtil.value(collectOrderBiz.getId())) {
(StrUtil.isNotEmpty(collectOrderCodeAuto.getBatchNo()) && StrUtil.trimToEmpty(collectOrderBiz.getBatchNo()).equals(collectOrderCodeAuto.getBatchNo()))) { collectOrderBizResponse.setScanUdiCode(StrUtil.trimToEmpty(collectOrderBizResponse.getScanUdiCode()) + "," + collectOrderCodeMan.getUdiCode());
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())) { if (StrUtil.isNotEmpty(collectOrderBizResponse.getScanUdiCode())) {

@ -21,6 +21,6 @@ public interface SysWorkplaceDao extends BaseMapper<SysWorkplace> {
List<SysWorkplaceResponse> filterList(@Param("request") SysWorkplaceRequest request); List<SysWorkplaceResponse> filterList(@Param("request") SysWorkplaceRequest request);
List<SysWorkplace> getAllByBusType(String busTypeCode); List<SysWorkplaceResponse> getAllByBusType(String busTypeCode);
} }

@ -25,5 +25,7 @@ public class AddTagCodeReqeust {
private String invCode; private String invCode;
private Boolean insert; private Boolean insert;
private String busType;
} }

@ -51,10 +51,10 @@ public class SysWorkplaceService extends ServiceImpl<SysWorkplaceDao, SysWorkpla
new LambdaQueryWrapper<SysWorkplace>().eq(SysWorkplace::getOrderId, code).last("limit 1")); new LambdaQueryWrapper<SysWorkplace>().eq(SysWorkplace::getOrderId, code).last("limit 1"));
} }
public List<SysWorkplace> getAllByBusType(String code) { public List<SysWorkplaceResponse> getAllByBusType(String code) {
//sysWorkplaceDao.getAllByBusType(code); 切换成单据类型关联的 return sysWorkplaceDao.getAllByBusType(code); //切换成单据类型关联的
return super.baseMapper.selectList( // return super.baseMapper.selectList(
new LambdaQueryWrapper<SysWorkplace>().eq(SysWorkplace::getOrderId, code)); // new LambdaQueryWrapper<SysWorkplace>().eq(SysWorkplace::getOrderId, code));
} }
} }

@ -29,13 +29,19 @@ public class SysWorkplaceDocumentService extends ServiceImpl<SysWorkplaceDocumen
private SysWorkplaceDocumentDao sysWorkplaceDocumentDao; private SysWorkplaceDocumentDao sysWorkplaceDocumentDao;
public List<SysWorkplaceDocumentResponse> filterList(WorkBindBusTypeRequest request) { public List<SysWorkplaceDocumentResponse> filterList(WorkBindBusTypeRequest request) {
List<SysWorkplaceDocumentResponse> list = sysWorkplaceDocumentDao.filterList(request); List<SysWorkplaceDocumentResponse> list = sysWorkplaceDocumentDao.filterList(request);
return list; return list;
} }
public Boolean bindBusType(WorkBindBusTypeRequest request,Long userId) {
public SysWorkplaceDocumentEntity findByWorkplaceCode(Long workplaceCode, String busType) {
return sysWorkplaceDocumentDao.selectOne(new LambdaQueryWrapper<SysWorkplaceDocumentEntity>()
.eq(SysWorkplaceDocumentEntity::getWorkplaceCode, workplaceCode)
.eq(SysWorkplaceDocumentEntity::getDocumentTypeCode, busType).last("limit 1"));
}
public Boolean bindBusType(WorkBindBusTypeRequest request, Long userId) {
// List<String> documentTypeCodes = request.getDocumentTypeCode(); // List<String> documentTypeCodes = request.getDocumentTypeCode();
// for (String documentTypeCode: documentTypeCodes) { // for (String documentTypeCode: documentTypeCodes) {
// SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentDao.selectOne(new LambdaQueryWrapper<SysWorkplaceDocumentEntity>() // SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentDao.selectOne(new LambdaQueryWrapper<SysWorkplaceDocumentEntity>()
@ -72,7 +78,7 @@ public class SysWorkplaceDocumentService extends ServiceImpl<SysWorkplaceDocumen
entity.setUpdateUser(userId.toString()); entity.setUpdateUser(userId.toString());
entity.setCreateUser(userId.toString()); entity.setCreateUser(userId.toString());
int insert = sysWorkplaceDocumentDao.insert(entity); int insert = sysWorkplaceDocumentDao.insert(entity);
if (insert == 0){ if (insert == 0) {
return false; return false;
} }
return true; return true;

@ -13,6 +13,7 @@ import com.glxp.api.dao.collect.IoCollectOrderCodeAutoMapper;
import com.glxp.api.entity.auth.SysWorkplace; import com.glxp.api.entity.auth.SysWorkplace;
import com.glxp.api.entity.basic.BasicCollectBustypeEntity; import com.glxp.api.entity.basic.BasicCollectBustypeEntity;
import com.glxp.api.entity.basic.BasicSkPrescribeItemCode; import com.glxp.api.entity.basic.BasicSkPrescribeItemCode;
import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity;
import com.glxp.api.entity.basic.UdiEntity; import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderBiz; import com.glxp.api.entity.collect.IoCollectOrderBiz;
@ -27,6 +28,7 @@ import com.glxp.api.res.collect.CollectOrderCodeManResponse;
import com.glxp.api.service.auth.CustomerService; import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.auth.SysWorkplaceService; import com.glxp.api.service.auth.SysWorkplaceService;
import com.glxp.api.service.basic.BasicCollectBustypeService; import com.glxp.api.service.basic.BasicCollectBustypeService;
import com.glxp.api.service.basic.SysWorkplaceDocumentService;
import com.glxp.api.service.basic.UdiRelevanceService; import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.util.GennerOrderUtils; import com.glxp.api.util.GennerOrderUtils;
import com.glxp.api.util.IntUtil; import com.glxp.api.util.IntUtil;
@ -64,6 +66,8 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
CustomerService customerService; CustomerService customerService;
@Resource @Resource
IoCollectOrderService collectOrderService; IoCollectOrderService collectOrderService;
@Resource
SysWorkplaceDocumentService sysWorkplaceDocumentService;
public List<CollectOrderCodeManResponse> filterList(CollectOrderCodeManRequest collectOrderCodeManRequest) { public List<CollectOrderCodeManResponse> filterList(CollectOrderCodeManRequest collectOrderCodeManRequest) {
if (collectOrderCodeManRequest == null) { if (collectOrderCodeManRequest == null) {
@ -92,7 +96,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
Long userId = customerService.getUserId(); Long userId = customerService.getUserId();
String userIds = customerService.getUserId() + ""; String userIds = customerService.getUserId() + "";
SysWorkplace workPlace = sysWorkPlaceService.getWorkplace(addTagCodeReqeust.getWorkPlaceCode()); SysWorkplace workPlace = sysWorkPlaceService.getWorkplace(addTagCodeReqeust.getWorkPlaceCode());
if (workPlace == null) throw new JsonException(500,"请先选择工位"); if (workPlace == null) throw new JsonException(500, "请先选择工位");
IoCollectOrderBiz collectOrderBiz = null; IoCollectOrderBiz collectOrderBiz = null;
IoCollectOrder collectOrder = null; IoCollectOrder collectOrder = null;
@ -103,11 +107,11 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
code = code.replace("\u001D", ""); code = code.replace("\u001D", "");
} }
UdiEntity udiEntity = FilterUdiUtils.getUdi(code); UdiEntity udiEntity = FilterUdiUtils.getUdi(code);
if (udiEntity == null) throw new JsonException(500,"无效条码!"); if (udiEntity == null) throw new JsonException(500, "无效条码!");
UdiRelevanceResponse udiRelevanceResponse; UdiRelevanceResponse udiRelevanceResponse;
List<UdiRelevanceResponse> udiRelevanceResponses = udiRelevanceService.selectGroupByNameCode(udiEntity.getUdi(), null); List<UdiRelevanceResponse> udiRelevanceResponses = udiRelevanceService.selectGroupByNameCode(udiEntity.getUdi(), null);
if (CollUtil.isEmpty(udiRelevanceResponses)) throw new JsonException(500,"耗材字典不存在此产品!"); if (CollUtil.isEmpty(udiRelevanceResponses)) throw new JsonException(500, "耗材字典不存在此产品!");
else udiRelevanceResponse = udiRelevanceResponses.get(0); else udiRelevanceResponse = udiRelevanceResponses.get(0);
List<IoCollectOrderBiz> collectOrderBizs = collectOrderBizService.listByBillNo(addTagCodeReqeust.getBillNo()); List<IoCollectOrderBiz> collectOrderBizs = collectOrderBizService.listByBillNo(addTagCodeReqeust.getBillNo());
@ -115,11 +119,11 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
if (IntUtil.value(workPlace.getOperationType()) == WorkOperType.TYPE_GEN_ORDER) { if (IntUtil.value(workPlace.getOperationType()) == WorkOperType.TYPE_GEN_ORDER) {
if (StrUtil.isEmpty(addTagCodeReqeust.getBillNo())) { if (StrUtil.isEmpty(addTagCodeReqeust.getBillNo())) {
String orderNo = gennerOrderUtils.createWdOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER, "yyyyMMdd")); String orderNo = gennerOrderUtils.createWdOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER, "yyyyMMdd"));
BasicCollectBustypeEntity bustypeEntity = bustypeService.findByCode(workPlace.getOrderId()); SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByWorkplaceCode(workPlace.getWorkplaceId(), addTagCodeReqeust.getBusType());
collectOrder = IoCollectOrder.builder() collectOrder = IoCollectOrder.builder()
.billNo(orderNo) .billNo(orderNo)
.busType(bustypeEntity.getCode()) .busType(sysWorkplaceDocumentEntity.getDocumentTypeCode())
.fromType(bustypeEntity.getFromType())
.fromCorp(addTagCodeReqeust.getFromCorp()) .fromCorp(addTagCodeReqeust.getFromCorp())
.billTime(new Date()) .billTime(new Date())
.workPlaceCode(workPlace.getWorkplaceId()) .workPlaceCode(workPlace.getWorkplaceId())
@ -128,6 +132,12 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
.updateTime(new Date()) .updateTime(new Date())
.tagStatus(1) .tagStatus(1)
.build(); .build();
if (IntUtil.value(sysWorkplaceDocumentEntity.getIsMatching()) == 1) {
collectOrder.setFromType("UDI系统");
} else {
BasicCollectBustypeEntity bustypeEntity = bustypeService.findByCode(sysWorkplaceDocumentEntity.getDocumentTypeCode());
collectOrder.setFromType(bustypeEntity.getFromType());
}
collectOrderService.save(collectOrder); collectOrderService.save(collectOrder);
} else { } else {
collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo()); collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo());
@ -140,7 +150,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
} else if (IntUtil.value(workPlace.getOperationType()) == WorkOperType.TYPE_VAIL_BATCH) { } else if (IntUtil.value(workPlace.getOperationType()) == WorkOperType.TYPE_VAIL_BATCH) {
collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo()); collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo());
if (collectOrder == null) if (collectOrder == null)
throw new JsonException(500,"单据不存在!"); throw new JsonException(500, "单据不存在!");
//3.校验该UDI码是否已经出库是否在预出库队列 //3.校验该UDI码是否已经出库是否在预出库队列
// Boolean b1 = splitFifoCodeService.isExitCode(code, collectOrder.getWorkPlaceCode()); // Boolean b1 = splitFifoCodeService.isExitCode(code, collectOrder.getWorkPlaceCode());
// if (!b1) { // if (!b1) {
@ -282,7 +292,6 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
} }
public IoCollectOrderBiz scanGenOrder(List<UdiRelevanceResponse> udiRelevanceResponses, List<IoCollectOrderBiz> collectOrderBizs, UdiEntity udiEntity) { public IoCollectOrderBiz scanGenOrder(List<UdiRelevanceResponse> udiRelevanceResponses, List<IoCollectOrderBiz> collectOrderBizs, UdiEntity udiEntity) {
for (UdiRelevanceResponse udiRelevanceResponse : udiRelevanceResponses) { for (UdiRelevanceResponse udiRelevanceResponse : udiRelevanceResponses) {
for (IoCollectOrderBiz collectOrderBiz : collectOrderBizs) { for (IoCollectOrderBiz collectOrderBiz : collectOrderBizs) {

@ -10,6 +10,7 @@ import com.glxp.api.entity.auth.SysWorkplace;
import com.glxp.api.entity.basic.BasicCollectBustypeEntity; import com.glxp.api.entity.basic.BasicCollectBustypeEntity;
import com.glxp.api.entity.basic.BasicSkPrescribeEntity; import com.glxp.api.entity.basic.BasicSkPrescribeEntity;
import com.glxp.api.entity.basic.BasicSkPrescribeItemEntity; import com.glxp.api.entity.basic.BasicSkPrescribeItemEntity;
import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity;
import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderBiz; import com.glxp.api.entity.collect.IoCollectOrderBiz;
import com.glxp.api.entity.collect.IoCollectOrderCodeMan; import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
@ -19,6 +20,7 @@ import com.glxp.api.exception.JsonException;
import com.glxp.api.req.collect.CollectOrderRequest; import com.glxp.api.req.collect.CollectOrderRequest;
import com.glxp.api.req.inout.DeleteTageCodeRequest; import com.glxp.api.req.inout.DeleteTageCodeRequest;
import com.glxp.api.req.inout.FilterOrderRequest; import com.glxp.api.req.inout.FilterOrderRequest;
import com.glxp.api.res.basic.SysWorkplaceResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse; import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.collect.IoCollectOrderResponse; import com.glxp.api.res.collect.IoCollectOrderResponse;
import com.glxp.api.res.inout.IoOrderResponse; import com.glxp.api.res.inout.IoOrderResponse;
@ -129,7 +131,8 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
@Resource @Resource
SysWorkplaceDocumentService sysWorkplaceDocumentService; SysWorkplaceDocumentService sysWorkplaceDocumentService;
@Resource
BasicCollectBustypeService bustypeService;
public void importUdi() { public void importUdi() {
//下载UDI内部单据 //下载UDI内部单据
@ -145,10 +148,10 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, ioOrderEntity.getBillNo()))) { if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, ioOrderEntity.getBillNo()))) {
continue; continue;
} }
BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByAddr(ioOrderEntity.getAction()); // BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByAddr(ioOrderEntity.getAction());
if (collectBustypeEntity == null) // if (collectBustypeEntity == null)
continue; // continue;
List<SysWorkplace> sysWorkplaces = sysWorkplaceService.getAllByBusType(collectBustypeEntity.getCode()); List<SysWorkplaceResponse> sysWorkplaces = sysWorkplaceService.getAllByBusType(ioOrderEntity.getAction());
//自动分配工位 //自动分配工位
@ -157,8 +160,8 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
if (sysWorkplaces.size() == 1) { if (sysWorkplaces.size() == 1) {
defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId(); defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
} else { } else {
List<SysWorkplace> addWorkplace = new ArrayList<>(); List<SysWorkplaceResponse> addWorkplace = new ArrayList<>();
for (SysWorkplace sysWorkplace : sysWorkplaces) { for (SysWorkplaceResponse sysWorkplace : sysWorkplaces) {
//获取是否有正在处理的工位 //获取是否有正在处理的工位
List<IoCollectOrder> collectOrderList1 = collectOrderMapper.selectList(new LambdaQueryWrapper<IoCollectOrder>() List<IoCollectOrder> collectOrderList1 = collectOrderMapper.selectList(new LambdaQueryWrapper<IoCollectOrder>()
.eq(IoCollectOrder::getWorkPlaceCode, sysWorkplace.getWorkplaceId()).in(IoCollectOrder::getTagStatus, -1, 1, 2)); .eq(IoCollectOrder::getWorkPlaceCode, sysWorkplace.getWorkplaceId()).in(IoCollectOrder::getTagStatus, -1, 1, 2));
@ -168,7 +171,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
} }
} }
if (addWorkplace.size() > 0) { if (addWorkplace.size() > 0) {
Optional<SysWorkplace> minCountObject = addWorkplace.stream() Optional<SysWorkplaceResponse> minCountObject = addWorkplace.stream()
.min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount())); .min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount()));
minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId()); minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId());
} else { } else {
@ -178,8 +181,8 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
} }
IoCollectOrder collectOrder = IoCollectOrder.builder() IoCollectOrder collectOrder = IoCollectOrder.builder()
.billNo(ioOrderEntity.getBillNo()) .billNo(ioOrderEntity.getBillNo())
.busType(collectBustypeEntity.getCode()) .fromType("UDI系统")
.fromType(collectBustypeEntity.getFromType()) .busType(ioOrderEntity.getAction())
.fromCorp(ioOrderEntity.getFromName()) .fromCorp(ioOrderEntity.getFromName())
.workPlaceCode(defaultWorkplace[0]) .workPlaceCode(defaultWorkplace[0])
.billTime(ioOrderEntity.getCreateTime()) .billTime(ioOrderEntity.getCreateTime())
@ -192,6 +195,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
if (collectOrder.getWorkPlaceCode() != null) { if (collectOrder.getWorkPlaceCode() != null) {
collectOrder.setTagStatus(1); collectOrder.setTagStatus(1);
} }
collectOrderList.add(collectOrder); collectOrderList.add(collectOrder);
List<IoOrderDetailBizEntity> orderDetailBizEntities = orderDetailBizService.findByOrderId(ioOrderEntity.getBillNo()); List<IoOrderDetailBizEntity> orderDetailBizEntities = orderDetailBizService.findByOrderId(ioOrderEntity.getBillNo());
@ -236,9 +240,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
List<IoCollectOrder> collectOrderList = new ArrayList<>(); List<IoCollectOrder> collectOrderList = new ArrayList<>();
for (BasicSkPrescribeEntity basicSkPrescribeEntity : basicSkPrescribeEntities) { for (BasicSkPrescribeEntity basicSkPrescribeEntity : basicSkPrescribeEntities) {
BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByAddr(String.valueOf(basicSkPrescribeEntity.getAddr())); BasicCollectBustypeEntity collectBustypeEntity = collectBustypeService.findByCode(String.valueOf(basicSkPrescribeEntity.getAddr()));
if (collectBustypeEntity == null) if (collectBustypeEntity == null)
continue; continue;
if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, basicSkPrescribeEntity.getCode()))) { if (collectOrderMapper.exists(new LambdaQueryWrapper<IoCollectOrder>().eq(IoCollectOrder::getBillNo, basicSkPrescribeEntity.getCode()))) {
@ -246,13 +248,13 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
} }
//自动分配工位 //自动分配工位
final Long[] defaultWorkplace = {null}; final Long[] defaultWorkplace = {null};
List<SysWorkplace> sysWorkplaces = sysWorkplaceService.getAllByBusType(collectBustypeEntity.getCode()); List<SysWorkplaceResponse> sysWorkplaces = sysWorkplaceService.getAllByBusType(collectBustypeEntity.getCode());
if (CollUtil.isNotEmpty(sysWorkplaces)) { if (CollUtil.isNotEmpty(sysWorkplaces)) {
if (sysWorkplaces.size() == 1) { if (sysWorkplaces.size() == 1) {
defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId(); defaultWorkplace[0] = sysWorkplaces.get(0).getWorkplaceId();
} else { } else {
List<SysWorkplace> addWorkplace = new ArrayList<>(); List<SysWorkplaceResponse> addWorkplace = new ArrayList<>();
for (SysWorkplace sysWorkplace : sysWorkplaces) { for (SysWorkplaceResponse sysWorkplace : sysWorkplaces) {
//获取是否有正在处理的工位 //获取是否有正在处理的工位
List<IoCollectOrder> collectOrderList1 = collectOrderMapper.selectList(new LambdaQueryWrapper<IoCollectOrder>() List<IoCollectOrder> collectOrderList1 = collectOrderMapper.selectList(new LambdaQueryWrapper<IoCollectOrder>()
.eq(IoCollectOrder::getWorkPlaceCode, sysWorkplace.getWorkplaceId()).in(IoCollectOrder::getTagStatus, -1, 1, 2)); .eq(IoCollectOrder::getWorkPlaceCode, sysWorkplace.getWorkplaceId()).in(IoCollectOrder::getTagStatus, -1, 1, 2));
@ -262,7 +264,7 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
} }
} }
if (addWorkplace.size() > 0) { if (addWorkplace.size() > 0) {
Optional<SysWorkplace> minCountObject = addWorkplace.stream() Optional<SysWorkplaceResponse> minCountObject = addWorkplace.stream()
.min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount())); .min((o1, o2) -> Integer.compare(o1.getOrderCount(), o2.getOrderCount()));
minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId()); minCountObject.ifPresent(sysWorkplace -> defaultWorkplace[0] = sysWorkplace.getWorkplaceId());
} else { } else {
@ -290,7 +292,6 @@ public class IoCollectOrderService extends ServiceImpl<IoCollectOrderMapper, IoC
} }
collectOrderList.add(collectOrder); collectOrderList.add(collectOrder);
List<BasicSkPrescribeItemEntity> basicSkPrescribeItemEntities = basicSkPrescirbeDetailService.findByPrescribeNum(basicSkPrescribeEntity.getCode()); List<BasicSkPrescribeItemEntity> basicSkPrescribeItemEntities = basicSkPrescirbeDetailService.findByPrescribeNum(basicSkPrescribeEntity.getCode());
List<IoCollectOrderBiz> collectOrderBizs = new ArrayList<>(); List<IoCollectOrderBiz> collectOrderBizs = new ArrayList<>();
for (BasicSkPrescribeItemEntity bizEntity : basicSkPrescribeItemEntities) { for (BasicSkPrescribeItemEntity bizEntity : basicSkPrescribeItemEntities) {
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByRelId(bizEntity.getRelId() + ""); UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByRelId(bizEntity.getRelId() + "");

@ -7,13 +7,12 @@
ico.billNo,ico.busType,ico.fromType,ico.fromTypeDesc,ico.fromCorp,ico.billTime, ico.billNo,ico.busType,ico.fromType,ico.fromTypeDesc,ico.fromCorp,ico.billTime,
ico.createTime,ico.workPlaceCode,ico.remark,ico.createUser,ico.updateTime,ico.updateUser,ico.tagStatus,ico.splitStatus,ico.splitMsg ico.createTime,ico.workPlaceCode,ico.remark,ico.createUser,ico.updateTime,ico.updateUser,ico.tagStatus,ico.splitStatus,ico.splitMsg
,ico.tagMsg, ,ico.tagMsg,
bcb.name busTypeName, sys_workplace_document.busName busTypeName,
bcb.fromType fromTypeName,
bc.name fromCorpName, bc.name fromCorpName,
sw.workplaceId workPlaceCode, sw.workplaceId workPlaceCode,
sw.workplaceName sw.workplaceName
FROM io_collect_order ico FROM io_collect_order ico
left join basic_collect_bustype bcb on ico.busType = bcb.code left join sys_workplace_document on ico.busType = sys_workplace_document.documentTypeCode
left join basic_corp bc on ico.fromCorp = bc.erpId left join basic_corp bc on ico.fromCorp = bc.erpId
left join sys_workplace sw on ico.workPlaceCode = sw.workplaceId left join sys_workplace sw on ico.workPlaceCode = sw.workplaceId
<where> <where>
@ -27,7 +26,7 @@
AND busType = #{busType} AND busType = #{busType}
</if> </if>
<if test="fromType != null and fromType != ''"> <if test="fromType != null and fromType != ''">
AND bcb.fromType LIKE concat('%', #{fromType}, '%') AND sys_workplace_document.fromType LIKE concat('%', #{fromType}, '%')
</if> </if>
<if test="fromCorp != '' and fromCorp != null"> <if test="fromCorp != '' and fromCorp != null">
AND fromCorp LIKE concat('%', #{fromCorp}, '%') AND fromCorp LIKE concat('%', #{fromCorp}, '%')

Loading…
Cancel
Save