From c02a3ebf5b4338710c4f9ae231d72cf591dfb97f Mon Sep 17 00:00:00 2001
From: 小小儁爺 <1694218219@qq.com>
Date: 星期一, 02 十二月 2024 11:28:04 +0800
Subject: [PATCH] 1.修改 批量派发 没绑定工艺路线的单子,显示在最前面
---
src/views/basicSettings/userList.vue | 235 +++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 196 insertions(+), 39 deletions(-)
diff --git a/src/views/basicSettings/userList.vue b/src/views/basicSettings/userList.vue
index fbb0235..7767e9f 100644
--- a/src/views/basicSettings/userList.vue
+++ b/src/views/basicSettings/userList.vue
@@ -6,7 +6,7 @@
<el-button v-waves type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>
<div style="display: flex">
- <el-button v-waves icon="el-icon-menu" @click="workingTramClick">鐢熶骇鐝粍</el-button>
+ <!-- <el-button v-waves icon="el-icon-menu" @click="workingTramClick">鐢熶骇鐝粍</el-button>-->
<el-button v-waves icon="el-icon-download" @click="upload">瀵煎叆</el-button>
</div>
</div>
@@ -29,12 +29,14 @@
<el-form-item label="鎵�灞炵粍缁�" style=" display: flex;">
<el-cascader
ref="cascader"
+ v-model="form.StuOrg"
filterable
popper-class="elCascader"
:options="StuOrgArr"
:props="defaultProps"
@change="cascaderChange"
/>
+
<!-- @focus="getUserOrganization"-->
</el-form-item>
@@ -133,10 +135,27 @@
<template slot-scope="{row}">
<div v-if="row[item.prop]==='1'&&row.wagetype">璁℃椂鍒�</div>
<div v-else-if="row[item.prop]==='2'&&row.wagetype">璁′欢鍒�</div>
- <div v-else-if="row[item.prop]==='Y'&& item.prop==='enable'"><i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" />鍦ㄨ亴</div>
- <div v-else-if="row[item.prop]==='N'&& item.prop==='enable'"><i class="el-icon-info" style="margin-right: 2px" />绂昏亴</div>
- <div v-else-if="row[item.prop]==='Y'&& item.prop==='is_role'"><i class="el-icon-share" :style="{color:$store.state.settings.theme}" @click="roleClick({row})" /></div>
- <div v-else-if="row[item.prop]==='N'&& item.prop==='is_role'"><i class="el-icon-share" style="color: rgb(180 ,181, 185)" @click="roleClick({row})" /></div>
+ <div v-else-if="row[item.prop]==='Y'&& item.prop==='enable'"><i
+ class="el-icon-success"
+ :style="{color:$store.state.settings.theme}"
+ style="margin-right: 2px"
+ />鍦ㄨ亴
+ </div>
+ <div v-else-if="row[item.prop]==='N'&& item.prop==='enable'"><i
+ class="el-icon-info"
+ style="margin-right: 2px"
+ />绂昏亴
+ </div>
+ <div v-else-if="row[item.prop]==='Y'&& item.prop==='is_role'"><i
+ class="el-icon-share"
+ :style="{color:$store.state.settings.theme}"
+ @click="roleClick({row})"
+ /></div>
+ <div v-else-if="row[item.prop]==='N'&& item.prop==='is_role'"><i
+ class="el-icon-share"
+ style="color: rgb(180 ,181, 185)"
+ @click="roleClick({row})"
+ /></div>
<div v-else-if="!row[item.prop]">/</div>
<div v-else>{{ row[item.prop] }}</div>
</template>
@@ -304,7 +323,7 @@
/>
</el-tooltip>
<el-tooltip v-del-tab-index class="item" effect="dark" content="鍒犻櫎" placement="top">
- <i :style="{color:$store.state.settings.theme}" class="el-icon-delete" @click="del(row.id)" />
+ <i :style="{color:$store.state.settings.theme}" class="el-icon-delete" @click="del(row)" />
</el-tooltip>
</div>
</template>
@@ -317,7 +336,7 @@
:page.sync="form.page"
:limit.sync="form.rows"
align="right"
- layout="total ,prev, pager, next,sizes"
+ layout="total ,prev, pager, next,sizes,jumper"
popper-class="select_bottom"
@pagination="getUserSearch"
/>
@@ -364,6 +383,7 @@
<el-cascader
ref="dialogCascader"
key="cascaderKey"
+ v-model="dialogForm.StuOrg"
filterable
popper-class="elCascader"
:options="StuOrgArr2"
@@ -371,6 +391,7 @@
style="width: 200px;"
@change="dialogCascaderChange"
/>
+
</el-form-item>
<el-form-item label="鎵�灞炵彮缁�" prop="groupcode">
<el-select
@@ -518,7 +539,7 @@
v-el-drag-dialog
title="鐢熶骇鐝粍"
:visible.sync="workingDialogVisible"
- width="800px"
+ width="1000px"
top="15vh"
:close-on-click-modal="false"
class="workingDialogVisible"
@@ -555,6 +576,29 @@
label="搴忓彿"
prop="RowNum"
/>
+ <el-table-column
+ v-if="$store.state.settings.orgType!=='W'"
+ prop="stu_torgcode"
+ label="鎵�灞炵粍缁�"
+ sortable="custom"
+ show-tooltip-when-overflow
+ >
+ <template slot-scope="{row}">
+ <el-cascader
+ v-if="row.isVisible===1"
+ ref="dialogCascader"
+ key="cascaderKey"
+ v-model="row.storg_code"
+ filterable
+ popper-class="elCascader"
+ :options="StuOrgArr2"
+ :props="defaultProps"
+ style="width: 200px;"
+ />
+ <div v-else> {{ row.org_name }}</div>
+ </template>
+ </el-table-column>
+
<el-table-column
prop="group_code"
label="鐝粍缂栫爜"
@@ -657,9 +701,10 @@
import { MesOrderStepReportSelectUserGroup } from '@/api/produceManager'
import elDragDialog from '@/directive/el-drag-dialog'
import TableColumnSettings from '@/components/TableColumnSettings'
+import { StorgGroupSelect } from '@/api/basicInfo'
export default {
- name: 'YYQD',
+ name: 'UserList',
components: {
Pagination, ImportPicker, TableColumnSettings
},
@@ -703,7 +748,8 @@
form: {
UserCode: '', // 鐢ㄦ埛缂栫爜
UserName: '', // 鐢ㄦ埛鍚嶇О
- StuOrg: '', // 鎵�灞炵粍缁�
+ StuOrg: getCookie('stu_torgcode'), // 鎵�灞炵粍缁�
+ description: getCookie('description'), // 缁勭粐绫诲瀷
wagetype: '', // 宸ヨ祫绫诲瀷
Enable: '', // 鍦ㄨ亴鐘舵��
prop: 'lm_date', // 鎺掑簭瀛楁
@@ -717,7 +763,8 @@
checkStrictly: true,
value: 'code',
label: 'name',
- children: 'children'
+ children: 'children',
+ emitPath: false
},
EnableArr: [
{ value: 'Y', label: '鍦ㄨ亴' },
@@ -749,13 +796,76 @@
fixed: false,
sortable: true
},
- { minWidth: 110, width: false, prop: 'password', label: '鐢ㄦ埛瀵嗙爜', id: 5, show: true, fixed: false, sortable: 'custom' },
- { minWidth: 110, width: false, prop: 'stu_torgcode', label: '缁勭粐缂栫爜', id: 6, show: false, fixed: false, sortable: 'custom' },
- { minWidth: 110, width: false, prop: 'org_name', label: '鎵�灞炵粍缁�', id: 7, show: true, fixed: false, sortable: 'custom' },
- { minWidth: 110, width: false, prop: 'group_code', label: '鐝粍缂栫爜', id: 8, show: false, fixed: false, sortable: 'custom' },
- { minWidth: 110, width: false, prop: 'group_name', label: '鐢熶骇鐝粍', id: 9, show: true, fixed: false, sortable: 'custom' },
- { minWidth: 110, width: false, prop: 'wagetype', label: '宸ヨ祫绫诲瀷', id: 10, show: true, fixed: false, sortable: 'custom' },
- { minWidth: 110, width: false, prop: 'mobile', label: '鑱旂郴鏂瑰紡', id: 11, show: true, fixed: false, sortable: 'custom' },
+ {
+ minWidth: 110,
+ width: false,
+ prop: 'password',
+ label: '鐢ㄦ埛瀵嗙爜',
+ id: 5,
+ show: true,
+ fixed: false,
+ sortable: 'custom'
+ },
+ {
+ minWidth: 110,
+ width: false,
+ prop: 'stu_torgcode',
+ label: '缁勭粐缂栫爜',
+ id: 6,
+ show: false,
+ fixed: false,
+ sortable: 'custom'
+ },
+ {
+ minWidth: 110,
+ width: false,
+ prop: 'org_name',
+ label: '鎵�灞炵粍缁�',
+ id: 7,
+ show: true,
+ fixed: false,
+ sortable: 'custom'
+ },
+ {
+ minWidth: 110,
+ width: false,
+ prop: 'group_code',
+ label: '鐝粍缂栫爜',
+ id: 8,
+ show: false,
+ fixed: false,
+ sortable: 'custom'
+ },
+ {
+ minWidth: 110,
+ width: false,
+ prop: 'group_name',
+ label: '鐢熶骇鐝粍',
+ id: 9,
+ show: true,
+ fixed: false,
+ sortable: 'custom'
+ },
+ {
+ minWidth: 110,
+ width: false,
+ prop: 'wagetype',
+ label: '宸ヨ祫绫诲瀷',
+ id: 10,
+ show: true,
+ fixed: false,
+ sortable: 'custom'
+ },
+ {
+ minWidth: 110,
+ width: false,
+ prop: 'mobile',
+ label: '鑱旂郴鏂瑰紡',
+ id: 11,
+ show: true,
+ fixed: false,
+ sortable: 'custom'
+ },
{
minWidth: 110,
width: false,
@@ -816,7 +926,7 @@
UserName: '',
Password: '123456',
Enable: 'Y',
- StuOrg: '',
+ StuOrg: getCookie('stu_torgcode'),
Mobile: '',
Email: '',
groupcode: '',
@@ -862,6 +972,8 @@
},
dialogVisibleRoles: false,
dialogFormRoles: {
+ stu_torgcode: '', // 鎵�灞炵粍缁�
+ description: '', // 鎵�灞炵粍缁囩被鍨�
username: '', // 鐢ㄦ埛鍚嶇О
usercode: '', // 鐢ㄦ埛缂栫爜
rolesArr: [], // 瑙掕壊绫诲瀷闆嗗悎
@@ -931,6 +1043,7 @@
// 鑾峰彇鎵�灞炵粍缁�
async getUserOrganization() {
const { data: res } = await UserOrganization()
+
this.StuOrgArr = clearAllChildren(res)
},
// 鑾峰彇鎵�灞炵粍缁囧璇濇
@@ -967,30 +1080,48 @@
reset() {
this.form.UserCode = ''
this.form.UserName = ''
- this.form.StuOrg = ''
- this.form.Enable = 'Y'
+ this.form.Enable = ''
this.form.wagetype = ''
- this.$refs.cascader.checkedValue = ''// 绾ц仈閫夋嫨鍣ㄧ殑娓呯┖
+ this.form.description = getCookie('description') === '' ? '' : getCookie('description')
+ this.form.StuOrg = getCookie('stu_torgcode') === '' ? '' : getCookie('stu_torgcode')
+ // console.log(getCookie('stu_torgcode') === '')
+
+ // if (this.$store.state.settings.orgType === '') {
+ // this.$refs.cascader.checkedValue = ''
+ // }
+
this.getUserSearch()
},
// 绾ц仈閫夋嫨鍣ㄦ敼鍙樹簨浠�
cascaderChange(val) {
- this.form.StuOrg = val[val.length - 1]
+ this.form.description = this.StuOrgArr.find(i => i.code === val) ? 'D' : 'W'
},
dialogCascaderChange(val) {
- this.dialogForm.StuOrg = val[val.length - 1]
+ this.dialogForm.groupcode = ''
+ this.getStorgGroupSelect(val, this.StuOrgArr2.find(i => i.code === val) ? 'D' : 'W')
},
// 鑾峰彇涓嬫媺鐢熶骇鐝粍
- async getMesOrderStepReportSelectUserGroup() {
- const { data: res } = await MesOrderStepReportSelectUserGroup()
+ async getStorgGroupSelect(stu_torgcode, description) {
+ const data = {
+ stu_torgcode,
+ description
+ }
+ const { data: res } = await StorgGroupSelect(data)
this.usergroupArr = res
},
// 鏂板鎸夐挳
- add(operation) {
+ async add(operation) {
this.operation = operation
this.dialogVisible = true
- this.getUserOrganization2()
- this.getMesOrderStepReportSelectUserGroup()
+
+ // this.dialogForm.StuOrg = getCookie('stu_torgcode')
+ // this.$refs.dialogCascader.checkedValue = [getCookie('stu_torgcode')]
+
+ await this.getUserOrganization2()
+
+ if (this.$store.state.settings.orgType !== '') {
+ await this.getStorgGroupSelect(getCookie('stu_torgcode'), this.StuOrgArr2.find(i => i.code === getCookie('stu_torgcode')) ? 'D' : 'W')
+ }
},
// 淇敼鎸夐挳
edit(operation, row) {
@@ -1011,17 +1142,20 @@
this.dialogForm.Email = row.email
this.dialogForm.wagetype = row.wagetype
})
- this.getMesOrderStepReportSelectUserGroup()
+ this.getStorgGroupSelect(row.stu_torgcode, this.StuOrgArr.find(i => i.code === row.stu_torgcode) ? 'D' : 'W')
this.getUserOrganization2()
},
// 鍒犻櫎鎸夐挳
- async del(id) {
+ async del(row) {
+ if (getCookie('admin') === row.usercode) {
+ return this.$message.info('鏃犳硶鍒犻櫎鐢ㄦ埛鏈韩锛�')
+ }
this.$confirm('鏄惁纭鍒犻櫎?', '鎻愮ず', {
confirmButtonText: '纭畾',
cancelButtonText: '鍙栨秷',
type: 'warning'
}).then(() => {
- DeleteUser({ Userid: id }).then(res => {
+ DeleteUser({ Userid: row.id }).then(res => {
if (res.code === '200') {
this.$message.success('鍒犻櫎鎴愬姛!')
if (this.form.page > 1 && this.tableData.length === 1) {
@@ -1041,12 +1175,13 @@
this.dialogForm.UserName = ''
this.dialogForm.Password = '123456'
this.dialogForm.Enable = 'Y'
- this.$refs.dialogCascader.checkedValue = ''
- this.dialogForm.StuOrg = ''
+ this.$refs.dialogCascader.checkedValue = getCookie('stu_torgcode')
+ this.dialogForm.StuOrg = getCookie('stu_torgcode')
this.dialogForm.Mobile = ''
this.dialogForm.Email = ''
this.dialogForm.groupcode = ''
this.dialogForm.wagetype = '2'
+ this.usergroupArr = []
this.$refs.dialogForm.clearValidate()
},
// 瀵硅瘽妗嗗彇娑�
@@ -1112,11 +1247,14 @@
this.dialogFormRoles.rolesArrSelectedArr = []
this.dialogFormRoles.rolesArr = []
+ this.dialogFormRoles.roleTree = []
this.dialogFormRoles.roleTreeSelectedArr = []
this.dialogFormRoles.username = row.username
this.dialogFormRoles.usercode = row.usercode
- UserAssociationRole({ usercode: row.usercode }).then(res => {
+ this.dialogFormRoles.stu_torgcode = row.stu_torgcode
+ this.dialogFormRoles.description = row.description
+ UserAssociationRole({ usercode: row.usercode, stu_torgcode: row.stu_torgcode, description: row.description }).then(res => {
if (res.code === '200') {
setTimeout(() => {
loading.close()
@@ -1179,7 +1317,10 @@
// 鐢ㄦ埛鍏宠仈瀵硅瘽妗嗙‘璁や簨浠�
async rolesDialogVisibleConfirm() {
this.$store.state.app.buttonIsDisabled = true
- const res = await SaveUserAssoctRole(this.dialogFormRoles.roleTreeSelectedArr, this.dialogFormRoles.usercode)
+ this.dialogFormRoles.roleTreeSelectedArr.forEach(i => {
+ i.Data = [...new Set(i.Data)]
+ })
+ const res = await SaveUserAssoctRole(this.dialogFormRoles.roleTreeSelectedArr, this.dialogFormRoles.usercode, this.dialogFormRoles.stu_torgcode, this.dialogFormRoles.description)
if (res.code === '200') {
this.dialogVisibleRoles = false
this.$message.success('淇濆瓨鎴愬姛锛�')
@@ -1243,12 +1384,17 @@
} else {
this.dialogFormRoles.roleTreeSelectedArr.forEach((i, ind) => { // 褰撻�夊瓙code鏃舵墽琛�
if (i.Code === checkedFatherCode) {
+ let flag = true
this.dialogFormRoles.roleTreeSelectedArr[ind].Data.forEach((i1, ind2) => {
if (i1 === a[0]) {
// this.dialogFormRoles.roleTreeSelectedArr[ind].Data.splice(ind2, 1)// 褰撳瓙code涓庣幇鍦ㄧ殑code鐩稿悓鏃舵墽琛�
this.dialogFormRoles.roleTreeSelectedArr[ind].Data = this.dialogFormRoles.roleTreeSelectedArr[ind].Data.filter(i2 => i2 !== a[0])
+ flag = false
} else {
- this.dialogFormRoles.roleTreeSelectedArr[ind].Data.push(a[0])// //褰撳瓙code涓庣幇鍦ㄧ殑code涓嶇浉鍚屾椂鎵ц
+ if (flag) {
+ console.log('鎵ц浜�')
+ this.dialogFormRoles.roleTreeSelectedArr[ind].Data.push(a[0])// //褰撳瓙code涓庣幇鍦ㄧ殑code涓嶇浉鍚屾椂鎵ц
+ }
}
})
// this.dialogFormRoles.roleTreeSelectedArr[ind].Data.filter((i1, ind2) => i1 !== a[0])// 杩囨护鎺夐�変腑鐩稿悓鐨�
@@ -1409,6 +1555,7 @@
workingTramClick() {
this.workingDialogVisible = true
this.getUserGroupSearch()
+ this.getUserOrganization2()
// 椤甸潰鍔犺浇瀹屽悗閲嶆柊娓叉煋琛ㄦ牸
this.$nextTick(() => {
this.$refs.workingTableData.doLayout()
@@ -1421,7 +1568,6 @@
this.workingTableData.splice(index, 1)
}
})
- this.getMesOrderStepReportSelectUserGroup()
},
// 鐢熶骇鐝粍鎺掑簭
sortChangeOfWorking({ column, prop, order }) {
@@ -1453,7 +1599,14 @@
let number = Math.random() * Math.random()// 浣滀负鍒犻櫎鏃剁殑鏍囪瘑绗�
number = number === 0 ? (10 + Math.random()) : number
- const data = { group_code: '', group_name: '', description: '', isVisible: 1, number: number }
+ const data = {
+ storg_code: getCookie('stu_torgcode'),
+ group_code: '',
+ group_name: '',
+ description: '',
+ isVisible: 1,
+ number: number
+ }
this.workingTableData.unshift(data)
},
// 鍒犻櫎
@@ -1478,6 +1631,9 @@
},
// 淇濆瓨
async saveWorking(row) {
+ if (row.storg_code.trim().length < 1) {
+ return this.$message.info('杞﹂棿涓嶈兘涓虹┖锛�')
+ }
if (row.group_code.trim().length < 1) {
return this.$message.info('鐝粍缂栫爜涓嶈兘涓虹┖锛�')
}
@@ -1488,6 +1644,7 @@
// return this.$message.info('鐝粍鎻忚堪涓嶈兘涓虹┖锛�')
// }
const data = {
+ storg_code: row.storg_code,
code: row.group_code,
name: row.group_name,
flag: row.description
--
Gitblit v1.9.3