diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/domain/vo/PmsProductInputVo.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/domain/vo/PmsProductInputVo.java
index f91d9f955..44cb814af 100644
--- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/domain/vo/PmsProductInputVo.java
+++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/domain/vo/PmsProductInputVo.java
@@ -44,6 +44,7 @@ public class PmsProductInputVo
@ApiModelProperty(value = "产品标识", required = true)
@NotNull
+ @Size(max = 50, message = "长度需要小于50")
private String productIdentifier;
public PmsProduct toPmsProduct(String pmsEnterpriseIdentifier) {
diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/mapper/PmsProductMapper.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/mapper/PmsProductMapper.java
index 032877180..c5867a77f 100644
--- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/mapper/PmsProductMapper.java
+++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/mapper/PmsProductMapper.java
@@ -77,7 +77,7 @@ public interface PmsProductMapper
* 根据名称查找产品数量
*
* @param name
- * @param pmsEnterpriseId
+ * @param pmsEnterpriseIdentifier
* @return
*/
Integer selectPmsProductByNameCount(@Param("name") String name, @Param("pmsEnterpriseIdentifier") String pmsEnterpriseIdentifier);
@@ -89,4 +89,6 @@ public interface PmsProductMapper
* @return 产品数量
*/
Integer selectPmsProductCount(PmsProductSearchVo pmsProductSearchVo);
+
+ Integer selectPmsProductByIdentifierCount(@Param("identifier") String identifier, @Param("pmsEnterpriseIdentifier") String pmsEnterpriseIdentifier);
}
diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductServiceImpl.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductServiceImpl.java
index 6d6313f96..867554cd8 100644
--- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductServiceImpl.java
+++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductServiceImpl.java
@@ -114,10 +114,13 @@ public class PmsProductServiceImpl implements IPmsProductService
* @return 结果
*/
@Override
- public String insertPmsProduct(PmsProduct pmsProduct)
- {
- checkNameDuplicates(pmsProduct.getProductName(), pmsProduct.getPmsEnterpriseIdentifier());
+ public String insertPmsProduct(PmsProduct pmsProduct) {
PmsEnterprise pmsEnterprise = pmsEnterpriseService.selectPmsEnterpriseByIdentifier(pmsProduct.getPmsEnterpriseIdentifier());
+ checkNameDuplicates(pmsProduct.getProductName(), pmsProduct.getPmsEnterpriseIdentifier());
+ Integer count = pmsProductMapper.selectPmsProductByIdentifierCount(pmsProduct.getProductIdentifier(), pmsEnterprise.getEnterpriseIdentifier());
+ if (count > 0) {
+ throw new ServiceException("该产品标识在当前企业下已存在(产品标识[%s])", pmsProduct.getProductIdentifier());
+ }
pmsProduct.setPmsEnterpriseId(pmsEnterprise.getId());
String currentUsername=SecurityUtils.getUsername();
Date now=DateUtils.getNowDate();
diff --git a/microservices-modules/microservices-modules-pms/src/main/resources/mapper/pms/PmsProductMapper.xml b/microservices-modules/microservices-modules-pms/src/main/resources/mapper/pms/PmsProductMapper.xml
index 46531f9e8..d7b702965 100644
--- a/microservices-modules/microservices-modules-pms/src/main/resources/mapper/pms/PmsProductMapper.xml
+++ b/microservices-modules/microservices-modules-pms/src/main/resources/mapper/pms/PmsProductMapper.xml
@@ -109,6 +109,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
left join pms_enterprise as pe on ppd.pms_enterprise_id=pe.id
+
insert into pms_product