UNPKG

w-vue-middle

Version:

统一公共服务组件

756 lines (715 loc) 15.2 kB
/* * @Author: Jason Liu * @Date: 2022-04-19 14:32:15 * @Desc: */ const $axios = require('../axios').default; import { message } from 'ant-design-vue'; /** * @Author: Jason Liu * @description: 根据用户信息获取用户所在的院区 */ export function getHospitalInfo( params = { userId: undefined, }, ) { return $axios({ url: `${$service.portalService}/portal/login/getHospitalInfo`, method: 'post', data: params, }); } /** * @Author: Jason Liu * @description: 获取登录用户信息 */ export function getLoginUserInfo(params) { return $axios({ url: `${$service.portalService}/portal/login/getUserInfo`, method: 'post', data: params, }); } /** * @Author: Jason Liu * @description: 用户登录 */ export function userLogin( params = { orgId: undefined, //院区ID password: undefined, //密码 userId: undefined, //用户登录ID }, ) { $storage.set('accept_system_org', params.orgId); return $axios({ url: `${$service.portalService}/portal/login/userLogin`, method: 'post', data: params, }); } /** * @Author: Jason Liu * @description: 获取项目下拉信息 */ export function login( params = { orgId: undefined, //院区ID password: undefined, //密码 userId: undefined, //用户登录ID }, ) { $storage.set('tokey', 'datafactory'); $storage.set('accept_system_org', params.orgId); return userLogin(params).then((req) => { $storage.set('Bearer', req.data.portal_accessToken); $storage.set('PORTAL_JTI', req.data.portal_jti); $storage.set('PORTAL_REFRESHTOKEN', req.data.portal_refreshToken); $storage.set('PORTAL_SEC', req.data.portal_sec); $storage.set('PORTAL_SECNET', req.data.portal_secNet); $storage.set('PORTAL_SECSM4', req.data.portal_secSm4); $storage.set('PORTAL_UID', req.data.portal_uid); $storage.set('themes', req.data.portal_theme_themes); return getUserAuthorityInfo(params.userId).then(() => { return getUserInfo(); }); }); } /** * @Author: \y_zp * @description: 获取验证码 */ export function captchaImage() { return $axios({ url: `${$service.portalService}/captchaImage`, method: 'post', }); } /** * @Author: \y_zp * @description: 获取系统配置参数信息 */ export function sysConfigByKey(configKey) { return $axios({ url: `${$service.portalService}/sysConfig/getByKey/${configKey}`, method: 'get', }); } /** * @Author: Jason Liu * @description: 获取用户授权信息 */ export function getUserAuthorityInfo(userId) { return $axios({ url: `${$service.userService}/api/v1/sysMenu/app/menu/${userId}`, //url: `${appService.userService}/api/v1/sysMenu/list/all`, method: 'get', }).then((req) => { $storage.set('STSTEM_INFO', req.data); return req; }); } /** * @Author: Jason Liu * @description: 获取用户授权信息 */ export function getUserMenus(token) { return $axios({ url: `${$service.userService}/api/v1/portal/login/jcpt/menus`, //url: `${appService.userService}/api/v1/sysMenu/list/all`, method: 'post', data: { jcptToken: token, }, }).then((req) => { $storage.set('STSTEM_INFO', req.data); return req; }); } /** * @Author: Jason Liu * @description: 修改用户信息 */ export function updateUser( params = { avatar: undefined, birthDate: undefined, departmentCode: undefined, email: undefined, employeeId: undefined, enableStatus: undefined, failNumber: undefined, firstPasswordErrorTime: undefined, job: undefined, landlinePhone: undefined, lockTime: undefined, orgId: undefined, orgName: undefined, position: undefined, sex: undefined, telephone: undefined, userId: undefined, userName: undefined, wardCode: undefined, }, ) { return $axios({ url: `${$service.portalService}/portal/index/updateUser`, method: 'post', data: params, }).then((req) => { return getUserInfo(); }); } /** * @Author: Jason Liu * @description: 修改用户密码 */ export function changePassword( params = { newPassword: undefined, oldPassword: undefined, }, ) { return $axios({ url: `${$service.portalService}/sysUser/updatePwd`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 获取机构列表 */ export function getSysOrg( params = { pageNum: 1, pageSize: 10, queryParams: { F_orgName_like: undefined, }, }, ) { return $axios({ url: `${$service.portalService}/sysOrg/list`, method: 'post', data: params, }); } /** * 获取机构树 * @param {*} params * @returns */ export function getSysOrgTree( params = { pageNum: 1, pageSize: 10, queryParams: { F_orgName_like: undefined } } ) { return $axios({ url: `${$service.portalService}/sysOrg/treeList`, method: "post", data: params }); } /** * @Author: y_zp * @description: 获取当前机构以及子机构信息 */ export function getSysOrgData(params = {}) { return $axios({ url: `${$service.portalService}/sysOrg/getSysOrg`, method: 'post', data: params }) } /** * @Author: y_zp * @description: 机构添加/编辑 */ export function sysOrgSave( params = { orgId: undefined, orgName: undefined, parentOrg: undefined, sysOrgCode: undefined, orgCode: undefined, orgType: undefined, alias: undefined, hospitalLevel: undefined, isEnable: undefined, orgLogo: undefined, telphone: undefined, fax: undefined, postcode: undefined, address: undefined, }, ) { return $axios({ url: `${$service.portalService}/sysOrg/save`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 删除机构 */ export function delSysOrg(id) { return $axios({ url: `${$service.portalService}/sysOrg/delete/${id}`, method: 'post', }); } /** * @Author: y_zp * @description: 机构详情 */ export function getSysOrgDetail(id) { return $axios({ url: `${$service.portalService}/sysOrg/get/${id}`, method: 'get', }); } /** * @Author: y_zp * @description: 系统参数 */ export function sysConfigList( params = { pageNum: 1, pageSize: 10, queryParams: { F_configName_like: undefined, F_configKey_like: undefined, }, }, ) { return $axios({ url: `${$service.portalService}/sysConfig/list`, method: 'post', data: params, }); } /** * @Author: Jason Liu * @description: 批量获取系统参数 */ export function sysConfigByKeys(configKeys) { return sysConfigList({ pageNum: 1, pageSize: 10, queryParams: { F_configKey_in: configKeys, }, }); } /** * @Author: Jason Liu * @description: 获取用户信息 */ export function getUserInfo() { const getUserInfo = $axios({ url: `${$service.portalService}/portal/login/getUserInfo`, method: 'post', data: { accessToken: $storage.getToken(), }, }) .then((req) => { $storage.set('USER_INFO', req.data); $storage.userInfo = req.data; return req; }) .catch(() => { message.error({ content: $t('请重新登录!'), centered: true, key: 'eorr', }); $storage.clearToken(); window.location.reload(); }); const systemConfigKeys = [ 'system.authbutton.enable', //按钮权限 'system.channel', //系统渠道开关 0和空为院端 1为区域端 'system.releaseVersion', //系统版本 'system.org.enable', ]; //系统参数清单 $storage.parameter = {}; const getSystemConfigs = sysConfigByKeys(systemConfigKeys.join(',')).then((req) => { systemConfigKeys.forEach((key) => { let config = req.data.find((item) => { return item.configKey == key; }) || { configValue: '0' }; let appParameterName = key.replaceAll('.', '_'); $storage.parameter[appParameterName] = config.configValue; $storage.set(appParameterName, config.configValue); }); return req; }); return Promise.all([getUserInfo, getSystemConfigs]).then((reqs) => { return reqs[0]; }); } /** * @Author: y_zp * @description: 系统参数保存 */ export function sysConfigSave( params = { configId: undefined, configName: undefined, configKey: undefined, configValue: undefined, remark: undefined, }, ) { return $axios({ url: `${$service.portalService}/sysConfig/save`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 系统参数删除 */ export function delSysConfig(id) { return $axios({ url: `${$service.portalService}/sysConfig/delete/${id}`, method: 'post', }); } /** * @Author: y_zp * @description: 字典列表 */ export function getSysDictData( params = { pageNum: 1, pageSize: 15, queryParams: { F_dictType_eq: undefined, }, }, ) { return $axios({ url: `${$service.portalService}/sysDictData/list`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 字典保存 */ export function sysDictDataSave( params = { dictLabel: undefined, dictType: undefined, dictCode: undefined, dictValue: undefined, remark: undefined, }, ) { return $axios({ url: `${$service.portalService}/sysDictData/save`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 字典删除 */ export function sysDictDataDel(id) { return $axios({ url: `${$service.portalService}/sysDictData/delete/${id}`, method: 'post', }); } /** * @Author: y_zp * @description: 根据机构获取角色列表 */ export function getRoleDeptList( params = { pageNum: 1, pageSize: 10, queryParams: { F_deptId_eq: undefined, F_roleName_like: undefined, }, }, ) { return $axios({ url: `${$service.portalService}/sysRoleDept/list`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 保存角色信息 */ export function saveRole( params = { remark: undefined, roleKey: undefined, roleName: undefined, deptId: undefined, roleSort: 0, }, ) { return $axios({ url: `${$service.portalService}/sysRole/save`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 删除角色 */ export function deleteRole({ id }) { return $axios({ url: `${$service.portalService}/sysRole/delete/${id}`, method: 'post', }); } /** * @Author: y_zp * @description: 根据角色获取用户 */ export function userByrole( params = { pageNum: 1, pageSize: 10, queryParams: { F_roleId_eq: undefined, }, }, ) { return $axios({ url: `${$service.portalService}/sysUser/list/byrole`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 角色下移除用户 */ export function delUserRole(roleId, userId) { return $axios({ url: `${$service.portalService}/sysUserRole/delete/${roleId}/${userId}`, method: 'post', }); } /** * @Author: y_zp * @description: 用户批量绑定角色 */ export function saveUserRole(params = []) { return $axios({ url: `${$service.portalService}/sysUserRole/savebatch`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 获取操作日志列表 */ export function operLogList( appName, params = { pageNum: 1, pageSize: 10, queryParams: { F_title_like: undefined, F_operName_like: undefined, F_createTime_gt: undefined, F_createTime_lt: undefined, }, }, ) { return $axios({ url: `${$service.portalService}/sysOperLog/list/${appName}`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 操作日志列表删除 */ export function delOperLog(id) { return $axios({ url: `${$service.portalService}/sysOperLog/delete/${id}`, method: 'post', }); } /** * @Author: y_zp * @description: 获取登录日志列表 */ export function loginLogList( params = { pageNum: 1, pageSize: 10, queryParams: { F_userName_like: undefined, F_ipaddr_like: undefined, }, }, ) { return $axios({ url: `${$service.portalService}/sysLogininfor/list`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 登录日志列表删除 */ export function delLoginLog(id) { return $axios({ url: `${$service.portalService}/sysLogininfor/delete/${id}`, method: 'post', }); } /** * @Author: y_zp * @description: 登录日志列表删除 */ export function logout() { return $axios({ url: `${$service.portalService}/auth/logout`, method: 'post', }); } /** * @Author: y_zp * @description: 当前用户下的机构 */ export function getUserOrgTree(id) { return $axios({ url: `${$service.portalService}/sysOrg/tree/${id}`, method: 'get', }); } //sql函数缓存变量 let sqlFunctonList = []; /** * @Author: Jason Liu * @description:获取sql函数 */ export function getSQlFunctonList() { if (sqlFunctonList.length > 0) { return new Promise((resolve, reject) => { resolve({ data: sqlFunctonList, }); }); } else { return $axios({ url: `${$service.portalService}/dfDiSys/listGroup`, method: 'post', }).then((req) => { sqlFunctonList = req.data; return req; }); } } /** * @Author: y_zp * @description: 知识库列表 */ export function pagedSolutions(params = {}) { return $axios({ url: `${$service.portalService}/solution/pagedSolutions`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 知识库保存 */ export function saveProblem(params = {}) { return $axios({ url: `${$service.portalService}/solution/saveProblem`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 多语言分页列表 */ export function getSysLangList(params = {}) { return $axios({ url: `${$service.portalService}/sysLang/pageList`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 多语言-删除 */ export function deleteSysLang(ids) { return $axios({ url: `${$service.portalService}/sysLang/delete/${ids}`, method: 'post', }); } /** * @Author: y_zp * @description: 多语言-详情 */ export function getSysLangDetail(id) { return $axios({ url: `${$service.portalService}/sysLang/get/${id}`, method: 'get', }); } /** * @Author: y_zp * @description: 多语言详情-提交 */ export function saveSysLang(params) { return $axios({ url: `${$service.portalService}/sysLang/save`, method: 'post', data: params, }); } /** * @Author: y_zp * @description: 多语言-批量保存 */ export function batchSaveSysLang(params) { return $axios({ url: `${$service.portalService}/sysLang/batchSave`, method: 'post', data: params, }); } // 获取当前机构及子集 export function getSysOrgByParent(params) { return $axios({ url: `${$service.portalService}/sysOrg/getSysOrg`, method: 'post', data: params, }); }