/** * long description for the file * * @summary 数据字典 * @author wu <308822989@qq.com> * * Created at : 2018-08-17 10:13:51 * Last modified : 2018-08-27 14:52:42 */ // 字典类型 类型编号 是否可编辑 字典名称及编码 // 机构类别 CATE 否 "1-机构 // 0-部门" // 机构级别 RANK 否 "1-集团总部 // 2-分公司" // 国家或地区 COUNTRY 是 "CN-中国 // HK-中国香港 // USA-美国 // JP-日本" // 城市 CITYCODE 否 "BeiJing-北京 // ShangHai-上海 // Changsha-长沙" // 是/否 Y_N 否 "0-否 // 1-是" // 性别 sex 否 "1-男 // 2-女" // 在线状态 online 否 "1-在线 // 0-离线" // 状态 status 否 "1-启用 // 0-停用(删除)" // 职称 TITLE 1-总工程师 2-高级工程师 3-技工 4-经济师 5-会计师 // 文化程度 DEGREE 1-博士 2-研究生 3-本科 4-专科 5-中专 6-高中 7-初中 // 专业 MAJOR 1-计算机 2-材料 3-化工 3-机械 4-自动化 // 离职状态 LEAVE_STATUS 1-离职 2-在职 // 岗位类型 POST_TYPE "1-主岗位 // 2-兼岗位" // 岗位类别 POST_CATE "1-系统管理岗 // 2-审核岗 // 3-负责人 // 4-操作岗" // 岗位级别 RANK 同机构级别 // 角色类型 ROLE_TYPE 1-功能角色 2-数据角色 // 角色级别 RANK 同机构级别 // 资源类型 RESOURCE_TYPE 1-菜单 按钮 2-数据集权限 // 菜单类型 MENU_TYPE 1-菜单 2-按钮 // 窗口打开方式 OPEN_MODE 0 主窗口打开 1 弹出窗口打开 // 表操作类型 OPER_TYPE 1-浏览 2-读写 3-删除,有修改删除的权限就有浏览权限。 // 操作行为 OPER_ACTION 0-允许访问 1-拒绝访问 // 约束关系 RESTRICT_TYPE and:与 or 或 // 数据授权范围 REGION 1 当前用户 2 当前机构 3 当前机构(含下级) 4 当前机构(含上级) 5 当前角色 6 实际值 // 表类型 TABLE_TYPE 1-系统表 2-业务表 // 加载方式 LOAD_METHOD "Insert:新增 // UpdAdd:更新新增 // Refresh:完全更新" // 数据存储状态 DATA_STATUS 数据存储状态:new -只保存最新数据 history-保存历史数据 onlytable-历史数据保存历史表 // 控件类型 ELE_TYPE textEditor:文本输入 combox 下拉框 checkBox 复选框 radioBox 单选框 select 下拉列表 // 字段类型 FIELD_TYPE VARCHAR:字符型 INTEGER 整型 DATE 日期型 DECIMAL 小数型 import Vue from 'vue' import Vuex from 'vuex' import axios from '@/config/axios.js'; import { proPath } from '@/config/config.js'; Vue.use(Vuex); const state = { // 字典列表 dict: {} }; const getters = { } const mutations = { // 更新 dict (state, dict) { state.dict = dict; } } const actions = { // 取所有字典列表 list ({ commit, state }, form) { !form && (form = {}); form.pageSize = '1000000'; let res = axios.get(proPath + 'v1/sysdicts/', { params: form }); // res.then((res) => { let obj = {}; if (res.code === '0') { // 整理数据 for (let item of res.data.list) { if (item.pDictId === '0') { continue; } if (!(item.dictType in obj)) { obj[item.dictType] = []; } item.label = item.dictName; item.value = item.dictCode; obj[item.dictType].push(item); } } commit('dict', obj); }); return res; }, // 取类型字典 type ({ commit, state }, dictType) { let res = axios.get(proPath + 'v1/sysdicts/dicttype/' + dictType); return res; } } export default new Vuex.Store({ state, actions, getters, mutations });