待校验详情校验

master
anthonywj 2 years ago
parent a7b199f6bd
commit 702c655810

@ -7,15 +7,15 @@ import com.glxp.api.common.enums.ResultEnum;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoOrderDetailBizEntity;
import com.glxp.api.entity.inout.IoOrderDetailCodeEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.req.inout.FilterCodeRequest;
import com.glxp.api.req.inout.FilterOrderDetailResultRequest;
import com.glxp.api.res.inout.IoCodeResponse;
import com.glxp.api.res.inout.IoOrderDetailResultResponse;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inout.IoCodeService;
import com.glxp.api.service.inout.IoOrderDetailResultService;
import com.glxp.api.service.inout.IoOrderService;
import com.glxp.api.service.inout.*;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@ -72,4 +72,23 @@ public class IoOrderDetailResultController {
return ResultVOUtils.success(list);
}
@Resource
IoOrderDetailBizService orderDetailBizService;
@Resource
IoOrderDetailCodeService orderDetailCodeService;
@Resource
IoCheckInoutService checkInoutService;
@AuthRuleAnnotation("")
@GetMapping("/udiwms/inout/wditCheck/filterList")
public BaseResponse waitCheckList(FilterOrderDetailResultRequest orderDetailResultRequest) {
List<IoOrderDetailBizEntity> orderDetailBizEntities = orderDetailBizService.findByOrderId(orderDetailResultRequest.getOrderIdFk());
List<IoOrderDetailCodeEntity> orderDetailCodeEntities = orderDetailCodeService.findByOrderId(orderDetailResultRequest.getOrderIdFk());
return ResultVOUtils.success(checkInoutService.combineCheck(orderDetailBizEntities, orderDetailCodeEntities));
}
}

@ -0,0 +1,171 @@
package com.glxp.api.res.inout;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class IoOrderCheckResultResponse {
private Integer id;
/**
*
*/
private String orderIdFk;
/**
* ID
*/
private Long bindRlFk;
/**
* DIUUID
*/
private String uuidFk;
/**
* DI
*/
private String nameCode;
/**
*
*/
private String bBatchNo;
/**
*
*/
private String bProductDate;
/**
*
*/
private String bExpireDate;
/**
*
*/
private String sBatchNo;
/**
*
*/
private String sProductDate;
/**
*
*/
private String sExpireDate;
/**
*
*/
private String coName;
/**
*
*/
private String certCode;
/**
*
*/
private String ylqxzcrbarmc;
/**
*
*/
private String manufacturer;
/**
*
*/
private String measname;
/**
*
*/
private String spec;
/**
*
*/
private BigDecimal price;
/**
*
*/
private String secSalesListNo;
/**
*
*/
private String firstSalesInvNo;
/**
*
*/
private String secSalesInvNo;
/**
*
*/
private String invoiceDate;
/**
* ID
*/
private String supId;
/**
*
*/
private String bindSupStatus;
/**
*
*/
private int count;
/**
*
*/
private String remark;
/**
* 1
*/
private String remark1;
/**
* 2
*/
private String remark2;
/**
* 3
*/
private String remark3;
/**
* 4
*/
private String remark4;
/**
* 5
*/
private String remark5;
private String bindRlIds;
private boolean checkSuccess;
private int scanCount;
}

@ -2,11 +2,13 @@ package com.glxp.api.service.inout;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.constant.ConstantType;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.*;
import com.glxp.api.entity.inv.InvPreinDetailEntity;
import com.glxp.api.res.inout.IoOrderCheckResultResponse;
import com.glxp.api.res.inout.IoOrderDetailBizResponse;
import com.glxp.api.res.inout.IoOrderDetailCodeResponse;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
@ -17,10 +19,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
*
@ -405,6 +404,64 @@ public class IoCheckInoutService {
return errMsg;
}
//单据合并校验
public List<IoOrderCheckResultResponse> combineCheck(List<IoOrderDetailBizEntity> orderDetailBizEntities, List<IoOrderDetailCodeEntity> orderDetailCodeEntities) {
List<IoOrderCheckResultResponse> orderCheckResultResponses = new ArrayList<>();
for (IoOrderDetailBizEntity bizEntity : orderDetailBizEntities) {
boolean isPass = false;
for (IoOrderDetailCodeEntity codeEntity : orderDetailCodeEntities) {
if (!codeEntity.isCheckSuccess() && checkId(bizEntity, codeEntity) == null
&& checkBatchNo(bizEntity, codeEntity) == null
) {
//将产品ID,批次号匹配的合并,添加到列表
IoOrderCheckResultResponse ioOrderCheckResultResponse = new IoOrderCheckResultResponse();
BeanUtils.copyProperties(bizEntity, ioOrderCheckResultResponse);
ioOrderCheckResultResponse.setBBatchNo(bizEntity.getBatchNo());
ioOrderCheckResultResponse.setBProductDate(bizEntity.getProductDate());
ioOrderCheckResultResponse.setBExpireDate(bizEntity.getExpireDate());
ioOrderCheckResultResponse.setSBatchNo(codeEntity.getBatchNo());
ioOrderCheckResultResponse.setSProductDate(codeEntity.getProductDate());
ioOrderCheckResultResponse.setSExpireDate(codeEntity.getExpireDate());
bizEntity.setCheckSuccess(true);
codeEntity.setCheckSuccess(true);
bizEntity.setScanCount(codeEntity.getReCount());
isPass = true;
orderCheckResultResponses.add(ioOrderCheckResultResponse);
break;
}
}
if (!isPass) {
//将未与扫码单
IoOrderCheckResultResponse ioOrderCheckResultResponse = new IoOrderCheckResultResponse();
BeanUtils.copyProperties(bizEntity, ioOrderCheckResultResponse);
ioOrderCheckResultResponse.setBBatchNo(bizEntity.getBatchNo());
ioOrderCheckResultResponse.setBProductDate(bizEntity.getProductDate());
ioOrderCheckResultResponse.setBExpireDate(bizEntity.getExpireDate());
bizEntity.setScanCount(0);
ioOrderCheckResultResponse.setCheckSuccess(false);
orderCheckResultResponses.add(ioOrderCheckResultResponse);
}
}
for (IoOrderDetailCodeEntity codeEntity : orderDetailCodeEntities) {
if (!codeEntity.isCheckSuccess()) {
IoOrderCheckResultResponse ioOrderCheckResultResponse = new IoOrderCheckResultResponse();
BeanUtils.copyProperties(codeEntity, ioOrderCheckResultResponse);
ioOrderCheckResultResponse.setSBatchNo(codeEntity.getBatchNo());
ioOrderCheckResultResponse.setSProductDate(codeEntity.getProductDate());
ioOrderCheckResultResponse.setSExpireDate(codeEntity.getExpireDate());
ioOrderCheckResultResponse.setCount(0);
orderCheckResultResponses.add(ioOrderCheckResultResponse);
}
}
return orderCheckResultResponses;
}
//扫码单反向校验
public String codeOrderCheck(List<IoOrderDetailCodeEntity> orderDetailCodeEntities, List<IoOrderDetailBizEntity> orderDetailBizEntities) {

Loading…
Cancel
Save