From 56bdc677d717f8f1d8ff6ff4c87e733d1206e8be Mon Sep 17 00:00:00 2001 From: 田源 <lastanimals@163.com> Date: 星期四, 27 六月 2024 17:58:15 +0800 Subject: [PATCH] 用户停用启用 分配角色穿梭框功能 创建其他人员组织菜单 表格优化 --- Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue | 90 ++++++++++++++++++++++++++++++++++++-------- 1 files changed, 73 insertions(+), 17 deletions(-) diff --git a/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue b/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue index 5c8cdb1..ac10977 100644 --- a/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue +++ b/Source/plt-web/plt-web-ui/src/components/actions/base/startWorkFlow.vue @@ -1,14 +1,14 @@ <template> <el-dialog v-dialogDrag - append-to-body="true" :close-on-click-modal="false" :destroy-on-close="true" :visible.sync="visible" :width="width" + append-to-body="true" class="avue-dialog" + style="margin-top: -10% !important;" title="鍚姩娴佺▼" top="0" - style="margin-top: -10% !important;" @close="dialogClose"> <el-form :model="saveParam" :rules="rules" class="demo-form-inline" label-position="left" label-width="auto"> @@ -26,15 +26,15 @@ </el-form> <el-divider></el-divider> - <div class="btns-icon"> - <el-button circle icon="el-icon-star-off" @click="handleCollect"></el-button> - </div> + <!-- <div class="btns-icon">--> + <!-- <el-button circle icon="el-icon-star-off" @click="handleCollect"></el-button>--> + <!-- </div>--> <el-form :model="collectParam" class="demo-form-inline" label-position="left" label-width="auto"> - <el-form-item v-for="(item, index) in initFrom" :key="index" :label="item.taskName"> - <el-select v-model="collectParam.flowTaskUsers[index]['userId']" :placeholder="item.taskName" filterable - style="width: 100%;" @change="handleSelect($event, index)"> - <el-option v-for="(key, keyi) in typeName" :key="keyi" :label="key.userNames" - :value="key.userId"></el-option> + <el-form-item v-for="(item, index) in initFrom" :key="index" :label="`鑺傜偣${index + 1}`"> + <el-select style="width: 100%;" filterable v-model="collectParam.flowTaskUsers[index]['userId']" + :placeholder="item.value" @change="handleSelect($event, index)"> + <el-option :label="key.name" :value="key.name" v-for="(key, keyi) in item.processNodes" + :key="keyi"></el-option> </el-select> </el-form-item> </el-form> @@ -48,6 +48,7 @@ <script> import {validatenull} from "@/util/validate"; +import {getTemplateByType, getAllProcessNode} from "@/api/base/startWork/index" export default { name: "startWorkFlow", @@ -70,11 +71,16 @@ data() { return { visible: false, - saveParam: {}, - users: [], - collectParam: {}, - initFrom: [], - typeName: [], + saveParam: {}, // 瀵硅薄鍖呭惈 {modelName娴佺▼妯℃澘(鐢辨帴鍙h繑鍥炲綋鍓嶆祦绋嬫ā鏉�) , processName娴佺▼鍚嶇О锛堜负褰撳墠鐢ㄦ埛+'鍚姩娴佺▼'+褰撳墠鍒嗙被锛� , processDesc娴佺▼鎻忚堪 } + initFrom: [], // 褰撳墠娴佺▼鑺傜偣寰幆鏁扮粍 + collectParam: {}, // 娴佺▼鑺傜偣涓嬫媺妗嗗弻鍚戠粦瀹氬睘鎬� + typeName: [], // 娴佺▼鑺傜偣option寰幆閫夐」 + rules: { + processName: [ + {required: true, message: '娴佺▼鍚嶇О涓嶈兘涓虹┖', trigger: 'blur'}, + {min: 3, max: 50, message: '闀垮害鍦� 3 鍒� 50 涓瓧绗�', trigger: 'blur'} + ] + } } }, watch: { @@ -87,7 +93,7 @@ }, parameter: { handler(newval, oldval) { - this.saveParam = Object.assign({processName: '', processDesc: ''}, newval); + this.saveParam = Object.assign({processName: '', processDesc: '',}, newval); }, deep: true, immediate: true @@ -114,7 +120,44 @@ } }, }, + created() { + this.modelNameChange(); + this.getWorkByType(); + }, + mounted() { + }, methods: { + // 鑾峰彇娴佺▼妯℃澘淇℃伅 + getWorkByType() { + let params = { + type: '鏂囨。瀹$娴佺▼', + filterTemplate: "" + } + getTemplateByType(params).then(res => { + const data = res.data.data; + data.forEach(item => { + this.getProcessNode(item); + }) + this.initFrom = data; + }).catch(error => { + console.log(error); + }) + }, + + // 璇锋眰娴佺▼鑺傜偣 + getProcessNode(item) { + let params = { + processOid: item.attributes.oid, + maxSecret: -1 + } + getAllProcessNode(params).then(res => { + const nodes = res.data.data; + item.processNodes = nodes; + }).catch(error => { + console.log(error); + }) + }, + // 鍏抽棴寮圭獥 dialogClose() { this.visible = false; @@ -133,12 +176,25 @@ }, handleConfirm() { + console.log(this.initFrom); + }, + // 娴佺▼鍚嶇О鍒濆鍖栫粦瀹� + modelNameChange() { + var userInfo = JSON.parse(localStorage.getItem('saber-userInfo')); + + if (this.paramVOS && this.paramVOS.modelName) { + this.saveParam.modelName = this.paramVOS.modelName; + } else if (userInfo.content && userInfo.content.userName) { + this.saveParam.modelName = userInfo.content.userName + '鍚姩娴佺▼'; + } else { + this.saveParam.modelName = ''; + } } } } </script> -<style scoped lang="scss"> +<style lang="scss" scoped> </style> -- Gitblit v1.9.3