diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/domain/PmsProduct.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/domain/PmsProduct.java
index fbde92818..39600d4af 100644
--- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/domain/PmsProduct.java
+++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/domain/PmsProduct.java
@@ -66,16 +66,13 @@ public class PmsProduct extends BaseEntity
/** 删除标志(0代表存在 2代表删除) */
private String delFlag;
- /** 预留字段1 */
+ @ApiModelProperty(value = "自定义标识")
+ private String customIdentifier;
+
@ApiModelProperty(value = "预留字段1")
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private String reservedField1;
- /** 预留字段2 */
- @ApiModelProperty(value = "预留字段2")
- @JsonInclude(JsonInclude.Include.NON_EMPTY)
- private String reservedField2;
-
public PmsProductDataVo toPmsProductDataVo() {
PmsProductDataVo target = new PmsProductDataVo();
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 44cb814af..450576ddc 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
@@ -42,10 +42,10 @@ public class PmsProductInputVo
@ApiModelProperty(value = "关联企业标识", hidden = true)
private String pmsEnterpriseIdentifier;
- @ApiModelProperty(value = "产品标识", required = true)
+ @ApiModelProperty(value = "产品自定义标识", required = true)
@NotNull
@Size(max = 50, message = "长度需要小于50")
- private String productIdentifier;
+ private String customIdentifier;
public PmsProduct toPmsProduct(String pmsEnterpriseIdentifier) {
PmsProduct target = new PmsProduct();
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 c5867a77f..5ff4d24b8 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
@@ -91,4 +91,6 @@ public interface PmsProductMapper
Integer selectPmsProductCount(PmsProductSearchVo pmsProductSearchVo);
Integer selectPmsProductByIdentifierCount(@Param("identifier") String identifier, @Param("pmsEnterpriseIdentifier") String pmsEnterpriseIdentifier);
+
+ Integer selectPmsProductByCustomIdentifierCount(@Param("customIdentifier") String customIdentifier, @Param("enterpriseIdentifier") String enterpriseIdentifier);
}
diff --git a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java
index abddccf18..2a169c8e7 100644
--- a/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java
+++ b/microservices-modules/microservices-modules-pms/src/main/java/com/microservices/pms/product/service/impl/PmsProductRequirementServiceImpl.java
@@ -372,7 +372,8 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
private void userReqToReqSpecs(PmsProductRequirement userReq, PmsProductReqOperationRecord record) {
PmsProductRequirement reqSpecs =
userReq.userReqToReqSpecs();
- reqSpecs.setIdentifier(genReqSpecsIdentifier(userReq.getPmsProductIdentifier(), userReq.getTitle(), null));
+ PmsProduct pmsProduct = pmsProductService.selectPmsProductByIdentifier(userReq.getPmsProductIdentifier());
+ reqSpecs.setIdentifier(genReqSpecsIdentifier(pmsProduct.getCustomIdentifier(), userReq.getTitle(), null));
reqSpecs.setCreateAndUpdate(SecurityUtils.getUsername());
pmsProductRequirementMapper.insertPmsProductRequirement(reqSpecs);
record.setProductRequirementId(reqSpecs.getId());
@@ -434,17 +435,17 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
return toProductReqSpecsDetailVo(pmsProductRequirement);
}
- private String genReqSpecsIdentifier(String productIdentifier, String reqTitle, String oldIdentifier) {
+ private String genReqSpecsIdentifier(String customIdentifier, String reqTitle, String oldIdentifier) {
// 去掉标题中特殊字符
String regEx = "\\pP|\\pS|\\s+";
reqTitle = Pattern.compile(regEx).matcher(reqTitle).replaceAll("").trim();
String reqTitleIdentifier = PinYinStringUtils.toFirstChar(reqTitle).toUpperCase();
- String identifier = productIdentifier + "-" + reqTitleIdentifier;
+ String identifier = customIdentifier + "-" + reqTitleIdentifier;
if (!identifier.equals(oldIdentifier)) {
Integer count = pmsProductRequirementMapper.selectReqSpecsCountByIdentifier(identifier);
int nameCount = 1;
while (count > 0) {
- identifier = productIdentifier + "-" + reqTitleIdentifier + "-" + nameCount;
+ identifier = customIdentifier + "-" + reqTitleIdentifier + "-" + nameCount;
count = pmsProductRequirementMapper.selectReqSpecsCountByIdentifier(identifier);
nameCount++;
}
@@ -464,7 +465,7 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
checkReqSpecsParameter(pmsProductRequirement, pmsProduct, null);
// 生成需求唯一标识
- pmsProductRequirement.setIdentifier(genReqSpecsIdentifier(pmsProduct.getProductIdentifier(), productReqSpecsInputVo.getTitle(), null));
+ pmsProductRequirement.setIdentifier(genReqSpecsIdentifier(pmsProduct.getCustomIdentifier(), productReqSpecsInputVo.getTitle(), null));
// 设置默认需求状态
pmsProductRequirement.setStatus(ProductReqStatus.PENDING_REVIEW_REQ_SPECS.getKey());
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 27db70ac1..c5c086cee 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
@@ -116,10 +116,11 @@ public class PmsProductServiceImpl implements IPmsProductService
@Override
public String insertPmsProduct(PmsProduct pmsProduct) {
PmsEnterprise pmsEnterprise = pmsEnterpriseService.selectPmsEnterpriseByIdentifier(pmsProduct.getPmsEnterpriseIdentifier());
+ pmsProduct.setProductIdentifier(genProductIdentifier());
checkNameDuplicates(pmsProduct.getProductName(), pmsProduct.getPmsEnterpriseIdentifier());
- Integer count = pmsProductMapper.selectPmsProductByIdentifierCount(pmsProduct.getProductIdentifier(), pmsEnterprise.getEnterpriseIdentifier());
+ Integer count = pmsProductMapper.selectPmsProductByCustomIdentifierCount(pmsProduct.getCustomIdentifier(), pmsEnterprise.getEnterpriseIdentifier());
if (count > 0) {
- throw new ServiceException("该产品标识在当前企业下已存在(产品标识[%s])", pmsProduct.getProductIdentifier());
+ throw new ServiceException("该产品自定义标识在当前企业下已存在(产品自定义标识[%s])", pmsProduct.getCustomIdentifier());
}
pmsProduct.setPmsEnterpriseId(pmsEnterprise.getId());
String currentUsername=SecurityUtils.getUsername();
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 d7b702965..ff95794c7 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
@@ -20,7 +20,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-
+
@@ -39,7 +39,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
create_by,
del_flag,
reserved_field_1,
- reserved_field_2
+ custom_identifier
from pms_product
@@ -59,7 +59,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ppd.create_by,
ppd.del_flag,
ppd.reserved_field_1,
- ppd.reserved_field_2
+ ppd.custom_identifier
from pms_product ppd
left join pms_enterprise as pe on ppd.pms_enterprise_id = pe.id
@@ -116,6 +116,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where ppd.product_identifier = #{identifier}
and pe.enterprise_identifier = #{pmsEnterpriseIdentifier}
+
insert into pms_product
@@ -136,7 +143,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
create_by,
del_flag,
reserved_field_1,
- reserved_field_2,
+ custom_identifier,
#{productName},
@@ -155,7 +162,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{createBy},
#{delFlag},
#{reservedField1},
- #{reservedField2},
+ #{customIdentifier},
@@ -178,7 +185,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
create_by = #{createBy},
del_flag = #{delFlag},
reserved_field_1 = #{reservedField1},
- reserved_field_2 = #{reservedField2},
+ custom_identifier = #{customIdentifier},
where id = #{id}