diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiRelevanceController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiRelevanceController.java index 8c5c6fa..8ab2dc2 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiRelevanceController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/basic/UdiRelevanceController.java @@ -317,6 +317,7 @@ public class UdiRelevanceController { // udiInfoEntity.setDiType(udiRelevanceResponse.getDiType()); udiInfoEntity.setPrice(udiRelevanceResponse.getPrice()); udiInfoEntity.setSpmc(udiRelevanceResponse.getSpmc()); + udiInfoEntity.setZxxsbzbhsydysl(udiRelevanceResponse.getZxxsbzbhsydysl()); udiInfoEntity.setAllowNoBatch(udiRelevanceResponse.isAllowNoBatch()); udiInfoEntity.setAllowNoExpire(udiRelevanceResponse.isAllowNoExpire()); udiInfoEntity.setAllowNoProduct(udiRelevanceResponse.isAllowNoProduct()); @@ -683,7 +684,7 @@ public class UdiRelevanceController { @GetMapping("/udiwms/udirl/di/remove") public BaseResponse removeDI(RemoveRelRequest removeRelRequest) { UdiRelevanceEntity udiRelevanceEntity = udiRelevanceService.selectById(removeRelRequest.getRelId()); - if (StrUtil.isEmpty(udiRelevanceEntity.getMainId())) { + if (udiRelevanceEntity==null || StrUtil.isEmpty(udiRelevanceEntity.getMainId())) { return ResultVOUtils.error(500, "未关联第三方产品ID,无法解除绑定!"); } List temps = udiRelevanceService.selectByMainId(udiRelevanceEntity.getMainId()); 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 83edb07..7f813e5 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 @@ -27,6 +27,7 @@ import com.glxp.sale.admin.req.basic.CompanyProductRelevanceRequest; import com.glxp.sale.admin.req.inout.*; import com.glxp.sale.admin.req.inventory.FilterInvBusUserRequest; import com.glxp.sale.admin.req.inventory.FilterInvLinkDataRequest; +import com.glxp.sale.admin.req.inventory.FilterInvUserRequest; import com.glxp.sale.admin.res.PageSimpleResponse; import com.glxp.sale.admin.res.basic.BussinessTypResponse; import com.glxp.sale.admin.res.basic.CompanyProductRelevanceResponse; @@ -305,6 +306,8 @@ public class WareHouseController { orderEntity1.setPreCheck(addOrderRequest.isPreCheck()); orderEntity1.setUpdateTime(new Date()); orderEntity1.setCodeFillCheck(addOrderRequest.isCodeFillCheck()); + orderEntity1.setInvStorageCode(addOrderRequest.getInvStorageCode()); + orderEntity1.setSubInvCode(addOrderRequest.getSubInvCode()); orderService.updateOrder(orderEntity1); WarehouseEntity warehouseEntity = new WarehouseEntity(); warehouseEntity.setOrderId(addOrderRequest.getOrderId()); @@ -1277,36 +1280,29 @@ public class WareHouseController { public BaseResponse saveWarehouseUser(@RequestBody Map params) { String code = String.valueOf(params.get("code")); String userListJson = String.valueOf(params.get("userList")); - if (StrUtil.isBlank(code) || StrUtil.isBlank(userListJson)) { + if (StrUtil.isBlank(code) || StrUtil.isBlank(userListJson)) return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); - } List userList = JSONUtil.toList(userListJson, AuthAdmin.class); - - //获取用户关联单据类型信息 - FilterInvBusUserRequest filterInvBusUserRequest = new FilterInvBusUserRequest(); - filterInvBusUserRequest.setSubInvCode(code); - List invBusUserEntities = invBusUserService.filterJoinInvBusUser(filterInvBusUserRequest); - Map filteBusTypes = new HashMap<>(); - for (InvBusUserResponse invBusUserEntity : invBusUserEntities) { - boolean isExit = false; - for (AuthAdmin authAdmin : userList) { - if (authAdmin.getId() == Long.parseLong(invBusUserEntity.getUserId())) { - isExit = true; - continue; - } - } - if (!isExit) { - filteBusTypes.put(invBusUserEntity.getUserId(), invBusUserEntity); + //取出选中的userId + List list = userList .stream().map(AuthAdmin::getId).distinct().collect(Collectors.toList()); + //查询该仓库下面绑定的用户 + FilterInvUserRequest filterInvUserRequest=new FilterInvUserRequest(); + filterInvUserRequest.setCode(code); + filterInvUserRequest.setUserList(list); + List filterList=warehouseUserService.filterWarehouseUsers(filterInvUserRequest); + list = filterList .stream().map(WarehouseUserEntity::getUserid).distinct().collect(Collectors.toList()); + + if(list.size()>0){ + //获取用户关联单据类型信息 + FilterInvBusUserRequest filterInvBusUserRequest = new FilterInvBusUserRequest(); + filterInvBusUserRequest.setSubInvCode(code); + filterInvBusUserRequest.setUserList(list); + List invBusUserEntities = invBusUserService.filterJoinInvBusUser(filterInvBusUserRequest); + if (invBusUserEntities.size() > 0) { + return ResultVOUtils.error(500, "请先移除用户已关联单据类型!"); } } - if (filteBusTypes.size() > 0) { - return ResultVOUtils.error(500, "请先移除用户已关联单据类型!"); - } - -// if (CollUtil.isEmpty(userList)) { -// return ResultVOUtils.error(500, "用户列表不能为空"); -// } warehouseUserService.saveWarehouseUser(code, userList); InvSubWarehouseEntity invSubWarehouseEntity = invSubWarehouseService.findByInvSubByCode(code); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/purechase/SupCompanyController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/purechase/SupCompanyController.java index dc3034d..620e221 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/purechase/SupCompanyController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/purechase/SupCompanyController.java @@ -63,6 +63,7 @@ public class SupCompanyController { SupCompanyService supCompanyService; + @AuthRuleAnnotation("") @GetMapping("/api/pur/getSupComapnys") public BaseResponse getSupComapnys(FilterSupCompanyRequest companyRequest) { @@ -79,6 +80,7 @@ public class SupCompanyController { @PostMapping("/api/pur/addCompany") public BaseResponse insertCompany(@RequestBody SupCompanyEntity companyEntity) { + //判断是不是存在草稿 if(companyEntity.getAuditStatus()==6){ List supCertEntityList = supCertService.findAll(companyEntity.getCustomerId()); for(SupCertEntity obj:supCertEntityList){ @@ -129,7 +131,7 @@ public class SupCompanyController { customerContactEntity.setCustomerId(customerId); customerContactService.insertCustomerContact(customerContactEntity); //更新相关证书对应的customerId - supCertService.updateCustomerId(companyEntity.getCustomerId(), customerId); + supCertService.updateCustomerId(companyEntity.getCustomerId(), customerId,ConstantStatus.AUDIT_UN); companyEntity.setCustomerId(customerId); companyEntity.setCreateTime(new Date()); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/dao/purchase/SupCertDao.java b/api-admin/src/main/java/com/glxp/sale/admin/dao/purchase/SupCertDao.java index 5391d75..f6396a3 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/dao/purchase/SupCertDao.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/dao/purchase/SupCertDao.java @@ -23,7 +23,7 @@ public interface SupCertDao { boolean deleteById(String id); - boolean updateCustomerId(@Param("oldId") String oldId, @Param("newId") String newId); + boolean updateCustomerId(@Param("oldId") String oldId, @Param("newId") String newId,@Param("auditStatus") Integer auditStatus); boolean updateManufacturerId(@Param("oldCustomerId") String oldCustomerId, @Param("newCustomerId") String newCustomerId, @Param("oldManufacturerIdFk") String oldManufacturerIdFk, @Param("newManufacturerIdFk") String newManufacturerIdFk); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiInfoEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiInfoEntity.java index bbcb138..341cc76 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiInfoEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/UdiInfoEntity.java @@ -59,6 +59,9 @@ public class UdiInfoEntity { private String relId;//关联ID主键 private Integer status; private String supId; + private boolean isAdavence; + private boolean isDisable; + private boolean useMuti; private Boolean isCheck; private boolean allowNoBatch; diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/inout/OrderEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/inout/OrderEntity.java index 5a232f3..724ff8e 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/entity/inout/OrderEntity.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/inout/OrderEntity.java @@ -77,4 +77,6 @@ public class OrderEntity { private String preOutBillNo; private String wzUploadStatus; private String wzUploadResult; + + private String subInvCode; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/inout/AddOrderRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/inout/AddOrderRequest.java index 4fa0842..d846ced 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/inout/AddOrderRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/inout/AddOrderRequest.java @@ -35,4 +35,6 @@ public class AddOrderRequest { private String expireDate; private String serialNo; private String deptCode; + private String subInvCode; + private String invStorageCode; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvBusUserRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvBusUserRequest.java index 4b586a3..65afcc2 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvBusUserRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvBusUserRequest.java @@ -3,6 +3,8 @@ package com.glxp.sale.admin.req.inventory; import com.glxp.sale.admin.req.ListPageRequest; import lombok.Data; +import java.util.List; + @Data public class FilterInvBusUserRequest extends ListPageRequest { @@ -10,4 +12,5 @@ public class FilterInvBusUserRequest extends ListPageRequest { private String userId; private String subInvCode; private String scAction; + private List userList; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvUserRequest.java b/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvUserRequest.java index bb338ce..4b766e1 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvUserRequest.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/req/inventory/FilterInvUserRequest.java @@ -3,6 +3,8 @@ package com.glxp.sale.admin.req.inventory; import com.glxp.sale.admin.req.ListPageRequest; import lombok.Data; +import java.util.List; + @Data public class FilterInvUserRequest extends ListPageRequest { @@ -14,4 +16,5 @@ public class FilterInvUserRequest extends ListPageRequest { private Boolean isDirector; private String lastUpdateTime; + private List userList; } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/inout/impl/CodesServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/inout/impl/CodesServiceImpl.java index 322f5bd..2acf44e 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/inout/impl/CodesServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/inout/impl/CodesServiceImpl.java @@ -217,7 +217,8 @@ public class CodesServiceImpl implements CodesService { } else { filterInvProductRequest.setBatchNo(invProductDetailEntity.getBatchNo()); } - InvProductEntity invProductEntity = invProductDao.filterInvProduct(filterInvProductRequest).get(0); + List invProductEntityList=invProductDao.filterInvProduct(filterInvProductRequest); + InvProductEntity invProductEntity = invProductEntityList.get(0); if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) { //入库 invProductEntity.setInCount(invProductEntity.getInCount() - 1); @@ -270,7 +271,7 @@ public class CodesServiceImpl implements CodesService { StockOrderDetailEntity stockOrderDetailEntity = stockOrderDetailEntities.get(0); if (Integer.parseInt(stockOrderDetailEntity.getReCount()) > 1) { stockOrderDetailEntity.setReCount(String.valueOf(Integer.parseInt(stockOrderDetailEntity.getReCount()) - 1)); //实际数量 - 1 - stockOrderDetailEntity.setSweepCount(String.valueOf(Integer.parseInt(stockOrderDetailEntity.getSweepCount()) - 1)); //扫码数量 -1 + stockOrderDetailEntity.setSweepCount(String.valueOf(stockOrderDetailEntity.getSweepCount()==null? 0 : Integer.parseInt(stockOrderDetailEntity.getSweepCount()) -1)); //扫码数量 -1 //更新业务单据详情 stockOrderDetailDao.updateById(stockOrderDetailEntity); } else { diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/inout/impl/OrderServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/inout/impl/OrderServiceImpl.java index 573fafd..33a8f12 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/inout/impl/OrderServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/inout/impl/OrderServiceImpl.java @@ -267,11 +267,15 @@ public class OrderServiceImpl implements OrderService { supplementOrder.setReceiveStatus(0); //设置验收状态为未验收 supplementOrder.setCorpOrderId(CustomUtil.getId() + "x"); //修改往来单位及当前库存号 - supplementOrder.setFromCorpId(order.getLocStorageCode()); + supplementOrder.setFromCorpId(order.getInvWarehouseCode()); + supplementOrder.setSubInvCode(order.getInvStorageCode()); supplementOrder.setFromSubInvCode(order.getInvWarehouseCode()); - supplementOrder.setLocStorageCode(order.getFromCorpId()); - supplementOrder.setInvWarehouseCode(null); - String name = invWarehouseDao.getNameByCode(supplementOrder.getFromCorpId()); + //根据分库code查询总库coder + InvSubWarehouseEntity invSubWarehouseEntity=invSubWarehouseDao.filterGroupInvSubAndcode(order.getFromCorpId()); + supplementOrder.setLocStorageCode(invSubWarehouseEntity.getParentId()); + supplementOrder.setInvStorageCode(invSubWarehouseEntity.getParentId()); + String name = invWarehouseDao.getNameByCode(order.getInvStorageCode()); + if (StrUtil.isNotEmpty(order.getFromSubInvCode())) { supplementOrder.setInvWarehouseCode(order.getFromSubInvCode()); } else { @@ -280,8 +284,6 @@ public class OrderServiceImpl implements OrderService { supplementOrder.setInvWarehouseCode(invSubWarehouseEntities.get(0).getCode()); } } - - supplementOrder.setFromCorp(name); supplementOrder.setFromType(ConstantStatus.FROM_PEACE_CHANGE); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/purchase/SupCertService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/purchase/SupCertService.java index f48cd69..bc48585 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/purchase/SupCertService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/purchase/SupCertService.java @@ -22,7 +22,7 @@ public interface SupCertService { boolean updateCompanyCert(SupCertEntity supCertEntity); - boolean updateCustomerId(String oldId, String newId); + boolean updateCustomerId(String oldId, String newId,Integer auditStatus); boolean updateManufacturerId(String oldCustomerId, String newCustomerId, String oldManufacturerIdFk, String newManufacturerIdFk); diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/purchase/impl/SupCertServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/purchase/impl/SupCertServiceImpl.java index 9c2e50b..bbec107 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/purchase/impl/SupCertServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/purchase/impl/SupCertServiceImpl.java @@ -93,8 +93,8 @@ public class SupCertServiceImpl implements SupCertService { } @Override - public boolean updateCustomerId(String oldId, String newId) { - return supCertDao.updateCustomerId(oldId, newId); + public boolean updateCustomerId(String oldId, String newId,Integer auditStatus) { + return supCertDao.updateCustomerId(oldId, newId,auditStatus); } @Override diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/SyncUdiService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/SyncUdiService.java index 9131367..f23928a 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/SyncUdiService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/receipt/SyncUdiService.java @@ -80,11 +80,12 @@ public class SyncUdiService { if (productInfoFilterRequest.getZczbhhzbapzbh() != null && !productInfoFilterRequest.getZczbhhzbapzbh().equals("")) { return ResultVOUtils.error(500, "请输入医疗器械注册备案人名称"); } + if (productInfoFilterRequest.getCpmctymc() != null && !productInfoFilterRequest.getCpmctymc().equals("") && productInfoFilterRequest.getCpmctymc().length() < 4) { + return ResultVOUtils.error(500, "请输入完整的产品通用名称!"); + } } - if (productInfoFilterRequest.getCpmctymc() != null && !productInfoFilterRequest.getCpmctymc().equals("") && productInfoFilterRequest.getCpmctymc().length() < 4) { - return ResultVOUtils.error(500, "请输入完整的产品通用名称!"); - } + productInfoFilterRequest.setIsNewest(1); // productInfoFilterRequest.setDiType("1"); diff --git a/api-admin/src/main/resources/application-dev.properties b/api-admin/src/main/resources/application-dev.properties index 431376d..3d1eee7 100644 --- a/api-admin/src/main/resources/application-dev.properties +++ b/api-admin/src/main/resources/application-dev.properties @@ -1,7 +1,7 @@ # \u751F\u4EA7\u73AF\u5883 server.port=9906 spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver -spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/spms_ph?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true +spring.datasource.jdbc-url=jdbc:mysql://127.0.0.1:3306/spms?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true spring.datasource.username=root spring.datasource.password=123456 spring.datasource.hikari.connection-timeout=60000 diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/UdiInfoDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/UdiInfoDao.xml index 55db533..f97345c 100644 --- a/api-admin/src/main/resources/mybatis/mapper/basic/UdiInfoDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/basic/UdiInfoDao.xml @@ -5,25 +5,100 @@ diff --git a/api-admin/src/main/resources/mybatis/mapper/inventory/InvBusUserDao.xml b/api-admin/src/main/resources/mybatis/mapper/inventory/InvBusUserDao.xml index dd75f8f..4a037fd 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inventory/InvBusUserDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inventory/InvBusUserDao.xml @@ -36,7 +36,12 @@ AND scAction = #{scAction} - + + AND userId in + + #{item} + + group by inv_bustype_user.id 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 c33717c..ad5074b 100644 --- a/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/inventory/InvPreInProductDao.xml @@ -124,8 +124,8 @@ inv_prein_product.batchNo ,inv_prein_product.productionDate,inv_prein_product.expireDate, basic_products.ylqxzcrbarmc,basic_products.zczbhhzbapzbh, - inv_prein_product.inCount,inv_prein_product.outCount - ,inv_prein_product.reCount,inv_prein_product.customerId, + sum(inv_prein_product.inCount) as inCount,sum(inv_prein_product.outCount) as outCount, + sum(inv_prein_product.reCount) as reCount,inv_prein_product.customerId, basic_corp.name companyName,inv_prein_product.supId,inv_prein_product.unitFk ,inv_warehouse.name invStorageName,inv_prein_product.invStorageCode,inv_prein_product.price, inv_warehouse_sub.name invSubStorageName,inv_prein_product.invWarehouseCode,inv_prein_product.orderIdFk diff --git a/api-admin/src/main/resources/mybatis/mapper/purchase/SupCertDao.xml b/api-admin/src/main/resources/mybatis/mapper/purchase/SupCertDao.xml index 36251d6..c0dae74 100644 --- a/api-admin/src/main/resources/mybatis/mapper/purchase/SupCertDao.xml +++ b/api-admin/src/main/resources/mybatis/mapper/purchase/SupCertDao.xml @@ -87,7 +87,11 @@ UPDATE sup_cert set customerId = #{newId} + + ,auditStatus = #{auditStatus} + WHERE customerId = #{oldId} +