lz 3 年 前
コミット
ee01e08df0
1 ファイル変更614 行追加614 行削除
  1. 614 614
      src/views/system/employeenInfo/index.vue

+ 614 - 614
src/views/system/employeenInfo/index.vue

@@ -513,641 +513,641 @@
 </template>
 
 <script>
-import {
-	delUser,
-	addUser,
-	updateUser,
-	getStaffList,
-	getLevelTreeSelect,
-	getNatureTreeSelect,
-	getAuthRole,
-	updateAuthRole,
-	getDataRole,
-	updateDataRole,
-	getAccountInfo,
-	getPersonnel
-} from '@/api/system/employeenInfo'
-import { getToken } from '@/utils/auth'
-import { treeselect } from '@/api/system/dept'
-import userAvatar from './profile/userAvatar.vue'
-import Treeselect from '@riophae/vue-treeselect'
-import TreeChoice from '@/components/treeChoice/index.vue'
-import '@riophae/vue-treeselect/dist/vue-treeselect.css'
-import { deepClone } from '@/utils/index.js'
+	import {
+		delUser,
+		addUser,
+		updateUser,
+		getStaffList,
+		getLevelTreeSelect,
+		getNatureTreeSelect,
+		getAuthRole,
+		updateAuthRole,
+		getDataRole,
+		updateDataRole,
+		getAccountInfo,
+		getPersonnel
+	} from '@/api/system/employeenInfo'
+	import { getToken } from '@/utils/auth'
+	import { treeselect } from '@/api/system/dept'
+	import userAvatar from './profile/userAvatar.vue'
+	import Treeselect from '@riophae/vue-treeselect'
+	import TreeChoice from '@/components/treeChoice/index.vue'
+	import '@riophae/vue-treeselect/dist/vue-treeselect.css'
+	import { deepClone } from '@/utils/index.js'
 
