You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
1.1 KiB
31 lines
1.1 KiB
|
1 month ago
|
import {
|
||
|
|
ALARM_SOURCE_ENUM,
|
||
|
|
} from '/@/constants/business/alarm/alarm-const.js';
|
||
|
|
import { ALARM_VOID_ROLE_CODE } from '/@/constants/business/alarm/alarm-void-const.js';
|
||
|
|
|
||
|
|
/** 根据登录用户角色推断登记来源(展示用;保存时以后端为准) */
|
||
|
|
export function resolveRegisterAlarmSource(loginName = '', roleNames = '') {
|
||
|
|
const roles = String(roleNames || '');
|
||
|
|
if (roles.includes('区县经侦大队接报案分中心接警员')
|
||
|
|
|| loginName === ALARM_VOID_ROLE_CODE.DISTRICT_RECEIVER) {
|
||
|
|
return ALARM_SOURCE_ENUM.DISTRICT_REGISTER.value;
|
||
|
|
}
|
||
|
|
return ALARM_SOURCE_ENUM.CITY_REGISTER.value;
|
||
|
|
}
|
||
|
|
|
||
|
|
/** 登记来源展示 */
|
||
|
|
export function getAlarmSourceDisplayInfo(source) {
|
||
|
|
const map = {
|
||
|
|
city_register: { text: '市局登记', color: 'blue' },
|
||
|
|
district_register: { text: '分局登记', color: 'cyan' },
|
||
|
|
system_register: { text: '市局登记', color: 'blue' },
|
||
|
|
'110_transfer': { text: '市局登记', color: 'blue' },
|
||
|
|
};
|
||
|
|
return map[source] || { text: source || '-', color: 'default' };
|
||
|
|
}
|
||
|
|
|
||
|
|
export default {
|
||
|
|
resolveRegisterAlarmSource,
|
||
|
|
getAlarmSourceDisplayInfo,
|
||
|
|
};
|