From e87846bfc7e467836d958632b15a22a901eb51d2 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期四, 09 一月 2025 15:33:56 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/views/index.vue | 9
src/views/projectManage/plan/planInfo.vue | 1
src/views/flowable/task/myProcess/detail/index.vue | 55 +-
src/components/flow/User/SingleUser.vue | 90 +---
src/assets/styles/ruoyi.scss | 2
src/views/function/api/purchase.js | 3
src/views/components/noticeTable.vue | 54 +
src/views/todo/api/myTodoList.js | 4
src/components/Process/designer.vue | 9
src/views/projectEngineering/projectLibrary/projectDetails.vue | 1
src/views/projectProcess/detail/index.vue | 3
src/views/projectProcess/index.vue | 1
src/components/flow/User/MultUser.vue | 90 +--
src/views/todo/api/allTodoList.js | 4
src/components/Process/panel/PropertiesPanel.vue | 1
src/components/Process/panel/TaskConfPanel.vue | 550 +++++++++++++++++++++++++++
src/components/flow/Role/MyRole.vue | 107 +---
src/components/flow/Dept/MyDept.vue | 9
src/views/todo/processTask.vue | 3
src/views/flowable/task/myProcess/send/index.vue | 111 ++++-
src/components/flow/Expression/index.vue | 8
src/components/flow/User/index.vue | 2
src/views/function/leaveApply.vue | 5
src/views/flowable/definition/model.vue | 1
src/components/Process/panel/formPanel.vue | 5
src/views/components/tidingsTable.vue | 28
26 files changed, 832 insertions(+), 324 deletions(-)
diff --git a/src/assets/styles/ruoyi.scss b/src/assets/styles/ruoyi.scss
index 3a16ea5..2a328ff 100644
--- a/src/assets/styles/ruoyi.scss
+++ b/src/assets/styles/ruoyi.scss
@@ -202,7 +202,7 @@
}
.el-card__body {
- padding: 15px 20px 20px 20px !important;
+ padding: 15px 20px 15px 20px !important;
}
.card-box {
diff --git a/src/components/Process/designer.vue b/src/components/Process/designer.vue
index 5fb87e9..5687849 100644
--- a/src/components/Process/designer.vue
+++ b/src/components/Process/designer.vue
@@ -66,7 +66,7 @@
import TaskListener from './panel/taskListener'
import MultiInstance from './panel/multiInstance'
import CommonPanel from './panel/commonPanel'
-import UserTaskPanel from './panel/taskPanel'
+import UserTaskPanel from './panel/TaskConfPanel'
import ConditionPanel from './panel/conditionPanel'
import FormPanel from './panel/formPanel'
import OtherPanel from './panel/otherPanel'
@@ -139,11 +139,9 @@
});
// 鐩戝惉閫夋嫨浜嬩欢锛屼慨鏀瑰綋鍓嶆縺娲荤殑鍏冪礌浠ュ強琛ㄥ崟
this.modelerStore.modeler.on("selection.changed", ({newSelection}) => {
- console.log("鏁版嵁鏀瑰彉1", newSelection)
this.initFormOnChanged(newSelection[0] || null);
});
this.modelerStore.modeler.on("element.changed", ({element}) => {
- console.log("鏁版嵁鏀瑰彉2")
// 淇濊瘉 淇敼 "榛樿娴佽浆璺緞" 绫讳技闇�瑕佷慨鏀瑰涓厓绱犵殑浜嬩欢鍙戠敓鐨勬椂鍊欙紝鏇存柊琛ㄥ崟鐨勫厓绱犱笌鍘熼�変腑鍏冪礌涓嶄竴鑷淬��
if (element && element.id === this.elementId) {
this.initFormOnChanged(element);
@@ -153,24 +151,19 @@
// 鍒濆鍖栨暟鎹�
initFormOnChanged(element) {
- console.log(element, "鑺傜偣鏁版嵁")
let activatedElement = element;
if (!activatedElement) {
- console.log(1)
activatedElement =
this.modelerStore.elRegistry.find(el => el.type === "bpmn:Process") ??
this.modelerStore.elRegistry.find(el => el.type === "bpmn:Collaboration");
}
if (!activatedElement) return;
- console.log(2, activatedElement)
this.modelerStore.element = activatedElement;
this.elementId = activatedElement.id;
// 纭繚elementId鍊兼病鍙樹篃瑕佹洿鏂癴orm缁勪欢閫変腑鐨勫��
if (this.formVisible) {
- console.log(this.modelerStore.element.businessObject.formKey, "鏂扮殑鍊�")
this.$refs.formSelect.init()
}
- console.log(3, this.elementId)
this.elementType = activatedElement.type.split(":")[1] || "";
this.conditionVisible = !!(
this.elementType === "SequenceFlow" &&
diff --git a/src/components/Process/panel/PropertiesPanel.vue b/src/components/Process/panel/PropertiesPanel.vue
index 959fc1a..6042067 100644
--- a/src/components/Process/panel/PropertiesPanel.vue
+++ b/src/components/Process/panel/PropertiesPanel.vue
@@ -107,7 +107,6 @@
}
})
- console.log(this.canConfigPropertyList, "杩欐槸浠�涔堥")
this.elementPropertyList = JSON.parse(JSON.stringify(this.bpmnElementPropertyList ?? []));
},
openAttributesForm(attr, index) {
diff --git a/src/components/Process/panel/TaskConfPanel.vue b/src/components/Process/panel/TaskConfPanel.vue
new file mode 100644
index 0000000..9d93362
--- /dev/null
+++ b/src/components/Process/panel/TaskConfPanel.vue
@@ -0,0 +1,550 @@
+<template>
+ <div>
+ <el-form label-width="80px" size="small">
+ <el-form-item label="寮傛">
+ <el-switch v-model="bpmnFormData.async" active-text="鏄�" inactive-text="鍚�" @change="updateElementTask('async')"/>
+ </el-form-item>
+ <el-form-item label="鐢ㄦ埛绫诲瀷">
+ <el-select v-model="bpmnFormData.userType" placeholder="鐢ㄦ埛绫诲瀷" @change="updateUserType">
+ <el-option
+ v-for="item in userTypeOption"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ />
+ </el-select>
+ </el-form-item>
+
+ <el-form-item label="鎸囧畾浜哄憳" v-if="bpmnFormData.userType === 'assignee'">
+ <single-user ref="singleUser" :select-user="delegationUserSelect && delegationUserSelect.length > 0 ? delegationUserSelect[0].userId : null" :show="singleUserShow" @close="closeSingleUser" @submit="getSingleUserSelect" :key="singleUserKey"/>
+ <div v-if="expSelect">
+ <el-tag class="select-tag" :key="expSelect.id + 'kfc'" type="info" closable @close="removeExp">{{expSelect.expression}}</el-tag>
+ </div>
+ <div v-else>
+ <el-tag class="select-tag" v-for="user in delegationUserSelect" :key="user.userId + 'abc'" type="info" closable @close="removeSingleUser(user)">{{user.nickName}}</el-tag>
+ </div>
+ <el-button-group class="ml-4" style="margin-top: 4px">
+ <!--鎸囧畾浜哄憳-->
+ <el-tooltip class="box-item" effect="dark" content="鎸囧畾浜哄憳" :disabled="typeButDisable" placement="bottom">
+ <el-button size="mini" type="primary" icon="el-icon-user" :disabled="typeButDisable" @click="editSingleUser"/>
+ </el-tooltip>
+ <!--閫夋嫨琛ㄨ揪寮�-->
+ <el-tooltip class="box-item" effect="dark" content="閫夋嫨琛ㄨ揪寮�" :disabled="expButDisable" placement="bottom">
+ <el-button size="mini" type="warning" icon="el-icon-postcard" :disabled="expButDisable" @click="editExp"/>
+ </el-tooltip>
+ </el-button-group>
+ </el-form-item>
+
+ <el-form-item label="鍊欓�変汉鍛�" v-else-if="bpmnFormData.userType === 'candidateUsers'">
+ <mult-user ref="multUser" :select-user="delegationUserSelect" :show="multUserShow" @close="closeMultUser" @submit="getMultUserSelect" :key="multUserKey"/>
+ <div v-if="expSelect">
+ <el-tag class="select-tag" :key="expSelect.id + 'kfc'" type="info" closable @close="removeExp">{{expSelect.expression}}</el-tag>
+ </div>
+ <div v-else>
+ <el-tag class="select-tag" v-for="user in delegationUserSelect" :key="user.userId + 'qwe'" type="info" closable @close="removeMultUser(user)">{{user.nickName}}</el-tag>
+ </div>
+ <el-button-group class="ml-4" style="margin-top: 4px">
+ <!--鍊欓�変汉鍛�-->
+ <el-tooltip class="box-item" effect="dark" content="鍊欓�変汉鍛�" :disabled="typeButDisable" placement="bottom">
+ <el-button size="mini" type="primary" icon="el-icon-user" :disabled="typeButDisable" @click="editMultUser"/>
+ </el-tooltip>
+ <!--閫夋嫨琛ㄨ揪寮�-->
+ <el-tooltip class="box-item" effect="dark" content="閫夋嫨琛ㄨ揪寮�" :disabled="expButDisable" placement="bottom">
+ <el-button size="mini" type="warning" icon="el-icon-postcard" :disabled="expButDisable" @click="editExp"/>
+ </el-tooltip>
+ </el-button-group>
+ </el-form-item>
+
+ <el-form-item label="鍊欓�夎鑹�" v-else-if="bpmnFormData.userType === 'candidateGroups'">
+ <my-role ref="role" :select-values="delegationRoleSelect" :show="roleShow" @close="closeRole" @submit="getRoleSelect" :key="roleKey"/>
+ <div v-if="expSelect">
+ <el-tag class="select-tag" :key="expSelect.id + 'kfc'" type="info" closable @close="removeExp">{{expSelect.expression}}</el-tag>
+ </div>
+ <div v-else>
+ <el-tag class="select-tag" v-for="role in delegationRoleSelect" :key="role.roleId + 'rty'" type="info" closable @close="removeRole(role)">{{role.roleName}}</el-tag>
+ </div>
+ <el-button-group class="ml-4" style="margin-top: 4px">
+ <!--鍊欓�夎鑹�-->
+ <el-tooltip class="box-item" effect="dark" content="鍊欓�夎鑹�" :disabled="typeButDisable" placement="bottom">
+ <el-button size="mini" type="primary" icon="el-icon-user" :disabled="typeButDisable" @click="editRole"/>
+ </el-tooltip>
+ <!--閫夋嫨琛ㄨ揪寮�-->
+ <el-tooltip class="box-item" effect="dark" content="閫夋嫨琛ㄨ揪寮�" :disabled="expButDisable" placement="bottom">
+ <el-button size="mini" type="warning" icon="el-icon-postcard" :disabled="expButDisable" @click="editExp"/>
+ </el-tooltip>
+ </el-button-group>
+ </el-form-item>
+
+ <el-form-item label="鍊欓�夐儴闂�" v-else>
+ <MyDept ref="dept" :checkeds="delegationDeptSelect" :show="deptShow" @close="closeDept" @submit="getDeptSelect" :key="deptKey"/>
+ <div v-if="expSelect">
+ <el-tag class="select-tag" :key="expSelect.id + 'kfc'" type="info" closable @close="removeExp">{{expSelect.expression}}</el-tag>
+ </div>
+ <div v-else>
+ <el-tag class="select-tag" v-for="dept in delegationDeptSelect" :key="dept.id + 'zxc'" type="info" closable @close="removeDept(dept)">{{dept.label}}</el-tag>
+ </div>
+ <el-button-group class="ml-4" style="margin-top: 4px">
+ <!--鍊欓�夐儴闂�-->
+ <el-tooltip class="box-item" effect="dark" content="鍊欓�夐儴闂�" :disabled="typeButDisable" placement="bottom">
+ <el-button size="mini" type="primary" icon="el-icon-user" :disabled="typeButDisable" @click="editDept"/>
+ </el-tooltip>
+ <!--閫夋嫨琛ㄨ揪寮�-->
+ <el-tooltip class="box-item" effect="dark" content="閫夋嫨琛ㄨ揪寮�" :disabled="expButDisable" placement="bottom">
+ <el-button size="mini" type="warning" icon="el-icon-postcard" :disabled="expButDisable" @click="editExp"/>
+ </el-tooltip>
+ </el-button-group>
+ </el-form-item>
+
+ <el-form-item label="浼樺厛绾�">
+ <el-input v-model="bpmnFormData.priority" @change="updateElementTask('priority')"/>
+ </el-form-item>
+ <el-form-item label="鍒版湡鏃堕棿">
+ <el-input v-model="bpmnFormData.dueDate" @change="updateElementTask('dueDate')"/>
+ </el-form-item>
+ </el-form>
+
+ <!--閫夋嫨琛ㄨ揪寮�-->
+ <el-dialog
+ title="閫夋嫨琛ㄨ揪寮�"
+ :visible.sync="expVisible"
+ width="60%"
+ :close-on-press-escape="false"
+ :destroy-on-close="true"
+ @close="closeExp"
+ >
+ <flow-exp :selectValues="expSelect" @handleSingleExpSelect="getExpSelect"></flow-exp>
+ <div slot="footer" class="dialog-footer">
+ <el-button size="small" type="primary" @click="checkExpComplete">纭� 瀹�</el-button>
+ </div>
+ </el-dialog>
+
+
+ </div>
+</template>
+
+<script>
+import FlowExp from '@/components/flow/Expression'
+import {StrUtil} from '@/utils/StrUtil'
+import MyDept from '@/components/flow/Dept/MyDept'
+import SingleUser from '@/components/flow/User/SingleUser'
+import MultUser from '@/components/flow/User/MultUser'
+import MyRole from '@/components/flow/Role/MyRole'
+
+
+export default {
+ name: "TaskConfPanel",
+ components: {
+ FlowExp,
+ MyRole,
+ MyDept,
+ SingleUser,
+ MultUser,
+ },
+ /** 缁勪欢浼犲�� */
+ props : {
+ id: {
+ type: String,
+ required: true
+ },
+ },
+ data() {
+ return {
+ typeButDisable: false, // 鐢ㄦ埛绫诲瀷閫夋嫨鎸夐挳鏄惁绂佺敤
+ expButDisable: false, // 鐢ㄦ埛绫诲瀷閫夋嫨鎸夐挳鏄惁绂佺敤
+ roleKey: 'role',
+ deptKey: 'dept',
+ multUserKey: 0,
+ singleUserKey: 'single',
+ roleShow: false, // 瑙掕壊缁勬樉绀�
+ delegationRoleSelect: [], // 閫変腑瑙掕壊
+ multUserShow: false, // 鐢ㄦ埛缁勬樉绀�
+ singleUserShow: false, // 鎸囧畾鐢ㄦ埛鏄剧ず
+ delegationUserSelect: [], // 閫変腑鐨勭敤鎴�
+ deptShow: false, // 閮ㄩ棬缁勬樉绀�
+ delegationDeptSelect: [], // 閫変腑閮ㄩ棬
+ expSelect: null, // 閫変腑琛ㄨ揪寮�
+ num: 0, // 鐢ㄤ簬瑙﹀彂鐢ㄦ埛閫夋嫨鏇存柊
+ expVisible: false,
+ isIndeterminate: true,
+ checkType: 'single', // 閫夌被
+ userType: '',
+ userTypeOption: [
+ {label: '鎸囧畾浜哄憳', value: 'assignee'},
+ {label: '鍊欓�変汉鍛�', value: 'candidateUsers'},
+ {label: '鍊欓�夎鑹�', value: 'candidateGroups'},
+ {label: '鍊欓�夐儴闂�', value: 'candidateDeptGroups'},
+ ],
+ checkAll: false,
+ bpmnFormData: {
+ userType: "candidateDeptGroups",
+ assignee: "",
+ candidateUsers: "",
+ candidateGroups: "",
+ dueDate: "",
+ priority: "",
+ dataType: "",
+ expId: "",
+ },
+ // 鏁版嵁鍥炴樉
+ selectData: {
+ assignee: null,
+ candidateUsers: null,
+ candidateGroups: [], // 瑙掕壊
+ candidateDeptGroups: [], // 閮ㄩ棬
+ exp: null,
+ },
+ otherExtensionList:[],
+ }
+ },
+
+ /** 浼犲�肩洃鍚� */
+ watch: {
+ id: {
+ handler(newVal) {
+ if (StrUtil.isNotBlank(newVal)) {
+ this.resetTaskForm();
+ }
+ },
+ immediate: true, // 绔嬪嵆鐢熸晥
+ },
+ },
+ created() {
+
+ },
+ methods: {
+ removeExp() {
+ this.getExpSelect(null)
+ },
+ removeDept(dept) {
+ let index = this.delegationDeptSelect.indexOf(dept);
+ if (index !== -1) {
+ this.delegationDeptSelect.splice(index, 1);
+ }
+ this.getDeptSelect(this.delegationDeptSelect)
+ },
+ removeRole(role) {
+ let index = this.delegationRoleSelect.indexOf(role);
+ if (index !== -1) {
+ this.delegationRoleSelect.splice(index, 1);
+ }
+ this.getRoleSelect(this.delegationRoleSelect)
+ },
+ removeMultUser(user) {
+ let index = this.delegationUserSelect.indexOf(user);
+ if (index !== -1) {
+ this.delegationUserSelect.splice(index, 1);
+ }
+ this.getMultUserSelect(this.delegationUserSelect)
+ },
+ removeSingleUser(user) {
+ // 鍥犱负鍙兘閫変竴涓敤鎴凤紝鎵�浠ュ垹浜嗗氨娌′簡
+ this.getSingleUserSelect(null)
+ },
+ editDept() {
+ this.$nextTick(() => {
+ this.deptKey += '1'
+ this.$refs.dept.setCheckList(this.delegationDeptSelect)
+ })
+ this.deptShow = true
+ },
+ editSingleUser() {
+ if (this.delegationUserSelect && this.delegationUserSelect.length > 0) {
+ this.singleUserKey += '1'
+ this.$nextTick(() => {
+ this.$refs.singleUser.setChecked(this.delegationUserSelect[0])
+ })
+ }
+ this.singleUserShow = true
+ },
+ editRole() {
+ if (this.delegationRoleSelect && this.delegationRoleSelect.length > 0) {
+ this.roleKey += '1'
+ this.$nextTick(() => {
+ this.$refs.role.setChecked(this.delegationRoleSelect)
+ })
+ }
+ this.roleShow = true
+ },
+ editMultUser() {
+ if (this.delegationUserSelect && this.delegationUserSelect.length > 0) {
+ this.multUserKey += '1'
+ this.$nextTick(() => {
+ this.$refs.multUser.setChecked(this.delegationUserSelect)
+ })
+ }
+ this.multUserShow = true
+ },
+ editExp() {
+ this.expVisible = true;
+ },
+ getDeptSelect(deptList) {
+ if (deptList && deptList.length > 0) {
+ this.deleteFlowAttar();
+ this.updateCustomElement('dataType', 'fixed');
+ this.updateCustomElement("candidateGroups", deptList.map(item => item.id).join(","));
+ this.delegationDeptSelect = deptList
+ this.expButDisable = true
+ } else {
+ this.delegationDeptSelect = []
+ this.expButDisable = false
+ }
+ this.deptShow = false
+ this.deptKey += '1'
+ },
+ getMultUserSelect(userList) {
+ if (userList && userList.length > 0) {
+ this.deleteFlowAttar();
+ this.updateCustomElement('dataType', 'fixed');
+ this.updateCustomElement(this.bpmnFormData.userType, userList.map(item => item.userId).join(","));
+ this.delegationUserSelect = userList
+ this.expButDisable = true
+ } else {
+ this.delegationUserSelect = []
+ this.expButDisable = false
+ }
+ this.multUserShow = false
+ this.multUserKey += 1;
+ },
+ getRoleSelect(roleList) {
+ if (roleList && roleList.length > 0) {
+ this.deleteFlowAttar();
+ this.updateCustomElement('dataType', 'fixed');
+ // userType = candidateGroups
+ this.updateCustomElement(this.bpmnFormData.userType, roleList.map(item => item.roleId).join(","));
+ this.delegationRoleSelect = roleList
+ this.expButDisable = true
+ } else {
+ this.delegationRoleSelect = []
+ this.expButDisable = false
+ }
+ this.roleShow = false
+ this.roleKey += '1'
+ },
+ getSingleUserSelect(user) {
+ if (user) {
+ this.deleteFlowAttar();
+ this.updateCustomElement('dataType', 'fixed');
+ this.updateCustomElement(this.bpmnFormData.userType, user.userId);
+ this.delegationUserSelect = [user]
+ this.expButDisable = true
+ } else {
+ this.delegationUserSelect = []
+ this.expButDisable = false
+ this.deleteFlowAttar();
+ }
+ this.singleUserShow = false
+ this.singleUserKey += '1'
+ },
+ getExpSelect(selection) {
+ console.log(selection, "閫変腑鐨勮〃杈惧紡")
+ if (selection) {
+ this.expSelect = selection
+ this.deleteFlowAttar();
+ this.bpmnFormData[this.bpmnFormData.userType] = selection.name;
+ this.updateCustomElement('dataType', selection.dataType);
+ this.updateCustomElement('expId', selection.id.toString());
+ const userType = this.bpmnFormData.userType === "candidateDeptGroups" ? "candidateGroups" : this.bpmnFormData.userType
+ this.updateCustomElement(userType, selection.expression);
+ this.handleSelectData("exp", selection.id);
+ this.typeButDisable = true
+ } else {
+ this.expSelect = null
+ this.typeButDisable = false
+ this.deleteFlowAttar();
+ }
+ },
+ closeExp() {
+ this.expVisible = false
+ },
+ closeDept() {
+ this.deptShow = false
+ this.deptKey += '1'
+ },
+ closeSingleUser() {
+ this.singleUserShow = false
+ this.singleUserKey += '1'
+ },
+ closeRole() {
+ this.roleShow = false
+ this.roleKey += '1'
+ },
+ closeMultUser() {
+ this.multUserShow = false
+ this.multUserKey += 1;
+ },
+
+ // 鍒濆鍖栬〃鍗�
+ resetTaskForm() {
+ // 鍒濆鍖栬涓虹┖鍊�
+ this.bpmnFormData = {
+ userType: "candidateDeptGroups",
+ assignee: "",
+ candidateUsers: "",
+ candidateGroups: "",
+ dueDate: "",
+ priority: "",
+ dataType: "",
+ expId: "",
+ }
+ this.selectData = {
+ assignee: null,
+ candidateUsers: null,
+ candidateGroups: null,
+ exp: null,
+ }
+ // 娴佺▼鑺傜偣淇℃伅涓婂彇鍊�
+ for (let key in this.bpmnFormData) {
+ const value = this.modelerStore.element?.businessObject[key] || this.bpmnFormData[key];
+ this.$set(this.bpmnFormData, key, value);
+ }
+ console.log(this.bpmnFormData, "鍒濆鍖栨暟鎹�")
+ // 浜哄憳銆佽鑹层�侀儴闂ㄤ俊鎭洖鏄�
+ this.checkValuesEcho(this.bpmnFormData);
+ },
+
+ // 鏇存柊鑺傜偣淇℃伅
+ updateElementTask(key) {
+ const taskAttr = Object.create(null);
+ taskAttr[key] = this.bpmnFormData[key] || "";
+ this.modelerStore.modeling.updateProperties(this.modelerStore.element, taskAttr);
+ },
+
+ // 鏇存柊鑷畾涔夋祦绋嬭妭鐐�/鍙傛暟淇℃伅
+ updateCustomElement(key, value) {
+ const taskAttr = Object.create(null);
+ taskAttr[key] = value;
+ this.modelerStore.modeling.updateProperties(this.modelerStore.element, taskAttr);
+ },
+
+ // 鏇存柊浜哄憳绫诲瀷
+ updateUserType(val) {
+ console.log(val, "浜哄憳绫诲瀷")
+ // 鍒犻櫎xml涓凡閫夋嫨鏁版嵁绫诲瀷鑺傜偣
+ this.deleteFlowAttar();
+ // 娓呴櫎宸查�変汉鍛樻暟鎹�
+ if (val === "candidateDeptGroups") {
+ val = "candidateGroups"
+ this.delegationDeptSelect = [] // 閮ㄩ棬
+ } else if (val === "candidateGroups") {
+ this.delegationRoleSelect = [] // 瑙掕壊
+ } else if (val === "assignee" || val === "candidateUsers") {
+ this.delegationUserSelect = [] // 鎸囧畾鐢ㄦ埛/鍊欓�夌敤鎴�
+ }
+ this.expSelect = null // 琛ㄨ揪寮忛噸缃负绌�
+ this.selectData = {
+ assignee: null,
+ candidateUsers: null,
+ candidateGroups: null,
+ exp: null,
+ }
+ this.typeButDisable = false
+ this.expButDisable = false
+ // 鍐欏叆userType鑺傜偣淇℃伅鍒皒ml
+ this.updateCustomElement('userType', val);
+ },
+
+ // 璁捐鍣ㄥ彸渚ц〃鍗曟暟鎹洖鏄�
+ checkValuesEcho(formData) {
+ if (formData.expId) {
+ this.getExpList(formData.expId);
+ this.typeButDisable = true
+ this.expButDisable = false
+ } else {
+ this.typeButDisable = false
+ this.expSelect = null
+ if ("candidateGroups" === formData.userType || "candidateDeptGroups" === formData.userType) {
+ this.getRoleOrDeptReview(formData.candidateGroups)
+ } else {
+ this.getUserList(formData[formData.userType], formData.userType);
+ }
+ }
+ },
+
+ // 鑾峰彇琛ㄨ揪寮忎俊鎭�
+ getExpList(expId) {
+ this.expSelect = this.modelerStore.expList?.find(item => item.id.toString() === expId);
+ },
+
+ // 鑾峰彇浜哄憳淇℃伅
+ getUserList(val, key) {
+ if (StrUtil.isNotBlank(val)) {
+ this.expButDisable = true
+ this.typeButDisable = false
+ if ('assignee' === key) {
+ const uList = this.modelerStore.userList.filter(item => item.userId == val);
+ this.delegationUserSelect = uList
+ } else {
+ const newArr = this.modelerStore.userList?.filter(i => val.split(',').includes(i.userId.toString()))
+ this.delegationUserSelect = newArr
+ }
+ } else {
+ this.expButDisable = false
+ this.delegationUserSelect = []
+ }
+ },
+
+ // 鑾峰彇瑙掕壊淇℃伅
+ getRoleOrDeptReview(ids) {
+ this.delegationDeptSelect = []
+ this.delegationRoleSelect = []
+ if (StrUtil.isNotBlank(ids)) {
+ this.expButDisable = true
+ this.typeButDisable = false
+ // 鏍规嵁id绛涢�夊嚭鏄鑹茶繕鏄儴闂�
+ const roleAndDeptIds = ids.split(",");
+ const deptIds = roleAndDeptIds.filter(item => item.includes("dept"));
+ const roleIds = roleAndDeptIds.filter(item => !item.includes("dept"));
+
+ if (roleIds && roleIds.length > 0) { // 瑙掕壊
+ const targetRoleList = this.modelerStore.roleList?.filter(i => roleIds.includes(i.roleId.toString()))
+ this.delegationRoleSelect = targetRoleList;
+ this.bpmnFormData.userType = "candidateGroups"
+ }
+ if (deptIds && deptIds.length > 0){ // 閮ㄩ棬
+ const targetDeptList = this.modelerStore.deptList?.filter(i => deptIds.includes(i.id))
+ this.delegationDeptSelect = targetDeptList
+ this.bpmnFormData.userType = "candidateDeptGroups"
+ }
+ } else {
+ this.expButDisable = false
+ this.delegationDeptSelect = []
+ this.delegationRoleSelect = []
+ }
+ },
+
+ // ------ 娴佺▼瀹℃壒浜哄憳淇℃伅寮瑰嚭妗� start---------
+
+
+ // 澶勭悊浜哄憳鍥炴樉
+ handleSelectData(key, value) {
+ for (let oldKey in this.selectData) {
+ if (key !== oldKey) {
+ this.$set(this.selectData, oldKey, null);
+ } else {
+ this.$set(this.selectData, oldKey, value);
+ }
+ }
+ },
+
+ /*琛ㄨ揪寮忛�変腑璧嬪��*/
+ checkExpComplete() {
+ this.expVisible = false;
+ },
+
+ // 鍒犻櫎鑺傜偣
+ deleteFlowAttar() {
+ delete this.modelerStore.element.businessObject[`dataType`]
+ delete this.modelerStore.element.businessObject[`expId`]
+ delete this.modelerStore.element.businessObject[`assignee`]
+ delete this.modelerStore.element.businessObject[`candidateUsers`]
+ delete this.modelerStore.element.businessObject[`candidateGroups`]
+ },
+
+ }
+}
+</script>
+<style scoped>
+.select-tag {
+ margin-right: 3px;
+}
+</style>
diff --git a/src/components/Process/panel/formPanel.vue b/src/components/Process/panel/formPanel.vue
index c1d4f14..d5016c2 100644
--- a/src/components/Process/panel/formPanel.vue
+++ b/src/components/Process/panel/formPanel.vue
@@ -39,7 +39,6 @@
watch: {
id: {
handler(newVal) {
- console.log("鏂扮殑id鍊硷細", newVal)
if (StrUtil.isNotBlank(newVal)) {
this.init()
}
@@ -59,12 +58,9 @@
// 鏂规硶鍖�
resetFlowForm() {
this.bpmnFormData.formKey = this.modelerStore.element.businessObject.formKey;
- console.log(this.bpmnFormData.formKey, "formKey!!")
},
updateElementFormKey(val) {
- console.log(val, "鏁版嵁鏀瑰彉")
- console.log(this.bpmnFormData.formKey, "鏁版嵁鏀瑰彉")
this.init()
if (StrUtil.isBlank(val)) {
delete this.modelerStore.element.businessObject[`formKey`]
@@ -80,7 +76,6 @@
item.formId = item.formId.toString();
})
this.formList = res.data;
- console.log("琛ㄥ崟淇℃伅锛�", this.formList)
})
}
}
diff --git a/src/components/flow/Dept/MyDept.vue b/src/components/flow/Dept/MyDept.vue
index ea0b709..27abe9a 100644
--- a/src/components/flow/Dept/MyDept.vue
+++ b/src/components/flow/Dept/MyDept.vue
@@ -1,7 +1,7 @@
<template>
<div>
<el-dialog
- :title="`閫夋嫨鍊欓�夐儴闂╜"
+ :title="title"
:visible.sync="show"
width="65%"
:destroy-on-close="true"
@@ -34,6 +34,11 @@
show: {
required: true,
type: Boolean
+ },
+ title: {
+ type: String,
+ required: false,
+ default: '鍊欓�夐儴闂�'
},
checkeds: {
required: true
@@ -82,7 +87,7 @@
},
handleCheckChange(data, checked, indeterminate) {
if (checked) {
- if (this.checkList.indexOf(data) === -1) {
+ if (this.checkList.every(item => item.id !== data.id)) {
this.checkList.push(data)
}
} else {
diff --git a/src/components/flow/Expression/index.vue b/src/components/flow/Expression/index.vue
index 7c9776c..973e5cb 100644
--- a/src/components/flow/Expression/index.vue
+++ b/src/components/flow/Expression/index.vue
@@ -54,7 +54,7 @@
props: {
// 鍥炴樉鏁版嵁浼犲��
selectValues: {
- type: Number | String,
+ type: Object,
default: null,
required: false
}
@@ -93,8 +93,10 @@
watch: {
selectValues: {
handler(newVal) {
- if (StrUtil.isNotBlank(newVal)) {
- this.radioSelected = newVal
+ if (newVal) {
+ this.radioSelected = newVal.id
+ } else {
+ this.radioSelected = null
}
},
immediate: true,
diff --git a/src/components/flow/Role/MyRole.vue b/src/components/flow/Role/MyRole.vue
index f2027a0..e5e9cd7 100644
--- a/src/components/flow/Role/MyRole.vue
+++ b/src/components/flow/Role/MyRole.vue
@@ -1,11 +1,12 @@
<template>
<div>
<el-dialog
- :title="`閫夋嫨鍊欓�夎鑹瞏"
+ :title="title"
:visible.sync="show"
width="65%"
:destroy-on-close="true"
:close-on-click-modal="false"
+ :modal-append-to-body="false"
:modal="false"
:before-close="close">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
@@ -14,6 +15,7 @@
v-model="queryParams.roleName"
placeholder="璇疯緭鍏ヨ鑹插悕绉�"
clearable
+ @clear="handleQuery"
style="width: 240px"
@keyup.enter.native="handleQuery"
/>
@@ -24,13 +26,13 @@
</el-form-item>
</el-form>
- <el-table ref="dataTable" v-loading="loading" :data="roleList" @selection-change="handleMultipleRoleSelect">
- <el-table-column type="selection" width="50" align="center" />
- <el-table-column label="瑙掕壊缂栧彿" prop="roleId" width="120" />
- <el-table-column label="瑙掕壊鍚嶇О" prop="roleName" :show-overflow-tooltip="true" width="150" />
- <el-table-column label="鏉冮檺瀛楃" prop="roleKey" :show-overflow-tooltip="true" width="150" />
- <el-table-column label="鏄剧ず椤哄簭" prop="roleSort" width="100" />
- <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" width="180">
+ <el-table ref="dataTable" :row-key="getRowKey" v-loading="loading" :data="roleList" @selection-change="handleMultipleRoleSelect">
+ <el-table-column type="selection" width="50" align="center" :reserve-selection="true"/>
+ <el-table-column label="瑙掕壊缂栧彿" prop="roleId"/>
+ <el-table-column label="瑙掕壊鍚嶇О" prop="roleName" :show-overflow-tooltip="true"/>
+ <el-table-column label="鏉冮檺瀛楃" prop="roleKey" :show-overflow-tooltip="true"/>
+ <el-table-column label="鏄剧ず椤哄簭" prop="roleSort"/>
+ <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
</template>
@@ -68,6 +70,11 @@
required: true,
default: true
},
+ title: {
+ type: String,
+ required: false,
+ default: '鍊欓�夎鑹�'
+ },
// 鍥炴樉鏁版嵁浼犲��
selectValues: {
type: Array,
@@ -79,22 +86,12 @@
return {
// 閬僵灞�
loading: true,
- // 閫変腑鏁扮粍
- ids: [],
- // 闈炲崟涓鐢�
- single: true,
- // 闈炲涓鐢�
- multiple: true,
// 鏄剧ず鎼滅储鏉′欢
showSearch: true,
// 鎬绘潯鏁�
total: 0,
// 瑙掕壊琛ㄦ牸鏁版嵁
roleList: [],
- // 寮瑰嚭灞傛爣棰�
- title: "",
- // 鏄惁鏄剧ず寮瑰嚭灞�
- open: false,
// 鏌ヨ鍙傛暟
queryParams: {
pageNum: 1,
@@ -103,72 +100,30 @@
roleKey: undefined,
status: undefined
},
- // 琛ㄥ崟鍙傛暟
- form: {},
- radioSelected: 0, // 鍗曢�夋浼犲��
selectRoleList: [] // 鍥炴樉鏁版嵁浼犲��
};
},
watch: {
- selectValues: {
- deep: true,
- handler(newVal) {
- if (newVal && newVal.length > 0) {
- this.$nextTick(() => {
- this.$refs.dataTable.clearSelection();
- this.selectRoleList = []
- newVal.forEach(item => {
- this.roleList.forEach(role => {
- if (item.roleId === role.roleId) {
- this.selectRoleList.push(role)
- this.$refs.dataTable.toggleRowSelection(role)
- }
- })
- });
- })
- } else {
- this.selectRoleList = []
- }
- }
- },
- roleList: {
- deep: true,
- handler(newVal) {
- if (newVal && newVal.length > 0) {
- this.$nextTick(() => {
- this.$refs.dataTable.clearSelection();
- this.selectValues.forEach(item => {
- newVal.forEach(role => {
- if (item.roleId === role.roleId) {
- this.$refs.dataTable.toggleRowSelection(role)
- }
- })
- });
- })
- }
- }
- }
},
mounted() {
+ console.log("鎴戝鍦ㄤ簡")
this.getList();
},
methods: {
+ // 淇濆瓨閫変腑鐨勬暟鎹甶d,row-key灏辨槸瑕佹寚瀹氫竴涓猭ey鏍囪瘑杩欎竴琛岀殑鏁版嵁
+ getRowKey (row) {
+ console.log(row.roleId)
+ return row.roleId
+ },
setChecked(val) {
- if (val && val.length > 0) {
- this.$nextTick(() => {
- this.$refs.dataTable.clearSelection();
- this.selectRoleList = val
- val.forEach(check => {
- this.roleList.forEach(item => {
- if (check.roleId === item.roleId) {
- this.$refs.dataTable.toggleRowSelection(item)
- }
- })
- })
- });
- } else {
- this.selectRoleList = []
- }
+
+ this.selectRoleList = val
+ console.log("鎺ユ敹鍒扮殑鏁版嵁", this.selectRoleList)
+ this.$nextTick(() => {
+ this.selectRoleList.forEach(check => {
+ this.$refs.dataTable.toggleRowSelection(check, true)
+ })
+ });
},
close() {
this.$emit("close")
@@ -187,8 +142,8 @@
);
},
// 澶氶�夋閫変腑鏁版嵁
- handleMultipleRoleSelect(selection) {
- this.selectRoleList = selection
+ handleMultipleRoleSelect(rows) {
+ this.selectRoleList = [...new Set(rows)]
},
/** 鎼滅储鎸夐挳鎿嶄綔 */
handleQuery() {
diff --git a/src/components/flow/User/MultUser.vue b/src/components/flow/User/MultUser.vue
index c4e18b7..00406bb 100644
--- a/src/components/flow/User/MultUser.vue
+++ b/src/components/flow/User/MultUser.vue
@@ -1,11 +1,12 @@
<template>
<div>
<el-dialog
- :title="`閫夋嫨杞姙鎺ユ敹浜哄憳`"
+ :title="title"
:visible.sync="show"
width="65%"
:destroy-on-close="true"
:close-on-click-modal="false"
+ :modal-append-to-body="false"
:modal="false"
:before-close="close">
<el-row :gutter="20">
@@ -38,11 +39,12 @@
<!--鐢ㄦ埛鏁版嵁-->
<el-col :span="18" :xs="24">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
- <el-form-item label="鐢ㄦ埛鍚嶇О" prop="userName">
+ <el-form-item label="鐢ㄦ埛鍚嶇О" prop="nickName">
<el-input
- v-model="queryParams.userName"
- placeholder="璇疯緭鍏ョ敤鎴峰悕绉�"
+ v-model="queryParams.nickName"
+ placeholder="璇疯緭鍏ョ敤鎴峰鍚�"
clearable
+ @clear="handleQuery"
style="width: 150px"
@keyup.enter.native="handleQuery"
/>
@@ -53,7 +55,7 @@
</el-form-item>
</el-form>
<el-table ref="dataTable" v-loading="loading" :row-key="getRowKey" :data="userList" @selection-change="handleUserSelect">
- <el-table-column type="selection" align="center" />
+ <el-table-column type="selection" align="center" :reserve-selection="true"/>
<el-table-column label="鐢ㄦ埛缂栧彿" align="center" key="userId" prop="userId" v-if="columns[0].visible" />
<el-table-column label="鐧诲綍璐﹀彿" align="center" key="userName" prop="userName" v-if="columns[1].visible" :show-overflow-tooltip="true" />
<el-table-column label="鐢ㄦ埛濮撳悕" align="center" key="nickName" prop="nickName" v-if="columns[2].visible" :show-overflow-tooltip="true" />
@@ -94,9 +96,14 @@
required: true,
type: Boolean
},
+ title: {
+ type: String,
+ required: false,
+ default: '鍊欓�変汉鍛�'
+ },
// 鍥炴樉鏁版嵁浼犲��
selectUserList: {
- type: Number,
+ type: Array,
default: null,
required: false
},
@@ -104,27 +111,19 @@
},
data() {
return {
- innerSelected: [],
+ innerSelected: [], // 閫変腑
// 閬僵灞�
- loading: true,
- // 閫変腑鏁扮粍
- ids: [],
+ loading: false,
// 鏄剧ず鎼滅储鏉′欢
showSearch: true,
// 鎬绘潯鏁�
total: 0,
// 鐢ㄦ埛琛ㄦ牸鏁版嵁
userList: [],
- // 寮瑰嚭灞傛爣棰�
- title: "",
// 閮ㄩ棬鏍戦�夐」
deptOptions: undefined,
- // 鏄惁鏄剧ず寮瑰嚭灞�
- open: false,
// 閮ㄩ棬鍚嶇О
deptName: undefined,
- // 琛ㄥ崟鍙傛暟
- form: {},
defaultProps: {
children: "children",
label: "label"
@@ -133,7 +132,7 @@
queryParams: {
pageNum: 1,
pageSize: 5,
- userName: undefined,
+ nickName: undefined,
phonenumber: undefined,
status: undefined,
deptId: undefined
@@ -148,7 +147,6 @@
{ key: 5, label: `鐘舵�乣, visible: true },
{ key: 6, label: `鍒涘缓鏃堕棿`, visible: true }
],
- radioSelected: 0, // 鍗曢�夋浼犲��
};
},
watch: {
@@ -156,46 +154,24 @@
deptName(val) {
this.$refs.tree.filter(val);
},
- selectUserList: {
- deep: true,
- handler(newVal) {
- console.log(this.selectValues, "浼犲叆鐨勫�兼槸")
- this.setChecked(newVal)
- },
- },
- userList: {
- deep: true,
- handler(newVal) {
- this.$nextTick(() => {
- this.$refs.dataTable.clearSelection();
- this.innerSelected.forEach(check => {
- newVal.forEach(item => {
- if (check.userId === item.userId) {
- this.$refs.dataTable.toggleRowSelection(item)
- }
- })
- })
- });
- },
- },
},
mounted() {
- this.getList();
this.getDeptTree();
+ this.getList();
},
methods: {
+ // 淇濆瓨閫変腑鐨勬暟鎹甶d,row-key灏辨槸瑕佹寚瀹氫竴涓猭ey鏍囪瘑杩欎竴琛岀殑鏁版嵁
+ getRowKey (row) {
+ return row.userId
+ },
setChecked(val) {
+ this.innerSelected = val
this.$nextTick(() => {
- this.$refs.dataTable.clearSelection();
- this.innerSelected = val
val.forEach(check => {
- this.userList.forEach(item => {
- if (check.userId === item.userId) {
- this.$refs.dataTable.toggleRowSelection(item)
- }
- })
+ this.$refs.dataTable.toggleRowSelection(check, true)
})
});
+
},
/** 鏌ヨ鐢ㄦ埛鍒楄〃 */
getList() {
@@ -213,10 +189,6 @@
this.deptOptions = response.data;
});
},
- // 淇濆瓨閫変腑鐨勬暟鎹甶d,row-key灏辨槸瑕佹寚瀹氫竴涓猭ey鏍囪瘑杩欎竴琛岀殑鏁版嵁
- getRowKey (row) {
- return row.id
- },
// 绛涢�夎妭鐐�
filterNode(value, data) {
if (!value) return true;
@@ -229,11 +201,17 @@
},
// 浼犻�掗�変腑鍊�
handleUserSelect(selectionList) {
- console.log("閫変腑鍊�", selectionList)
- this.innerSelected = selectionList
+
+ console.log("鍘熷厛鍊�", this.innerSelected)
+ this.innerSelected = [...new Set(selectionList)]
+ console.log("閫変腑鍊�", this.innerSelected)
},
getSelected() {
this.$emit('submit', this.innerSelected);
+
+ },
+ close() {
+ this.$emit("close")
},
/** 鎼滅储鎸夐挳鎿嶄綔 */
handleQuery() {
@@ -248,9 +226,7 @@
this.$refs.tree.setCurrentKey(null);
this.handleQuery();
},
- close() {
- this.$emit("close")
- },
+
}
};
</script>
diff --git a/src/components/flow/User/SingleUser.vue b/src/components/flow/User/SingleUser.vue
index e8cf64d..d779e71 100644
--- a/src/components/flow/User/SingleUser.vue
+++ b/src/components/flow/User/SingleUser.vue
@@ -1,7 +1,7 @@
<template>
<div>
<el-dialog
- :title="`閫夋嫨杞姙鎺ユ敹浜哄憳`"
+ :title="title"
:visible.sync="show"
width="65%"
:destroy-on-close="true"
@@ -38,11 +38,12 @@
<!--鐢ㄦ埛鏁版嵁-->
<el-col :span="18" :xs="24">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
- <el-form-item label="鐢ㄦ埛鍚嶇О" prop="userName">
+ <el-form-item label="鐢ㄦ埛濮撳悕" prop="nickName">
<el-input
- v-model="queryParams.userName"
- placeholder="璇疯緭鍏ョ敤鎴峰悕绉�"
+ v-model="queryParams.nickName"
+ placeholder="璇疯緭鍏ョ敤鎴峰鍚�"
clearable
+ @clear="handleQuery"
style="width: 150px"
@keyup.enter.native="handleQuery"
/>
@@ -53,7 +54,7 @@
</el-form-item>
</el-form>
<el-table ref="dataTable" v-loading="loading" :row-key="getRowKey" :data="userList" @selection-change="handleUserSelect">
- <el-table-column type="selection" />
+ <el-table-column type="selection" :reserve-selection="true"/>
<el-table-column label="鐢ㄦ埛缂栧彿" align="center" key="userId" prop="userId" v-if="columns[0].visible" />
<el-table-column label="鐧诲綍璐﹀彿" align="center" key="userName" prop="userName" v-if="columns[1].visible" :show-overflow-tooltip="true" />
<el-table-column label="鐢ㄦ埛濮撳悕" align="center" key="nickName" prop="nickName" v-if="columns[2].visible" :show-overflow-tooltip="true" />
@@ -94,6 +95,11 @@
required: true,
type: Boolean
},
+ title: {
+ type: String,
+ required: false,
+ default: '鎸囧畾浜哄憳'
+ },
// 鍥炴樉鏁版嵁浼犲��
selectUser: {
default: null,
@@ -106,24 +112,16 @@
innerSelected: null,
// 閬僵灞�
loading: true,
- // 閫変腑鏁扮粍
- ids: [],
// 鏄剧ず鎼滅储鏉′欢
showSearch: true,
// 鎬绘潯鏁�
total: 0,
// 鐢ㄦ埛琛ㄦ牸鏁版嵁
userList: [],
- // 寮瑰嚭灞傛爣棰�
- title: "",
// 閮ㄩ棬鏍戦�夐」
deptOptions: undefined,
- // 鏄惁鏄剧ず寮瑰嚭灞�
- open: false,
// 閮ㄩ棬鍚嶇О
deptName: undefined,
- // 琛ㄥ崟鍙傛暟
- form: {},
defaultProps: {
children: "children",
label: "label"
@@ -132,7 +130,7 @@
queryParams: {
pageNum: 1,
pageSize: 5,
- userName: undefined,
+ nickName: undefined,
phonenumber: undefined,
status: undefined,
deptId: undefined
@@ -147,7 +145,6 @@
{ key: 5, label: `鐘舵�乣, visible: true },
{ key: 6, label: `鍒涘缓鏃堕棿`, visible: true }
],
- radioSelected: 0, // 鍗曢�夋浼犲��
selectUserList: [] // 鍥炴樉鏁版嵁浼犲��
};
},
@@ -156,64 +153,21 @@
deptName(val) {
this.$refs.tree.filter(val);
},
- selectUser: {
- deep: true,
- handler(newVal) {
- if (newVal) {
- this.$nextTick(() => {
- this.$refs.dataTable.clearSelection();
- this.userList.forEach(item => {
- if (newVal === item.userId) {
- this.innerSelected = item
- this.$refs.dataTable.toggleRowSelection(item)
- }
- })
- });
- } else {
- this.innerSelected = null;
- }
- },
- },
- userLst: {
- deep: true,
- handler(newVal) {
- if (newVal) {
- this.$nextTick(() => {
- this.$refs.dataTable.clearSelection();
- if (! this.innerSelected) {
- newVal.forEach(item => {
- if (this.innerSelected.userId === item.userId) {
- this.innerSelected = item
- this.$refs.dataTable.toggleRowSelection(item)
- }
- })
- }
- });
- } else {
- this.innerSelected = null;
- }
- },
- },
},
mounted() {
this.getList();
this.getDeptTree();
},
methods: {
+ // 淇濆瓨閫変腑鐨勬暟鎹甶d,row-key灏辨槸瑕佹寚瀹氫竴涓猭ey鏍囪瘑杩欎竴琛岀殑鏁版嵁
+ getRowKey (row) {
+ return row.userId
+ },
setChecked(val) {
- if (val) {
- this.$nextTick(() => {
- this.$refs.dataTable.clearSelection();
- this.userList.forEach(item => {
- if (val.userId === item.userId) {
- this.innerSelected = item
- this.$refs.dataTable.toggleRowSelection(item)
- }
- })
- });
- } else {
- this.innerSelected = null
- }
+ this.innerSelected = val
+ this.$nextTick(() => {
+ this.$refs.dataTable.toggleRowSelection(val, true)
+ });
},
/** 鏌ヨ鐢ㄦ埛鍒楄〃 */
getList() {
@@ -230,10 +184,6 @@
deptTreeSelect().then(response => {
this.deptOptions = response.data;
});
- },
- // 淇濆瓨閫変腑鐨勬暟鎹甶d,row-key灏辨槸瑕佹寚瀹氫竴涓猭ey鏍囪瘑杩欎竴琛岀殑鏁版嵁
- getRowKey (row) {
- return row.id
},
// 绛涢�夎妭鐐�
filterNode(value, data) {
diff --git a/src/components/flow/User/index.vue b/src/components/flow/User/index.vue
index 33dcb57..5109608 100644
--- a/src/components/flow/User/index.vue
+++ b/src/components/flow/User/index.vue
@@ -245,8 +245,6 @@
this.$nextTick(() => {
this.$refs.dataTable.clearSelection();
this.userList.forEach(item => {
- console.log("鍗曢�夊�硷細", this.radioSelected)
- console.log(parseInt(this.radioSelected) === item.userId)
if (parseInt(this.radioSelected) === item.userId) {
this.$refs.dataTable.toggleRowSelection(item)
}
diff --git a/src/views/components/noticeTable.vue b/src/views/components/noticeTable.vue
index 319ebda..4789ab9 100644
--- a/src/views/components/noticeTable.vue
+++ b/src/views/components/noticeTable.vue
@@ -1,6 +1,6 @@
<template>
- <div>
- <div class="flex justify-between mb-[15px]">
+ <div style="position: relative">
+ <div class="flex justify-between mb-[15px]" style="align-items: center;margin-bottom: 5px">
<div class="block mb-3 font-semibold fonts">寰呭姙浜嬮」</div>
<div class="flex text-[12px]">
<div
@@ -26,7 +26,7 @@
color: '#454B5E',
fontSize: '12px'
}"
- height="280"
+ min-height="280"
max-height="280"
>
<el-table-column
@@ -37,6 +37,7 @@
:min-width="column.minWidth"
:prop="column.prop"
:show-overflow-tooltip="true"
+ :formatter="column.formatter"
>
</el-table-column>
@@ -44,35 +45,39 @@
align="center"
fixed="right"
label="鎿嶄綔"
- min-width="150"
+ min-width="90"
>
- <template #default="scope">
+ <template slot-scope="scope">
<el-button
- plain
size="small"
- type="primary"
+ type="text"
@click="handleDetail(scope.row)"
>
鏌ョ湅</el-button
>
<el-button
- plain
size="small"
- type="primary"
+ type="text"
@click="handleUpdate(scope.row)"
>
- 澶勭疆</el-button
+ 澶勭悊</el-button
>
</template>
</el-table-column>
</el-table>
- <pagination
+ <div style="position: absolute; bottom: 0px;width: 100%;">
+ <div style="width: 100%;display: flex;flex-direction: row-reverse;align-items: center">
+ <pagination
+ style="width: 100%"
v-show="total >= 0"
+ :page-sizes="[4]"
:limit="queryParams.pageSize"
:page="queryParams.pageNum"
:total="total"
@pagination="getList"
- />
+ />
+ </div>
+ </div>
</div>
</template>
<script>
@@ -85,7 +90,7 @@
total: 0,
queryParams: {
pageNum: 1,
- pageSize: 5,
+ pageSize: 4,
},
tableData: [],
currentTableHeaders: [],
@@ -93,11 +98,25 @@
{ label: "娴佺▼鐜妭", prop: "taskName", minWidth: 150, align: "left" },
{
label: "鐢宠椤圭洰",
- prop: "processName",
+ prop: "projectName",
minWidth: 150,
align: "left",
},
- { label: "瀹℃壒浜�", prop: "handlerName", minWidth: 100, align: "left" },
+ {
+ label: "澶勭悊浜�",
+ prop: "handlerName",
+ minWidth: 100,
+ align: "left",
+ formatter: (row) => {
+ if (row.handlerType === 'USER') {
+ return row.handlerName.join('銆�')
+ } else if (row.handlerType === 'DEPT') {
+ return row.handlerUnitName.join('銆�')
+ } else if (row.handlerType === 'ROLE') {
+ return row.handlerUnitName.join('銆�')
+ }
+ }
+ },
{ label: "瀹屾垚鎯呭喌", prop: "taskStatus", minWidth: 143, align: "left" },
{
label: "鍓╀綑鏃堕棿",
@@ -221,10 +240,13 @@
<style lang="scss" scoped>
.tab {
- padding: 8px;
+ padding: 6px;
border: 1px solid #dbdeea;
cursor: pointer;
width: 72px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
}
.active {
diff --git a/src/views/components/tidingsTable.vue b/src/views/components/tidingsTable.vue
index 99d3b80..8c88212 100644
--- a/src/views/components/tidingsTable.vue
+++ b/src/views/components/tidingsTable.vue
@@ -1,6 +1,6 @@
<template>
- <div>
- <div class="flex justify-between mb-[15px]">
+ <div style="position: relative">
+ <div class="flex justify-between mb-[15px]" style="align-items: center;margin-bottom: 5px">
<div class="block mb-3 font-semibold fonts">娑堟伅涓績</div>
<div class="flex text-[12px]">
<div
@@ -24,7 +24,7 @@
color: '#454B5E',
fontSize: '12px'
}"
- height="280"
+ min-height="280"
max-height="280"
>
<el-table-column
@@ -65,9 +65,8 @@
>
<template #default="scope">
<el-button
- plain
size="small"
- type="primary"
+ type="text"
@click="handleDetail(scope.row)"
>
鏌ョ湅</el-button
@@ -76,13 +75,19 @@
</template>
</el-table-column>
</el-table>
- <pagination
+ <div style="position: absolute; bottom: 0px;width: 100%;">
+ <div style="width: 100%;display: flex;flex-direction: row-reverse;align-items: center">
+ <pagination
+ style="width: 100%"
v-show="total >= 0"
+ :page-sizes="[4]"
:limit="queryParams.pageSize"
:page="queryParams.pageNum"
:total="total"
@pagination="getList"
- />
+ />
+ </div>
+ </div>
</div>
</template>
<script>
@@ -95,7 +100,7 @@
total: 0,
queryParams: {
pageNum: 1,
- pageSize: 10
+ pageSize: 4
},
tableData: [],
tabs: [
@@ -190,10 +195,13 @@
<style lang="scss" scoped>
.tab {
- padding: 8px;
+ padding: 6px;
border: 1px solid #dbdeea;
cursor: pointer;
width: 72px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
}
.active {
@@ -255,7 +263,7 @@
text-align: end;
}
::v-deep .el-pagination .btn-prev .el-icon,
- ::v-deep .el-pagination .btn-next .el-icon
+ ::v-deep .el-pagination .btn-next .el-icon
{
display: inline;
}
diff --git a/src/views/flowable/definition/model.vue b/src/views/flowable/definition/model.vue
index bead3c6..3ef28fd 100644
--- a/src/views/flowable/definition/model.vue
+++ b/src/views/flowable/definition/model.vue
@@ -104,7 +104,6 @@
/** 鎸囧畾娴佺▼鍔炵悊浜哄憳鍒楄〃 */
getDataList() {
userList().then(res => {
- console.log(this.modelerStore, "dhg")
this.modelerStore.userList = res.data;
})
roleList().then(res => {
diff --git a/src/views/flowable/task/myProcess/detail/index.vue b/src/views/flowable/task/myProcess/detail/index.vue
index baa1eae..9879bd8 100644
--- a/src/views/flowable/task/myProcess/detail/index.vue
+++ b/src/views/flowable/task/myProcess/detail/index.vue
@@ -9,17 +9,41 @@
<el-tabs tab-position="top" v-model="activeName" @tab-click="handleClick">
<!--琛ㄥ崟淇℃伅-->
<el-tab-pane label="琛ㄥ崟淇℃伅" name="1">
+ <!--鍒濆鍖栨祦绋嬪姞杞借〃鍗曚俊鎭�-->
<el-col :span="16" :offset="4">
<div v-if="formDataList && formDataList.length > 0">
- <div v-for="(formDataObj, index) in formDataList" :key="index" class="form-warp">
- <div v-if="formDataObj.current" style="margin-bottom: 15px;color: #409eff">褰撳墠闃舵锛�<span style="color: red">{{formDataObj.beforeNodeName}}</span></div>
- <div v-else style="margin-bottom: 15px;color: #409eff">鍓嶇疆闃舵锛�<span style="color: #d5904b">{{formDataObj.beforeNodeName}}</span></div>
- <div v-if="formDataObj.formJson !== null && formDataObj.formJson !== ''">
- <v-form-render :form-data="formDataObj.formJson" :ref="'form' + index"/>
+ <div v-for="(formDataObj, index) in formDataList" :key="index" class="form-warp" style="position: relative">
+ <div v-if="formDataObj.current">
+ <div style="margin-bottom: 15px;color: #E6A23C">褰撳墠闃舵锛�<span style="color: #409EFF">{{formDataObj.beforeNodeName}}</span></div>
+ <div v-if="formDataObj.formJson !== null && formDataObj.formJson !== ''">
+ <v-form-render :form-data="formDataObj.formJson" :ref="'form' + index"/>
+ </div>
+ <div v-else>
+ <el-alert
+ title="褰撳墠鑺傜偣鏈粦瀹氳〃鍗�"
+ type="info"
+ :closable="false"
+ >
+ </el-alert>
+ </div>
</div>
- <div v-else>
+ <div v-else-if="formDataList.length > 1">
+ <div style="margin-bottom: 15px;color: #E6A23C">鍓嶇疆闃舵锛�<span style="color: #F56C6C">{{formDataObj.beforeNodeName}}</span></div>
+ <div v-if="formDataObj.formJson !== null && formDataObj.formJson !== ''">
+ <v-form-render :form-data="formDataObj.formJson" :ref="'form' + index"/>
+ </div>
+ <div v-else>
+ <el-alert
+ title="鍓嶇疆鑺傜偣鏈粦瀹氳〃鍗�"
+ type="info"
+ :closable="false"
+ >
+ </el-alert>
+ </div>
+ </div>
+ <div v-if="formDataList.length <= 1">
<el-alert
- title="鑺傜偣鏃犺〃鍗曟暟鎹�"
+ title="涓嶅瓨鍦ㄥ墠缃妭鐐�"
type="info"
:closable="false"
>
@@ -27,22 +51,7 @@
</div>
</div>
</div>
- <div v-else>
- <el-alert
- title="褰撳墠鑺傜偣鏃犺〃鍗曟暟鎹�"
- type="info"
- :closable="false"
- >
- </el-alert>
- <el-alert
- style="margin-top: 20px"
- title="鍓嶇疆鑺傜偣鏃犺〃鍗曟暟鎹�"
- type="info"
- :closable="false"
- >
- </el-alert>
- </div>
- </el-col>
+ </el-col>
</el-tab-pane>
<!--娴佺▼娴佽浆璁板綍-->
<el-tab-pane label="娴佽浆璁板綍" name="2">
diff --git a/src/views/flowable/task/myProcess/send/index.vue b/src/views/flowable/task/myProcess/send/index.vue
index 76f7c37..1fdc23e 100644
--- a/src/views/flowable/task/myProcess/send/index.vue
+++ b/src/views/flowable/task/myProcess/send/index.vue
@@ -10,21 +10,56 @@
<!--琛ㄥ崟淇℃伅-->
<el-tab-pane label="琛ㄥ崟淇℃伅" name="1">
<!--鍒濆鍖栨祦绋嬪姞杞借〃鍗曚俊鎭�-->
- <el-col :span="16" :offset="4" v-if="formDataList && formDataList.length > 0">
- <div v-for="(formDataObj, index) in formDataList" :key="index" class="form-warp" style="position: relative">
-<!-- 鍓嶇疆鑺傜偣鍙┏鍥� -->
- <div v-if="!formDataObj.current" style="position: absolute; top: 4px; right: 4px">
- <el-button type="danger" size="small" @click="openRejectTask(formDataObj.beforeNodeDefId)">椹� 鍥�</el-button>
+ <el-col :span="16" :offset="4">
+ <div v-if="formDataList && formDataList.length > 0">
+ <div v-for="(formDataObj, index) in formDataList" :key="index" class="form-warp" style="position: relative">
+ <div v-if="formDataObj.current">
+ <!-- 褰撳墠鑺傜偣鍙崗鍚屻�佽浆鍔炵瓑鎿嶄綔 -->
+ <div style="position: absolute; top: 4px; right: 4px; display: flex;justify-content: center; align-items: center;">
+ <el-button size="small" type="primary" @click="submitForm">纭骞舵彁浜�</el-button>
+ <el-button size="small" type="primary" disabled @click="submitForm">鍗忓悓鍔炵悊(鍔熻兘寮�鍙戜腑)</el-button>
+ <el-button size="small" type="primary" @click="openDelegation(formDataList[0].beforeNodeName)">杞姙</el-button>
+ </div>
+ <div style="margin-bottom: 15px;color: #E6A23C">褰撳墠闃舵锛�<span style="color: #409EFF">{{formDataObj.beforeNodeName}}</span></div>
+ <div v-if="formDataObj.formJson !== null && formDataObj.formJson !== ''">
+ <v-form-render :form-data="formDataObj.formJson" :ref="'form' + index"/>
+ </div>
+ <div v-else>
+ <el-alert
+ title="褰撳墠鑺傜偣鏈粦瀹氳〃鍗�"
+ type="info"
+ :closable="false"
+ >
+ </el-alert>
+ </div>
+ </div>
+ <div v-else-if="formDataList.length > 1">
+ <!-- 鍓嶇疆鑺傜偣鍙┏鍥� -->
+ <div style="position: absolute; top: 4px; right: 4px">
+ <el-button type="danger" size="small" @click="openRejectTask(formDataObj.beforeNodeDefId)">椹� 鍥�</el-button>
+ </div>
+ <div style="margin-bottom: 15px;color: #E6A23C">鍓嶇疆闃舵锛�<span style="color: #F56C6C">{{formDataObj.beforeNodeName}}</span></div>
+ <div v-if="formDataObj.formJson !== null && formDataObj.formJson !== ''">
+ <v-form-render :form-data="formDataObj.formJson" :ref="'form' + index"/>
+ </div>
+ <div v-else>
+ <el-alert
+ title="鍓嶇疆鑺傜偣鏈粦瀹氳〃鍗�"
+ type="info"
+ :closable="false"
+ >
+ </el-alert>
+ </div>
+ </div>
+ <div v-if="formDataList.length <= 1">
+ <el-alert
+ title="涓嶅瓨鍦ㄥ墠缃妭鐐�"
+ type="info"
+ :closable="false"
+ >
+ </el-alert>
+ </div>
</div>
-<!-- 褰撳墠鑺傜偣鍙崗鍚屻�佽浆鍔炵瓑鎿嶄綔 -->
- <div v-else style="position: absolute; top: 4px; right: 4px; display: flex;justify-content: center; align-items: center;">
- <el-button size="small" type="primary" @click="submitForm">纭骞舵彁浜�</el-button>
- <el-button size="small" type="primary" disabled @click="submitForm">鍗忓悓鍔炵悊(鍔熻兘寮�鍙戜腑)</el-button>
- <el-button size="small" type="primary" @click="openDelegation(formDataList[0].beforeNodeName)">杞姙</el-button>
- </div>
- <div v-if="formDataObj.current" style="margin-bottom: 15px;color: #E6A23C">褰撳墠闃舵锛�<span style="color: #409EFF">{{formDataObj.beforeNodeName}}</span></div>
- <div v-else style="margin-bottom: 15px;color: #E6A23C">鍓嶇疆闃舵锛�<span style="color: #F56C6C">{{formDataObj.beforeNodeName}}</span></div>
- <v-form-render :form-data="formDataObj.formJson" :ref="'form' + index"/>
</div>
</el-col>
</el-tab-pane>
@@ -84,13 +119,13 @@
<el-form-item label="鐢ㄦ埛绫诲瀷" prop="peopleType">
<el-select v-model="delegationForm.peopleType" @change="peopleTypeChange" placeholder="璇烽�夋嫨鐢ㄦ埛绫诲瀷">
<el-option label="鎸囧畾浜哄憳" value="FIX_USER"></el-option>
- <el-option label="鍊欓�夌敤鎴�" value="USER"></el-option>
+ <el-option label="鍊欓�変汉鍛�" value="USER"></el-option>
<el-option label="鍊欓�夐儴闂�" value="DEPT"></el-option>
<el-option label="鍊欓�夎鑹�" value="ROLE"></el-option>
</el-select>
</el-form-item>
<el-form-item v-if="delegationForm.peopleType === 'DEPT'" label="鍊欓�夐儴闂�" prop="targetId">
- <MyDept ref="dept" :checkeds="delegationDeptSelect" :show="deptShow" @close="closeDept" @submit="getDeptSelect"/>
+ <MyDept ref="dept" :checkeds="delegationDeptSelect" :title="`閫夋嫨杞姙閮ㄩ棬`" :show="deptShow" @close="closeDept" @submit="getDeptSelect" :key="deptKey"/>
<div style="display: flex;align-items: center">
<div>
<el-tag v-for="dept in delegationDeptSelect" :key="dept.id + 'zxc'" type="info" closable @close="removeDept(dept)">{{dept.label}}</el-tag>
@@ -98,8 +133,8 @@
<el-button style="margin-left: 8px" type="text" @click="editDept">閫夋嫨</el-button>
</div>
</el-form-item>
- <el-form-item v-if="delegationForm.peopleType === 'FIX_USER'" label="鎸囧畾鐢ㄦ埛" prop="targetId">
- <single-user ref="singleUser" :select-user="delegationForm.targetId" :show="singleUserShow" @close="closeSingleUser" @submit="getSingleUserSelect"/>
+ <el-form-item v-if="delegationForm.peopleType === 'FIX_USER'" label="鎸囧畾浜哄憳" prop="targetId">
+ <single-user ref="singleUser" :select-user="delegationForm.targetId" :title="`閫夋嫨杞姙鎺ユ敹浜哄憳(鍗曚汉)`" :show="singleUserShow" @close="closeSingleUser" @submit="getSingleUserSelect" :key="singleUserKey"/>
<div style="display: flex;align-items: center">
<div>
<el-tag v-for="user in delegationUserSelect" :key="user.userId + 'abc'" type="info" closable @close="removeSingleUser(user)">{{user.nickName}}</el-tag>
@@ -107,8 +142,8 @@
<el-button style="margin-left: 8px" type="text" @click="editSingleUser">閫夋嫨</el-button>
</div>
</el-form-item>
- <el-form-item v-if="delegationForm.peopleType === 'USER'" label="鍊欓�夌敤鎴�" prop="targetId">
- <mult-user ref="multUser" :select-user="delegationUserSelect" :show="multUserShow" @close="closeMultUser" @submit="getMultUserSelect"/>
+ <el-form-item v-if="delegationForm.peopleType === 'USER'" label="鍊欓�変汉鍛�" prop="targetId">
+ <mult-user ref="multUser" :select-user="delegationUserSelect" :title="`閫夋嫨杞姙鎺ユ敹浜哄憳(鍙浜�)`" :show="multUserShow" @close="closeMultUser" @submit="getMultUserSelect" :key="multUserKey"/>
<div style="display: flex;align-items: center">
<div>
<el-tag v-for="user in delegationUserSelect" :key="user.userId + 'qwe'" type="info" closable @close="removeMultUser(user)">{{user.nickName}}</el-tag>
@@ -117,7 +152,7 @@
</div>
</el-form-item>
<el-form-item v-if="delegationForm.peopleType === 'ROLE'" label="鍊欓�夎鑹�" prop="targetId">
- <my-role ref="role" :select-values="delegationRoleSelect" :show="roleShow" @close="closeRole" @submit="getRoleSelect"/>
+ <my-role ref="role" :select-values="delegationRoleSelect" :title="`閫夋嫨杞姙瑙掕壊`" :show="roleShow" @close="closeRole" @submit="getRoleSelect" :key="roleKey"/>
<div style="display: flex;align-items: center">
<div>
<el-tag v-for="role in delegationRoleSelect" :key="role.roleId + 'rty'" type="info" closable @close="removeRole(role)">{{role.roleName}}</el-tag>
@@ -128,7 +163,7 @@
</el-form>
</div>
<div class="opBut">
- <el-button type="danger" size="small" @click="delegation">杞姙</el-button>
+ <el-button type="danger" size="small" @click="delegation">杞� 鍔�</el-button>
</div>
</el-dialog>
@@ -160,6 +195,10 @@
props: {},
data() {
return {
+ roleKey: 'role',
+ deptKey: 'dept',
+ multUserKey: 0,
+ singleUserKey: 'single',
projectName: '',
flowName: '',
roleShow: false, // 瑙掕壊缁勬樉绀�
@@ -306,6 +345,7 @@
}
},
editDept() {
+ this.deptKey += '1'
this.$nextTick(() => {
this.$refs.dept.setCheckList(this.delegationDeptSelect)
})
@@ -313,6 +353,7 @@
},
editSingleUser() {
if (this.delegationUserSelect && this.delegationUserSelect.length > 0) {
+ this.singleUserKey += '1'
this.$nextTick(() => {
this.$refs.singleUser.setChecked(this.delegationUserSelect[0])
})
@@ -321,6 +362,7 @@
},
editRole() {
if (this.delegationRoleSelect && this.delegationRoleSelect.length > 0) {
+ this.roleKey += '1'
this.$nextTick(() => {
this.$refs.role.setChecked(this.delegationRoleSelect)
})
@@ -329,6 +371,7 @@
},
editMultUser() {
if (this.delegationForm.targetId) {
+ this.multUserKey += 1
this.$nextTick(() => {
this.$refs.multUser.setChecked(this.delegationUserSelect)
})
@@ -339,8 +382,11 @@
if (deptList && deptList.length > 0) {
this.delegationForm.targetId = deptList.map(item => item.id).join(",")
this.delegationDeptSelect = deptList
+ } else {
+ this.delegationDeptSelect = []
}
this.deptShow = false
+ this.deptKey += 1
},
getMultUserSelect(userList) {
if (userList && userList.length > 0) {
@@ -351,6 +397,7 @@
this.delegationUserSelect = []
}
this.multUserShow = false
+ this.multUserKey += 1
},
getRoleSelect(roleList) {
if (roleList && roleList.length > 0) {
@@ -361,6 +408,7 @@
this.delegationRoleSelect = []
}
this.roleShow = false
+ this.roleKey += '1'
},
getSingleUserSelect(user) {
if (user) {
@@ -371,18 +419,23 @@
this.delegationUserSelect = []
}
this.singleUserShow = false
+ this.singleUserKey += '1'
},
closeDept() {
this.deptShow = false
+ this.deptKey += '1'
},
closeSingleUser() {
this.singleUserShow = false
+ this.singleUserKey += '1'
},
closeRole() {
this.roleShow = false
+ this.roleKey += '1'
},
closeMultUser() {
this.multUserShow = false
+ this.multUserKey += 1
},
openDelegation(taskName) {
this.delegationForm.taskName = taskName
@@ -415,14 +468,15 @@
if (this.formDataList && this.formDataList.length > 0) {
this.$nextTick(() => {
this.formDataList.forEach((formDataObj, index) => {
- console.log("琛ㄥ崟鏁版嵁鍒楄〃", formDataObj.formJson)
let that = this
- console.log(eval("that.$refs.form" +index)[0])
- eval("that.$refs.form" +index)[0].setFormJson(formDataObj.formJsonObj.formJson);
-
- eval("that.$refs.form" +index)[0].setFormData(formDataObj.formJsonObj);
+ if (formDataObj.formJsonObj) {
+ eval("that.$refs.form" +index)[0].setFormJson(formDataObj.formJsonObj.formJson);
+ eval("that.$refs.form" +index)[0].setFormData(formDataObj.formJsonObj);
+ }
})
- this.formJson = this.formDataList[0].formJsonObj.formJson
+ if (this.formDataList[0].formJsonObj) {
+ this.formJson = this.formDataList[0].formJsonObj.formJson
+ }
})
}
@@ -446,7 +500,6 @@
// })
// }
}).catch(res => {
- console.log("鎶ラ敊浜嗭細", res)
this.goBack();
})
},
diff --git a/src/views/function/api/purchase.js b/src/views/function/api/purchase.js
index 1ef3bc0..34c094e 100644
--- a/src/views/function/api/purchase.js
+++ b/src/views/function/api/purchase.js
@@ -5,7 +5,6 @@
export const getPurchaseApplyList = data => {
const queryString = commonUtil.objectToQueryStr(data);
- console.log("aaaaaaaaaaaaaaaaaaaaaaa2", queryString);
return request({
url: '/purchase/list',
method: 'post',
@@ -47,4 +46,4 @@
method: 'post',
data: fd
});
-}
\ No newline at end of file
+}
diff --git a/src/views/function/leaveApply.vue b/src/views/function/leaveApply.vue
index 15b9672..f93d294 100644
--- a/src/views/function/leaveApply.vue
+++ b/src/views/function/leaveApply.vue
@@ -100,7 +100,7 @@
<el-form-item label="閮ㄩ棬棰嗗">
<el-select v-model="form.deptleader">
<el-option
- v-for="(user, i) in userList"
+ v-for="(user, i) in userList"
:key="i"
:label="user.userName"
:value="user.userName"
@@ -170,7 +170,6 @@
mounted() {
this.getLeaveApplyListAndRender(this.searchParams)
listUser().then(res => {
- console.log("鑾峰彇鐢ㄦ埛", res);
this.userList = res.rows;
});
},
@@ -184,7 +183,7 @@
const ids = this.selectionIds.join(",");
this.deleteByIdsAndRender(ids);
});
-
+
},
handleExport() {
this.$confirm('纭畾瀵煎嚭鎵�鏈夋暟鎹悧锛�', {
diff --git a/src/views/index.vue b/src/views/index.vue
index b4cd025..513d018 100644
--- a/src/views/index.vue
+++ b/src/views/index.vue
@@ -83,13 +83,13 @@
<div class="flex">
<div class="flex_card">
<el-card>
- <NoticeTable style="height: 360px" />
+ <NoticeTable style="height: 340px" />
</el-card>
</div>
<!-- 娑堟伅閫氱煡 -->
<div class="flex_card">
<el-card>
- <TidingsTable style="height: 360px" />
+ <TidingsTable style="height: 340px" />
</el-card>
</div>
<!-- 鍦板浘 -->
@@ -98,7 +98,7 @@
<el-card>
<div>
<div class="search-form">
- <el-form :model="searchForm" inline>
+ <el-form :model="searchForm" inline size="small">
<el-form-item label=" ">
<el-input
v-model="searchForm.name"
@@ -109,6 +109,8 @@
</el-form-item>
<el-form-item style="margin-right: 0px">
<el-button
+ clearable
+ @clear="searchList"
icon="Search"
type="primary"
@click="searchList"
@@ -206,7 +208,6 @@
this.queryParams.endTime = this.timeMerge[1];
},
handleQuery() {
- console.log(this.queryParams);
const obj = {
startDate: this.queryParams.startTime,
endDate: this.queryParams.endTime,
diff --git a/src/views/projectEngineering/projectLibrary/projectDetails.vue b/src/views/projectEngineering/projectLibrary/projectDetails.vue
index 6204cbf..9332ed8 100644
--- a/src/views/projectEngineering/projectLibrary/projectDetails.vue
+++ b/src/views/projectEngineering/projectLibrary/projectDetails.vue
@@ -131,7 +131,6 @@
},
handleClick(tabTarget) {
this.componentName = this.TABS_DATA[tabTarget.index].componentName;
- console.log(this.projectForm);
},
changeTable(index) {
this.componentName = this.TABS_DATA[index].componentName;
diff --git a/src/views/projectManage/plan/planInfo.vue b/src/views/projectManage/plan/planInfo.vue
index b7cabf3..789eaf3 100644
--- a/src/views/projectManage/plan/planInfo.vue
+++ b/src/views/projectManage/plan/planInfo.vue
@@ -193,7 +193,6 @@
// 淇濆瓨褰撳墠琛屾暟鎹�
handleSave(index) {
this.tableData[index].projectPlanRecordId = this.projectInfoData.id;
- console.log(this.tableData[index])
savePlanInfo(this.tableData[index], this.planInfoData.id).then(response => {
this.$message.success('淇濆瓨鎴愬姛');
});
diff --git a/src/views/projectProcess/detail/index.vue b/src/views/projectProcess/detail/index.vue
index 6c17627..207b6a4 100644
--- a/src/views/projectProcess/detail/index.vue
+++ b/src/views/projectProcess/detail/index.vue
@@ -232,13 +232,16 @@
},
search() {
this.queryParams.currentPage = 1;
+ this.tableLoading = true
this.getList()
},
sizeChange(pageSize) {
+ this.tableLoading = true
this.queryParams.pageSize = pageSize;
this.getList()
},
pageChange(pageNum) {
+ this.tableLoading = true
this.queryParams.currentPage = pageNum;
this.getList()
},
diff --git a/src/views/projectProcess/index.vue b/src/views/projectProcess/index.vue
index 9838167..a71814a 100644
--- a/src/views/projectProcess/index.vue
+++ b/src/views/projectProcess/index.vue
@@ -393,7 +393,6 @@
methods: {
// 鏌ョ湅璇︽儏
lookProcessDetail(row) {
- console.log(row.processDefId)
this.$router.push({
path: '/projectFlow/detail',
query: {
diff --git a/src/views/todo/api/allTodoList.js b/src/views/todo/api/allTodoList.js
index 3f9cb28..b0d011a 100644
--- a/src/views/todo/api/allTodoList.js
+++ b/src/views/todo/api/allTodoList.js
@@ -3,9 +3,7 @@
// 鑾峰彇鎴戠殑寰呭姙
export const getAllTodoList = data => {
- console.log("aaaaaaaaaaaaaaaaaaaaaaa1");
const queryString = commonUtil.objectToQueryStr(data);
- console.log("aaaaaaaaaaaaaaaaaaaaaaa2", queryString);
return request({
url: '/task/manage/alllist',
method: 'post',
@@ -14,4 +12,4 @@
'Content-Type': 'application/x-www-form-urlencoded'
},
});
-}
\ No newline at end of file
+}
diff --git a/src/views/todo/api/myTodoList.js b/src/views/todo/api/myTodoList.js
index d8d2bdd..2189cd3 100644
--- a/src/views/todo/api/myTodoList.js
+++ b/src/views/todo/api/myTodoList.js
@@ -3,9 +3,7 @@
// 鑾峰彇鎴戠殑寰呭姙
export const getMyTodoList = data => {
- console.log("aaaaaaaaaaaaaaaaaaaaaaa1");
const queryString = commonUtil.objectToQueryStr(data);
- console.log("aaaaaaaaaaaaaaaaaaaaaaa2", queryString);
return request({
url: '/task/manage/mylist',
method: 'post',
@@ -101,4 +99,4 @@
url: url + `?taskid=${taksId}`,
method: 'get',
});
-}
\ No newline at end of file
+}
diff --git a/src/views/todo/processTask.vue b/src/views/todo/processTask.vue
index 4ad1076..8504a5a 100644
--- a/src/views/todo/processTask.vue
+++ b/src/views/todo/processTask.vue
@@ -109,7 +109,6 @@
if (this.step === "input") {
const id = this.$route.query.id;
const {content} = data;
- console.log(id);
fillMeetingRecord({
id,
content
@@ -118,7 +117,7 @@
});
}
}
-
+
if (this.taskType === "leaveapply") {
if (
this.step === "destroyapply"
--
Gitblit v1.8.0