From d0bc499038c5dee607cef95cccd33bdf6fec25d1 Mon Sep 17 00:00:00 2001 From: zhangxp <zhangxp@chicecm.com> Date: 星期五, 16 六月 2023 15:36:45 +0800 Subject: [PATCH] 修改发布组件 --- Source/UBCS-WEB/src/components/template/SetPersonnel.vue | 108 +++++++++++++++++++++++++++++++++++------------------ 1 files changed, 71 insertions(+), 37 deletions(-) diff --git a/Source/UBCS-WEB/src/components/template/SetPersonnel.vue b/Source/UBCS-WEB/src/components/template/SetPersonnel.vue index 279b8d1..3bd4e93 100644 --- a/Source/UBCS-WEB/src/components/template/SetPersonnel.vue +++ b/Source/UBCS-WEB/src/components/template/SetPersonnel.vue @@ -1,20 +1,30 @@ <template> - <el-dialog :title="title" :visible.sync="dialogVisible" append-to-body="true"> - <div> - <el-tag v-for="tag in tags" :key="tag" closable disable-transitions effect="dark" @click="handleClickTag(tag)" - @close="handleCloseTag(tag)"> - <span> {{ tag.name }}</span> - </el-tag> - </div> - + <el-dialog :title="title" :visible.sync="dialogVisible" append-to-body="true" width="30%"> + <el-tag v-for="tag in tags" :key="tag" closable disable-transitions effect="Plain" size="medium" + @click="handleClickTag(tag)" @close="handleCloseTag(tag)"> + <span> {{ tag.name }}</span> + </el-tag> <el-divider v-if="tags.length !== 0"></el-divider> + <el-form :model="saveParam" class="demo-form-inline" label-position="left" label-width="auto" :rules="rules"> + <el-form-item label="娴佺▼妯℃澘"> + <el-input placeholder="娴佺▼妯℃澘" v-model="saveParam.modelName" disabled ></el-input> + </el-form-item> + <el-form-item label="娴佺▼鍚嶇О" prop="processName"> + <el-input placeholder="娴佺▼鍚嶇О" v-model="saveParam.processName" > + </el-input> + </el-form-item> + <el-form-item label="娴佺▼鎻忚堪"> + <el-input placeholder="娴佺▼鎻忚堪" type="textarea" :rows="4" v-model="saveParam.processDesc" > + </el-input> + </el-form-item> + </el-form> + <el-divider></el-divider> <div class="btns-icon"> - <el-button type="primary" icon="el-icon-star-off" @click="handleCollect"></el-button> - <!-- <el-button type="primary" icon="el-icon-refresh" ></el-button> --> + <el-button icon="el-icon-star-off" circle @click="handleCollect"></el-button> </div> - <el-form :model="saveParam" class="demo-form-inline" label-position="left"> + <el-form :model="collectParam" class="demo-form-inline" label-position="left" label-width="auto"> <el-form-item :label="item.taskName" v-for="(item, index) in initFrom" :key="index"> - <el-select style="width: 50%;" v-model="saveParam.flowTaskUsers[index]['userId']" + <el-select style="width: 80%;" filterable v-model="collectParam.flowTaskUsers[index]['userId']" :placeholder="item.taskName" @change="handleSelect($event, index)"> <el-option :label="key.userNames" :value="key.userId" v-for="(key, keyi) in typeName" :key="keyi"></el-option> @@ -40,18 +50,26 @@ // 鏍囬 title: { typeof: String, - default: '浜哄憳璁剧疆' + default: '娴佺▼瀹℃壒' }, - // 妯℃澘id - code: { - typeof: String, - default: '' + // 鍙傛暟锛氶�夋嫨鐨刬d锛屽涓互鏁扮粍鏂瑰紡浼犻�掞細['id','id']锛屾ā鏉縤d锛屾ā鏉跨敤閫旓紝娴佺▼鍚嶅瓧锛屾祦绋嬫ā鏉� + parameter: { + typeof: Object, + default: () => { } }, - // 妯℃澘鐢ㄩ�� - type: { - typeof: String, - default: '' + parameterKeys: { + typeof: Object, + default: () => { + return { + ids: 'ids', + flowName: 'flowName', + flowTemplate: 'flowTemplate', + code: 'code', + type: 'type' + } + } } + }, watch: { visible(n) { @@ -64,28 +82,45 @@ data() { return { dialogVisible: this.visible, + isCollent: false, initFrom: [], tags: [], typeName: [], - saveParam: {}, + collectParam: {}, + saveParam: this.saveParam(), users: [], - + rules: { + processName: [ + { required: true, message: '妯℃澘鍚嶇О涓嶈兘涓虹┖', trigger: 'blur' }, + { min: 1, max: 20, message: '闀垮害鍦� 3 鍒� 20 涓瓧绗�', trigger: 'blur' } + ] + } } }, + mounted() { this.apiInit() this.apiDict() }, methods: { + saveParam() { + return { + modelName: this.parameter[this.parameterKeys.flowName], + processName: this.parameter[this.parameterKeys.flowTemplate], + topName: this.title, + ids: this.parameter[this.parameterKeys.ids], + } + }, async apiInit() { - const response = await personnelInit({ type: this.type, templateId: this.code }) + const response = await personnelInit({ type: this.parameter[this.parameterKeys.type], templateId: this.parameter[this.parameterKeys.code] }) if (response.status === 200) { console.log(response) this.initFrom = response.data.data.user this.tags = response.data.data.collect const { modelKey, templateId } = response.data.data.flow let flowTaskUsers = response.data.data.user - this.saveParam = { modelKey, templateId, flowTaskUsers: flowTaskUsers } + this.collectParam = { modelKey, templateId, flowTaskUsers: flowTaskUsers } + this.saveParam = { ...this.saveParam, modelKey, templateId } this.handleClickTag(this.tags[0]) } }, @@ -108,10 +143,10 @@ cancelButtonText: '鍙栨秷', }).then(async ({ value }) => { console.log(this.users) - this.saveParam.flowTaskUsers = this.users - this.saveParam = { ...this.saveParam, name: value } - console.log(this.saveParam) - const response = await personnelCollect(this.saveParam) + this.collectParam.flowTaskUsers = this.users + this.collectParam = { ...this.collectParam, name: value } + console.log(this.collectParam) + const response = await personnelCollect(this.collectParam) if (response.status === 200) { this.$nextTick(() => { this.apiInit() @@ -127,6 +162,7 @@ if (response.status === 200) { console.log(response) this.apiInit() + this.isCollent = true this.$message({ type: 'success', message: response.data.msg @@ -135,14 +171,13 @@ }, async apiSave() { try { - const { modelKey, templateId } = this.saveParam - const response = await personnelSave({ modelKey, templateId }) + const response = await personnelSave(this.saveParam) if (response.status === 200) { console.log(response) this.$message({ - type: 'success', - message: response.data.msg - }); + type: 'success', + message: response.data.msg + }); this.done() } } catch { @@ -152,7 +187,7 @@ handleClickTag(event) { console.log(event) const flowTaskUsers = event.flowTaskUsers - this.saveParam.flowTaskUsers = flowTaskUsers.map(item => { + this.collectParam.flowTaskUsers = flowTaskUsers.map(item => { const { taskId, taskName, userId, userName } = item return { taskId, taskName, userId, userName } }) @@ -164,7 +199,7 @@ handleSelect(event, index) { const res = this.typeName.find(item => item.userId === event) const { userName } = res - let users = { ... this.saveParam.flowTaskUsers[index], userName } + let users = { ... this.collectParam.flowTaskUsers[index], userName } console.log(users) this.users[index] = users }, @@ -175,7 +210,6 @@ this.done() }, handleConfirm() { - console.log(this.users) console.log(this.saveParam) this.apiSave() } -- Gitblit v1.9.3