fix(产品管理、项目管理、登录密码校验、工作报告): 修复用户们提出的一系列问题。

This commit is contained in:
dk
2026-06-23 17:59:42 +08:00
parent 10418fea0a
commit b26a9c8a39
14 changed files with 157 additions and 50 deletions

View File

@@ -18,6 +18,10 @@ type ProductResponse = Omit<Api.Product.Product, 'id' | 'managerUserId' | 'curre
currentUserRoles?: Api.Common.CurrentUserRole[] | null;
};
type ProductOptionResponse = Omit<Api.Product.ProductOption, 'id'> & {
id: string | number;
};
type ProductPageResponse = Api.Product.PageResult<ProductResponse>;
type ProductActivityTimelineItemResponse = Omit<
@@ -46,6 +50,13 @@ function normalizeProduct(product: ProductResponse): Api.Product.Product {
};
}
function normalizeProductOption(option: ProductOptionResponse): Api.Product.ProductOption {
return {
...option,
id: normalizeStringId(option.id)
};
}
function normalizeOccurredAt(occurredAt: number | string) {
const value = Number(occurredAt);
@@ -109,6 +120,19 @@ export async function fetchGetProductPage(params?: Api.Product.ProductSearchPara
}));
}
/** 获取可绑定产品下拉选项 */
export async function fetchGetProductOptions() {
const result = await request<ProductOptionResponse[]>({
...safeJsonRequestConfig,
url: `${PRODUCT_PREFIX}/options`,
method: 'get'
});
return mapServiceResult(result as ServiceRequestResult<ProductOptionResponse[]>, data =>
(data ?? []).map(normalizeProductOption)
);
}
type ProductOverviewSummaryResponse = Omit<Api.Product.ProductOverviewSummary, 'total' | 'items'> & {
/** 后端 overview-summary 升级total/items灰度期间可能缺省适配层兜底 */
total?: number | null;