feat(projects): 微调
This commit is contained in:
@@ -191,6 +191,6 @@ export async function fetchGetDictDataByCode(code: string) {
|
||||
|
||||
return mapServiceResult(result as ServiceRequestResult<DictDataPageResponse>, data => ({
|
||||
...data,
|
||||
list: data.list.map(normalizeDictData)
|
||||
list: (data.list ?? []).map(normalizeDictData)
|
||||
}));
|
||||
}
|
||||
|
||||
@@ -11,9 +11,11 @@ import { normalizeProductMember, normalizeProductSettings } from './product-shar
|
||||
|
||||
const PRODUCT_PREFIX = `${WEB_SERVICE_PREFIX}/project/product`;
|
||||
|
||||
type ProductResponse = Omit<Api.Product.Product, 'id' | 'managerUserId'> & {
|
||||
type ProductResponse = Omit<Api.Product.Product, 'id' | 'managerUserId' | 'currentUserRoles'> & {
|
||||
id: string | number;
|
||||
managerUserId?: string | number | null;
|
||||
/** 灰度/兼容期后端可能缺省,适配层兜底为 [] */
|
||||
currentUserRoles?: Api.Common.CurrentUserRole[] | null;
|
||||
};
|
||||
|
||||
type ProductPageResponse = Api.Product.PageResult<ProductResponse>;
|
||||
@@ -39,7 +41,8 @@ function normalizeProduct(product: ProductResponse): Api.Product.Product {
|
||||
return {
|
||||
...product,
|
||||
id: normalizeStringId(product.id),
|
||||
managerUserId: normalizeNullableStringId(product.managerUserId) ?? ''
|
||||
managerUserId: normalizeNullableStringId(product.managerUserId) ?? '',
|
||||
currentUserRoles: product.currentUserRoles ?? []
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -47,7 +47,14 @@ const PROJECT_PREFIX = `${WEB_SERVICE_PREFIX}/project/project`;
|
||||
|
||||
export type ProjectResponse = Omit<
|
||||
Api.Project.Project,
|
||||
'id' | 'managerUserId' | 'productId' | 'plannedStartDate' | 'plannedEndDate' | 'actualStartDate' | 'actualEndDate'
|
||||
| 'id'
|
||||
| 'managerUserId'
|
||||
| 'productId'
|
||||
| 'plannedStartDate'
|
||||
| 'plannedEndDate'
|
||||
| 'actualStartDate'
|
||||
| 'actualEndDate'
|
||||
| 'currentUserRoles'
|
||||
> & {
|
||||
id: string | number;
|
||||
managerUserId?: string | number | null;
|
||||
@@ -56,6 +63,8 @@ export type ProjectResponse = Omit<
|
||||
plannedEndDate?: ProjectLocalDateValue;
|
||||
actualStartDate?: ProjectLocalDateValue;
|
||||
actualEndDate?: ProjectLocalDateValue;
|
||||
/** 灰度/兼容期后端可能缺省,适配层兜底为 [] */
|
||||
currentUserRoles?: Api.Common.CurrentUserRole[] | null;
|
||||
};
|
||||
|
||||
type ProjectPageResponse = Api.Project.PageResult<ProjectResponse>;
|
||||
@@ -96,7 +105,8 @@ export function normalizeProject(project: ProjectResponse): Api.Project.Project
|
||||
plannedStartDate: normalizeProjectLocalDate(project.plannedStartDate),
|
||||
plannedEndDate: normalizeProjectLocalDate(project.plannedEndDate),
|
||||
actualStartDate: normalizeProjectLocalDate(project.actualStartDate),
|
||||
actualEndDate: normalizeProjectLocalDate(project.actualEndDate)
|
||||
actualEndDate: normalizeProjectLocalDate(project.actualEndDate),
|
||||
currentUserRoles: project.currentUserRoles ?? []
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user