diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiInfoController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiInfoController.java index 5dee868..d2ee621 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiInfoController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiInfoController.java @@ -137,10 +137,18 @@ public class UdiInfoController { try { BaseResponse> udiDlDeviceResponse = syncUdiService.filterUdi(productInfoFilterRequest); if (CollUtil.isEmpty(udiDlDeviceResponse.getData().getList())) { - List productInfoEntityList = asyncDiDlHelper.dlByDi(filterUdiInfoRequest.getNameCode()); - if (CollUtil.isNotEmpty(productInfoEntityList)) { - productInfoService.insertProductInfos(productInfoEntityList); - udiDlDeviceResponse = syncUdiService.filterUdi(productInfoFilterRequest); + BaseResponse> listBaseResponse = asyncDiDlHelper.dlByDiRes(filterUdiInfoRequest.getNameCode()); + + if(listBaseResponse.getCode() == 20000){ + List productInfoEntityList = listBaseResponse.getData(); + if (CollUtil.isNotEmpty(productInfoEntityList)) { + productInfoService.insertProductInfos(productInfoEntityList); + udiDlDeviceResponse = syncUdiService.filterUdi(productInfoFilterRequest); + } else { + ResultVOUtils.error(500, "未查询到该产品DI"); + } + }else { + return listBaseResponse; } } if (filterUdiInfoRequest.getIsCheck() != null && filterUdiInfoRequest.getIsCheck()) { diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderController.java index a457b85..f3bb4c5 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderController.java @@ -281,7 +281,12 @@ public class OrderController { AuthAdmin authAdmin = customerService.getUserBean(); OrderEntity orderEntity = orderService.findById(updateExportStatusRequest.getOrderId()); orderEntity.setReceiveStatus(1); - orderEntity.setReviewUser(authAdmin.getId().intValue()); + long customerId = customerService.getCustomerId(); + + if (customerId == 110) { + orderEntity.setReviewUser(authAdmin.getId().intValue()); + } + orderEntity.setUpdateTime(new Date()); orderService.updateOrder(orderEntity); List erpIds = DataTransUtil.strToErpList(orderEntity.getErpFk()); @@ -291,7 +296,9 @@ public class OrderController { stockOrderFilterRequest.setBillNo(id); StockOrderEntity stockOrderEntity = stockOrderService.findOne(stockOrderFilterRequest); stockOrderEntity.setStatus(ConstantStatus.SORDER_DELIVER); - stockOrderEntity.setReviewUser(authAdmin.getId().intValue()); + if (customerId == 110) { + stockOrderEntity.setReviewUser(authAdmin.getId().intValue()); + } stockOrderService.updateById(stockOrderEntity); } @@ -302,7 +309,10 @@ public class OrderController { if (!stockOrderEntityLit.isEmpty()) { for (StockOrderEntity stockOrderEntity : stockOrderEntityLit) { stockOrderEntity.setStatus(ConstantStatus.SORDER_DELIVER); - stockOrderEntity.setReviewUser(authAdmin.getId().intValue()); + if (customerId == 110) { + stockOrderEntity.setReviewUser(authAdmin.getId().intValue()); + } + stockOrderService.updateById(stockOrderEntity); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderDetailController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderDetailController.java index 355d113..1dfda77 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderDetailController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/OrderDetailController.java @@ -473,7 +473,10 @@ public class OrderDetailController { OrderFilterRequest orderFilterRequest = new OrderFilterRequest(); orderFilterRequest.setId(importErpOrderRequest.getOrderId()); OrderEntity orderEntity = orderService.findOne(orderFilterRequest); - orderEntity.setReviewUser(authAdmin.getId().intValue()); + long customerId = customerService.getCustomerId(); + if(customerId == 110){ + orderEntity.setReviewUser(authAdmin.getId().intValue()); + } ErpOrderEntity exitErp = new ContrastErpUtil().vailErpExit(orderDetailService, erpOrderEntities, importErpOrderRequest.getOrderId()); if (exitErp != null) { String errMsg = "所选ERP单" + exitErp.getErpOrderId() + "已被其他出入库单" + exitErp.getOrderIdFk() + "绑定"; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockOrderController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockOrderController.java index ab76dc3..91571a8 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockOrderController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/StockOrderController.java @@ -165,6 +165,7 @@ public class StockOrderController { CompanyEntity companyEntity = companyService.findCompany(Long.parseLong(stockOrderPostRequest.getCustomerId())); stockOrderEntity.setCorpId(companyEntity.getUnitIdFk()); stockOrderEntity.setCorpName(companyEntity.getCompanyName()); + stockOrderEntity.setCreateUser(null); stockOrderEntity.setUnitIdFk(companyEntity.getUnitIdFk()); } else { if (stockOrderPostRequest.getCorpId() == null) { diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java index 3ea0287..30f7c2e 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/WareHouseController.java @@ -394,18 +394,32 @@ public class WareHouseController { } } + String orderId = addOrderRequest.getOrderId(); //预验收校验 if (addOrderRequest.isPreCheck()) { - FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest(); - filterInvProductDetailRequest.setOriginCode(code); - List invProductDetailEntities = invPreInProductDetailService.filterInvProduct(filterInvProductDetailRequest); - if(CollUtil.isEmpty(invProductDetailEntities)){ - return ResultVOUtils.error(500, "该产品未入库!"); + InvProductDetailEntity invProductDetailEntity = invPreInProductDetailService.statInvPreInDetail(code); + if (invProductDetailEntity == null) { + return ResultVOUtils.error(500, "预验收库存未存在此产品!"); + } else { + if (StrUtil.isNotEmpty(orderId)) {//非首次添加 + if (StrUtil.isEmpty(udiEntity.getSerialNo())) {//该单据已有该产品 + WarehouseQueryRequest warehouseQueryRequest = new WarehouseQueryRequest(); + warehouseQueryRequest.setOrderId(orderId); + warehouseQueryRequest.setCode(code); + List warehouseEntitys = codesTempService.findByOrderIdAndCode(warehouseQueryRequest); + if (CollUtil.isNotEmpty(warehouseEntitys)) { + WarehouseEntity warehouseEntity = warehouseEntitys.get(0); + if (invProductDetailEntity.getCount() < (warehouseEntity.getCount() + 1)) { + return ResultVOUtils.error(500, "超出预验收库存数量"); + } + } + } + } } } - String orderId = addOrderRequest.getOrderId(); + if (addOrderRequest.getCustomerId() != null && (addOrderRequest.getFromCorpId() == null || "".equals(addOrderRequest.getFromCorpId()))) { CompanyEntity companyEntity = companyService.findCompany(Long.parseLong(addOrderRequest.getCustomerId())); addOrderRequest.setFromCorp(companyEntity.getCompanyName()); @@ -505,6 +519,10 @@ public class WareHouseController { } Integer userId = customerService.getUserId(); + long customerId = customerService.getCustomerId(); + if (customerId == 110) { + orderSaveRequest.setCreateUser(userId); + } orderSaveRequest.setMainAction(bussinessTypeEntity.getMainAction()); orderSaveRequest.setAction(bussinessTypeEntity.getAction()); orderSaveRequest.setActor(addOrderRequest.getActor()); @@ -519,8 +537,7 @@ public class WareHouseController { orderSaveRequest.setContrastStatus(ConstantStatus.ORDER_CHECK_UN); orderSaveRequest.setSignStatus(ConstantStatus.ORDER_SIGN_UN); orderSaveRequest.setReceiveStatus(ConstantStatus.RECEIVE_UN); - orderSaveRequest.setCustomerId(customerService.getCustomerId() + ""); - orderSaveRequest.setCreateUser(userId); + orderSaveRequest.setCustomerId(customerId + ""); orderService.insertOrder(orderSaveRequest); } @@ -655,9 +672,15 @@ public class WareHouseController { } try { String customerId = getCustomerId(); - Integer userId = customerService.getUserId(); - postOrderRequest.setCustomerId(customerId); - postOrderRequest.setUserId(userId); + + if(customerId.equals("110")){ + Integer userId = customerService.getUserId(); + postOrderRequest.setCustomerId(customerId); + postOrderRequest.setUserId(userId); + }else { + postOrderRequest.setUserId(null); + } + ioTransInoutService.creatOrderWeb(postOrderRequest); } catch (Exception e) { return ResultVOUtils.error(ResultEnum.NOT_NETWORK); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/utils/CheckOrderUtils.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/utils/CheckOrderUtils.java index 55adc0d..b60dc17 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/utils/CheckOrderUtils.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inout/utils/CheckOrderUtils.java @@ -129,7 +129,9 @@ public class CheckOrderUtils { status = getStockOrderStatus(orderEntity, bussinessTypeEntity); stockOrderEntity.setStatus(status); stockOrderEntity.setOrderIdFk(orderId); - stockOrderEntity.setReviewUser(orderEntity.getReviewUser()); + if(orderEntity.getCustomerId().equals("110")){ + stockOrderEntity.setReviewUser(orderEntity.getReviewUser()); + } stockOrderService.updateById(stockOrderEntity); } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/inventory/InvPreInProductsController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/inventory/InvPreInProductsController.java index 2be146f..980d794 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/inventory/InvPreInProductsController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/inventory/InvPreInProductsController.java @@ -85,7 +85,16 @@ public class InvPreInProductsController { if (CollUtil.isNotEmpty(invProductResponses)) { return ResultVOUtils.success(invProductResponses); } - return ResultVOUtils.error(501, "未入库"); + return ResultVOUtils.error(501, "该产品未预验收入库"); + } + + @AuthRuleAnnotation("") + @GetMapping("spms/prein/inv/products/getDetaiByCode") + public BaseResponse getDetaiByCode(FilterInvProductDetailRequest filterInvProductDetailRequest) { + InvProductDetailEntity invProductDetailEntity = invProductDetailService.statInvPreInDetail(filterInvProductDetailRequest.getCode()); + if (invProductDetailEntity != null) + return ResultVOUtils.success(invProductDetailEntity); + return ResultVOUtils.error(501, "该产品未预验收入库"); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/thrsys/ThrInvWarehouseController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/thrsys/ThrInvWarehouseController.java index ffc4a1f..9c2639d 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/thrsys/ThrInvWarehouseController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/thrsys/ThrInvWarehouseController.java @@ -18,10 +18,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import javax.validation.Valid; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 第三方仓库信息接口 @@ -75,31 +72,16 @@ public class ThrInvWarehouseController { thrInvWarehouseEntity.setPid(0); // 默认设置 FilterThrInvWarehouseRequest filterThrInvWarehouseRequest = new FilterThrInvWarehouseRequest(); filterThrInvWarehouseRequest.setPid(thrInvWarehouseEntity.getPid()); -// ThrInvWarehouseEntity codeEntity = thrInvWarehouseService.selectMaxCode(filterThrInvWarehouseRequest); -// if(codeEntity == null) -// if (codeEntity == null) { -// int code = Integer.parseInt("1") * 1000; -// thrInvWarehouseEntity.setCode(code + ""); -// } else { -// thrInvWarehouseEntity.setCode(Integer.parseInt(codeEntity.getCode()) + 1 + ""); -// } -// thrInvWarehouseEntity.setCode(Integer.parseInt(codeEntity.getCode()) + 1 + ""); } else {//货位 FilterThrInvWarehouseRequest filterThrInvWarehouseRequest = new FilterThrInvWarehouseRequest(); filterThrInvWarehouseRequest.setPid(thrInvWarehouseEntity.getPid()); -// ThrInvWarehouseEntity codeEntity = thrInvWarehouseService.selectMaxCode(filterThrInvWarehouseRequest); ThrInvWarehouseEntity pEntity = thrInvWarehouseService.selectById(thrInvWarehouseEntity.getPid() + ""); -// if (codeEntity == null) { -// int code = Integer.parseInt(pEntity.getCode()) * 1000; -// thrInvWarehouseEntity.setCode(code + ""); -// } else { -// thrInvWarehouseEntity.setCode(Integer.parseInt(codeEntity.getCode()) + 1 + ""); -// } thrInvWarehouseEntity.setAdvanceType(pEntity.getAdvanceType()); thrInvWarehouseEntity.setLevel(pEntity.getLevel()); thrInvWarehouseEntity.setPcode(pEntity.getPcode()); } + thrInvWarehouseEntity.setUpdateTime(new Date()); boolean b = thrInvWarehouseService.insertInvWarehouse(thrInvWarehouseEntity); if (!b) { return ResultVOUtils.error(ResultEnum.NOT_NETWORK); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/thrsys/ThrInvWarehouseEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/thrsys/ThrInvWarehouseEntity.java index 87e134f..dbf0b52 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/thrsys/ThrInvWarehouseEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/thrsys/ThrInvWarehouseEntity.java @@ -29,4 +29,8 @@ public class ThrInvWarehouseEntity { * 父级仓库编码 */ private String pcode; + /** + * 第三方系统标识 + */ + private String thirdSysFk; } \ No newline at end of file diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/inout/PostOrderRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/inout/PostOrderRequest.java index 1160fdf..bfead93 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/inout/PostOrderRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/inout/PostOrderRequest.java @@ -44,6 +44,7 @@ public class PostOrderRequest { private String billType; private String orderId; private boolean outChangeEnable; + private boolean preCheck; public String getStockIdFk() { return stockIdFk; @@ -94,6 +95,14 @@ public class PostOrderRequest { public void setOutChangeEnable(boolean outChangeEnable) { this.outChangeEnable = outChangeEnable; } + + public boolean isPreCheck() { + return preCheck; + } + + public void setPreCheck(boolean preCheck) { + this.preCheck = preCheck; + } } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/thrsys/FilterThrInvWarehouseRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/thrsys/FilterThrInvWarehouseRequest.java index fcbb30f..bef05a4 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/thrsys/FilterThrInvWarehouseRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/thrsys/FilterThrInvWarehouseRequest.java @@ -19,4 +19,8 @@ public class FilterThrInvWarehouseRequest extends ListPageRequest { private String pcode; private Integer level; private String lastUpdateTime; + /** + * 第三方系统标识 + */ + private String thirdSysFk; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvPreInProductDetailService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvPreInProductDetailService.java index e001fe7..8848d9b 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvPreInProductDetailService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/InvPreInProductDetailService.java @@ -26,4 +26,7 @@ public interface InvPreInProductDetailService { List findAllCode(FilterInvProductDetailRequest filterInvProductDetailRequest); + + + InvProductDetailEntity statInvPreInDetail(String code); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvPreInProductDetailServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvPreInProductDetailServiceImpl.java index 16c71a9..1b0e30c 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvPreInProductDetailServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/inventory/impl/InvPreInProductDetailServiceImpl.java @@ -1,6 +1,7 @@ package com.glxp.sale.admin.service.inventory.impl; import com.github.pagehelper.PageHelper; +import com.glxp.sale.admin.constant.ConstantType; import com.glxp.sale.admin.dao.inventory.InvPreInProductDetailDao; import com.glxp.sale.admin.entity.inventory.InvProductDetailEntity; import com.glxp.sale.admin.req.inventory.FilterInvProductDetailRequest; @@ -10,7 +11,9 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Collections; +import java.util.HashMap; import java.util.List; +import java.util.Map; @Service public class InvPreInProductDetailServiceImpl implements InvPreInProductDetailService { @@ -78,4 +81,34 @@ public class InvPreInProductDetailServiceImpl implements InvPreInProductDetailSe public List findAllCode(FilterInvProductDetailRequest filterInvProductDetailRequest) { return invPreInProductDetailDao.findAllCode(filterInvProductDetailRequest); } + + + @Override + public InvProductDetailEntity statInvPreInDetail(String code) { + FilterInvProductDetailRequest filterInvProductDetailRequest = new FilterInvProductDetailRequest(); + filterInvProductDetailRequest.setOriginCode(code); + List datas = invPreInProductDetailDao.filterInvProductDetail(filterInvProductDetailRequest); + Map invProductDetailEntityMap = new HashMap<>(); + for (InvProductDetailEntity invProductDetailEntity : datas) { + InvProductDetailEntity temp = invProductDetailEntityMap.get(invProductDetailEntity.getCode()); + if (temp == null) { + invProductDetailEntityMap.put(invProductDetailEntity.getOriginCode(), invProductDetailEntity); + } else { + int count1 = 0; + int count2 = 0; + if (temp.getMainAction().equals(ConstantType.TYPE_PUT)) { + count1 = temp.getCount(); + } else { + count1 = 0 - temp.getCount(); + } + if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) { + count2 = invProductDetailEntity.getCount(); + } else { + count2 = 0 - invProductDetailEntity.getCount(); + } + temp.setCount(count1 + count2); + } + } + return invProductDetailEntityMap.get(code); + } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/AsyncDiDlHelper.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/AsyncDiDlHelper.java index 4cef14a..0b00b76 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/AsyncDiDlHelper.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/AsyncDiDlHelper.java @@ -8,6 +8,7 @@ import com.glxp.sale.admin.entity.receipt.ProductInfoEntity; import com.glxp.sale.admin.res.PageSimpleResponse; import com.glxp.sale.admin.util.HttpClient; import com.glxp.sale.common.res.BaseResponse; +import com.glxp.sale.common.util.ResultVOUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -70,13 +71,33 @@ public class AsyncDiDlHelper { BaseResponse> baseResponse = JSONObject.parseObject(response, new TypeReference>>() { }); + if (baseResponse.getCode() == 200000) { + List productInfoEntityList = baseResponse.getData(); + return productInfoEntityList; + } else { + return null; + } + - List productInfoEntityList = baseResponse.getData(); - return productInfoEntityList; } catch (Exception e) { e.printStackTrace(); return null; } } + public BaseResponse> dlByDiRes(String deviceId) { + Map paramMap = new HashMap<>(16); + paramMap.put("deviceId", deviceId); + String response = HttpClient.mipsGet(udiUrl + "/udidl/device/serchDlByDi", paramMap); + try { + BaseResponse> baseResponse = + JSONObject.parseObject(response, new TypeReference>>() { + }); + return baseResponse; + + } catch (Exception e) { + e.printStackTrace(); + return ResultVOUtils.error(500, "系统繁忙!"); + } + } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/BasicUnitImportService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/BasicUnitImportService.java index 971b3dd..0551e5b 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/BasicUnitImportService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/BasicUnitImportService.java @@ -19,6 +19,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -100,6 +101,7 @@ public class BasicUnitImportService { basicUnitMaintainEntity.setContact(erpUnitsResponse.getContact()); basicUnitMaintainEntity.setMobile(erpUnitsResponse.getMobile()); basicUnitMaintainEntity.setCorpType(ConstantStatus.CORP_SP); + basicUnitMaintainEntity.setUpdateTime(new Date()); basicUnitMaintainService.insertBasicUnitMaintainignore(basicUnitMaintainEntity); } } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/InvProductsTrService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/InvProductsTrService.java index 4802916..cac5bba 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/InvProductsTrService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/InvProductsTrService.java @@ -100,7 +100,7 @@ public class InvProductsTrService { if (bussinessTypeEntity.isPreIn()) { InvProductEntity invPreProductEntity = invPreInProductService.selectByUuid(erpOrderEntity.getGoodsid(), erpOrderEntity.getBatchNo(), warehouseEntity.getSupId() - , warehouseEntity.getInvStorageCode(), warehouseEntity.getInvWarehouseCode()); + , null, null); if (invPreProductEntity == null) { invPreProductEntity = buildInvProduct(erpOrderEntity.getGoodsid(), erpOrderEntity, orderEntity, warehouseEntity); invPreInProductService.insertInvProduct(invPreProductEntity); @@ -149,6 +149,17 @@ public class InvProductsTrService { invProductService.updateInvProduct(invProductEntity); } + if (orderEntity.isPreCheck()) { + int actCount = getActCount(warehouseEntity); + int count = actCount * warehouseEntity.getCount(); + InvProductEntity preInvEntity = invPreInProductService.selectByUuid(erpOrderEntity.getGoodsid(), erpOrderEntity.getBatchNo(), + warehouseEntity.getSupId(), null, null); + if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) { + preInvEntity.setOutCount(preInvEntity.getOutCount() + count); + } + invPreInProductService.updateInvProduct(preInvEntity); + } + } } @@ -172,6 +183,10 @@ public class InvProductsTrService { invProductDetailEntities = buildInvProductDetail(orderId, erpOrderEntity, orderEntity, 3); } else { invProductDetailEntities = buildInvProductDetail(orderId, erpOrderEntity, orderEntity, 2); + + if (orderEntity.isPreCheck()) { + insetInv(bussinessTypeEntity, invProductDetailEntities);//2.插入当前库存 + } } if (invProductDetailEntities != null && invProductDetailEntities.size() > 0) { mInvProductDetailEntities.addAll(invProductDetailEntities); @@ -412,16 +427,7 @@ public class InvProductsTrService { for (WarehouseEntity warehouseEntity : warehouseEntities) { int actCount = getActCount(warehouseEntity); int count = actCount * warehouseEntity.getCount(); -// String code = warehouseEntity.getCode(); UdiInfoEntity udiInfoEntity = getMinDi(warehouseEntity); -// if (udiInfoEntity.getDiType() == ConstantStatus.DITYPE_PACK || udiInfoEntity.getDiType() == ConstantStatus.DITYPE_SYDY -// || (udiInfoEntity.getSjcpbm() != null && !"".equals(udiInfoEntity.getSjcpbm()))) { -// warehouseEntity.setNameCode(udiInfoEntity.getNameCode()); -// code = FilterUdiUtils.transGlxpNoSerStr(warehouseEntity); -// count = actCount * warehouseEntity.getCount(); -// } else { -// count = warehouseEntity.getCount(); -// } //获取寄售出入库结余数量 int invCount = getPreCountByOrder(null, udiInfoEntity.getRelId(), warehouseEntity.getBatchNo(), warehouseEntity.getSupId(), warehouseEntity.getLocStorageCode()); if (invCount > 0) {//仓库已存在该产品 @@ -506,7 +512,6 @@ public class InvProductsTrService { warehouseEntity.setMainAction(ConstantType.TYPE_OUT); } codesTempService.insertCodesTemp(preOutList); -// ioTransInoutService.transInout(outOrder.getId()); } //生成寄售入库单据 diff --git a/api-admin/src/main/java/com/glxp/sale/admin/thread/IoTransInoutService.java b/api-admin/src/main/java/com/glxp/sale/admin/thread/IoTransInoutService.java index 0ac9ad5..c233520 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/thread/IoTransInoutService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/thread/IoTransInoutService.java @@ -186,10 +186,15 @@ public class IoTransInoutService { orderSaveRequest.setFromCorpId(warehouseEntity.getFromCorpId()); orderSaveRequest.setOutChangeEnable(postOrder.isOutChangeEnable()); orderSaveRequest.setCustomerId(postOrderRequest.getCustomerId()); + + if (postOrderRequest.getCustomerId().equals(110)) { + orderSaveRequest.setCreateUser(postOrderRequest.getUserId()); + } orderSaveRequest.setLocStorageCode(warehouseEntity.getLocStorageCode()); orderSaveRequest.setMainAction(warehouseEntity.getMainAction()); orderSaveRequest.setReceiveStatus(0); - orderSaveRequest.setCreateUser(postOrderRequest.getUserId()); + orderSaveRequest.setPreCheck(postOrder.isPreCheck()); + orderSaveRequest.setFromCorp(warehouseEntity.getFromCorp()); if (postOrder.getErpOrders() != null && postOrder.getErpOrders().size() > 0) orderSaveRequest.setFromType(ConstantStatus.FROM_PDAED); @@ -243,6 +248,8 @@ public class IoTransInoutService { orderEntity.setStatus(ConstantStatus.ORDER_STATUS_PROCESS); orderEntity.setExportStatus(ConstantStatus.ORDER_EXPORT_UN); orderEntity.setContrastStatus(ConstantStatus.ORDER_CHECK_UN); + orderEntity.setCreateUser(null); + orderEntity.setReviewUser(null); orderEntity.setSignStatus(ConstantStatus.ORDER_SIGN_UN); orderEntity.setCustomerId(postUdimsOrderRequest.getCustomerId()); InvWarehouseEntity invWarehouseEntity = invWarehouseService.findDefault(false, true); @@ -250,7 +257,7 @@ public class IoTransInoutService { orderEntity.setInvStorageCode(invWarehouseEntity.getCode()); orderEntity.setUpdateTime(new Date()); BussinessTypeEntity bussinessTypeEntity = bussinessTypeService.findBTByAction(orderEntity.getAction()); - String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER+ MyStrUtil.trim(bussinessTypeEntity.getPrefix()), "yyyyMMdd")); + String orderNo = gennerOrderUtils.createScOrderNo(new OrderNoTypeBean(Constant.SCAN_ORDER + MyStrUtil.trim(bussinessTypeEntity.getPrefix()), "yyyyMMdd")); String orderId = orderNo; orderEntity.setId(orderId); diff --git a/api-admin/src/main/resources/application-pro.properties b/api-admin/src/main/resources/application-pro.properties index db812f2..543329b 100644 --- a/api-admin/src/main/resources/application-pro.properties +++ b/api-admin/src/main/resources/application-pro.properties @@ -36,8 +36,8 @@ logging.file=D:/glxpdata/udiwms/udiwms.log file_path=D:/glxpdata/udiwms #UDI\u6570\u636E\u4E0B\u8F7D UDI_KEY=6b137c66-6286-46c6-8efa-c2f5dd9237df -UDI_SERVER_URL=https://www.udims.com/UDI_DL_Server_test -#UDI_SERVER_URL=http://127.0.0.1:9994 +#UDI_SERVER_URL=https://www.udims.com/UDI_DL_Server_test +UDI_SERVER_URL=http://127.0.0.1:9994 #UDI_SERVER_URL=https://www.udims.com/UDI_DL_Server #UCLOD\u670D\u52A1 #UCLOD_SERVER_URL=http://127.0.0.1:9997 diff --git a/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml b/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml index 4550487..bd2e6ee 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inout/OrderDao.xml @@ -248,7 +248,7 @@ and reviewUser =#{reviewUser} - and (createUser =#{unionUser} or reviewUser =#{unionUser}) + and ((createUser =#{unionUser} or reviewUser =#{unionUser}) or (reviewUser is null and createUser is null) ) and ullageSupNo =#{ullageSupNo} diff --git a/api-admin/src/main/resources/mybatis/mapper/inout/StockOrderDao.xml b/api-admin/src/main/resources/mybatis/mapper/inout/StockOrderDao.xml index f79bbe0..3a978df 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inout/StockOrderDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inout/StockOrderDao.xml @@ -158,7 +158,7 @@ and locStorageCode = #{locStorageCode} - and (createUser =#{unionUser} or reviewUser =#{unionUser}) + and ((createUser =#{unionUser} or reviewUser =#{unionUser}) or (reviewUser is null and createUser is null) ) and createUser = #{createUser} diff --git a/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml b/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml index 6ef485f..a4e06b9 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml @@ -77,13 +77,18 @@ relIdFk = #{relIdFk} - and invStorageCode = #{invStorageCode} AND supId = #{supId} AND supId is NULL + + AND batchNo = #{batchNo} + + + AND invStorageCode = #{invStorageCode} + AND invWarehouseCode = #{invWarehouseCode} diff --git a/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreProductDao.xml b/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreProductDao.xml index 908a6b0..a19d747 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreProductDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreProductDao.xml @@ -84,6 +84,9 @@ AND supId is NULL + + AND batchNo = #{batchNo} + AND invWarehouseCode = #{invWarehouseCode} diff --git a/api-admin/src/main/resources/mybatis/mapper/inventory/InvProductDao.xml b/api-admin/src/main/resources/mybatis/mapper/inventory/InvProductDao.xml index e3e878d..76e7bf6 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inventory/InvProductDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inventory/InvProductDao.xml @@ -82,6 +82,9 @@ AND supId is NULL + + AND batchNo = #{batchNo} + AND invWarehouseCode = #{invWarehouseCode} diff --git a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvWarehouseDao.xml b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvWarehouseDao.xml index 3d92045..a070aa0 100644 --- a/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvWarehouseDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/thrsys/ThrInvWarehouseDao.xml @@ -31,6 +31,9 @@ = DATE_FORMAT(#{lastUpdateTime}, '%Y-%m-%d %H:%i:%S') ]]> + + and thirdSysFk = #{thirdSysFk} + @@ -64,6 +67,9 @@ AND isDefault = #{isDefault} + + AND thirdSysFk = #{thirdSysFk} + @@ -71,16 +77,16 @@ parameterType="com.glxp.sale.admin.entity.thrsys.ThrInvWarehouseEntity"> insert INTO thr_inv_warehouse (pid, code, name, advanceType, isDefault, - status, updateTime, remark) + status, updateTime, remark,thirdSysFk) values (#{pid}, #{code}, #{name}, #{advanceType}, #{isDefault}, #{status}, #{updateTime}, - #{remark}) + #{remark},#{thirdSysFk}) insert INTO thr_inv_warehouse (pid, code, name, advanceType, isDefault, - status, updateTime, remark) + status, updateTime, remark,thirdSysFk) VALUES @@ -88,7 +94,7 @@ #{item.pid}, #{item.code}, #{item.name}, #{item.advanceType}, #{item.isDefault}, #{item.status}, #{item.updateTime}, - #{item.remark}) + #{item.remark},#{item.thirdSysFk}) @@ -109,6 +115,7 @@ status=#{status}, updateTime=#{updateTime}, remark=#{remark}, + thirdSysFk=#{thirdSysFk}, WHERE id = #{id} @@ -146,6 +153,30 @@ AND `level` = #{level} + + AND `thirdSysFk` = #{thirdSysFk} + + + + + replace into thr_inv_warehouse (pid, code, name, advanceType, isDefault, status, updateTime, remark, level, + pcode, + thirdSysFk) + values + + (#{item.pid}, + #{item.code}, + #{item.name}, + #{item.advanceType}, + #{item.isDefault}, + #{item.status}, + #{item.updateTime}, + #{item.remark}, + #{item.level}, + #{item.pcode}, + #{item.thirdSysFk}) + + \ No newline at end of file