feat(项目管理产品需求重构): 完善产品中的用户需求功能开发
新增接口:修改用户需求 Signed-off-by: OTTO <731554297@qq.com>
This commit is contained in:
parent
b764f24b8e
commit
804309d5d7
|
|
@ -7,10 +7,7 @@ import com.microservices.common.core.web.page.GenericsTableDataInfo;
|
|||
import com.microservices.common.log.annotation.Log;
|
||||
import com.microservices.common.log.enums.BusinessType;
|
||||
import com.microservices.common.security.annotation.RequiresPermissions;
|
||||
import com.microservices.pms.product.domain.vo.ProductUserReqDataVo;
|
||||
import com.microservices.pms.product.domain.vo.ProductUserReqDetailVo;
|
||||
import com.microservices.pms.product.domain.vo.ProductUserReqInputVo;
|
||||
import com.microservices.pms.product.domain.vo.ProductUserReqSearchVo;
|
||||
import com.microservices.pms.product.domain.vo.*;
|
||||
import com.microservices.pms.product.service.IPmsProductModuleService;
|
||||
import com.microservices.pms.product.service.IPmsProductRequirementService;
|
||||
import io.swagger.annotations.Api;
|
||||
|
|
@ -72,4 +69,15 @@ public class ProductUserReqController extends BaseController {
|
|||
productUserReqInputVo.setEnterpriseIdentifier(enterpriseIdentifier);
|
||||
return success(pmsProductRequirementService.insertUserReq(productUserReqInputVo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改用户需求
|
||||
*/
|
||||
@RequiresPermissions("pms:pmsProductRequirement:edit")
|
||||
@Log(title = "用户需求", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
@ApiOperation(value = "修改用户需求")
|
||||
public AjaxResult edit(@RequestBody @Validated ProductUserReqUpdateVo productUserReqUpdateVo) {
|
||||
return toAjax(pmsProductRequirementService.updateUserReq(productUserReqUpdateVo));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,14 +53,15 @@ public class ProductUserReqInputVo {
|
|||
@ApiModelProperty(value = "附件标识列表")
|
||||
private String fileIdentifiers;
|
||||
|
||||
@ApiModelProperty(value = "需求来源用户", required = true)
|
||||
@ApiModelProperty(value = "需求来源用户(需前端默认填充当前用户昵称)", required = true)
|
||||
@NotBlank
|
||||
private String sourceUser;
|
||||
|
||||
@ApiModelProperty(value = "需求来源单位")
|
||||
@ApiModelProperty(value = "需求来源单位(需前端默认填充当前企业名称)", required = true)
|
||||
@NotBlank
|
||||
private String sourceCompany;
|
||||
|
||||
@ApiModelProperty(value = "企业表示", hidden = true)
|
||||
@ApiModelProperty(value = "企业标识", hidden = true)
|
||||
private String enterpriseIdentifier;
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,60 @@
|
|||
package com.microservices.pms.product.domain.vo;
|
||||
|
||||
import com.microservices.common.core.utils.bean.BeanUtils;
|
||||
import com.microservices.pms.product.domain.PmsProductRequirement;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
/**
|
||||
* 产品需求对象 pms_product_requirement
|
||||
*
|
||||
* @author otto
|
||||
* @date 2023-10-10
|
||||
*/
|
||||
@Data
|
||||
@ApiModel("用户需求更新对象")
|
||||
public class ProductUserReqUpdateVo {
|
||||
/**
|
||||
* 需求Id
|
||||
*/
|
||||
@ApiModelProperty(value = "需求Id")
|
||||
@NotNull
|
||||
private Long id;
|
||||
/**
|
||||
* 标题
|
||||
*/
|
||||
@ApiModelProperty(value = "标题")
|
||||
@Size(max = 50, message = "长度需要小于50")
|
||||
private String title;
|
||||
|
||||
/**
|
||||
* 关联产品模块ID
|
||||
*/
|
||||
@ApiModelProperty(value = "关联产品模块ID")
|
||||
private Long pmsProductModuleId;
|
||||
|
||||
/**
|
||||
* 正文
|
||||
*/
|
||||
@ApiModelProperty(value = "正文")
|
||||
private String content;
|
||||
|
||||
@ApiModelProperty(value = "附件标识列表")
|
||||
private String fileIdentifiers;
|
||||
|
||||
@ApiModelProperty(value = "需求来源用户")
|
||||
private String sourceUser;
|
||||
|
||||
@ApiModelProperty(value = "需求来源单位")
|
||||
private String sourceCompany;
|
||||
|
||||
public PmsProductRequirement toPmsProductRequirement() {
|
||||
PmsProductRequirement target = new PmsProductRequirement();
|
||||
BeanUtils.copyProperties(this, target);
|
||||
return target;
|
||||
}
|
||||
}
|
||||
|
|
@ -143,4 +143,6 @@ public interface IPmsProductRequirementService
|
|||
ProductUserReqDetailVo selectUserReqDetailById(Long id);
|
||||
|
||||
Long insertUserReq(ProductUserReqInputVo productUserReqInputVo);
|
||||
|
||||
int updateUserReq(ProductUserReqUpdateVo productUserReqUpdateVo);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -208,6 +208,24 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
|
|||
}
|
||||
// 设置默认需求状态
|
||||
pmsProductRequirement.setStatus(ProductReqStatus.PENDING_REVIEW_USER_REQ.getKey());
|
||||
|
||||
pmsProductRequirement.setCreateAndUpdate(SecurityUtils.getUsername());
|
||||
|
||||
pmsProductService.updatePmsProductChange(pmsProductRequirement.getPmsProductIdentifier());
|
||||
pmsProductRequirementMapper.insertPmsProductRequirement(pmsProductRequirement);
|
||||
return pmsProductRequirement.getId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int updateUserReq(ProductUserReqUpdateVo productUserReqUpdateVo) {
|
||||
// 通过id检查需修改的产品需求是否存在
|
||||
PmsProductRequirement oldPmsProductRequirement = selectPmsProductRequirementById(productUserReqUpdateVo.getId(), true);
|
||||
PmsProductRequirement pmsProductRequirement = productUserReqUpdateVo.toPmsProductRequirement();
|
||||
if (!ProductReqStatus.PENDING_REVIEW_USER_REQ.getKey().equals(oldPmsProductRequirement.getStatus())) {
|
||||
throw new ServiceException("只有待审核状态的用户需求才能修改");
|
||||
}
|
||||
|
||||
PmsProduct pmsProduct = pmsProductService.selectPmsProductByIdentifier(oldPmsProductRequirement.getPmsProductIdentifier());
|
||||
// 校验模块是否存在
|
||||
if (pmsProductRequirement.getPmsProductModuleId() != null) {
|
||||
checkModuleId(pmsProductRequirement.getPmsProductModuleId(), pmsProduct);
|
||||
|
|
@ -215,11 +233,10 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
|
|||
// 检查附件列表是否有异常数据
|
||||
pmsCommonService.getAllFileByFileIdentifiers(pmsProductRequirement.getFileIdentifiers());
|
||||
|
||||
pmsProductRequirement.setCreateAndUpdate(SecurityUtils.getUsername());
|
||||
|
||||
pmsProductService.updatePmsProductChange(pmsProductRequirement.getPmsProductIdentifier());
|
||||
pmsProductRequirementMapper.insertPmsProductRequirement(pmsProductRequirement);
|
||||
return pmsProductRequirement.getId();
|
||||
pmsProductRequirement.setUpdateBy(SecurityUtils.getUsername());
|
||||
pmsProductRequirement.setUpdateTime(DateUtils.getNowDate());
|
||||
pmsProductService.updatePmsProductChange(oldPmsProductRequirement.getPmsProductIdentifier());
|
||||
return pmsProductRequirementMapper.updatePmsProductRequirement(pmsProductRequirement);
|
||||
}
|
||||
|
||||
private ProductUserReqDetailVo toProductUserReqDetailVo(PmsProductRequirement pmsProductRequirement) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue