委托验收创建多个会覆盖问题,增加可以设置多个委托验收,选择业务单据检验加当前仓库当前分库校验

fencang
anthonyywj2 3 years ago
parent 6a1fd1ead9
commit b366783407

@ -273,6 +273,7 @@ public class OrderController {
basicEntrustRecRequest.setAction(stockOrderEntity.getBillType()); basicEntrustRecRequest.setAction(stockOrderEntity.getBillType());
basicEntrustRecRequest.setEntrustUser(userId + ""); basicEntrustRecRequest.setEntrustUser(userId + "");
basicEntrustRecRequest.setCurInv(stockOrderEntity.getLocStorageCode()); basicEntrustRecRequest.setCurInv(stockOrderEntity.getLocStorageCode());
basicEntrustRecRequest.setInvWarehouseCode(stockOrderEntity.getInvWarehouseCode());
entrustReceEntities = entrustReceService.filterEntrustRec(basicEntrustRecRequest); entrustReceEntities = entrustReceService.filterEntrustRec(basicEntrustRecRequest);
} else { } else {
return ResultVOUtils.error(500, "单据已委托验收完成!"); return ResultVOUtils.error(500, "单据已委托验收完成!");

@ -164,10 +164,10 @@ public class OrderDetailController {
} }
String billType = null; String billType = null;
if(StrUtil.isNotEmpty(filterErpOrderRequest.getBillAction())){ if (StrUtil.isNotEmpty(filterErpOrderRequest.getBillAction())) {
BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(filterErpOrderRequest.getBillAction()); BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(filterErpOrderRequest.getBillAction());
billType = bussinessTypeEntity.getLocalAction(); billType = bussinessTypeEntity.getLocalAction();
}else { } else {
billType = filterErpOrderRequest.getLocalAction(); billType = filterErpOrderRequest.getLocalAction();
} }
StockOrderFilterRequest stockOrderFilterRequest = new StockOrderFilterRequest(); StockOrderFilterRequest stockOrderFilterRequest = new StockOrderFilterRequest();
@ -454,6 +454,8 @@ public class OrderDetailController {
erpOrderEntity.setBatchNo(subPurchase.getBatchNo()); erpOrderEntity.setBatchNo(subPurchase.getBatchNo());
erpOrderEntity.setErpCount(Math.abs(Integer.parseInt(subPurchase.getCount()))); erpOrderEntity.setErpCount(Math.abs(Integer.parseInt(subPurchase.getCount())));
erpOrderEntity.setReCount(Math.abs(Integer.parseInt(subPurchase.getReCount()))); erpOrderEntity.setReCount(Math.abs(Integer.parseInt(subPurchase.getReCount())));
erpOrderEntity.setInvWarehouseCode(purchaseinResponse.getInvWarehouseCode());
erpOrderEntity.setLocStorageCode(purchaseinResponse.getLocStorageCode());
erpOrderEntity.setGoodsunit(subPurchase.getSpec()); erpOrderEntity.setGoodsunit(subPurchase.getSpec());
erpOrderEntity.setBindRlFk(subPurchase.getRelId()); erpOrderEntity.setBindRlFk(subPurchase.getRelId());
erpOrderEntities.add(erpOrderEntity); erpOrderEntities.add(erpOrderEntity);
@ -466,7 +468,16 @@ public class OrderDetailController {
ErpOrderEntity temp = erpOrderEntities.get(0); ErpOrderEntity temp = erpOrderEntities.get(0);
for (int i = 0; i < erpOrderEntities.size(); i++) { for (int i = 0; i < erpOrderEntities.size(); i++) {
if (!temp.getCompanyname().equals(erpOrderEntities.get(i).getCompanyname())) { if (!temp.getCompanyname().equals(erpOrderEntities.get(i).getCompanyname())) {
return ResultVOUtils.error(500, "选择Erp订单往来单位不一致"); return ResultVOUtils.error(500, "所选业务单据往来单位不一致!");
}
if (!temp.getLocStorageCode().equals(erpOrderEntities.get(i).getLocStorageCode())) {
return ResultVOUtils.error(500, "所选业务单据当前仓库不一致!");
}
if (!temp.getInvWarehouseCode().equals(erpOrderEntities.get(i).getInvWarehouseCode())) {
return ResultVOUtils.error(500, "所选业务单据当前分库不一致!");
} }
} }
@ -474,12 +485,12 @@ public class OrderDetailController {
orderFilterRequest.setId(importErpOrderRequest.getOrderId()); orderFilterRequest.setId(importErpOrderRequest.getOrderId());
OrderEntity orderEntity = orderService.findOne(orderFilterRequest); OrderEntity orderEntity = orderService.findOne(orderFilterRequest);
long customerId = customerService.getCustomerId(); long customerId = customerService.getCustomerId();
if(customerId == 110){ if (customerId == 110) {
orderEntity.setReviewUser(authAdmin.getId().intValue()); orderEntity.setReviewUser(authAdmin.getId().intValue());
} }
ErpOrderEntity exitErp = new ContrastErpUtil().vailErpExit(orderDetailService, erpOrderEntities, importErpOrderRequest.getOrderId()); ErpOrderEntity exitErp = new ContrastErpUtil().vailErpExit(orderDetailService, erpOrderEntities, importErpOrderRequest.getOrderId());
if (exitErp != null) { if (exitErp != null) {
String errMsg = "所选ERP单" + exitErp.getErpOrderId() + "已被其他出入库单" + exitErp.getOrderIdFk() + "绑定"; String errMsg = "所选业务单据" + exitErp.getErpOrderId() + "已被其他出入库单" + exitErp.getOrderIdFk() + "绑定";
orderEntity.setRemark(errMsg); orderEntity.setRemark(errMsg);
orderEntity.setUpdateTime(new Date()); orderEntity.setUpdateTime(new Date());
orderService.updateOrder(orderEntity); orderService.updateOrder(orderEntity);
@ -493,26 +504,13 @@ public class OrderDetailController {
transInoutService.genOrderDetail(warehouseEntityList); transInoutService.genOrderDetail(warehouseEntityList);
checkOrderUtils.check(orderEntity.getId(), erpOrderEntities); checkOrderUtils.check(orderEntity.getId(), erpOrderEntities);
} else { } else {
return ResultVOUtils.error(500, "ERP订单不能为空"); return ResultVOUtils.error(500, "业务单据不能为空");
} }
return ResultVOUtils.success("导入成功"); return ResultVOUtils.success("导入成功");
} }
// @PostMapping("/warehouse/repeatCheck")//TODO 重新校验
// public BaseResponse repeatCheck(@RequestBody FilterErpOrderRequest filterErpOrderRequest, BindingResult bindingResult) {
//
// if (bindingResult.hasErrors()) {
// return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
// }
// OrderFilterRequest orderFilterRequest = new OrderFilterRequest();
// orderFilterRequest.setId(filterErpOrderRequest.getOrderId());
// OrderEntity orderEntity = orderService.findOne(orderFilterRequest);
// transInoutService.repeatCheck(orderEntity.getId());
// return ResultVOUtils.success("后台已开始校验,请稍后刷新重试!");
// }
@AuthRuleAnnotation("") @AuthRuleAnnotation("")
@PostMapping("/warehouse/repeatPrintCheck")//TODO 重新校验 @PostMapping("/warehouse/repeatPrintCheck")//TODO 重新校验
public BaseResponse repeatPrintCheck(@RequestBody FilterErpOrderRequest filterErpOrderRequest, BindingResult bindingResult) { public BaseResponse repeatPrintCheck(@RequestBody FilterErpOrderRequest filterErpOrderRequest, BindingResult bindingResult) {

@ -316,19 +316,6 @@ public class StockOrderController {
Integer userId = customerService.getUserId(); Integer userId = customerService.getUserId();
stockOrderFilterRequest.setUnitIdFk(null); stockOrderFilterRequest.setUnitIdFk(null);
stockOrderFilterRequest.setUserId(userId); stockOrderFilterRequest.setUserId(userId);
// if (StrUtil.isNotEmpty(stockOrderFilterRequest.getLocStorageCode())) {
// InvWarehouseEntity invWarehouseEntity = invWarehouseService.selectByCode(stockOrderFilterRequest.getLocStorageCode());
// FilterInvUserRequest filterInvUserRequest = new FilterInvUserRequest();
// filterInvUserRequest.setCode(invWarehouseEntity.getCode());
// filterInvUserRequest.setUserid(userId.longValue());
// filterInvUserRequest.setIsDirector(true);
// List<WarehouseUserEntity> warehouseUserEntities = warehouseUserService.filterWarehouseUsers(filterInvUserRequest);
// if (CollUtil.isEmpty(warehouseUserEntities)) {
// stockOrderFilterRequest.setUnionUser(userId);
// }
// } else {
// return ResultVOUtils.error(500, "请先选择当前仓库");
// }
} else { } else {
CompanyEntity companyEntity = companyService.findCompany(Long.parseLong(customerId)); CompanyEntity companyEntity = companyService.findCompany(Long.parseLong(customerId));
stockOrderFilterRequest.setUnitIdFk(companyEntity.getUnitIdFk()); stockOrderFilterRequest.setUnitIdFk(companyEntity.getUnitIdFk());

@ -69,6 +69,10 @@ public class ErpOrderEntity {
private BigDecimal price; private BigDecimal price;
private boolean checkSuccess; private boolean checkSuccess;
private String locStorageCode;
private String invWarehouseCode;//当前分库
private String fromSubInvCode; //往来分库
public Integer getBindStatus() { public Integer getBindStatus() {
if (bindStatus == null) if (bindStatus == null)
return 0; return 0;

@ -16,5 +16,7 @@ public class BasicEntrustRecRequest extends ListPageRequest {
private Date updateTime; private Date updateTime;
private String curInv; private String curInv;
private String lastUpdateTime; private String lastUpdateTime;
private String entrustSubInv;
private String invWarehouseCode;
} }

@ -17,6 +17,9 @@ public class ErpOrderResponse {
private String customerId; private String customerId;
private String originType; private String originType;
private String locStorageCode; private String locStorageCode;
private String invWarehouseCode;//当前分库
private String fromSubInvCode; //往来分库
private String thirdSysFk; private String thirdSysFk;
private List<SubErpOrder> subErpOrders; private List<SubErpOrder> subErpOrders;
@ -233,6 +236,22 @@ public class ErpOrderResponse {
this.thirdSysFk = thirdSysFk; this.thirdSysFk = thirdSysFk;
} }
public String getInvWarehouseCode() {
return invWarehouseCode;
}
public void setInvWarehouseCode(String invWarehouseCode) {
this.invWarehouseCode = invWarehouseCode;
}
public String getFromSubInvCode() {
return fromSubInvCode;
}
public void setFromSubInvCode(String fromSubInvCode) {
this.fromSubInvCode = fromSubInvCode;
}
public static class SubErpOrder { public static class SubErpOrder {
private String productId; private String productId;
private String productName; private String productName;

@ -25,6 +25,12 @@
<if test="curInv!=null"> <if test="curInv!=null">
and curInv = #{curInv} and curInv = #{curInv}
</if> </if>
<if test="entrustSubInv!=null">
and entrustSubInv = #{entrustSubInv}
</if>
<if test="invWarehouseCode!=null">
and invWarehouseCode = #{invWarehouseCode}
</if>
<if test="lastUpdateTime!=null and lastUpdateTime!=''"> <if test="lastUpdateTime!=null and lastUpdateTime!=''">
<![CDATA[ and DATE_FORMAT(updateTime, '%Y-%m-%d %H:%i:%S')>= DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S') ]]> <![CDATA[ and DATE_FORMAT(updateTime, '%Y-%m-%d %H:%i:%S')>= DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S') ]]>
</if> </if>

Loading…
Cancel
Save