212 lines
5.7 KiB
TypeScript
212 lines
5.7 KiB
TypeScript
/**
|
||
* 全局常量配置
|
||
*/
|
||
|
||
/*角色标记*/
|
||
export const ROLE_CODE = {
|
||
"ROLE_ADMIN": "ROLE_ADMIN", //管理员
|
||
"ROLE_SUPPORT_MEMBER": "ROLE_SUPPORT_MEMBER", //后勤维修组人员
|
||
"ROLE_SUPPORT_LEADER": "ROLE_SUPPORT_LEADER",
|
||
"ROLE_TRAIN_AUDITOR": "ROLE_TRAIN_AUDITOR",
|
||
"ROLE_RECRUIT_SECOND": "ROLE_RECRUIT_SECOND",
|
||
"ROLE_RECRUIT": "ROLE_RECRUIT",
|
||
"ROLE_TRAIN_MONEY_ARRIVED": "ROLE_TRAIN_MONEY_ARRIVED", //培训处项目申报审批人
|
||
};
|
||
|
||
/**
|
||
* 流程类型
|
||
*/
|
||
export const PROC_DEF_KEY = {
|
||
"TRAIN_PROJECT_MONEY_ARRIVED": "train_project_money_arrived",
|
||
"TRAIN_PROJECT_APPROVAL": "train_project_approval",
|
||
"ASSETS_TRANSFER": "assetsTransfer",
|
||
"ASSET_INVALID": "asset_invalid",
|
||
"process": "process",
|
||
"processWander": "processWander",
|
||
};
|
||
|
||
/*当前学年*/
|
||
export const CURRENT_SCHOOL_YEAR = "2021-2022";
|
||
|
||
/*当前学期*/
|
||
export const CURRENT_SCHOOL_TERM = "2";
|
||
|
||
/**
|
||
* 流程状态
|
||
* 0: 等待部门审核
|
||
* 10: 等待部门审批
|
||
* 20: 审批通过
|
||
* -10: 经办人修改
|
||
* -20: 撤销申请
|
||
*/
|
||
export const BXSTATUS = {
|
||
'0': '待审核',
|
||
'10': '待审批',
|
||
'20': '通过',
|
||
'-10': '驳回修改',
|
||
'-20': '撤销'
|
||
};
|
||
|
||
/**
|
||
* 前端URL
|
||
*/
|
||
export const FRONT_URL = "https://zhxy.czjsy.com";
|
||
|
||
/**
|
||
* 招生相关常量
|
||
*/
|
||
|
||
// 推送状态
|
||
export const PUSHED_STATUS_LIST = [
|
||
{ label: "未推送", value: "0" ,type: "danger"},
|
||
{ label: "已推送", value: "1" ,type: "success"},
|
||
];
|
||
|
||
// 录取通知书发放状态
|
||
export const NOTICE_SEND_STATUS_LIST = [
|
||
{ label: "未发放", value: "0" },
|
||
{ label: "已发放", value: "1" }
|
||
];
|
||
|
||
// 缴费状态(使用字典 recruit_pay_status)
|
||
export const PAY_STATUS_LIST = [
|
||
{ label: "已缴费", value: "10" ,type: "success"},
|
||
{ label: "未缴费", value: "0" ,type: "danger"},
|
||
{ label: "部分缴费", value: "5" ,type: "warning"},
|
||
];
|
||
|
||
// 审核状态(使用字典 recruit_audit_status)
|
||
export const AUDIT_STATUS_LIST = [
|
||
{ label: "未录取", value: "-20" ,type: "danger"},
|
||
{ label: "待审核", value: "0" ,type: "warning"},
|
||
{ label: "已录取", value: "20" ,type: "success"},
|
||
];
|
||
|
||
// 市平台考试类型审核状态(使用字典 recruit_city_exam_type)
|
||
export const CITY_EXAM_TYPE_LIST = [
|
||
{ label: "待审核", value: "0" },
|
||
{ label: "通过", value: "1" },
|
||
{ label: "驳回", value: "2" }
|
||
];
|
||
|
||
// 宿舍范围状态(使用字典 recruit_dorm_range_status)
|
||
export const DORM_RANGE_STATUS_LIST = [
|
||
{ label: "待确认", value: "0" },
|
||
{ label: "范围内", value: "1" },
|
||
{ label: "范围外", value: "2" }
|
||
];
|
||
|
||
// 发送短信状态
|
||
export const SEND_STATUS_LIST = [
|
||
{ label: "未发送", value: "0" },
|
||
{ label: "已发送", value: "1" }
|
||
];
|
||
|
||
// 手动设置状态
|
||
export const MANUAL_SET_STATUS_LIST = [
|
||
{ label: "未设置", value: "0" },
|
||
{ label: "已设置", value: "1" }
|
||
];
|
||
|
||
// 住宿申请状态
|
||
export const DORM_APPLY_STATUS_LIST = [
|
||
{ label: "未通过", value: "0" },
|
||
{ label: "申请通过", value: "1" }
|
||
];
|
||
|
||
// 面试结果
|
||
export const INTERVIEW_DIC_LIST = [
|
||
{ label: "未面试", value: "0" ,type: "info",icon: "Document"},
|
||
{ label: "面试通过", value: "1" ,type: "success",icon: "CircleCheck"},
|
||
{ label: "面试未通过", value: "-1" ,type: "danger",icon: "CircleClose"},
|
||
];
|
||
|
||
// 招生资料审核状态(使用字典 recruit_zlsh,包含图标和颜色配置)
|
||
export const RECRUIT_MATERIAL_STATUS_LIST = [
|
||
{ label: "未填写", value: "0", type: "info", icon: "Document" },
|
||
{ label: "待审核", value: "1", type: "warning", icon: "Clock" },
|
||
{ label: "审核通过", value: "2", type: "success", icon: "CircleCheck" },
|
||
{ label: "审核驳回", value: "3", type: "danger", icon: "CircleClose" }
|
||
];
|
||
|
||
// 新市民材料上传状态(使用字典 recruit_new_city_material_status)
|
||
export const NEW_CITY_MATERIAL_STATUS_LIST = [
|
||
{ label: "未上传", value: "0" },
|
||
{ label: "已上传", value: "1" },
|
||
];
|
||
|
||
// 异动审核状态
|
||
export const TURNOVER_AUDIT_STATUS_LIST = [
|
||
{ label: "待审核", value: "1" ,type: "warning", icon: "Clock"},
|
||
{ label: "驳回", value: "2" ,type: "danger", icon: "CircleClose"},
|
||
{ label: "通过", value: "3" ,type: "success", icon: "CircleCheck"}
|
||
];
|
||
|
||
/**
|
||
* 根据值从状态列表中获取配置项
|
||
* @param statusList 状态列表
|
||
* @param value 状态值
|
||
* @returns 配置项
|
||
*/
|
||
export const getStatusConfig = (statusList: any[], value: string | number) => {
|
||
return statusList.find(item => item.value === String(value));
|
||
};
|
||
|
||
/**
|
||
* 获取报到状态配置(用于 ClickableTag)
|
||
* 根据字典数据:0=未联系, 1=已经报到, 2=推迟报到, 3=放弃报到, 4=无法联系
|
||
* @param statusList 报到状态字典列表
|
||
* @param value 状态值
|
||
* @param iconMap 图标映射对象,包含 CircleCheck, CircleClose, DocumentChecked, Warning, Clock
|
||
* @returns 包含 label、type、icon 的配置对象
|
||
*/
|
||
export const getCheckInStatusConfig = (
|
||
statusList: any[],
|
||
value: string,
|
||
iconMap: {
|
||
CircleCheck: any
|
||
CircleClose: any
|
||
DocumentChecked: any
|
||
Warning: any
|
||
Clock: any
|
||
}
|
||
) => {
|
||
const item = statusList.find((item: any) => item.value === value)
|
||
if (!item) return null
|
||
|
||
let type: 'success' | 'info' | 'warning' | 'danger' = 'info'
|
||
let icon: any = null
|
||
|
||
// 根据状态值设置类型和图标
|
||
switch (value) {
|
||
case '1': // 已经报到
|
||
type = 'success'
|
||
icon = iconMap.CircleCheck
|
||
break
|
||
case '2': // 推迟报到
|
||
type = 'warning'
|
||
icon = iconMap.Clock
|
||
break
|
||
case '3': // 放弃报到
|
||
type = 'danger'
|
||
icon = iconMap.CircleClose
|
||
break
|
||
case '4': // 无法联系
|
||
type = 'danger'
|
||
icon = iconMap.Warning
|
||
break
|
||
case '0': // 未联系
|
||
default:
|
||
type = 'info'
|
||
icon = iconMap.DocumentChecked
|
||
break
|
||
}
|
||
|
||
return {
|
||
label: item.label,
|
||
type,
|
||
icon
|
||
}
|
||
}
|
||
|