|
|
@@ -89,23 +89,18 @@
|
|
|
<deptSelect
|
|
|
v-model="form.executeDeptId"
|
|
|
@changeGroup="searchDeptNodeClick"
|
|
|
+ filterable
|
|
|
/> </el-form-item
|
|
|
></el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="执行人" prop="executeUserId">
|
|
|
- <el-select
|
|
|
+ <userSelect
|
|
|
v-model="form.executeUserId"
|
|
|
+ :group-id="form.executeDeptId"
|
|
|
+ :label="form.executeUserName"
|
|
|
@change="changeExecutor"
|
|
|
- filterable
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in executorList"
|
|
|
- :key="item.id"
|
|
|
- :value="item.id"
|
|
|
- :label="item.name"
|
|
|
- ></el-option>
|
|
|
- </el-select> </el-form-item></el-col
|
|
|
+ :placeholder="form.executeDeptId ? '请选择人员' : '请先选择部门'"
|
|
|
+ /> </el-form-item></el-col
|
|
|
></el-row>
|
|
|
<el-row v-else>
|
|
|
<el-col :span="8">
|
|
|
@@ -114,23 +109,18 @@
|
|
|
v-model="form.receiveDeptId"
|
|
|
@changeGroup="searchDeptNodeClick"
|
|
|
ref="deptSelect"
|
|
|
+ filterable
|
|
|
/> </el-form-item
|
|
|
></el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="接收人" prop="receiveUserId">
|
|
|
- <el-select
|
|
|
+ <userSelect
|
|
|
v-model="form.receiveUserId"
|
|
|
+ :group-id="form.receiveDeptId"
|
|
|
+ :label="form.receiveUserName"
|
|
|
@change="changeExecutor"
|
|
|
- filterable
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in executorList"
|
|
|
- :key="item.id"
|
|
|
- :value="item.id"
|
|
|
- :label="item.name"
|
|
|
- ></el-option>
|
|
|
- </el-select> </el-form-item></el-col
|
|
|
+ :placeholder="form.receiveDeptId ? '请选择人员' : '请先选择部门'"
|
|
|
+ /> </el-form-item></el-col
|
|
|
></el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="8">
|
|
|
@@ -168,7 +158,7 @@
|
|
|
} from '@/api/inspectionProjectRequest';
|
|
|
import { inspectionProjectStatus } from '@/enum/dict.js';
|
|
|
import deptSelect from '@/components/CommomSelect/dept-select.vue';
|
|
|
- import { getUserPage } from '@/api/system/organization';
|
|
|
+ import userSelect from '@/components/CommomSelect/user-select.vue';
|
|
|
import { recordingMethodList } from '@/utils/util.js';
|
|
|
import { getCode } from '@/api/login/index.js';
|
|
|
const defaultForm = {
|
|
|
@@ -186,7 +176,7 @@
|
|
|
type: 1
|
|
|
};
|
|
|
export default {
|
|
|
- components: { deptSelect },
|
|
|
+ components: { deptSelect, userSelect },
|
|
|
|
|
|
data() {
|
|
|
return {
|
|
|
@@ -194,7 +184,6 @@
|
|
|
recordingMethodList,
|
|
|
pgaeName: '',
|
|
|
form: { ...defaultForm },
|
|
|
- executorList: [],
|
|
|
selection: [],
|
|
|
list: [],
|
|
|
templateLis: [],
|
|
|
@@ -499,15 +488,6 @@
|
|
|
this.templateIdS = [];
|
|
|
if (pgaeName == 'inspectionProjectRequest') {
|
|
|
this.form = await getQualityInspectionItemById(row.id);
|
|
|
- this.getUserList(
|
|
|
- {
|
|
|
- groupId:
|
|
|
- this.type == 1
|
|
|
- ? this.form.executeDeptId
|
|
|
- : this.form.receiveDeptId
|
|
|
- },
|
|
|
- true
|
|
|
- );
|
|
|
const list =
|
|
|
row.recordingMethod == 1
|
|
|
? this.form.templateList
|
|
|
@@ -545,47 +525,32 @@
|
|
|
searchDeptNodeClick(info, row) {
|
|
|
let depKey = this.type == 1 ? 'executeDeptId' : 'receiveDeptId';
|
|
|
let depNameKey = this.type == 1 ? 'executeDeptName' : 'receiveDeptName';
|
|
|
+ let userKey = this.type == 1 ? 'executeUserId' : 'receiveUserId';
|
|
|
+ let userNameKey =
|
|
|
+ this.type == 1 ? 'executeUserName' : 'receiveUserName';
|
|
|
|
|
|
if (info) {
|
|
|
- const params = { groupId: info };
|
|
|
this.form[depKey] = info;
|
|
|
this.form[depNameKey] = row.name;
|
|
|
- this.getUserList(params);
|
|
|
} else {
|
|
|
this.form[depKey] = null;
|
|
|
this.form[depNameKey] = null;
|
|
|
- this.executorList = [];
|
|
|
}
|
|
|
+ // 部门变化后人员范围变化,清空已选人员
|
|
|
+ this.form[userKey] = null;
|
|
|
+ this.form[userNameKey] = null;
|
|
|
},
|
|
|
- // 获取人员
|
|
|
- async getUserList(params, init) {
|
|
|
+ // 选中/清空人员
|
|
|
+ changeExecutor(user) {
|
|
|
let userKey = this.type == 1 ? 'executeUserId' : 'receiveUserId';
|
|
|
let userNameKey =
|
|
|
this.type == 1 ? 'executeUserName' : 'receiveUserName';
|
|
|
- try {
|
|
|
- let data = { pageNum: 1, size: -1 };
|
|
|
-
|
|
|
- if (params) {
|
|
|
- data = Object.assign(data, params);
|
|
|
- }
|
|
|
- const res = await getUserPage(data);
|
|
|
- this.executorList = res.list;
|
|
|
- if (init) {
|
|
|
- return;
|
|
|
- }
|
|
|
+ if (user) {
|
|
|
+ this.form[userKey] = user.id;
|
|
|
+ this.form[userNameKey] = user.name;
|
|
|
+ } else {
|
|
|
this.form[userKey] = null;
|
|
|
this.form[userNameKey] = null;
|
|
|
- } catch (error) {}
|
|
|
- },
|
|
|
- changeExecutor(val) {
|
|
|
- let userKey = this.type == 1 ? 'executeUserId' : 'receiveUserId';
|
|
|
- let userNameKey =
|
|
|
- this.type == 1 ? 'executeUserName' : 'receiveUserName';
|
|
|
- if (val) {
|
|
|
- this.form[userKey] = val;
|
|
|
- this.form[userNameKey] = this.executorList.find(
|
|
|
- (item) => item.id === val
|
|
|
- ).name;
|
|
|
}
|
|
|
},
|
|
|
save() {
|