feat(项目管理产品需求重构): 完善产品需求规格逻辑

全部模块和无所属模块需求数量统计错误

Signed-off-by: OTTO <731554297@qq.com>
This commit is contained in:
OTTO 2024-12-20 11:53:01 +08:00
parent 25ce8e1e7c
commit 9a4e79098c
6 changed files with 16 additions and 17 deletions

View File

@ -27,12 +27,8 @@ import com.microservices.pms.project.service.IPmsProjectSprintService;
import com.microservices.pms.project.service.PmsProjectIssuesService;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
@ -86,7 +82,7 @@ public class PmsDashboardController extends BaseController {
PmsProductRequirement pmsProductRequirement = new PmsProductRequirement();
pmsProductRequirement.setProductIdentifierList(pmsProductList.stream().map(PmsProduct::getProductIdentifier).collect(Collectors.toList()));
pmsProductRequirement.setCreateBy(SecurityUtils.getUsername());
Integer requirementCount = pmsProductRequirementService.selectPmsProductRequirementCount(pmsProductRequirement);
Integer requirementCount = pmsProductRequirementService.selectProductReqSpecsCount(pmsProductRequirement);
myDashboardVo.setProductRequirementCount(requirementCount);
}
return success(myDashboardVo);

View File

@ -9,7 +9,6 @@ import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 产品需求Mapper接口
@ -74,7 +73,7 @@ public interface PmsProductRequirementMapper
* @param pmsProductRequirementSearch
* @return
*/
Integer selectPmsProductRequirementCount(PmsProductRequirement pmsProductRequirementSearch);
Integer selectProductReqSpecsCount(PmsProductRequirement pmsProductRequirementSearch);
/**
* 获取当前产品下需求的最大索引值

View File

@ -55,7 +55,7 @@ public interface IPmsProductRequirementService
* @param pmsProductRequirement 产品需求查询字段
* @return 数量
*/
Integer selectPmsProductRequirementCount(PmsProductRequirement pmsProductRequirement);
Integer selectProductReqSpecsCount(PmsProductRequirement pmsProductRequirement);
/**
* 删除产品下所有需求

View File

@ -286,11 +286,11 @@ public class PmsProductModuleServiceImpl implements IPmsProductModuleService
// 计算全部需求数量
PmsProductRequirement pmsProductRequirementSearch = new PmsProductRequirement();
pmsProductRequirementSearch.setPmsProductIdentifier(pmsProductModule.getPmsProductIdentifier());
allNodeDataCount = pmsProductRequirementService.selectPmsProductRequirementCount(pmsProductRequirementSearch);
allNodeDataCount = pmsProductRequirementService.selectProductReqSpecsCount(pmsProductRequirementSearch);
// 计算无所属模块的需求数量
pmsProductRequirementSearch.setPmsProductModuleId(0L);
noModuleNodeDataCount = pmsProductRequirementService.selectPmsProductRequirementCount(pmsProductRequirementSearch);
noModuleNodeDataCount = pmsProductRequirementService.selectProductReqSpecsCount(pmsProductRequirementSearch);
} else if (type == PmsConstants.TESTSHEET_TAG_AND_MODULE_TYPE) {
// 设置各节点数量为测试单执行用例数量
moduleList.forEach(x -> x.setNodeDataCount(x.getTestsheetCasesCount()));

View File

@ -815,8 +815,8 @@ public class PmsProductRequirementServiceImpl implements IPmsProductRequirementS
}
@Override
public Integer selectPmsProductRequirementCount(PmsProductRequirement pmsProductRequirementSearch) {
return pmsProductRequirementMapper.selectPmsProductRequirementCount(pmsProductRequirementSearch);
public Integer selectProductReqSpecsCount(PmsProductRequirement pmsProductRequirementSearch) {
return pmsProductRequirementMapper.selectProductReqSpecsCount(pmsProductRequirementSearch);
}
/**

View File

@ -114,9 +114,9 @@
<include refid="selectWhere"/>
order by update_time desc
</select>
<select id="selectPmsProductRequirementCount" resultType="java.lang.Integer">
<select id="selectProductReqSpecsCount" resultType="java.lang.Integer">
select count(0) from pms_product_requirement
<include refid="selectWhere"/>
<include refid="selectReqSpecsWhere"/>
</select>
<sql id="selectWhere">
@ -202,6 +202,11 @@
<select id="selectReqSpecsList" resultMap="PmsProductRequirementResult">
/*keep orderby*/
<include refid="selectPmsProductRequirementVo"/>
<include refid="selectReqSpecsWhere"/>
order by update_time desc
</select>
<sql id="selectReqSpecsWhere">
<where>
<if test="title != null and title != ''">and title like concat('%', #{title}, '%')</if>
<if test="createBy != null and createBy != ''">and create_by = #{createBy}</if>
@ -232,8 +237,7 @@
and (`status`= 'pendingReviewReqSpecs' or `status`= 'plannedReqSpecs' or `status` = 'rejectedReqSpecs' or
`status` = 'reviewedReqSpecs' or `status` = 'completedReqSpecs' or `status` = 'changingReqSpecs')
</where>
order by update_time desc
</select>
</sql>
<select id="selectReqSpecsCountByIdentifier" resultType="java.lang.Integer">
select count(1)