feat(项目管理产品需求重构): 完善产品中的用户需求功能开发
查询用户需求详情时返回评审相关信息 Signed-off-by: OTTO <731554297@qq.com>
This commit is contained in:
parent
bccc9b8e12
commit
3d59e04e09
|
|
@ -60,4 +60,6 @@ public interface PmsProductReqOperationRecordMapper {
|
|||
* @return 结果
|
||||
*/
|
||||
public int deletePmsProductReqOperationRecordByIds(Long[] ids);
|
||||
|
||||
PmsProductReqOperationRecord selectUserReqLatestReviewRecord(Long reqId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,4 +58,12 @@ public interface IPmsProductReqOperationRecordService {
|
|||
* @return 结果
|
||||
*/
|
||||
public int deletePmsProductReqOperationRecordById(Long id);
|
||||
|
||||
/**
|
||||
* 查询用户需求最近一次评审记录
|
||||
*
|
||||
* @param reqId 用户需求id
|
||||
* @return 最近一次评审记录
|
||||
*/
|
||||
PmsProductReqOperationRecord selectUserReqLatestReviewRecord(Long reqId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -90,4 +90,9 @@ public class PmsProductReqOperationRecordServiceImpl implements IPmsProductReqOp
|
|||
public int deletePmsProductReqOperationRecordById(Long id) {
|
||||
return pmsProductReqOperationRecordMapper.deletePmsProductReqOperationRecordById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PmsProductReqOperationRecord selectUserReqLatestReviewRecord(Long reqId) {
|
||||
return pmsProductReqOperationRecordMapper.selectUserReqLatestReviewRecord(reqId);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,20 +75,6 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
|
|||
@Autowired
|
||||
private RemoteFileService remoteFileService;
|
||||
|
||||
private PmsProductRequirementDetailVo toPmsProductRequirementDetailVo(PmsProductRequirement pmsProductRequirement) {
|
||||
PmsProductRequirementDataVo pmsProductRequirementDataVo = toPmsProductRequirementDataVo(pmsProductRequirement, null);
|
||||
PmsProductRequirementDetailVo pmsProductRequirementDetailVo = pmsProductRequirementDataVo.toPmsProductRequirementDetailVo();
|
||||
pmsProductRequirementDetailVo.setContent(pmsProductRequirement.getContent());
|
||||
// 设置文件列表
|
||||
pmsProductRequirementDetailVo.setFileList(pmsCommonService.getAllFileByFileIdentifiers(pmsProductRequirement.getFileIdentifiers())
|
||||
);
|
||||
// 设置产品计划
|
||||
if (pmsProductRequirement.getPmsProductPlanId() != null) {
|
||||
pmsProductRequirementDetailVo.setPmsProductPlan(pmsProductPlanService.selectPmsProductPlanById(pmsProductRequirement.getPmsProductPlanId(), false));
|
||||
}
|
||||
return pmsProductRequirementDetailVo;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PmsProductRequirement selectPmsProductRequirementById(Long id, boolean checkRole) {
|
||||
PmsProductRequirement pmsProductRequirement = pmsProductRequirementMapper.selectPmsProductRequirementById(id);
|
||||
|
|
@ -102,69 +88,6 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
|
|||
return pmsProductRequirement;
|
||||
}
|
||||
|
||||
private PmsProductRequirementDataVo toPmsProductRequirementDataVo(PmsProductRequirement pmsProductRequirement, HashMap<String, Object> hashMap) {
|
||||
PmsProductRequirementDataVo pmsProductRequirementDataVo = pmsProductRequirement.toPmsProductRequirementDataVo();
|
||||
// 设置优先级
|
||||
pmsProductRequirementDataVo.setPriority(
|
||||
PmsUtils.getSelectObjectInCache(
|
||||
hashMap
|
||||
, pmsProductPriorityService::selectPmsProductPriorityById
|
||||
, pmsProductRequirement.getPriorityId()));
|
||||
// 设置产品模块
|
||||
if (pmsProductRequirement.getPmsProductModuleId() != null) {
|
||||
pmsProductRequirementDataVo.setPmsProductModule(
|
||||
PmsUtils.getSelectObjectInCache(
|
||||
hashMap
|
||||
, x -> pmsProductModuleService.selectPmsProductModuleById(x, false)
|
||||
, pmsProductRequirement.getPmsProductModuleId())
|
||||
);
|
||||
}
|
||||
// 设置产品
|
||||
pmsProductRequirementDataVo.setPmsProduct(
|
||||
PmsUtils.getSelectObjectInCache(
|
||||
hashMap
|
||||
, pmsProductService::selectPmsProductByIdentifier
|
||||
, pmsProductRequirement.getPmsProductIdentifier())
|
||||
);
|
||||
// 设置产品计划
|
||||
if (pmsProductRequirement.getPmsProductPlanId() != null) {
|
||||
pmsProductRequirementDataVo.setPmsProductPlan(
|
||||
PmsUtils.getSelectObjectInCache(
|
||||
hashMap
|
||||
, x -> pmsProductPlanService.selectPmsProductPlanById(x, false)
|
||||
, pmsProductRequirement.getPmsProductPlanId())
|
||||
);
|
||||
}
|
||||
|
||||
// 设置标记Id列表
|
||||
pmsProductRequirementDataVo.setTags(pmsProductRequirement.getTagIds());
|
||||
// 设置需求负责人
|
||||
pmsProductRequirementDataVo.setRequirementAssigneeList(
|
||||
pmsCommonService.getSimpleSysUserListByGitlinkUserIdsAndCache(pmsProductRequirement.getRequirementAssigneeGitlinkIds(), hashMap));
|
||||
// 设置需求创建人
|
||||
pmsProductRequirementDataVo.setCreateByUser(
|
||||
PmsUtils.getSelectObjectInCache(
|
||||
hashMap
|
||||
, pmsCommonService::getSimpleSysUserByUsername
|
||||
, pmsProductRequirement.getCreateBy())
|
||||
);
|
||||
// 设置需求更新人
|
||||
pmsProductRequirementDataVo.setUpdateByUser(
|
||||
PmsUtils.getSelectObjectInCache(
|
||||
hashMap
|
||||
, pmsCommonService::getSimpleSysUserByUsername
|
||||
, pmsProductRequirement.getUpdateBy())
|
||||
);
|
||||
if (pmsProductRequirementDataVo.getCreateByUser() != null) {
|
||||
pmsProductRequirementDataVo.setCreateBy(pmsProductRequirementDataVo.getCreateByUser().getNickName());
|
||||
}
|
||||
if (pmsProductRequirementDataVo.getUpdateByUser() != null) {
|
||||
pmsProductRequirementDataVo.setUpdateBy(pmsProductRequirementDataVo.getUpdateByUser().getNickName());
|
||||
}
|
||||
|
||||
return pmsProductRequirementDataVo;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public GenericsTableDataInfo<ProductUserReqDataVo> selectUserReqList(ProductUserReqSearchVo productUserReqSearchVo) {
|
||||
|
|
@ -190,6 +113,9 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
|
|||
@Override
|
||||
public ProductUserReqDetailVo selectUserReqDetailById(Long id) {
|
||||
PmsProductRequirement pmsProductRequirement = selectPmsProductRequirementById(id, false);
|
||||
PmsProductReqOperationRecord record = pmsProductReqOperationRecordService.selectUserReqLatestReviewRecord(pmsProductRequirement.getId());
|
||||
pmsProductRequirement.setReviewContent(record.getContent());
|
||||
pmsProductRequirement.setReviewTime(record.getOperatingTime());
|
||||
return toProductUserReqDetailVo(pmsProductRequirement);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -65,6 +65,14 @@
|
|||
<include refid="selectPmsProductReqOperationRecordVo"/>
|
||||
where id = #{id}
|
||||
</select>
|
||||
<select id="selectUserReqLatestReviewRecord" parameterType="Long"
|
||||
resultMap="PmsProductReqOperationRecordResult">
|
||||
<include refid="selectPmsProductReqOperationRecordVo"/>
|
||||
where type = 'reviewUserReq'
|
||||
and product_requirement_id=#{reqId}
|
||||
order by operating_time desc
|
||||
limit 1
|
||||
</select>
|
||||
|
||||
<insert id="insertPmsProductReqOperationRecord" parameterType="PmsProductReqOperationRecord" useGeneratedKeys="true"
|
||||
keyProperty="id">
|
||||
|
|
|
|||
Loading…
Reference in New Issue