From 58d0bfc0a05fd3f645f31eba4fa7e2bf57e3b1df Mon Sep 17 00:00:00 2001
From: 李喆(开发组) <lzhe@yxqiche.com>
Date: 星期三, 16 四月 2025 12:07:06 +0800
Subject: [PATCH] 1
---
src/views/master/person/main/personPerson.vue | 100 ++++++++++++++++++++++++++++++++++++--------------
1 files changed, 72 insertions(+), 28 deletions(-)
diff --git a/src/views/master/person/main/personPerson.vue b/src/views/master/person/main/personPerson.vue
index 26aeaa0..f2ce62d 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-12-18 15:11:30
* @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,9 +245,9 @@
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);
+ this.$TOOL.downFile(res.data.link,res.data.originalName);
}
})
},
@@ -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