From eef1ef0be935d4a3d8fc691b2666f41796b2d4a5 Mon Sep 17 00:00:00 2001 From: gaoshp <291585735@qq.com> Date: 星期一, 04 十一月 2024 19:57:08 +0800 Subject: [PATCH] 增加列表显示 --- src/views/master/person/main/personPerson.vue | 98 +++++++++++++++++++++++++++++++++++------------- 1 files changed, 71 insertions(+), 27 deletions(-) diff --git a/src/views/master/person/main/personPerson.vue b/src/views/master/person/main/personPerson.vue index 26aeaa0..7b84259 100644 --- a/src/views/master/person/main/personPerson.vue +++ b/src/views/master/person/main/personPerson.vue @@ -2,17 +2,17 @@ * @Author: lzhe lzhe@example.com * @Date: 2024-03-26 10:28:33 * @LastEditors: lzhe lzhe@example.com - * @LastEditTime: 2024-09-23 16:27:33 + * @LastEditTime: 2024-11-04 11:02:26 * @FilePath: /belleson-frontend/Users/mache/Documents/demo/cps-web/src/views/master/person/main/personPerson.vue * @Description: 杩欐槸榛樿璁剧疆,璇疯缃甡customMade`, 鎵撳紑koroFileHeader鏌ョ湅閰嶇疆 杩涜璁剧疆: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE --> <template> <div class="person-person"> <div class="person-person-left"> - <div class="person-left-title"> + <!-- <div class="person-left-title"> <div :class="{ 'person-left-active': leftActive }" @click="changeTab(1)">閮ㄩ棬</div> <div :class="{ 'person-left-active': !leftActive }" @click="changeTab(2)">宀椾綅</div> - </div> + </div> --> <div class="person-left-search"> <el-input v-model="input" placeholder="璇疯緭鍏ュ唴瀹�" size="small"></el-input> </div> @@ -29,7 +29,10 @@ <div class="right-top"> <div class="right-title"><span v-if="leftActive">閮ㄩ棬锛氬崈鏂囩鎶�</span></div> <div> - <el-select v-model="searchData.status" placeholder="鐘舵��" class="searchStatus"> + <el-select v-model="searchData.postId" clearable placeholder="宀椾綅" class="searchStatus" @change="searchDataChange"> + <el-option v-for="item in postList" :key="item.id" :label="item.postName" :value="item.id" size="small" /> + </el-select> + <el-select v-model="searchData.status" placeholder="鐘舵��" class="searchStatus" @change="searchDataChange"> <el-option v-for="item in statusList" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey" size="small" /> </el-select> @@ -62,7 +65,13 @@ :show-file-list="false" :on-success="(file)=>handleAvatarSuccess(file,scope.$index)" :before-upload="(file)=>beforeAvatarUpload(file,scope.$index)"> - <img v-if="scope.row.avatar" :src="scope.row.avatar" class="avatar"> + <div v-if="scope.row.avatar" style="position: relative;"> + <img :src="scope.row.avatar" class="avatar"> + <div class="el-icon-editDom"> + <span class="el-icon-edit">缂栬緫</span> + <span class="el-icon-del" @click.stop="avatarDel(scope.$index)">鍒犻櫎</span> + </div> + </div> <el-icon v-else class="el-icon-plus avatar-uploader-icon"><Picture /></el-icon> </el-upload> </template> @@ -160,9 +169,10 @@ name: "personPerson", data() { return { + postList: [], authorization: {}, - uploadUrl: "/api/blade-cps/employee/import-employee", - exportUrl: "/api/blade-cps/employee/export-template", + uploadUrl: "/api/smis/employee/import-employee", + exportUrl: "/api/smis/employee/export-template", titleList: [], delPersonModel: false, searchIcon: "el-icon-search", @@ -205,15 +215,23 @@ mounted() { this.getStatus(); this.getOrganizationList(); //閮ㄩ棬 + this.getPost(); //宀椾綅 }, components: { saveDialog, importTable,...ElementPlusIconsVue }, methods: { + avatarDel(index) { + var obj = this.tableData[index]; + obj.avatar = ""; + this.$HTTP.post(`/api/smis/employee/submit`,obj).then(res=> { + this.searchPerson(); + }) + }, handleAvatarSuccess(file,index) { var obj = this.tableData[index]; obj.avatar = file.data.link; - this.$HTTP.post(`/api/blade-cps/employee/submit`,obj).then(res=> { + this.$HTTP.post(`/api/smis/employee/submit`,obj).then(res=> { this.searchPerson(); }) }, @@ -227,7 +245,7 @@ return isJPG; }, getExport() { - this.$HTTP.get(`/api/blade-cps/employee/export-employee?` + this.$TOOL.qsStringify(this.searchData)).then(res => { + this.$HTTP.get(`/api/smis/employee/export-employee?` + this.$TOOL.qsStringify(this.searchData)).then(res => { if (res.code == 200) { window.open(res.data.link); } @@ -242,23 +260,24 @@ this.searchPerson(); }, selectbtn(index) { - this.titleList.forEach(item => { - item.active = false; - }) - this.titleList[index].active = true; - if (this.leftActive) { //閮ㄩ棬 - this.searchData.organizationCode = this.titleList[index].code; - this.searchData.postId = ""; - } else { //宀椾綅 - this.searchData.organizationCode = ""; - this.searchData.postId = this.titleList[index].id; - } + // this.titleList.forEach(item => { + // item.active = false; + // }) + // this.titleList[index].active = true; + // if (this.leftActive) { //閮ㄩ棬 + // this.searchData.organizationCode = this.titleList[index].code; + // this.searchData.postId = ""; + // } else { //宀椾綅 + // this.searchData.organizationCode = ""; + // this.searchData.postId = this.titleList[index].id; + // } this.searchPerson(); }, getOrganizationList() { //閮ㄩ棬 - this.$HTTP.get(`/api/blade-cps/organization/tree?groupType=group_organization&groupCategory=1`).then(res => { + this.$HTTP.get(`/api/smis/organization/tree?groupType=group_organization&groupCategory=1`).then(res => { if (res.code == 200) { this.titleList = res.data; + console.log(this.titleList,111); this.titleList[0].active = true; this.searchData.organizationCode = res.data[0].code; this.searchPerson(); @@ -272,15 +291,16 @@ } this.$HTTP.get(`/api/blade-system/post/page?` + this.$TOOL.qsStringify(obj)).then(res => { if (res.code == 200) { - this.titleList = res.data.records; - this.titleList[0].active = true; - this.searchData.postId = res.data.records[0].id; + this.postList = res.data.records; this.searchPerson(); } }) }, + searchDataChange() { + this.searchPerson(); + }, delData(type) { - this.$HTTP.post(`/api/blade-cps/employee/remove?ids=${this.selectId}&type=${type}`).then(res => { + this.$HTTP.post(`/api/smis/employee/remove?ids=${this.selectId}&type=${type}`).then(res => { if (res.code == 200) { this.$message.success("鎿嶄綔鎴愬姛"); this.delPersonModel = false; @@ -298,7 +318,7 @@ this.searchPerson(); }, searchPerson() { - this.$HTTP.get(`/api/blade-cps/employee/list?` + this.$TOOL.qsStringify(this.searchData)).then(res => { + this.$HTTP.get(`/api/smis/employee/list?` + this.$TOOL.qsStringify(this.searchData)).then(res => { if (res.code == 200) { res.data.records.forEach(item => { if (item.dictValue == "鍦ㄨ亴") { @@ -324,7 +344,7 @@ }) this.$refs.dialogForm.validate(async (valid) => { if (valid) { - this.$HTTP.put(`/api/blade-cps/employee/change-organization?organizationId=${this.departmentFrom.parentId}&employeeIds=${employeeIds.join(",")}`).then(res => { + this.$HTTP.put(`/api/smis/employee/change-organization?organizationId=${this.departmentFrom.parentId}&employeeIds=${employeeIds.join(",")}`).then(res => { if (res.code == 200) { this.searchPerson(); this.departmentVisible = false; //閮ㄩ棬璋冩暣 @@ -597,6 +617,30 @@ text-align: center; background-color: #c0c4cc; } + .el-icon-editDom { + position: absolute; + left: 4px; + top: 56px; + font-weight: 700; + color: #409eff; + } + .el-icon-editDom span { + margin: 0; + padding: 0; + font-size: 12px; + line-height: 18px; + border: 1px solid #409eff; + background: #fff; + padding-left: 2px; + padding-right: 2px; + cursor: pointer; + } + .el-icon-editDom .el-icon-edit { + margin-right: 4px; + } + .el-icon-editDom .el-icon-del { + + } .avatar { width: 80px; height: 80px; -- Gitblit v1.9.3