diff --git a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java index f86b73c3..c70ea590 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoCodeTempController.java @@ -25,6 +25,7 @@ import com.glxp.api.entity.inout.*; import com.glxp.api.entity.inv.InvPreInProductDetailEntity; import com.glxp.api.entity.inv.InvPreProductDetailEntity; import com.glxp.api.entity.inv.InvPreinDetailEntity; +import com.glxp.api.entity.purchase.SupCertEntity; import com.glxp.api.entity.purchase.SupProductEntity; import com.glxp.api.entity.system.SystemParamConfigEntity; import com.glxp.api.req.basic.CompanyProductRelevanceRequest; @@ -41,6 +42,7 @@ import com.glxp.api.service.auth.InvWarehouseService; import com.glxp.api.service.basic.*; import com.glxp.api.service.inout.*; import com.glxp.api.service.inv.*; +import com.glxp.api.service.purchase.SupCertService; import com.glxp.api.service.purchase.SupProductService; import com.glxp.api.service.system.SystemParamConfigService; import com.glxp.api.util.*; @@ -150,6 +152,8 @@ public class IoCodeTempController extends BaseController { @Resource SupProductService supProductService; + @Resource + SupCertService supCertService; //前端扫码完整性校验 @AuthRuleAnnotation("") @@ -757,6 +761,15 @@ public class IoCodeTempController extends BaseController { if (bussinessTypeEntity.getCheckCertExpire() == 2 && udiRelevanceResponse.isNeedCert()) { SupProductEntity supProductEntity = supProductService.findByManufactury(udiRelevanceResponse.getCpmctymc(), udiRelevanceResponse.getManufactory(), ""); if (supProductEntity != null && (supProductEntity.getAuditStatus() == ConstantStatus.AUDIT_PASS || supProductEntity.getAuditStatus() == ConstantStatus.AUDIT_CHANGE_PASS)) { + List supCertEntities = supCertService.findByProductId(supProductEntity.getProductId()); + if (CollUtil.isNotEmpty(supCertEntities)) { + Date curDate = new Date(); + for (SupCertEntity supCertEntity : supCertEntities) { + if (supCertEntity.getExpireDate() != null && supCertEntity.getExpireDate().compareTo(curDate) < 0) { + return ResultVOUtils.error(500, "产品资质证书已过期!"); + } + } + } } else { return ResultVOUtils.error(500, "产品资质证书未通过审核!"); } diff --git a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java index 581381fe..e0af8906 100644 --- a/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java +++ b/src/main/java/com/glxp/api/controller/inout/IoOrderDetailBizController.java @@ -23,6 +23,7 @@ import com.glxp.api.entity.basic.*; import com.glxp.api.entity.inout.*; import com.glxp.api.entity.purchase.PurOrderDetailEntity; import com.glxp.api.entity.purchase.PurOrderEntity; +import com.glxp.api.entity.purchase.SupCertEntity; import com.glxp.api.entity.purchase.SupProductEntity; import com.glxp.api.entity.system.SystemParamConfigEntity; import com.glxp.api.entity.thrsys.ThrOrderDetailEntity; @@ -166,7 +167,18 @@ public class IoOrderDetailBizController extends BaseController { BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction()); if (bussinessTypeEntity.getCheckCertExpire() == 2 && udiRelevanceResponse.isNeedCert()) { SupProductEntity supProductEntity = supProductService.findByManufactury(udiRelevanceResponse.getCpmctymc(), udiRelevanceResponse.getManufactory(), ""); + if (supProductEntity != null && (supProductEntity.getAuditStatus() == ConstantStatus.AUDIT_PASS || supProductEntity.getAuditStatus() == ConstantStatus.AUDIT_CHANGE_PASS)) { + List supCertEntities = supCertService.findByProductId(supProductEntity.getProductId()); + if (CollUtil.isNotEmpty(supCertEntities)) { + Date curDate = new Date(); + for (SupCertEntity supCertEntity : supCertEntities) { + if (supCertEntity.getExpireDate() != null && supCertEntity.getExpireDate().compareTo(curDate) < 0) { + return ResultVOUtils.error(500, "产品资质证书已过期!"); + } + } + } + } else { return ResultVOUtils.error(500, "产品资质证书未通过审核!"); } @@ -177,7 +189,6 @@ public class IoOrderDetailBizController extends BaseController { } } - IoOrderDetailBizEntity ioOrderDetailBizEntity = new IoOrderDetailBizEntity(); ioOrderDetailBizEntity.setOrderIdFk(orderEntity.getBillNo()); ioOrderDetailBizEntity.setBindRlFk(udiRelevanceResponse.getId()); diff --git a/src/main/java/com/glxp/api/controller/system/ConnectTestController.java b/src/main/java/com/glxp/api/controller/system/ConnectTestController.java index 5a0f6463..864da213 100644 --- a/src/main/java/com/glxp/api/controller/system/ConnectTestController.java +++ b/src/main/java/com/glxp/api/controller/system/ConnectTestController.java @@ -23,7 +23,7 @@ public class ConnectTestController { CompanyEntity companyEntity = companyService.findCompany("110"); AuthConnectEntity authConnectEntity = new AuthConnectEntity(); authConnectEntity.setCompanyName(companyEntity.getName()); - authConnectEntity.setSysName("UDI管理系统"); + authConnectEntity.setSysName("UDI自助平台"); return ResultVOUtils.success(authConnectEntity); } diff --git a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java index 2a79e1d1..c01e1f19 100644 --- a/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java +++ b/src/main/java/com/glxp/api/controller/thrsys/ThrProductsController.java @@ -2,6 +2,7 @@ package com.glxp.api.controller.thrsys; import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.api.annotation.AuthRuleAnnotation; import com.glxp.api.annotation.Log; @@ -9,6 +10,7 @@ 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.constant.BusinessType; +import com.glxp.api.entity.basic.UdiProductEntity; import com.glxp.api.entity.thrsys.ThrProductsEntity; import com.glxp.api.http.ErpBasicClient; import com.glxp.api.req.system.DeleteRequest; @@ -16,6 +18,8 @@ import com.glxp.api.req.thrsys.FilterThrProductsRequest; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.thrsys.ThrProductsResponse; import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.UdiProductService; +import com.glxp.api.service.system.SystemParamConfigService; import com.glxp.api.service.thrsys.ThrProductsService; import com.glxp.api.service.thrsys.ThrSystemDetailService; import org.springframework.beans.BeanUtils; @@ -155,4 +159,59 @@ public class ThrProductsController { } + @Resource + SystemParamConfigService systemParamConfigService; + @Resource + UdiProductService udiProductService; + + /** + * 编辑第三方产品信息 + * + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udiwms/udiinfo/erp/products/update") + public BaseResponse updateProduct(@RequestBody ThrProductsEntity thrProductsEntity) { + + if (null == thrProductsEntity) + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + thrProductsEntity.setUpdateTime(new Date()); + thrProductsService.updateById(thrProductsEntity); + String value = systemParamConfigService.selectValueByParamKey("enable_edit_third"); + if (StrUtil.isNotEmpty(value) && value.equals("1")) { + UdiProductEntity udiProductEntity = udiProductService.findByNameCode(thrProductsEntity.getCode()); + if (StrUtil.isNotEmpty(thrProductsEntity.getMeasname())) + udiProductEntity.setMeasname(thrProductsEntity.getMeasname()); + if (StrUtil.isNotEmpty(thrProductsEntity.getSpec())) + udiProductEntity.setGgxh(thrProductsEntity.getSpec()); + if (StrUtil.isNotEmpty(thrProductsEntity.getRegisterNo())) + udiProductEntity.setZczbhhzbapzbh(thrProductsEntity.getRegisterNo()); + if (StrUtil.isNotEmpty(thrProductsEntity.getManufactory())) + udiProductEntity.setManufactory(thrProductsEntity.getManufactory()); + if (StrUtil.isNotEmpty(thrProductsEntity.getCplb())) + udiProductEntity.setCplb(thrProductsEntity.getCplb()); + if (StrUtil.isNotEmpty(thrProductsEntity.getFlbm())) + udiProductEntity.setFlbm(thrProductsEntity.getFlbm()); + if (StrUtil.isNotEmpty(thrProductsEntity.getQxlb())) + udiProductEntity.setQxlb(thrProductsEntity.getQxlb()); + if (StrUtil.isNotEmpty(thrProductsEntity.getYbbm())) + udiProductEntity.setYbbm(thrProductsEntity.getYbbm()); + if (StrUtil.isNotEmpty(thrProductsEntity.getSptm())) + udiProductEntity.setSptm(thrProductsEntity.getSptm()); + if (StrUtil.isNotEmpty(thrProductsEntity.getTyshxydm())) + udiProductEntity.setTyshxydm(thrProductsEntity.getTyshxydm()); + if (StrUtil.isNotEmpty(thrProductsEntity.getZczbhhzbapzbh())) + udiProductEntity.setZczbhhzbapzbh(thrProductsEntity.getZczbhhzbapzbh()); + if (StrUtil.isNotEmpty(thrProductsEntity.getYlqxzcrbarmc())) + udiProductEntity.setYlqxzcrbarmc(thrProductsEntity.getYlqxzcrbarmc()); + if (StrUtil.isNotEmpty(thrProductsEntity.getCpms())) + udiProductEntity.setCpms(thrProductsEntity.getCpms()); + if (StrUtil.isNotEmpty(thrProductsEntity.getStandard())) + udiProductEntity.setGgxh(thrProductsEntity.getStandard()); + udiProductService.updateUdiInfo(udiProductEntity); + } + return ResultVOUtils.success("修改成功!"); + } + + } diff --git a/src/main/java/com/glxp/api/service/purchase/SupCertService.java b/src/main/java/com/glxp/api/service/purchase/SupCertService.java index ec2c80ce..13b90e76 100644 --- a/src/main/java/com/glxp/api/service/purchase/SupCertService.java +++ b/src/main/java/com/glxp/api/service/purchase/SupCertService.java @@ -1,8 +1,6 @@ package com.glxp.api.service.purchase; - - import com.baomidou.mybatisplus.extension.service.IService; import com.glxp.api.entity.purchase.SupCertEntity; import com.glxp.api.req.purchase.FilterSupCertRequest; @@ -22,6 +20,8 @@ public interface SupCertService extends IService { List findAll(String customerId, String manufacturerId, String productId); + List findByProductId(String productId); + List selectCompanyCert(FilterSupCertRequest filterSupCertRequest); @@ -29,7 +29,7 @@ public interface SupCertService extends IService { boolean updateCompanyCert(SupCertEntity supCertEntity); - boolean updateCustomerId(String oldId, String newId,Integer auditStatus); + boolean updateCustomerId(String oldId, String newId, Integer auditStatus); boolean updateManufacturerId(String oldCustomerId, String newCustomerId, String oldManufacturerIdFk, String newManufacturerIdFk); diff --git a/src/main/java/com/glxp/api/service/purchase/impl/SupCertServiceImpl.java b/src/main/java/com/glxp/api/service/purchase/impl/SupCertServiceImpl.java index c695186d..85b145f8 100644 --- a/src/main/java/com/glxp/api/service/purchase/impl/SupCertServiceImpl.java +++ b/src/main/java/com/glxp/api/service/purchase/impl/SupCertServiceImpl.java @@ -1,6 +1,7 @@ package com.glxp.api.service.purchase.impl; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; import com.glxp.api.constant.ConstantStatus; @@ -105,6 +106,11 @@ public class SupCertServiceImpl extends ServiceImpl i return supCertEntityList; } + @Override + public List findByProductId(String productId) { + return supCertDao.selectList(new QueryWrapper().eq("productIdFk", productId)); + } + @Override public boolean updateCompanyCert(SupCertEntity supCertEntity) { diff --git a/src/main/java/com/glxp/api/service/thrsys/ThrProductsService.java b/src/main/java/com/glxp/api/service/thrsys/ThrProductsService.java index a1f9ffe9..8ba96fbb 100644 --- a/src/main/java/com/glxp/api/service/thrsys/ThrProductsService.java +++ b/src/main/java/com/glxp/api/service/thrsys/ThrProductsService.java @@ -1,6 +1,7 @@ package com.glxp.api.service.thrsys; +import com.baomidou.mybatisplus.extension.service.IService; import com.glxp.api.entity.thrsys.ThrProductsEntity; import com.glxp.api.req.thrsys.FilterThrProductsRequest; import com.glxp.api.res.thrsys.ThrProductsResponse; @@ -15,7 +16,7 @@ import java.util.List; * @author ${author} * @since 2023-01-10 */ -public interface ThrProductsService { +public interface ThrProductsService extends IService { ThrProductsEntity selectByCode(String code); diff --git a/src/main/java/com/glxp/api/service/thrsys/impl/ThrProductsServiceImpl.java b/src/main/java/com/glxp/api/service/thrsys/impl/ThrProductsServiceImpl.java index 63abfd96..375002ab 100644 --- a/src/main/java/com/glxp/api/service/thrsys/impl/ThrProductsServiceImpl.java +++ b/src/main/java/com/glxp/api/service/thrsys/impl/ThrProductsServiceImpl.java @@ -2,6 +2,7 @@ package com.glxp.api.service.thrsys.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; import com.glxp.api.dao.thrsys.ThrProductsDao; import com.glxp.api.entity.thrsys.ThrProductsEntity; @@ -19,7 +20,7 @@ import java.util.List; /** *

- * 服务实现类 + * 服务实现类 *

* * @author ${author} @@ -27,7 +28,7 @@ import java.util.List; */ @Service @Transactional(rollbackFor = Exception.class) -public class ThrProductsServiceImpl implements ThrProductsService { +public class ThrProductsServiceImpl extends ServiceImpl implements ThrProductsService { @Resource ThrProductsDao thrProductsDao; @@ -105,7 +106,7 @@ public class ThrProductsServiceImpl implements ThrProductsService { FilterThrProductsRequest filterThrProductsRequest = new FilterThrProductsRequest(); filterThrProductsRequest.setThirdSysFk(thirdIdFk); filterThrProductsRequest.setCode(code); - List filterThrProductsDiList=thrProductsAddDiService.filterThrProductsDiList(filterThrProductsRequest); + List filterThrProductsDiList = thrProductsAddDiService.filterThrProductsDiList(filterThrProductsRequest); List data = thrProductsDao.selectThrProducts(filterThrProductsRequest); if (CollUtil.isNotEmpty(data) || CollUtil.isNotEmpty(filterThrProductsDiList)) { return true; diff --git a/src/main/resources/schemas/schema_v2.1.sql b/src/main/resources/schemas/schema_v2.1.sql index 3ada65ab..92d22e7c 100644 --- a/src/main/resources/schemas/schema_v2.1.sql +++ b/src/main/resources/schemas/schema_v2.1.sql @@ -428,3 +428,6 @@ CALL Pro_Temp_ColumnWork('basic_products', 'syqsfxyjxmj', 'varchar(255)', 1); CALL Pro_Temp_ColumnWork('basic_products', 'mjfs', 'varchar(255)', 1); CALL Pro_Temp_ColumnWork('basic_products', 'categoryName', 'varchar(255)', 1); +INSERT ignore INTO `sys_param_config`(`parentId`, `paramName`, `paramKey`, `paramValue`, `paramStatus`, `paramType`, + `paramExplain`, `updateTime`) +VALUES (0, '是否允许编辑第三方产品信息', 'enable_edit_third', '1', 0, 0, '0:否;1:是', NULL);