From cfd88cf203eeb8e739afc89724ed93ba33729419 Mon Sep 17 00:00:00 2001
From: zhangxp <zhangxp@chicecm.com>
Date: 星期三, 14 六月 2023 18:20:19 +0800
Subject: [PATCH] 人员设置
---
Source/UBCS-WEB/src/components/template/FlowPath.vue | 14 ++
Source/UBCS-WEB/src/api/template/setPersonnel.js | 35 ++++++++
Source/UBCS-WEB/src/components/template/SetPersonnel.vue | 126 +++++++++++++++++++++++++++++++
Source/UBCS-WEB/src/views/flow/flowPath.vue | 61 +--------------
4 files changed, 177 insertions(+), 59 deletions(-)
diff --git a/Source/UBCS-WEB/src/api/template/setPersonnel.js b/Source/UBCS-WEB/src/api/template/setPersonnel.js
new file mode 100644
index 0000000..ad7aa8b
--- /dev/null
+++ b/Source/UBCS-WEB/src/api/template/setPersonnel.js
@@ -0,0 +1,35 @@
+import request from '@/router/axios';
+
+// 浜哄憳璁剧疆鍒濆鍖�
+export const personnelInit = (params) => {
+ return request({
+ url: '/api/ubcs-flow/taskUser/list',
+ method: 'get',
+ params: params
+ })
+}
+// 浜哄憳璁剧疆鏀惰棌
+export const personnelCollect = (params) => {
+ return request({
+ url: '/api/ubcs-flow/taskUser/su',
+ method: 'get',
+ params: params
+ })
+}
+// 浜哄憳璁剧疆鍙栨秷鏀惰棌
+export const cancelCollect = (params) => {
+ return request({
+ url: '/api/ubcs-flow/taskUser/du',
+ method: 'get',
+ params: params
+ })
+}
+// 浜哄憳璁剧疆淇濆瓨
+export const personnelSave = (params) => {
+ return request({
+ url: '/api/',
+ method: 'post',
+ data: params
+ })
+}
+
diff --git a/Source/UBCS-WEB/src/components/template/FlowPath.vue b/Source/UBCS-WEB/src/components/template/FlowPath.vue
index 3081958..24ccf03 100644
--- a/Source/UBCS-WEB/src/components/template/FlowPath.vue
+++ b/Source/UBCS-WEB/src/components/template/FlowPath.vue
@@ -48,6 +48,7 @@
{
label: '妯℃澘key',
prop: 'modelKey',
+ width:120,
sortable: true,
type: 'tree',
dicData: [],
@@ -69,19 +70,26 @@
label: '妯℃澘鍚嶇О',
prop: 'modelName',
sortable: true,
+ width:220,
addDisabled: true,
editDisabled: true,
},
{
- label: '娴佺▼妯℃澘鐢ㄩ��',
+ label: '妯℃澘鐢ㄩ��',
prop: 'buttonTypeKey',
type: 'tree',
+ width:120,
dicUrl: '/api/ubcs-flow/processTS/tt',
dicMethod: 'post',
props: {
value: "codee",
label: "namee",
},
+ },
+ {
+ label: '妯℃澘鎻忚堪',
+ prop: 'description',
+ type:'textarea'
},
]
},
@@ -138,8 +146,8 @@
// 缂栬緫
async handleEdit(row, index, done, loading) {
console.log(row)
- const { modelName, modelKey, buttonTypeKey, id } = row
- let param = { modelName, modelKey, buttonTypeKey, id }
+ const { modelName, modelKey, buttonTypeKey, id ,description} = row
+ let param = { modelName, modelKey, buttonTypeKey, id,description }
const response = await flowpathSave({ ...param, ...{ templateId: this.code } })
if (response.status === 200) {
loading()
diff --git a/Source/UBCS-WEB/src/components/template/SetPersonnel.vue b/Source/UBCS-WEB/src/components/template/SetPersonnel.vue
new file mode 100644
index 0000000..beb1801
--- /dev/null
+++ b/Source/UBCS-WEB/src/components/template/SetPersonnel.vue
@@ -0,0 +1,126 @@
+<template>
+ <el-dialog :title="title" :visible.sync="dialogVisible" append-to-body="true" width="30%">
+ <el-tag v-for="tag in tags" :key="tag" closable effect="dark" @click="handleClickTag(tag)"
+ @close="handleCloseTag(tag)">
+ <span> {{ tag }}</span>
+ </el-tag>
+ <el-divider></el-divider>
+ <el-form :model="formInline" class="demo-form-inline" label-position="left">
+ <el-form-item :label="item.taskName" v-for="(item,index) in initFrom" :key="index">
+ <el-select v-model="formInline[index].userId" :placeholder="item.taskName">
+ <el-option label="鍖哄煙涓�" value="shanghai"></el-option>
+ <el-option label="鍖哄煙浜�" value="beijing"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="handleCancel">鍙� 娑�</el-button>
+ <el-button type="primary" @click="handleConfirm">纭� 瀹�</el-button>
+ </div>
+ </el-dialog>
+</template>
+<script>
+import { personnelInit, personnelCollect, cancelCollect, personnelSave } from '@/api/template/setPersonnel.js'
+export default {
+ name: 'SetPersonnel',
+ props: {
+ // 鏄惁鎵撳紑
+ visible: {
+ typeof: Boolean,
+ default: false
+ },
+ title: {
+ typeof: String,
+ default: '浜哄憳璁剧疆'
+ },
+ code:{
+ typeof: String,
+ default: ''
+ }
+ },
+ watch: {
+ visible(n) {
+ this.dialogVisible = n;
+ },
+ dialogVisible(n) {
+ this.$emit('update:visible', n)
+ },
+ },
+ data() {
+ return {
+ dialogVisible: this.visible,
+ initFrom: [],
+ tags: ['鏍囩1', '鏍囩2', '鏍囩3', '鏍囩4'],
+ formInline: []
+
+ }
+ },
+ mounted() {
+ this.apiInit()
+ },
+ methods: {
+ async apiInit() {
+ const response = await personnelInit({type:'PUBLIC',templateId:'8b5e2017-990f-454a-9c39-4c4eeeb57553'})
+ if (response.status === 200) {
+ console.log(response)
+ this.initFrom = response.data.data.user
+ this.formInline = response.data.data.user
+ }
+ },
+ async apiCollect() {
+ const response = await personnelCollect()
+ if (response.status === 200) {
+ console.log(response)
+ }
+ },
+ async canCollect(id) {
+ const response = await cancelCollect()
+ if (response.status === 200) {
+ console.log(response)
+ }
+ },
+ async apiSave() {
+ const response = await personnelSave()
+ if (response.status === 200) {
+ console.log(response)
+ }
+ },
+ handleClickTag(event) {
+ console.log(event)
+ },
+ handleCloseTag(event) {
+ console.log(event)
+ this.canCollect(event)
+ },
+ done() {
+ this.dialogVisible = false
+ },
+ handleCancel() {
+ this.done()
+ },
+ handleConfirm() {
+ // this.done()
+ console.log(this.formInline)
+ }
+ }
+}
+</script>
+<style lang="scss">
+.el-tag+.el-tag {
+ margin-left: 10px;
+}
+
+.button-new-tag {
+ margin-left: 10px;
+ height: 32px;
+ line-height: 30px;
+ padding-top: 0;
+ padding-bottom: 0;
+}
+
+.input-new-tag {
+ width: 90px;
+ margin-left: 10px;
+ vertical-align: bottom;
+}
+</style>
\ No newline at end of file
diff --git a/Source/UBCS-WEB/src/views/flow/flowPath.vue b/Source/UBCS-WEB/src/views/flow/flowPath.vue
index e14690f..15db06e 100644
--- a/Source/UBCS-WEB/src/views/flow/flowPath.vue
+++ b/Source/UBCS-WEB/src/views/flow/flowPath.vue
@@ -1,72 +1,24 @@
<template>
<div>
<el-button @click="outerVisible = true">娴佺▼娴嬭瘯</el-button>
- <el-button @click="visibleStage = true">妯℃澘闃舵</el-button>
- <el-button @click="handleTable">table绌挎妗�</el-button>
+ <el-button @click="handleTable">浜哄憳璁剧疆</el-button>
<flow-business :visible.sync="outerVisible"></flow-business>
- <stage code="8b5e2017-990f-454a-9c39-4c4eeeb57553"></stage>
- <table-transfer :visible.sync="visibleTable" v-model="value" :dataList="list" :columns="columns" keyName="id"
- @save="handleSave"></table-transfer>
+ <set-personnel :visible.sync="visibleFlow"></set-personnel>
</div>
</template>
<script>
import FlowBusiness from '@/components/template/Business'
-import FlowPath from '@/components/template/FlowPath'
-import Stage from '@/components/template/Stage'
-import TableTransfer from '@/components/template/TableTransfer'
+import SetPersonnel from '@/components/template/SetPersonnel'
export default {
components: {
FlowBusiness,
- FlowPath,
- Stage,
- TableTransfer
+ SetPersonnel
},
data() {
- const getTables = () => {
- let data = []
- for (let i = 0; i < 5; i++) {
- let item = {
- id: `${i + 1}`,
- name: 'name',
- address: `闆嗗洟鐮�${i + 1}`,
- data: '',
- checked: i === 1 ? true : false,
- }
- data.push(item)
- }
- return data
- }
return {
- list: getTables(),
- value: ['2'],
outerVisible: false,
visibleFlow: false,
- visibleStage: false,
- visibleTable: false,
-
- columns: [
- {
- key: "id",
- label: "id",
- visible: false,
- },
- {
- key: "name",
- label: "灞炴�х紪鍙�",
- visible: true,
- },
- {
- key: "address",
- label: "灞炴�у悕绉�",
- visible: true,
- },
- {
- key: "address",
- label: "灞炴�у垎缁�",
- visible: true,
- },
- ],
}
},
@@ -75,10 +27,7 @@
console.log(event)
},
handleTable(){
- this.visibleTable = true
- // this.$nextTick(()=>{
-
- // })
+ this.visibleFlow = true
}
}
}
--
Gitblit v1.9.3