From 9b26870265cbbc75bcd32529e46b229a49ec30a0 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期二, 05 九月 2023 11:29:23 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/views/laboratory/personnel/index.vue |   64 ++++++++++++++++++++++++-------
 1 files changed, 49 insertions(+), 15 deletions(-)

diff --git a/src/views/laboratory/personnel/index.vue b/src/views/laboratory/personnel/index.vue
index f469fa9..f523436 100644
--- a/src/views/laboratory/personnel/index.vue
+++ b/src/views/laboratory/personnel/index.vue
@@ -44,6 +44,12 @@
 								</el-option>
 							</el-select>
 						</el-form-item>
+						<el-form-item label="鍦ㄨ亴鐘舵��" v-if="isUpdate" :label-width="formLabelWidth" prop="jobState">
+							<el-select v-model="form.jobState" clearable style="width: 100%" placeholder="璇烽�夋嫨鍦ㄨ亴鐘舵��">
+								<el-option v-for="(item,index) in jobList" :key="index" :label="item.label" :value="item.value">
+								</el-option>
+							</el-select>
+						</el-form-item>
 					</el-form>
 					<div slot="footer" class="dialog-footer">
 						<el-button @click="dialogFormVisible = false">鍙� 娑�</el-button>
@@ -56,13 +62,13 @@
 		</div>
 		<div class="content-main">
 			<div class="personner-table">
-				<el-table ref="personnerlTable" height="calc(100vh - 240px)" border :cell-style="{ textAlign: 'center' }"
+				<el-table ref="personnerlTable" height="calc(100vh - 240px)" border :cell-style="{ textAlign: 'left' }"
 					:header-cell-style="{
             border: '0px',
             background: '#f5f7fa',
             color: '#606266',
             boxShadow: 'inset 0 1px 0 #ebeef5',
-            textAlign: 'center',
+            textAlign: 'left',
           }" @filter-change="fnFilterChangeInit" :data="personnerlTable" style="width: 100%">
 					<el-table-column prop="username" label="瑙掕壊鍚嶇О" min-width="120" />
 					<el-table-column prop="roleName" label="瑙掕壊鏉冮檺" min-width="120" />
@@ -97,10 +103,8 @@
               }}
 						</template>
 					</el-table-column>
-					<el-table-column prop="jobState" label="鍦ㄨ亴鐘舵��" min-width="120" :filters="[
-              { text: '鍦ㄨ亴', value: 1 },
-              { text: '绂诲矖', value: 0 },
-            ]" column-key="status" :filter-method="filterTag" filter-placement="bottom-end">
+					<el-table-column prop="jobState" label="鍦ㄨ亴鐘舵��" min-width="120" :filters="[{ text: '鍦ㄨ亴', value: 1 },{ text: '绂诲矖', value: 0 },]"
+					 column-key="status" :filter-method="filterTag" filter-placement="bottom-end">
 						<template slot-scope="scope">
 							<el-tag :type="scope.row.jobState === 0 ? 'danger' : 'success'"
 								disable-transitions>{{ scope.row.jobState === 0 ? "绂诲矖" : "鍦ㄨ亴" }}</el-tag>
@@ -147,6 +151,7 @@
 				personData: [], // 鐢ㄦ潵瀛樻斁鎺ュ彛浼犺繃鏉ョ殑浜哄憳鍒楄〃鏁版嵁
 				dialogFormVisible: false,
 				form: {
+					id: "",
 					account: "",
 					age: "",
 					email: "",
@@ -154,7 +159,9 @@
 					phone: "",
 					organizationId: "",
 					roleId: "",
+					jobState: "",
 				},
+				jobList:[{ label: '鍦ㄨ亴', value: 1 },{ label: '绂诲矖', value: 0 }],
 				myProp: {
 					value: "id",
 					label: "department",
@@ -215,10 +222,11 @@
 				this.currentPage = 1;
 				this.pageSize = val;
 			},
-			filterTag(value) {
-				this.status = "";
-				this.status = value;
-				return true;
+			filterTag(value,row) {
+				// console.log("filterTag--",value);
+				// this.status = "";
+				// this.status = value;
+				return row.jobState === value;
 			},
 			// 褰撳墠椤垫敼鍙樻椂瑙﹀彂 璺宠浆鍏朵粬椤�
 			handleCurrentChange(val) {
@@ -252,24 +260,38 @@
 				this.$refs.form.validate((valid) => {
 					if (valid) {
 						let departmentId = this.form.organizationId;
-						this.form.organizationId = departmentId[departmentId.length - 1];
+						let form = {
+							id: this.form.id,
+							account: this.form.account,
+							age: this.form.age,
+							email: this.form.email,
+							name: this.form.name,
+							phone: this.form.phone,
+							organizationId: departmentId[departmentId.length - 1],
+							roleId: this.form.roleId,
+							jobState: this.form.jobState
+						}
 						if (!this.isUpdate) {
-							post("/user/add_new_personnel", this.form).then((response) => {
+							post("/user/add_new_personnel", form).then((response) => {
 								this.$message({
 									message: response.message,
 									type: "success",
 								});
 								this.dialogFormVisible = false;
 								this.getData();
+							}).catch((error)=>{
+								this.$message.error(error.message);
 							});
 						} else {
-							put("/user/update_new_personnel", this.form).then((res) => {
+							put("/user/update_new_personnel", form).then((res) => {
 								this.$message({
 									message: res.message,
 									type: "success",
 								});
 								this.dialogFormVisible = false;
 								this.getData();
+							}).catch((error)=>{
+								this.$message.error(error.message);
 							});
 						}
 					} else {
@@ -312,6 +334,7 @@
 			},
 
 			handleClick(row) {
+				console.log(row);
 				this.isUpdate = true;
 				this.dialogFormVisible = true;
 				this.form.name = row.username;
@@ -319,11 +342,12 @@
 				this.form.phone = row.phone;
 				this.form.id = row.id;
 				this.form.email = row.email;
+				this.form.jobState = row.jobState;
 				this.form.organizationId = this.getParentsById(
 					this.options,
 					row.departmentId
 				);
-				this.form.roleId = row.roleName;
+				this.form.roleId = row.roleId;
 				this.form.age = row.age;
 				this.form.account = row.account;
 			},
@@ -344,7 +368,17 @@
 				handler(newVal, oldVal) {
 					if (newVal == false) {
 						this.isUpdate = false;
-						this.form = {};
+						this.form = {
+							id: "",
+							account: "",
+							age: "",
+							email: "",
+							name: "",
+							phone: "",
+							organizationId: "",
+							roleId: "",
+							jobState: "",
+						};
 						this.$refs.form.resetFields();
 					} else {
 						this.getRoleList();

--
Gitblit v1.9.3