-export default {
-	name: 'employeenInfo',
-	dicts: [
-		'sys_normal_disable',
-		'sys_user_sex',
-		'sys_account_status',
-		'sys_employee_education',
-		'sys_marital_status',
-		'sys_employee_personality',
-		'sys_staff_adept',
-		'sys_income_life',
-		'sys_staff_hobby',
-		'sys_staff_height',
-		'sys_staff_appearance',
-		'sys_staff_constitution',
-		'sys_staff_medicalHistory',
-		'sys_staff_criminalLaw',
-		'sys_spare_relationship'
-	],
-	components: { Treeselect, TreeChoice, userAvatar },
-	data() {
-		return {
-			// 遮罩层
-			loading: true,
-			// 显示搜索条件
-			showSearch: true,
-			// 总条数
-			total: 0,
-			// 用户表格数据
-			userList: null,
-			// 弹出层标题
-			title: '',
-			// 部门树选项
-			deptOptions: undefined,
-			// 是否显示弹出层
-			open: false,
-			// 岗位选项
-			postOptions: [],
-			// 角色选项
-			roleOptions: [],
-			// 账号表单参数
-			accountForm: {
-				serialNumber: 0,
-				userNumber: '',
-				realName: '',
-				phoneNumber: '',
-				status: '',
-				sex: '',
-				idNumber: '',
-				deptIds: [],
-				levelJobIds: [],
-				naturePostIds: [],
+	export default {
+		name: 'employeenInfo',
+		dicts: [
+			'sys_normal_disable',
+			'sys_user_sex',
+			'sys_account_status',
+			'sys_employee_education',
+			'sys_marital_status',
+			'sys_employee_personality',
+			'sys_staff_adept',
+			'sys_income_life',
+			'sys_staff_hobby',
+			'sys_staff_height',
+			'sys_staff_appearance',
+			'sys_staff_constitution',
+			'sys_staff_medicalHistory',
+			'sys_staff_criminalLaw',
+			'sys_spare_relationship'
+		],
+		components: { Treeselect, TreeChoice, userAvatar },
+		data() {
+			return {
+				// 遮罩层
+				loading: true,
+				// 显示搜索条件
+				showSearch: true,
+				// 总条数
+				total: 0,
+				// 用户表格数据
+				userList: null,
+				// 弹出层标题
+				title: '',
+				// 部门树选项
+				deptOptions: undefined,
+				// 是否显示弹出层
+				open: false,
+				// 岗位选项
+				postOptions: [],
+				// 角色选项
+				roleOptions: [],
+				// 账号表单参数
+				accountForm: {
+					serialNumber: 0,
+					userNumber: '',
+					realName: '',
+					phoneNumber: '',
+					status: '',
+					sex: '',
+					idNumber: '',
+					deptIds: [],
+					levelJobIds: [],
+					naturePostIds: []
+				},
+				// 基础表单参数
+				basicsForm: {},
+				defaultProps: {
+					children: 'children',
+					label: 'label'
+				},
+				// 用户导入参数
+				upload: {
+					// 是否显示弹出层(用户导入)
+					open: false,
+					// 弹出层标题(用户导入)
+					title: '',
+					// 是否禁用上传
+					isUploading: false,
+					// 是否更新已经存在的用户数据
+					updateSupport: 0,
+					// 设置上传的请求头部
+					headers: { Authorization: 'Bearer ' + getToken() },
+					// 上传的地址
+					url: process.env.VUE_APP_BASE_API + '/system/user/importData'
+				},
+				// 查询参数
+				queryParams: {
+					pageNum: 1,
+					pageSize: 10,
+					realName: undefined,
+					phonenumber: undefined
+				},
+				// 列信息
+				columns: [
+					{ key: 0, label: `序号`, visible: true },
+					{ key: 1, label: `头像`, visible: true },
+					{ key: 2, label: `姓名`, visible: true },
+					{ key: 3, label: `公司部门`, visible: true },
+					{ key: 4, label: `级别职务`, visible: true },
+					{ key: 5, label: `性质岗位`, visible: true },
+					{ key: 6, label: `角色权限`, visible: true },
+					{ key: 7, label: `手机号码`, visible: true }
+				],
+				// 表单校验
+				accountFormRules: {
+					realName: [{ required: true, message: '姓名不能为空', trigger: 'blur' }],
+					phoneNumber: [
+						{ required: true, message: '手机号不能为空', trigger: 'blur' },
+						{
+							pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
+							message: '请输入正确的手机号码',
+							trigger: 'blur'
+						}
+					],
+					idNumber: [
+						{ required: true, message: '身份证号不能为空', trigger: 'blur' },
+						{
+							pattern: /^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
+							message: '请输入正确的身份证号码',
+							trigger: 'blur'
+						}
+					],
+					deptIds: [{ required: true, message: '请选择公司部门', trigger: 'submit' }],
+					levelJobIds: [{ required: true, message: '请选择职称级别', trigger: 'submit' }],
+					naturePostIds: [{ required: true, message: '请选择性质岗位', trigger: 'submit' }]
+				},
+				basicsRules: {
+					education: [{ required: true, message: '请选择学历', trigger: 'submit' }],
+					origin: [{ required: true, message: '请输入原籍', trigger: 'submit' }],
+					currentAddress: [{ required: true, message: '请输入现住址', trigger: 'submit' }],
+					maritalStatus: [{ required: true, message: '请选择婚姻状况', trigger: 'submit' }],
+					workExpertise: [{ required: true, message: '请输入工作特长', trigger: 'submit' }],
+					workDesire: [{ required: true, message: '请输入期望职位', trigger: 'submit' }],
+					incomeDesire: [{ required: true, message: '请输入收入愿望', trigger: 'submit' }]
+				},
+				dialogTableRolePermissions: false, // 角色权限弹出层
+				dialogPower: false, // 责权信息弹出层
+				accountShow: true, // 账号信息
+				basicsShow: false, // 基础信息
+				dialogTableDataRole: false, // 数据权限
+				props: { multiple: true }, // 联级多选
+				levelList: [], // 级别列表
+				natureList: [], // 性质岗位列表
+				levelJobs: [], // 责权信息列表
+				jodId: '', // 职位id
+				responsibility: '', // 职责
+				right: '', // 权力
+				roleList: [], // 员工角色列表
+				dateRange: [], // 日期范围
+				basicsForm: {
+					age: '', //年龄
+					appearance: '', //颜值
+					character: '', //性格
+					constitution: '', //体质
+					contactEmployer: '', //工作单位
+					contactName: '', //备用联系人姓名
+					contactPhoneNumber: '', //备用联系人电话
+					contactRelation: '', //与之关系
+					contactSex: '', //备用联系人性别
+					criminalLaw: '', //刑法
+					currentAddress: '', //现住址
+					dateOfBirth: '', //出生日期
+					// descriptionJson: '',
+					descriptionJson: [{ name: '', startDate: '', endDate: '', duty: '', inCome: '', id: 1 }], //原工作单位json串
+					dream: '', //梦想
+					education: '', //学历
+					favorite: [], //喜爱
+					height: '', //身高
+					householdIncome: '', //家庭收入
+					incomeDesire: '', //收入愿望
+					life: '', //生活
+					maritalStatus: '', //婚姻状况
+					medicalHistory: '', //病史
+					memberOfFamily: '', //家庭成员
+					origin: '', //原籍
+					personnelType: 0, //人员类型
+					qqNumber: '', //qq号
+					specialty: [], //擅长
+					workDesire: '', //期望职位
+					workExpertise: '', //工作特长
+					wxUserId: '' //企业微信号
+				},
+				rolesParams: {
+					roleName: undefined,
+					roleKey: undefined,
+					roleSort: undefined
+				},
+				DataRoleParams: {
+					pageNum: 1,
+					pageSize: 10
+				},
+				dataRoleListAll: [], // 所有数据权限列表
+				dataRoleList: [] // 员工数据权限
+			}
+		},
+		created() {
+			this.getList()
+			this.getTreeselect()
+		},
+		methods: {
+			/** 查询用户列表 */
+			getList() {
+				this.loading = true
+				getStaffList(this.queryParams).then((response) => {
+					this.userList = response.rows
+					this.total = response.total
+					this.loading = false
+				})
 			},
-			// 基础表单参数
-			basicsForm: {},
-			defaultProps: {
-				children: 'children',
-				label: 'label'
+			/** 查询部门下拉树结构 */
+			getTreeselect() {
+				treeselect().then((response) => {
+					this.deptOptions = response.data
+				})
 			},
-			// 用户导入参数
-			upload: {
-				// 是否显示弹出层(用户导入)
-				open: false,
-				// 弹出层标题(用户导入)
-				title: '',
-				// 是否禁用上传
-				isUploading: false,
-				// 是否更新已经存在的用户数据
-				updateSupport: 0,
-				// 设置上传的请求头部
-				headers: { Authorization: 'Bearer ' + getToken() },
-				// 上传的地址
-				url: process.env.VUE_APP_BASE_API + '/system/user/importData'
+			// 节点单击事件
+			handleNodeClick(data) {
+				this.queryParams.deptId = data.id
+				this.getList()
 			},
-			// 查询参数
-			queryParams: {
-				pageNum: 1,
-				pageSize: 10,
-				realName: undefined,
-				phonenumber: undefined
+			// 取消按钮
+			cancel() {
+				this.open = false
+				this.reset()
 			},
-			// 列信息
-			columns: [
-				{ key: 0, label: `序号`, visible: true },
-				{ key: 1, label: `头像`, visible: true },
-				{ key: 2, label: `姓名`, visible: true },
-				{ key: 3, label: `公司部门`, visible: true },
-				{ key: 4, label: `级别职务`, visible: true },
-				{ key: 5, label: `性质岗位`, visible: true },
-				{ key: 6, label: `角色权限`, visible: true },
-				{ key: 7, label: `手机号码`, visible: true }
-			],
-			// 表单校验
-			accountFormRules: {
-				realName: [{ required: true, message: '姓名不能为空', trigger: 'blur' }],
-				phoneNumber: [
-					{ required: true, message: '手机号不能为空', trigger: 'blur' },
-					{
-						pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
-						message: '请输入正确的手机号码',
-						trigger: 'blur'
+			// 表单重置
+			reset() {
+				this.form = {
+					userId: undefined,
+					deptId: undefined,
+					// userName: undefined,
+					nickName: undefined,
+					password: undefined,
+					phonenumber: undefined,
+					email: undefined,
+					sex: undefined,
+					status: '0',
+					remark: undefined,
+					postIds: [],
+					roleIds: []
+				}
+				this.resetForm('form')
+			},
+			/** 搜索按钮操作 */
+			handleQuery() {
+				this.queryParams.pageNum = 1
+				this.getList()
+			},
+			/** 重置按钮操作 */
+			resetQuery() {
+				this.resetForm('queryForm')
+				this.handleQuery()
+			},
+			/** 新增按钮操作 */
+			handleAdd() {
+				this.reset()
+				this.getTreeselect()
+				this.open = true
+				this.title = '添加用户'
+				this.getLevelList()
+				this.getNatureList()
+				// this.userList.map((item, index, c) => item.serialNumber)
+				this.accountForm.serialNumber = this.total + 1
+				console.log(this.accountForm.serialNumber)
+			},
+			// 修改角色权限
+			getRolePermissions(row) {
+				this.userId = row.userId
+				getAuthRole(row.userId).then((res) => {
+					if (res.code === 200) {
+						this.roleList = res.roles
+						console.log(this.roleList)
+						this.dialogTableRolePermissions = true
 					}
-				],
-				idNumber: [
-					{ required: true, message: '身份证号不能为空', trigger: 'blur' },
-					{
-						pattern: /^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/,
-						message: '请输入正确的身份证号码',
-						trigger: 'blur'
+				})
+			},
+			// 修改数据权限
+			getDataRole(row) {
+				this.userId = row.userId
+				getDataRole(row.userId).then((res) => {
+					console.log(res)
+					if (res.code === 200) {
+						this.dataRoleList = res.dataRoles
+						console.log(this.dataRoleList)
+						this.dialogTableDataRole = true
 					}
-				],
-				deptIds: [{ required: true, message: '请选择公司部门', trigger: 'submit' }],
-				levelJobIds: [{ required: true, message: '请选择职称级别', trigger: 'submit' }],
-				naturePostIds: [{ required: true, message: '请选择性质岗位', trigger: 'submit' }]
+				})
 			},
-			basicsRules: {
-				education: [{ required: true, message: '请选择学历', trigger: 'submit' }],
-				origin: [{ required: true, message: '请输入原籍', trigger: 'submit' }],
-				currentAddress: [{ required: true, message: '请输入现住址', trigger: 'submit' }],
-				maritalStatus: [{ required: true, message: '请选择婚姻状况', trigger: 'submit' }],
-				workExpertise: [{ required: true, message: '请输入工作特长', trigger: 'submit' }],
-				workDesire: [{ required: true, message: '请输入期望职位', trigger: 'submit' }],
-				incomeDesire: [{ required: true, message: '请输入收入愿望', trigger: 'submit' }]
+			// 保存数据权限修改
+			saveDataRole() {
+				let newArr = this.dataRoleList.filter((item, index, c) => item.flag == true)
+				let dataRoleIds = newArr.map((item, index, c) => item.dataRoleId)
+				// let dataRoleIdsStr = dataRoleIds.join(',')
+				updateDataRole({ userId: this.userId, roleIds: dataRoleIds }).then((res) => {
+					console.log(res)
+					if (res.code === 200) {
+						this.dialogTableDataRole = false
+						this.$msg({ message: '修改成功' })
+					}
+				})
 			},
-			dialogTableRolePermissions: false, // 角色权限弹出层
-			dialogPower: false, // 责权信息弹出层
-			accountShow: true, // 账号信息
-			basicsShow: false, // 基础信息
-			dialogTableDataRole: false, // 数据权限
-			props: { multiple: true }, // 联级多选
-			levelList: [], // 级别列表
-			natureList: [], // 性质岗位列表
-			levelJobs: [], // 责权信息列表
-			jodId: '', // 职位id
-			responsibility: '', // 职责
-			right: '', // 权力
-			roleList: [], // 员工角色列表
-			dateRange: [], // 日期范围
-			basicsForm: {
-				age: '', //年龄
-				appearance: '', //颜值
-				character: '', //性格
-				constitution: '', //体质
-				contactEmployer: '', //工作单位
-				contactName: '', //备用联系人姓名
-				contactPhoneNumber: '', //备用联系人电话
-				contactRelation: '', //与之关系
-				contactSex: '', //备用联系人性别
-				criminalLaw: '', //刑法
-				currentAddress: '', //现住址
-				dateOfBirth: '', //出生日期
-				// descriptionJson: '',
-				descriptionJson: [{ name: '', startDate: '', endDate: '', duty: '', inCome: '', id: 1 }], //原工作单位json串
-				dream: '', //梦想
-				education: '', //学历
-				favorite: [], //喜爱
-				height: '', //身高
-				householdIncome: '', //家庭收入
-				incomeDesire: '', //收入愿望
-				life: '', //生活
-				maritalStatus: '', //婚姻状况
-				medicalHistory: '', //病史
-				memberOfFamily: '', //家庭成员
-				origin: '', //原籍
-				personnelType: 0, //人员类型
-				qqNumber: '', //qq号
-				specialty: [], //擅长
-				workDesire: '', //期望职位
-				workExpertise: '', //工作特长
-				wxUserId: '' //企业微信号
+			// 取消数据权限修改
+			cancalDataRole() {
+				this.dialogTableDataRole = false
 			},
-			rolesParams: {
-				roleName: undefined,
-				roleKey: undefined,
-				roleSort: undefined
+			// 切换角色选中状态
+			roleChange(row, index) {
+				row.flag = !row.flag
 			},
-			DataRoleParams: {
-				pageNum: 1,
-				pageSize: 10
+			// 切换数据角色选中状态
+			dataRoleChange(row, index) {
+				row.flag = !row.flag
 			},
-			dataRoleListAll: [], // 所有数据权限列表
-			dataRoleList: [] // 员工数据权限
-		}
-	},
-	created() {
-		this.getList()
-		this.getTreeselect()
-	},
-	methods: {
-		/** 查询用户列表 */
-		getList() {
-			this.loading = true
-			getStaffList(this.queryParams).then((response) => {
-				this.userList = response.rows
-				this.total = response.total
-				this.loading = false
-			})
-		},
-		/** 查询部门下拉树结构 */
-		getTreeselect() {
-			treeselect().then((response) => {
-				this.deptOptions = response.data
-			})
-		},
-		// 节点单击事件
-		handleNodeClick(data) {
-			this.queryParams.deptId = data.id
-			this.getList()
-		},
-		// 取消按钮
-		cancel() {
-			this.open = false
-			this.reset()
-		},
-		// 表单重置
-		reset() {
-			this.form = {
-				userId: undefined,
-				deptId: undefined,
-				// userName: undefined,
-				nickName: undefined,
-				password: undefined,
-				phonenumber: undefined,
-				email: undefined,
-				sex: undefined,
-				status: '0',
-				remark: undefined,
-				postIds: [],
-				roleIds: []
-			}
-			this.resetForm('form')
-		},
-		/** 搜索按钮操作 */
-		handleQuery() {
-			this.queryParams.pageNum = 1
-			this.getList()
-		},
-		/** 重置按钮操作 */
-		resetQuery() {
-			this.resetForm('queryForm')
-			this.handleQuery()
-		},
-		/** 新增按钮操作 */
-		handleAdd() {
-			this.reset()
-			this.getTreeselect()
-			this.open = true
-			this.title = '添加用户'
-			this.getLevelList()
-			this.getNatureList()
-			// this.userList.map((item, index, c) => item.serialNumber)
-			this.accountForm.serialNumber = this.total + 1
-			console.log(this.accountForm.serialNumber)
-		},
-		// 修改角色权限
-		getRolePermissions(row) {
-			this.userId = row.userId
-			getAuthRole(row.userId).then((res) => {
-				if (res.code === 200) {
-					this.roleList = res.roles
-					console.log(this.roleList)
-					this.dialogTableRolePermissions = true
-				}
-			})
-		},
-		// 修改数据权限
-		getDataRole(row) {
-			this.userId = row.userId
-			getDataRole(row.userId).then((res) => {
-				console.log(res)
-				if (res.code === 200) {
-					this.dataRoleList = res.dataRoles
-					console.log(this.dataRoleList)
-					this.dialogTableDataRole = true
-				}
-			})
-		},
-		// 保存数据权限修改
-		saveDataRole() {
-			let newArr = this.dataRoleList.filter((item, index, c) => item.flag == true)
-			let dataRoleIds = newArr.map((item, index, c) => item.dataRoleId)
-			// let dataRoleIdsStr = dataRoleIds.join(',')
-			updateDataRole({ 'userId': this.userId, 'roleIds': dataRoleIds }).then((res) => {
-				console.log(res)
-				if (res.code === 200) {
-					this.dialogTableDataRole = false
-					this.$msg({ message: '修改成功' })
-				}
-			})
-		},
-		// 取消数据权限修改
-		cancalDataRole() {
-			this.dialogTableDataRole = false
-		},
-		// 切换角色选中状态
-		roleChange(row, index) {
-			row.flag = !row.flag
-		},
-		// 切换数据角色选中状态
-		dataRoleChange(row, index) {
-			row.flag = !row.flag
-		},
-		// 保存角色权限修改
-		saveRolePermissions() {
-			console.log(this.roleList)
-			let newArr = this.roleList.filter((item, index, c) => item.flag == true)
-			let roleIds = newArr.map((item, index, c) => item.roleId)
-			// let roleIdsStr = roleIds.join(',')
-			updateAuthRole({ userId: this.userId, roleIds: roleIds }).then((res) => {
-				if (res.code === 200) {
-					this.dialogTableRolePermissions = false
-					this.$msg({ message: '修改成功' })
-				}
-			})
-		},
-		// 取消角色权限修改
-		cancalRolePermissions() {
-			this.dialogTableRolePermissions = false
-		},
-		// 职责权限
-		getDutiesPowers(row) {
-			let staff = this.userList.find((item, index, c) => item.userId === row.userId)
-			this.levelJobs = staff.levelJobs
-			// this.jodId = this.levelJobs[0].jobId
-			console.log(this.levelJobs)
-			this.dialogPower = true
-		},
-		// 选择职责权限
-		changeJob(val) {
-			console.log(val)
-			this.responsibility = val.responsibility
-			this.right = val.right
-		},
-		// 账号信息
-		getAccountInfo() {
-			this.accountShow = true
-			this.basicsShow = false
-		},
-		// 基础信息
-		getBasicsInfo() {
-			this.accountShow = false
-			this.basicsShow = true
-		},
-		// 修改头像
-		modifyAvatar(row) {
-			this.$refs.userAvatar.editCropper()
-		},
-		// 关闭责权信息
-		handleClose() {
-			this.dialogPower = false
-		},
-		//获取级别数据
-		getLevelList() {
-			getLevelTreeSelect().then((res) => {
-				if (res.code == 200) {
-					this.levelList = res.data
-				} else {
-					this.$msg({ type: 'error', message: res.msg })
-				}
-			})
-		},
-		// 获取性质岗位数据
-		getNatureList() {
-			getNatureTreeSelect().then((res) => {
-				if (res.code == 200) {
-					this.natureList = res.data
-				} else {
-					this.$msg({ type: 'error', message: res.msg })
-				}
-			})
-		},
-		/** 修改按钮操作 */
-		handleUpdate(row) {
-			// debugger
-			this.userId = row.userId
-			this.getTreeselect()
-			this.getLevelList()
-			this.getNatureList()
-			// 查询账号信息
-			getAccountInfo(row.userId).then((response) => {
-				console.log(response)
-				this.open = true
-				this.title = '修改用户'
-				this.accountForm = response.data
-				this.accountForm.deptIds = response.data.deptIds.split(',')
-				this.accountForm.levelJobIds = response.data.levelJobIds.split(',')
-				this.accountForm.naturePostIds = response.data.naturePostIds.split(',')
-			})
-			// 查询基础信息
-			getPersonnel(row.userId).then(res => {
-				console.log(res)
-				this.basicsForm = res.data
-				this.basicsForm.descriptionJson = JSON.parse( res.data.descriptionJson );
-				this.basicsForm.favorite = res.data.favorite.split(',')
-				this.basicsForm.specialty = res.data.specialty.split(',')
-			})
-		},
-		/** 提交按钮 */
-		submitForm: function () {
-			let accountStr = deepClone(this.accountForm)
-			accountStr.deptIds = accountStr.deptIds.join(',')
-			accountStr.levelJobIds = accountStr.levelJobIds.join(',')
-			accountStr.naturePostIds = accountStr.naturePostIds.join(',')
-			let str = deepClone(this.basicsForm)
-			str.dateOfBirth = this.ageInfo.birthday
-			str.age = this.ageInfo.age
-			str.favorite = str.favorite.join(',')
-			str.specialty = str.specialty.join(',')
-			str.descriptionJson = JSON.stringify(str.descriptionJson)
-			let params = { ...accountStr, ...str }
-			params.userId = this.userId
-			console.log(params)
-			this.$refs['accountForm'].validate((valid) => {
-				if (valid) {
-					if (params.userId != null) {
-						console.log(1231231312)
-						updateUser(params).then((response) => {
-							this.$modal.msgSuccess('修改成功')
-							this.open = false
-							this.getList()
-						})
+			// 保存角色权限修改
+			saveRolePermissions() {
+				console.log(this.roleList)
+				let newArr = this.roleList.filter((item, index, c) => item.flag == true)
+				let roleIds = newArr.map((item, index, c) => item.roleId)
+				// let roleIdsStr = roleIds.join(',')
+				updateAuthRole({ userId: this.userId, roleIds: roleIds }).then((res) => {
+					if (res.code === 200) {
+						this.dialogTableRolePermissions = false
+						this.$msg({ message: '修改成功' })
+					}
+				})
+			},
+			// 取消角色权限修改
+			cancalRolePermissions() {
+				this.dialogTableRolePermissions = false
+			},
+			// 职责权限
+			getDutiesPowers(row) {
+				let staff = this.userList.find((item, index, c) => item.userId === row.userId)
+				this.levelJobs = staff.levelJobs
+				// this.jodId = this.levelJobs[0].jobId
+				console.log(this.levelJobs)
+				this.dialogPower = true
+			},
+			// 选择职责权限
+			changeJob(val) {
+				console.log(val)
+				this.responsibility = val.responsibility
+				this.right = val.right
+			},
+			// 账号信息
+			getAccountInfo() {
+				this.accountShow = true
+				this.basicsShow = false
+			},
+			// 基础信息
+			getBasicsInfo() {
+				this.accountShow = false
+				this.basicsShow = true
+			},
+			// 修改头像
+			modifyAvatar(row) {
+				this.$refs.userAvatar.editCropper()
+			},
+			// 关闭责权信息
+			handleClose() {
+				this.dialogPower = false
+			},
+			//获取级别数据
+			getLevelList() {
+				getLevelTreeSelect().then((res) => {
+					if (res.code == 200) {
+						this.levelList = res.data
 					} else {
-						addUser(params).then((response) => {
-							this.$modal.msgSuccess('新增成功')
-							this.open = false
-							this.getList()
-						})
+						this.$msg({ type: 'error', message: res.msg })
+					}
+				})
+			},
+			// 获取性质岗位数据
+			getNatureList() {
+				getNatureTreeSelect().then((res) => {
+					if (res.code == 200) {
+						this.natureList = res.data
+					} else {
+						this.$msg({ type: 'error', message: res.msg })
 					}
-				}
-			})
-		},
-		/** 删除按钮操作 */
-		handleDelete(row) {
-			// const userIds = row.userId
-			this.$modal
-				.confirm('是否确认删除用户编号为"' + row.userId + '"的数据项?')
-				.then(function () {
-					return delUser(row.userId)
 				})
-				.then(() => {
-					this.getList()
-					this.$modal.msgSuccess('删除成功')
+			},
+			/** 修改按钮操作 */
+			handleUpdate(row) {
+				// debugger
+				this.userId = row.userId
+				this.getTreeselect()
+				this.getLevelList()
+				this.getNatureList()
+				// 查询账号信息
+				getAccountInfo(row.userId).then((response) => {
+					console.log(response)
+					this.open = true
+					this.title = '修改用户'
+					this.accountForm = response.data
+					this.accountForm.deptIds = response.data.deptIds.split(',').map((item) => Number(item))
+					this.accountForm.levelJobIds = response.data.levelJobIds.split(',')
+					this.accountForm.naturePostIds = response.data.naturePostIds.split(',')
 				})
-				.catch(() => {})
-		},
-		/** 导出按钮操作 */
-		handleExport() {
-			this.download(
-				'system/user/export',
-				{
-					...this.queryParams
-				},
-				`user_${new Date().getTime()}.xlsx`
-			)
-		},
-		/** 导入按钮操作 */
-		handleImport() {
-			this.upload.title = '用户导入'
-			this.upload.open = true
-		},
-		/** 下载模板操作 */
-		importTemplate() {
-			this.download('system/user/importTemplate', {}, `user_template_${new Date().getTime()}.xlsx`)
-		},
-		// 文件上传中处理
-		handleFileUploadProgress(event, file, fileList) {
-			this.upload.isUploading = true
-		},
-		// 文件上传成功处理
-		handleFileSuccess(response, file, fileList) {
-			this.upload.open = false
-			this.upload.isUploading = false
-			this.$refs.upload.clearFiles()
-			this.$alert(response.msg, '导入结果', { dangerouslyUseHTMLString: true })
-			this.getList()
-		},
-		// 提交上传文件
-		submitFileForm() {
-			this.$refs.upload.submit()
-		},
-		addDescription(id) {
-			this.basicsForm.descriptionJson.push({ name: '', startDate: '', endDate: '', duty: '', inCome: '', id: id + 1 })
-		},
-		//删除原单位
-		delDescription(id) {
-			this.basicsForm.descriptionJson = this.basicsForm.descriptionJson.filter((item) => item.id != id)
-		}
-	},
-	computed: {
-		//获取主题颜色
-		theme() {
-			return this.$store.state.settings.theme
+				// 查询基础信息
+				getPersonnel(row.userId).then((res) => {
+					console.log(res)
+					this.basicsForm = res.data
+					this.basicsForm.descriptionJson = JSON.parse(res.data.descriptionJson)
+					this.basicsForm.favorite = res.data.favorite.split(',')
+					this.basicsForm.specialty = res.data.specialty.split(',')
+				})
+			},
+			/** 提交按钮 */
+			submitForm: function () {
+				let accountStr = deepClone(this.accountForm)
+				accountStr.deptIds = accountStr.deptIds.join(',')
+				accountStr.levelJobIds = accountStr.levelJobIds.join(',')
+				accountStr.naturePostIds = accountStr.naturePostIds.join(',')
+				let str = deepClone(this.basicsForm)
+				str.dateOfBirth = this.ageInfo.birthday
+				str.age = this.ageInfo.age
+				str.favorite = str.favorite.join(',')
+				str.specialty = str.specialty.join(',')
+				str.descriptionJson = JSON.stringify(str.descriptionJson)
+				let params = { ...accountStr, ...str }
+				params.userId = this.userId
+				console.log(params)
+				this.$refs['accountForm'].validate((valid) => {
+					if (valid) {
+						if (params.userId != null) {
+							console.log(1231231312)
+							updateUser(params).then((response) => {
+								this.$modal.msgSuccess('修改成功')
+								this.open = false
+								this.getList()
+							})
+						} else {
+							addUser(params).then((response) => {
+								this.$modal.msgSuccess('新增成功')
+								this.open = false
+								this.getList()
+							})
+						}
+					}
+				})
+			},
+			/** 删除按钮操作 */
+			handleDelete(row) {
+				// const userIds = row.userId
+				this.$modal
+					.confirm('是否确认删除用户编号为"' + row.userId + '"的数据项?')
+					.then(function () {
+						return delUser(row.userId)
+					})
+					.then(() => {
+						this.getList()
+						this.$modal.msgSuccess('删除成功')
+					})
+					.catch(() => {})
+			},
+			/** 导出按钮操作 */
+			handleExport() {
+				this.download(
+					'system/user/export',
+					{
+						...this.queryParams
+					},
+					`user_${new Date().getTime()}.xlsx`
+				)
+			},
+			/** 导入按钮操作 */
+			handleImport() {
+				this.upload.title = '用户导入'
+				this.upload.open = true
+			},
+			/** 下载模板操作 */
+			importTemplate() {
+				this.download('system/user/importTemplate', {}, `user_template_${new Date().getTime()}.xlsx`)
+			},
+			// 文件上传中处理
+			handleFileUploadProgress(event, file, fileList) {
+				this.upload.isUploading = true
+			},
+			// 文件上传成功处理
+			handleFileSuccess(response, file, fileList) {
+				this.upload.open = false
+				this.upload.isUploading = false
+				this.$refs.upload.clearFiles()
+				this.$alert(response.msg, '导入结果', { dangerouslyUseHTMLString: true })
+				this.getList()
+			},
+			// 提交上传文件
+			submitFileForm() {
+				this.$refs.upload.submit()
+			},
+			addDescription(id) {
+				this.basicsForm.descriptionJson.push({ name: '', startDate: '', endDate: '', duty: '', inCome: '', id: id + 1 })
+			},
+			//删除原单位
+			delDescription(id) {
+				this.basicsForm.descriptionJson = this.basicsForm.descriptionJson.filter((item) => item.id != id)
+			}
 		},
-		//根据身份证号获取年龄和生日
-		ageInfo() {
-			let num = this.accountForm.idNumber
-			if (/^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/.test(num)) {
-				let birthday = num.substring(6, 10) + '-' + num.substring(10, 12) + '-' + num.substring(12, 14)
-				var birthdays = new Date(birthday.replace(/-/g, '/'))
-				let d = new Date()
-				let age = d.getFullYear() - birthdays.getFullYear() - (d.getMonth() < birthdays.getMonth() || (d.getMonth() == birthdays.getMonth() && d.getDate() < birthdays.getDate()) ? 1 : 0)
+		computed: {
+			//获取主题颜色
+			theme() {
+				return this.$store.state.settings.theme
+			},
+			//根据身份证号获取年龄和生日
+			ageInfo() {
+				let num = this.accountForm.idNumber
+				if (/^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/.test(num)) {
+					let birthday = num.substring(6, 10) + '-' + num.substring(10, 12) + '-' + num.substring(12, 14)
+					var birthdays = new Date(birthday.replace(/-/g, '/'))
+					let d = new Date()
+					let age = d.getFullYear() - birthdays.getFullYear() - (d.getMonth() < birthdays.getMonth() || (d.getMonth() == birthdays.getMonth() && d.getDate() < birthdays.getDate()) ? 1 : 0)
+					return {
+						age,
+						birthday
+					}
+				}
 				return {
-					age,
-					birthday
+					age: '',
+					birthday: ''
+				}
+			},
+			isClick() {
+				return function (id) {
+					let obj = this.basicsForm.descriptionJson.find((item) => item.id == id)
+					let values = Object.values(obj).filter((item) => typeof item == 'string')
+					return values.every((item) => item != '')
+				}
+			},
+			//判断是不是最后一条
+			isLast() {
+				return function (id) {
+					let obj = this.basicsForm.descriptionJson.some((item) => item.id > id)
+					return !obj
 				}
-			}
-			return {
-				age: '',
-				birthday: ''
-			}
-		},
-		isClick() {
-			return function (id) {
-				let obj = this.basicsForm.descriptionJson.find((item) => item.id == id)
-				let values = Object.values(obj).filter((item) => typeof item == 'string')
-				return values.every((item) => item != '')
-			}
-		},
-		//判断是不是最后一条
-		isLast() {
-			return function (id) {
-				let obj = this.basicsForm.descriptionJson.some((item) => item.id > id)
-				return !obj
 			}
 		}
 	}
-}
 </script>
 <style scoped>
-.responsibility {
-	width: 108px;
-	height: 32px;
-	margin-top: 20px;
-	font-weight: bold;
-}
-.option {
-	display: flex;
-	margin-bottom: 10px;
-	border-bottom: 1px solid #dfe6ec;
-}
-.account {
-	width: 90px;
-	height: 40px;
-	text-align: center;
-	line-height: 40px;
-	font-size: 14px;
-	border: 1px solid #dfe6ec;
-	border-top-left-radius: 5px;
-	border-right: none;
-	border-bottom: none;
-}
-.basics {
-	width: 90px;
-	height: 40px;
-	text-align: center;
-	line-height: 40px;
-	font-size: 14px;
-	border: 1px solid #dfe6ec;
-	border-bottom: none;
-}
-.basics_form {
-	overflow: auto;
-	height: 600px;
-}
-.img_height {
-	height: 32px;
-	width: 32px;
-	vertical-align: middle;
-	cursor: pointer;
-}
-.el-col-lg-4-8 {
-	width: 20%;
-}
-.search_form {
-	display: flex;
-	justify-content: space-between;
-}
-.search_form .el-form-item {
-	margin-bottom: 0;
-}
-.role_ {
-	margin-left: 5px;
-}
-::v-deep .el-radio__inner {
-	border-radius: 0;
-	position: relative;
-}
-::v-deep .el-radio__input.is-checked .el-radio__inner::after {
-	background: none;
-	border-radius: 0;
-	-webkit-box-sizing: content-box;
-	box-sizing: content-box;
-	content: '';
-	border: 1px solid #ffffff;
-	border-left: 0;
-	border-top: 0;
-	height: 7px;
-	left: 4px;
-	position: absolute;
-	top: 1px;
-	-webkit-transform: rotate(45deg);
-	transform: rotate(45deg);
-	width: 3px;
-	-webkit-transition: -webkit-transform 0.15s ease-in 0.05s;
-	transition: -webkit-transform 0.15s ease-in 0.05s;
-	transition: transform 0.15s ease-in 0.05s;
-	transition: transform 0.15s ease-in 0.05s, -webkit-transform 0.15s ease-in 0.05s;
-	-webkit-transform-origin: center;
-	transform-origin: center;
-}
-.description {
-	border-top: 1px solid #dedede;
-	padding-top: 10px;
-	margin-top: 10px;
-}
-</style>
+	.responsibility {
+		width: 108px;
+		height: 32px;
+		margin-top: 20px;
+		font-weight: bold;
+	}
+	.option {
+		display: flex;
+		margin-bottom: 10px;
+		border-bottom: 1px solid #dfe6ec;
+	}
+	.account {
+		width: 90px;
+		height: 40px;
+		text-align: center;
+		line-height: 40px;
+		font-size: 14px;
+		border: 1px solid #dfe6ec;
+		border-top-left-radius: 5px;
+		border-right: none;
+		border-bottom: none;
+	}
+	.basics {
+		width: 90px;
+		height: 40px;
+		text-align: center;
+		line-height: 40px;
+		font-size: 14px;
+		border: 1px solid #dfe6ec;
+		border-bottom: none;
+	}
+	.basics_form {
+		overflow: auto;
+		height: 600px;
+	}
+	.img_height {
+		height: 32px;
+		width: 32px;
+		vertical-align: middle;
+		cursor: pointer;
+	}
+	.el-col-lg-4-8 {
+		width: 20%;
+	}
+	.search_form {
+		display: flex;
+		justify-content: space-between;
+	}
+	.search_form .el-form-item {
+		margin-bottom: 0;
+	}
+	.role_ {
+		margin-left: 5px;
+	}
+	::v-deep .el-radio__inner {
+		border-radius: 0;
+		position: relative;
+	}
+	::v-deep .el-radio__input.is-checked .el-radio__inner::after {
+		background: none;
+		border-radius: 0;
+		-webkit-box-sizing: content-box;
+		box-sizing: content-box;
+		content: '';
+		border: 1px solid #ffffff;
+		border-left: 0;
+		border-top: 0;
+		height: 7px;
+		left: 4px;
+		position: absolute;
+		top: 1px;
+		-webkit-transform: rotate(45deg);
+		transform: rotate(45deg);
+		width: 3px;
+		-webkit-transition: -webkit-transform 0.15s ease-in 0.05s;
+		transition: -webkit-transform 0.15s ease-in 0.05s;
+		transition: transform 0.15s ease-in 0.05s;
+		transition: transform 0.15s ease-in 0.05s, -webkit-transform 0.15s ease-in 0.05s;
+		-webkit-transform-origin: center;
+		transform-origin: center;
+	}
+	.description {
+		border-top: 1px solid #dedede;
+		padding-top: 10px;
+		margin-top: 10px;
+	}
+</style>