| | |
| | | topbarRouters: (state) => state.permission.topbarRouters, |
| | | defaultRoutes: (state) => state.permission.defaultRoutes, |
| | | sidebarRouters: (state) => state.permission.sidebarRouters, |
| | | Serviceauthority: (state) => state.user.Serviceauthority, |
| | | // 正则 |
| | | regular: (state) => state.regular.regular, |
| | | noregular: (state) => state.regular.noregular, |
| | |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | |
| | | ], |
| | | // 服务状态 |
| | | serviceState: (state) => [ |
| | |
| | | // 值类型(问卷) |
| | | askvaluetype: (state) => [ |
| | | { |
| | | value: '1', |
| | | value: "1", |
| | | label: "单选", |
| | | raw: { |
| | | cssClass: "", |
| | |
| | | }, |
| | | }, |
| | | { |
| | | value: '2', |
| | | value: "2", |
| | | label: "多选", |
| | | raw: { |
| | | cssClass: "", |
| | |
| | | }, |
| | | }, |
| | | { |
| | | value: '3', |
| | | value: "3", |
| | | label: "填空", |
| | | raw: { |
| | | cssClass: "", |
| | |
| | | }, |
| | | }, |
| | | { |
| | | value: '4', |
| | | value: "4", |
| | | label: "问答", |
| | | raw: { |
| | | cssClass: "", |
| | |
| | | // 值类型(列表展示) |
| | | valuetypelb: (state) => [ |
| | | { |
| | | value: '1', |
| | | value: "1", |
| | | label: "选项", |
| | | raw: { |
| | | cssClass: "", |
| | |
| | | }, |
| | | }, |
| | | { |
| | | value: '2', |
| | | value: "2", |
| | | label: "文本", |
| | | raw: { |
| | | cssClass: "", |
| | |
| | | }, |
| | | }, |
| | | { |
| | | value: '3', |
| | | value: "3", |
| | | label: "数值", |
| | | raw: { |
| | | cssClass: "", |
| | |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | },{ |
| | | }, |
| | | { |
| | | value: 3, |
| | | label: "患者拒绝服务", |
| | | raw: { |
| | |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | },{ |
| | | }, |
| | | { |
| | | value: 5, |
| | | label: "黑名单", |
| | | raw: { |
| | |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | |
| | | ], |
| | | // 题目类别(随访) |
| | | xjxsoptions:(state) => [ |
| | |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | |
| | | |
| | | ], |
| | | // 评价类型 |
| | | appraiselist:(state) => [ |
| | |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | |
| | | ], |
| | | // 正则 |
| | | |
| | | |
| | | }; |
| | | |
| | | export default getters; |
| | |
| | | import Layout from '@/layout/index' |
| | | import ParentView from '@/components/ParentView' |
| | | import InnerLink from '@/layout/components/InnerLink' |
| | | import store from "@/store"; |
| | | |
| | | |
| | | const permission = { |
| | | state: { |
| | |
| | | commit('SET_TOPBAR_ROUTES', sidebarRoutes) |
| | | resolve(rewriteRoutes) |
| | | console.log(res.data,'路由数据'); |
| | | const result = res.data.find(item => item.name == "Followvisit"); |
| | | Processrouting(result) |
| | | |
| | | }) |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | function Processrouting(result){ |
| | | const arrf=[]; |
| | | const arr=store.getters.Serviceauthority; |
| | | console.log(result,'result'); |
| | | console.log(arr,'arr'); |
| | | result.children.forEach(objA => { |
| | | arr.forEach(objB => { |
| | | if (objA.meta.title === objB.label) { |
| | | arrf.push(objB); |
| | | } |
| | | }); |
| | | }); |
| | | console.log(arrf,'arrf'); |
| | | store.commit('SET_Serviceauthority', arrf); |
| | | |
| | | |
| | | } |
| | | |
| | | // 遍历后台传来的路由字符串,转换为组件对象 |
| | | function filterAsyncRouter(asyncRouterMap, lastRouter = false, type = false) { |
| | |
| | | name: '', |
| | | avatar: '', |
| | | roles: [], |
| | | permissions: [] |
| | | permissions: [], |
| | | // 服务类型 |
| | | Serviceauthority: [ |
| | | { |
| | | value: "1", |
| | | label: "患者报告", |
| | | route: "followvisit/QuestionnaireTask", |
| | | raw: { |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | { |
| | | value: "2", |
| | | label: "监测评估", |
| | | route: "followvisit/QuestionnaireTask", |
| | | raw: { |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | { |
| | | value: "3", |
| | | label: "复诊管理", |
| | | route: "followvisit/particty", |
| | | raw: { |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | { |
| | | value: "4", |
| | | label: "宣教关怀", |
| | | route: "followvisit/Missioncreation", |
| | | raw: { |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | { |
| | | value: "5", |
| | | label: "出院随访", |
| | | route: "followvisit/particty", |
| | | raw: { |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | { |
| | | value: "6", |
| | | label: "门诊随访", |
| | | route: "followvisit/particty", |
| | | raw: { |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | { |
| | | value: "7", |
| | | label: "通知服务", |
| | | route: "followvisit/Missioncreation", |
| | | raw: { |
| | | cssClass: "", |
| | | listClass: "", |
| | | }, |
| | | }, |
| | | ], |
| | | }, |
| | | |
| | | mutations: { |
| | |
| | | }, |
| | | SET_PERMISSIONS: (state, permissions) => { |
| | | state.permissions = permissions |
| | | }, |
| | | SET_Serviceauthority: (state, Serviceauthority) => { |
| | | state.Serviceauthority = Serviceauthority |
| | | } |
| | | }, |
| | | |
| | |
| | | Questionnairetasksponsor, |
| | | TaskTemplateSendExecution, |
| | | } from "@/api/AiCentre/index"; |
| | | import store from "@/store"; |
| | | |
| | | import Treeselect from "@riophae/vue-treeselect"; |
| | | import "@riophae/vue-treeselect/dist/vue-treeselect.css"; |
| | |
| | | this.getConfigKey("sys.user.initPassword").then((response) => { |
| | | this.initPassword = response.msg; |
| | | }); |
| | | this.taskoptions = store.getters.Serviceauthority; |
| | | }, |
| | | // 搜索 |
| | | mounted() { |
| | |
| | | v-if="topicobj.scriptType == 3" |
| | | > |
| | | <div style="display: flex; margin-bottom: 10px"> |
| | | <div class="tsgnames" @click="tsgnametos">插入填空</div> |
| | | <div class="tsgnames" @click="tsgnametos">插入填空标记</div> |
| | | </div> |
| | | </el-form-item> |
| | | <el-row> |
| | | <el-col :span="20"> |
| | | <el-form-item label="收集信息" v-if="topicobj.scriptType == 3"> |
| | | <el-card class="box-card" style="width: 200%"> |
| | | <el-form-item label="填空信息" v-if="topicobj.scriptType == 3"> |
| | | <el-card class="box-card" style="width: 200%;"> |
| | | <div |
| | | v-for="item in topicobj.svyLibScriptOptions" |
| | | v-if="item.isoperation != 3" |
| | | style="margin-bottom: 10px" |
| | | > |
| | | <el-input |
| | |
| | | .confirm("更改类型后选项将清空是否继续?") |
| | | .then(() => { |
| | | this.scriptTypels = this.topicobj.scriptType; |
| | | this.topicobj.svyLibScriptOptions = []; |
| | | }) |
| | | .catch(() => { |
| | | this.topicobj.scriptType = this.scriptTypels; |
| | |
| | | this.topicobj.svyLibScriptOptions, |
| | | row |
| | | ); |
| | | console.log(this.topicobj.svyLibScriptOptions); |
| | | |
| | | if (this.topicobj.svyLibScriptOptions[index].id) { |
| | | console.log(2); |
| | | |
| | | this.topicobj.svyLibScriptOptions[index].isoperation = 3; |
| | | } else { |
| | | this.topicobj.svyLibScriptOptions.splice(index, 1); |
| | |
| | | // 便捷标签插入填空 |
| | | tsgnametos(row) { |
| | | let inputValueArr = ""; |
| | | let value = this.testuserList.length + 1; |
| | | let value = this.topicobj.svyLibScriptOptions.length + 1; |
| | | |
| | | let el = document.querySelector("#" + this.currentInputId); |
| | | //el.selectionStart; 这就是当前光标所在的位置(字符串中字符的index) |
| | | if (this.currentInputId == "targetdesc") { |
| | | inputValueArr = this.indexform.targetdesc.split(""); |
| | | if (this.currentInputId == "scriptContent") { |
| | | console.log(1); |
| | | inputValueArr = this.topicobj.scriptContent.split(""); |
| | | console.log(2); |
| | | } else { |
| | | return; |
| | | } |
| | |
| | | selectLength, |
| | | "__" + value + "__" |
| | | ); |
| | | this.testuserList.push({ |
| | | this.topicobj.svyLibScriptOptions.push({ |
| | | orderno: value, |
| | | optiondesc: "", |
| | | isoperation: 1, |
| | |
| | | inputValueArr = inputValueArr.join(""); |
| | | |
| | | console.log(inputValueArr); |
| | | if (this.currentInputId == "targetdesc") { |
| | | this.indexform.targetdesc = inputValueArr; |
| | | if (this.currentInputId == "scriptContent") { |
| | | this.topicobj.scriptContent = inputValueArr; |
| | | } else { |
| | | return; |
| | | } |
| | |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="(item, index) in qyoptions" |
| | | v-for="(item, index) in askvaluetype" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | |
| | | label="指标类型" |
| | | fixed |
| | | align="center" |
| | | key="scriptType" |
| | | prop="scriptType" |
| | | key="valueType" |
| | | prop="valueType" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <dict-tag |
| | | :options="valuetypelb" |
| | | :value="scope.row.scriptType" |
| | | :value="scope.row.valueType" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | placeholder="请选择" |
| | | > |
| | | <el-option |
| | | v-for="index in qyoptions" |
| | | v-for="index in usable" |
| | | :key="index.value" |
| | | :label="index.label" |
| | | :value="index.value" |
| | |
| | | illnesslist: [], |
| | | illnesslistapi: [], |
| | | optionsillness: [], |
| | | qyoptions: [], |
| | | mode: [], |
| | | optionstag: [], |
| | | targetoptionList: [], |
| | |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | }, |
| | | valuetypelb: [], |
| | | askvaluetype: [], |
| | | |
| | | // 表单校验 |
| | | rules: { |
| | |
| | | this.gettabList(); |
| | | this.getDeptTree(); |
| | | this.mode = store.getters.mode; |
| | | this.valuetypelb = store.getters.askvaluetype; |
| | | this.askvaluetype = store.getters.askvaluetype; |
| | | this.valuetypelb = store.getters.valuetypelb; |
| | | this.languagelist = store.getters.languagelist; |
| | | this.qyoptions = store.getters.askvaluetype; |
| | | this.usable = store.getters.usable; |
| | | }, |
| | | methods: { |