From 1e78fbfb63e192c5284b19bba161ea12e80a7d92 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期四, 04 七月 2024 16:30:04 +0800 Subject: [PATCH] 测试完成 --- src/views/knowledge/education/index.vue | 192 ++++++++++++++++++++++++++++++++++++----------- 1 files changed, 146 insertions(+), 46 deletions(-) diff --git a/src/views/knowledge/education/index.vue b/src/views/knowledge/education/index.vue index 013025c..de1d072 100644 --- a/src/views/knowledge/education/index.vue +++ b/src/views/knowledge/education/index.vue @@ -29,7 +29,7 @@ > <span class="custom-tree-node" slot-scope="{ node, data }"> <span>{{ node.label }}</span> - <span> + <span v-if="data.id > 0"> <el-button type="text" icon="el-icon-delete" @@ -37,6 +37,17 @@ size="mini" @click="() => remove(node, data)" > + </el-button> + </span> + <span v-if="data.id > 0"> + <el-button + type="text" + circle + size="mini" + @click="() => altertag(node, data)" + ><span class="button-textxg" + ><i class="el-icon-edit-outline"></i + ></span> </el-button> </span> </span> @@ -66,13 +77,21 @@ @keyup.enter.native="handleQuery" /> </el-form-item> - <el-form-item label="閫傜敤绉戝" prop="sickness"> + <el-form-item label="閫傜敤绉戝" prop="region"> <el-cascader - v-model="queryParams.sickness" - :options="optionss" - :props="propss" + v-model="queryParams.administrative" + :options="deptList" + :props="props" + :show-all-levels="false" clearable - ></el-cascader> + > + <template slot-scope="{ node, data }"> + <span>{{ data.deptName }}</span> + <span v-if="!node.isLeaf"> + ({{ data.children.length }}) + </span> + </template> + </el-cascader> </el-form-item> <el-form-item label="閫氱煡鍐呭" prop="userName"> <el-input @@ -97,10 +116,10 @@ placeholder="璇烽�夋嫨" > <el-option - v-for="(item, index) in editableTabs" - :key="index++" - :label="item.title" - :value="index++" + v-for="(item, index) in editabshape" + :key="item.label" + :label="item.label" + :value="item.value" > </el-option> </el-select> @@ -111,7 +130,7 @@ placeholder="璇烽�夋嫨" > <el-option - v-for="item in qyoptions" + v-for="item in usable" :key="item.value" :label="item.value" :value="item.label" @@ -173,12 +192,19 @@ @selection-change="handleSelectionChange" > <el-table-column type="selection" width="50" align="center" /> - <el-table-column label="搴忓彿" align="center" key="id" prop="id" /> + <el-table-column + label="搴忓彿" + fixed + align="center" + key="id" + prop="id" + /> <el-table-column label="鏍囬" + fixed align="center" - key="extName" - prop="extName" + key="preachname" + prop="preachname" :show-overflow-tooltip="true" /> <el-table-column @@ -189,15 +215,15 @@ :show-overflow-tooltip="true" /> <el-table-column - label="涓昏鍐呭(缂�)" + label="涓昏鍐呭" align="center" - key="userNamevalue" - prop="userNamevalue" + key="preachcontent" + prop="preachcontent" :show-overflow-tooltip="true" /> <el-table-column - label="閫傜敤鐤剧梾(缂�)" + label="閫傜敤鐤剧梾" align="center" key="aphonenumber" prop="aphonenumber" @@ -215,39 +241,58 @@ > </template> </el-table-column> + <el-table-column - label="閫傜敤绉戝(缂�)" + label="鏍囩" align="center" - key="bphonenumber" - prop="bphonenumber" - width="120" - /> - <el-table-column - label="鏍囩(缂�)" - align="center" - key="tagList" - prop="tagList" + key="labelInfo" + prop="labelInfo" width="160" :show-overflow-tooltip="true" > <template slot-scope="scope"> - <span v-for="item in scope.row.tagList">{{ item }} </span> + <div v-if="scope.row.labelInfo"> + <span v-for="item in scope.row.labelInfo.split(',')" + >{{ item }}銆� + </span> + </div> + <div v-else> + <span>鏃�</span> + </div> </template> </el-table-column> <el-table-column - label="瀹f暀鏂瑰紡(缂�)" + label="閫傜敤鏂瑰紡" align="center" - key="cphonenumber" - prop="cphonenumber" + key="suitway" + prop="suitway" width="120" - /> + > + <template slot-scope="scope"> + <div v-if="scope.row.suitway"> + <span v-for="item in scope.row.suitway.split(',')" + >{{ item }}銆� + </span> + </div> + <div v-else> + <span>鏃�</span> + </div> + </template> + </el-table-column> <el-table-column - label="璧勬枡褰㈠紡(缂�)" + label="鍐呭褰㈠紡" align="center" - key="cphonenumbers" - prop="cphonenumbers" + key="preachform" + prop="preachform" width="120" - /> + > + <template slot-scope="scope"> + <dict-tag + :options="editabshape" + :value="scope.row.preachform" + /> + </template> + </el-table-column> <el-table-column label="鏈�杩戜慨鏀�" align="center" @@ -258,13 +303,18 @@ <el-table-column label="鏄惁鍙敤" align="center" - key="isEnable" - prop="isEnable" + key="isavailable" + prop="isavailable" width="120" - /> + > + <template slot-scope="scope"> + <dict-tag :options="usable" :value="scope.row.isavailable" /> + </template> + </el-table-column> <el-table-column label="鎿嶄綔" + fixed="right" align="center" width="300" class-name="small-padding fixed-width" @@ -351,7 +401,7 @@ </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> - <el-button @click="dialogFormVisible = false">鍙� 娑�</el-button> + <el-button @click="getDeptTree()">鍙� 娑�</el-button> <el-button type="primary" @click="submitsidecolumn">纭� 瀹�</el-button> </div> </el-dialog> @@ -420,6 +470,7 @@ getheLibraryAssort, delheLibraryAssort, addheLibraryAssort, + editheLibraryAssort, addtargetillness, getlibrarylist, dellibraryinfo, @@ -429,6 +480,7 @@ illnesslistget, getillness, } from "@/api/AiCentre/index"; +import { listDept } from "@/api/system/dept"; import { getToken } from "@/utils/auth"; import store from "@/store"; @@ -508,9 +560,12 @@ optionss: [], mode: [], languagelist: [], - qyoptions: [], + editabshape: [], + usable: [], precedencetype: [], xjxsoptions: [], + deptList: [], + props: { multiple: true, value: "deptId", label: "deptName" }, //绫诲埆鍒楄〃 editableTabs: [], @@ -518,6 +573,7 @@ queryParams: { pageNum: 1, pageSize: 10, + isavailable: "", }, }; }, @@ -527,17 +583,23 @@ this.getDeptTree(); this.mode = store.getters.mode; this.languagelist = store.getters.languagelist; - this.qyoptions = store.getters.usable; + this.usable = store.getters.usable; this.precedencetype = store.getters.precedencetype; + this.editabshape = store.getters.editabshape; }, methods: { /** 鏌ヨ瀹f暀鍒楄〃 */ getList() { - // this.loading = true; + this.loading = true; getlibrarylist(this.queryParams).then((response) => { console.log(response); this.userList = response.rows; + this.total = response.total; + this.loading = false; + }); + listDept(this.queryParams).then((response) => { + this.deptList = this.handleTree(response.data, "deptId"); }); }, @@ -622,12 +684,21 @@ getDeptTree() { getheLibraryAssort({}).then((res) => { this.deptOptions = res.rows; - console.log(res); + this.dialogFormVisible = false; }); }, // 娣诲姞绫诲埆鏍� submitsidecolumn() { + if (this.classifyform.id) { + editheLibraryAssort(this.classifyform).then((res) => { + this.getDeptTree(); + this.$modal.msgSuccess("淇敼鎴愬姛"); + this.classifyform = {}; + this.dialogFormVisible = false; + }); + return; + } let calssvalue = {}; if ( this.classifyform.pid && @@ -649,6 +720,7 @@ this.getDeptTree(); this.$modal.msgSuccess("鏂板鎴愬姛"); this.classifyform = {}; + this.dialogFormVisible = false; }); }, remove(a, b) { @@ -679,6 +751,16 @@ }) .catch(() => {}); } + }, + altertag(a, b) { + this.dialogFormVisible = true; + if (!b.pid) { + this.radio = "涓诲垎绫�"; + } else { + this.radio = "瀛愬垎绫�"; + } + this.classifyform = b; + this.dialogFormVisible = true; }, // 绛涢�夎妭鐐� @@ -778,7 +860,7 @@ margin-top: 20px; margin: 20px; padding: 30px; - background: #edf1f7; + background: #fff; border: 1px solid #dcdfe6; -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 0 6px 0 rgba(0, 0, 0, 0.04); @@ -893,6 +975,24 @@ font-size: 20px; cursor: pointer; } +::v-deep .el-tree { + position: relative; + cursor: default; + border-radius: 5px; + background: #eff8fe; + color: #606266; + border: 1px solid #bbe1fa; + // border: 1px solid #dcdfe6; + -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), + 0 0 6px 0 rgba(0, 0, 0, 0.04); +} +::v-deep + .el-tree--highlight-current + .el-tree-node.is-current + > .el-tree-node__content { + background-color: #7799fb; + color: #fff; +} ::v-deep .el-button--mini.is-circle { padding: 7px; margin: 0; -- Gitblit v1.9.3