Browse Source

refactor(forecast): 优化审批状态类型定义和文档注释

yz 1 month ago
parent
commit
f69a9c45d8
1 changed files with 16 additions and 17 deletions
  1. 16 17
      src/constants/forecast.js

+ 16 - 17
src/constants/forecast.js

@@ -18,10 +18,9 @@ export const APPROVAL_STATUS = Object.freeze({
 
 /**
  * 审批状态配置映射
- * @readonly
- * @type {Record<number, {label: string, type: string, color: string}>}
+ * @enum {Record<typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS], {label: string, type: string, color: string}>}
  */
-export const APPROVAL_STATUS_CONFIG = {
+export const APPROVAL_STATUS_CONFIG = Object.freeze({
   [APPROVAL_STATUS.PENDING]: {
     label: '未审批',
     type: 'warning',
@@ -37,7 +36,7 @@ export const APPROVAL_STATUS_CONFIG = {
     type: 'danger',
     color: '#F56C6C'
   }
-}
+})
 
 /**
  * 审批状态选项数组
@@ -52,7 +51,7 @@ export const APPROVAL_STATUS_OPTIONS = [
 
 /**
  * 获取审批状态标签
- * @param {number} status - 审批状态值
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} status - 审批状态值
  * @returns {string} 状态标签文本
  */
 export function getApprovalStatusLabel(status) {
@@ -61,7 +60,7 @@ export function getApprovalStatusLabel(status) {
 
 /**
  * 获取审批状态类型
- * @param {number} status - 审批状态值
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} status - 审批状态值
  * @returns {string} 状态类型
  */
 export function getApprovalStatusType(status) {
@@ -70,7 +69,7 @@ export function getApprovalStatusType(status) {
 
 /**
  * 获取审批状态颜色
- * @param {number} status - 审批状态值
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} status - 审批状态值
  * @returns {string} 状态颜色
  */
 export function getApprovalStatusColor(status) {
@@ -79,7 +78,7 @@ export function getApprovalStatusColor(status) {
 
 /**
  * 验证审批状态是否有效
- * @param {number} status - 审批状态值
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} status - 审批状态值
  * @returns {boolean} 是否为有效状态
  */
 export function isValidApprovalStatus(status) {
@@ -88,7 +87,7 @@ export function isValidApprovalStatus(status) {
 
 /**
  * 判断是否可以编辑
- * @param {number} approvalStatus - 审批状态
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} approvalStatus - 审批状态
  * @returns {boolean} 是否可以编辑
  */
 export function canEdit(approvalStatus) {
@@ -97,7 +96,7 @@ export function canEdit(approvalStatus) {
 
 /**
  * 判断是否可以审批
- * @param {number} approvalStatus - 审批状态
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} approvalStatus - 审批状态
  * @returns {boolean} 是否可以审批
  */
 export function canApprove(approvalStatus) {
@@ -106,7 +105,7 @@ export function canApprove(approvalStatus) {
 
 /**
  * 判断是否可以拒绝
- * @param {number} approvalStatus - 审批状态
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} approvalStatus - 审批状态
  * @returns {boolean} 是否可以拒绝
  */
 export function canReject(approvalStatus) {
@@ -115,7 +114,7 @@ export function canReject(approvalStatus) {
 
 /**
  * 判断是否已审批完成
- * @param {number} approvalStatus - 审批状态
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} approvalStatus - 审批状态
  * @returns {boolean} 是否已审批完成
  */
 export function isApprovalCompleted(approvalStatus) {
@@ -124,7 +123,7 @@ export function isApprovalCompleted(approvalStatus) {
 
 /**
  * 判断是否审批通过
- * @param {number} approvalStatus - 审批状态
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} approvalStatus - 审批状态
  * @returns {boolean} 是否审批通过
  */
 export function isApproved(approvalStatus) {
@@ -133,7 +132,7 @@ export function isApproved(approvalStatus) {
 
 /**
  * 判断是否审批拒绝
- * @param {number} approvalStatus - 审批状态
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} approvalStatus - 审批状态
  * @returns {boolean} 是否审批拒绝
  */
 export function isRejected(approvalStatus) {
@@ -187,7 +186,7 @@ export const AUDIT_ACTION_CONFIG = {
 
 /**
  * 获取可执行的审核操作
- * @param {number} approvalStatus - 审批状态
+ * @param {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} approvalStatus - 审批状态
  * @returns {Array<string>} 可执行的操作类型数组
  */
 export function getAvailableAuditActions(approvalStatus) {
@@ -372,7 +371,7 @@ export function formatCurrency(value) {
  * @property {number} [itemId] - 物料ID
  * @property {string} [itemCode] - 物料编码
  * @property {string} [itemName] - 物料名称
- * @property {number} [approvalStatus] - 审批状态
+ * @property {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} [approvalStatus] - 审批状态
  */
 
 /**
@@ -400,7 +399,7 @@ export function formatCurrency(value) {
  * @property {string} specs - 规格
  * @property {string} pattern - 花纹
  * @property {string} forecastQuantity - 预测数量
- * @property {number} approvalStatus - 审批状态 0未审批 1已通过 2已拒绝
+ * @property {typeof APPROVAL_STATUS[keyof typeof APPROVAL_STATUS]} approvalStatus - 审批状态 0未审批 1已通过 2已拒绝
  * @property {number|null} approvedBy - 审批人ID
  * @property {string|null} approvedName - 审批人姓名
  * @property {string|null} approvedTime - 审批时间