diff --git a/src/constants/dict.ts b/src/constants/dict.ts index b146136..7943b4d 100644 --- a/src/constants/dict.ts +++ b/src/constants/dict.ts @@ -36,14 +36,6 @@ export const RDMS_OBJECT_DIRECTION_LEGACY_DICT_CODE = 'rdms_product_direction'; */ export const SYSTEM_USER_COMPANY_DICT_CODE = 'system_user_company'; -/** - * 需求终态状态字典编码 - * - * 对应业务字段:需求相关接口和页面中的 terminal status - * 来源口径:产品需求权限文档中定义,标签包括已关闭、已取消、已拒绝 - */ -export const RDMS_REQ_TERMINAL_STATUS_DICT_CODE = 'rdms_req_terminal_status'; - /** * 需求来源类型字典编码 * @@ -67,11 +59,3 @@ export const RDMS_REQ_PRIORITY_DICT_CODE = 'rdms_req_priority'; * 来源口径:产品需求文档中定义,标签包括工程需求、用户需求、安全需求、体验优化、功能需求 */ export const RDMS_REQ_CATEGORY_DICT_CODE = 'rdms_req_category'; - -/** - * 需求状态字典编码 - * - * 对应业务字段:需求相关接口和页面中的 statusCode - * 来源口径:产品需求文档中定义 - */ -export const RDMS_REQ_STATUS_DICT_CODE = 'rdms_req_status'; diff --git a/src/service/api/product.ts b/src/service/api/product.ts index 6fc10d4..60c646e 100644 --- a/src/service/api/product.ts +++ b/src/service/api/product.ts @@ -320,6 +320,28 @@ export async function fetchGetRequirementLifecycle(requirementId: string, produc return mapServiceResult(result as ServiceRequestResult, data => data); } +/** 获取需求所有状态字典 */ +export async function fetchGetRequirementStatusDict() { + const result = await request({ + ...safeJsonRequestConfig, + url: `${REQUIREMENT_PREFIX}/status/dict`, + method: 'get' + }); + + return mapServiceResult(result as ServiceRequestResult, data => data); +} + +/** 获取需求终止态状态字典 */ +export async function fetchGetRequirementTerminalStatusDict() { + const result = await request({ + ...safeJsonRequestConfig, + url: `${REQUIREMENT_PREFIX}/status/dict/terminal`, + method: 'get' + }); + + return mapServiceResult(result as ServiceRequestResult, data => data); +} + // ========== 模块管理 API ========== type RequirementModuleResponse = Omit & { id: string | number; diff --git a/src/typings/api/product.d.ts b/src/typings/api/product.d.ts index db9fec4..2f64edd 100644 --- a/src/typings/api/product.d.ts +++ b/src/typings/api/product.d.ts @@ -319,6 +319,21 @@ declare namespace Api { children?: RequirementModule[]; } + // ========== 需求状态字典 ========== + + interface RequirementStatusDict { + /** 状态编码 */ + statusCode: string; + /** 状态名称 */ + statusName: string; + /** 排序值 */ + sort: number; + /** 是否初始状态 */ + initialFlag: boolean; + /** 是否终态 */ + terminalFlag: boolean; + } + // ========== 需求生命周期 ========== interface RequirementLifecycleAction { diff --git a/src/typings/api/system-manage.d.ts b/src/typings/api/system-manage.d.ts index 71569ad..f3b8dfd 100644 --- a/src/typings/api/system-manage.d.ts +++ b/src/typings/api/system-manage.d.ts @@ -103,7 +103,7 @@ declare namespace Api { interface OrgLeaderRelation { id: number; deptId: number; - userId: number; + userId: string; userNickname: string; effectiveFrom?: number | null; effectiveUntil?: number | null; @@ -115,7 +115,7 @@ declare namespace Api { type OrgLeaderRelationList = OrgLeaderRelation[]; interface OrgLeaderCandidateUser { - id: number; + id: string; nickname: string; deptId: number; deptName?: string | null; @@ -125,7 +125,7 @@ declare namespace Api { type SaveOrgLeaderRelationParams = { deptId: number; - userId: number; + userId: string | null; effectiveFrom?: number | null; effectiveUntil?: number | null; remark?: string | null; diff --git a/src/views/product/requirement/index.vue b/src/views/product/requirement/index.vue index d3ced8c..ccb3d74 100644 --- a/src/views/product/requirement/index.vue +++ b/src/views/product/requirement/index.vue @@ -1,23 +1,22 @@