Ver Fonte

Merge branch 'master' of http://119.23.210.103:3000/wy/mj_firm_former

cfort há 3 anos atrás
pai
commit
21f5913562

+ 10 - 0
src/business/platform/org/employee/dialog.vue

@@ -13,6 +13,8 @@
       <ibps-selector-panel
         ref="panel"
         v-bind="scope"
+        :orgAddId="orgAddId"
+        :orgAddIndex="orgAddIndex"
         :party-type-id="partyTypeId"
         :seeting-search-party-type="seetingSearchPartyType"
         :current-org-id="currentOrgId"
@@ -37,6 +39,14 @@ export default {
     IbpsSelectorPanel
   },
   props: {
+    orgAddIndex: {
+      type: String,
+      default: '',
+    },
+    orgAddId:{
+        type: String,
+      default: '',
+    },
     className: String,
     filter: {
       type: Array,

+ 7 - 2
src/business/platform/org/employee/mixins/panelTree.js

@@ -79,7 +79,7 @@ export default {
       ref.store.lazy = lazy
       ref.store.defaultExpandAll = !lazy
       ref.store.defaultExpandedKeys = lazy ? ['0'] : null
-      ref.store.setData(data)
+      ref.store.setData(data,this.loadOrgTreeNode3,this.loadOrgTreeNode)
       if (lazy && !this.isUseScope && (this.partyType !== 'org' || (this.partyType === 'org' && this.partyTypeId !== '3'))) {
         // 普通模式懒加载函数调用
         ref.store.load = this.loadOrgTreeNode
@@ -183,7 +183,12 @@ export default {
       }
       getOrgTreeData(params).then(res => {
         this.loadingTree = false
-        const arr = JSON.parse(JSON.stringify(res.data))
+        let arr = JSON.parse(JSON.stringify(res.data))
+        //筛选客户 不要了
+        if(arr[0].id != '0' && this.orgAddIndex == 'qita'){
+            arr = arr.filter(item => item.id !== '994526204868427776')
+        }
+
         let treeData
         if (this.$utils.isNotEmpty(this.isSuperInitTree)) {
           if (!this.isSuperInitTree.initNode && node.level !== 0) {

+ 13 - 1
src/business/platform/org/employee/panel.vue

@@ -124,7 +124,15 @@ export default {
     isSuperInitTree: { // 是否为超管初始化树类型数据
       type: Object,
       default: () => {}
-    }
+    },
+    orgAddIndex: {
+      type: String,
+      default: '',
+    },
+    orgAddId:{
+        type: String,
+      default: '',
+    },
   },
   data() {
     return {
@@ -341,6 +349,10 @@ export default {
       // if (this.$utils.isNotEmpty(this.currentOrgId)) {
       //   params['orgId'] = this.partyId || this.currentOrgId
       // }
+      //筛选客户不要了
+      if(this.orgAddIndex=='qita' && this.partyId=='' && this.partyType == 'org'){
+        params['orgId'] = this.orgAddId
+      }
       return ActionUtils.formatParams(
         params,
         this.pagination,

+ 10 - 0
src/business/platform/org/employee/selector.vue

@@ -8,6 +8,8 @@
     />
     <!-- 选择器 -->
     <ibps-employee-selector-dialog
+      :orgAddId="orgAddId"
+      :orgAddIndex="orgAddIndex"
       :visible="selectorVisible"
       :value="selectorValue"
       :multiple="multiple"
@@ -43,6 +45,14 @@ export default {
   },
   mixins: [emitter],
   props: {
+    orgAddIndex: {
+      type: String,
+      default: '',
+    },
+    orgAddId:{
+      type: String,
+      default: '',
+    },
     className: String,
     partyTypeId: [String, Number],
     currentOrgId: [String, Number],

+ 370 - 455
src/views/platform/bpmn/bpmAgent/edit.vue

@@ -1,202 +1,108 @@
 <template>
-  <el-dialog
-    :title="title"
-    :visible.sync="dialogVisible"
-    :close-on-click-modal="false"
-    :close-on-press-escape="false"
-    append-to-body
-    class="bpmn-agent-dialog"
-    width="80%"
-    top="10vh"
-    @open="getFormData"
-    @close="closeDialog"
-  >
-    <el-form
-      ref="agentForm"
-      v-loading="dialogLoading"
-      :element-loading-text="$t('common.loading')"
-      :model="bpmAgent"
-      :rules="rules"
-      :label-width="formLabelWidth"
-      @submit.native.prevent
-    >
-      <el-form-item label="标题:" prop="title">
-        <el-input v-if="!readonly" v-model="bpmAgent.title" />
-        <span v-else>{{ bpmAgent.title }}</span>
-      </el-form-item>
-      <el-row>
-        <el-col :span="12" col>
-          <el-form-item label="代理类型:" prop="agentType">
-            <el-radio-group v-if="!readonly" v-model="bpmAgent.agentType">
-              <el-radio
-                v-for="option in agentTypeOptions"
-                :key="option.value"
-                :label="option.value"
-              >{{ option.label }}</el-radio>
-            </el-radio-group>
-            <el-tag v-else :type="bpmAgent.agentType|optionsFilter(agentTypeOptions,'type')">{{ bpmAgent.agentType|optionsFilter(agentTypeOptions,'label') }}</el-tag>
-          </el-form-item>
+    <el-dialog :title="title" :visible.sync="dialogVisible" :close-on-click-modal="false" :close-on-press-escape="false" append-to-body class="bpmn-agent-dialog" width="80%" top="10vh" @open="getFormData" @close="closeDialog">
+        <el-form ref="agentForm" v-loading="dialogLoading" :element-loading-text="$t('common.loading')" :model="bpmAgent" :rules="rules" :label-width="formLabelWidth" @submit.native.prevent>
+            <el-form-item label="标题:" prop="title">
+                <el-input v-if="!readonly" v-model="bpmAgent.title" />
+                <span v-else>{{ bpmAgent.title }}</span>
+            </el-form-item>
+            <el-row>
+                <el-col :span="12" col>
+                    <el-form-item label="代理类型:" prop="agentType">
+                        <el-radio-group v-if="!readonly" v-model="bpmAgent.agentType">
+                            <el-radio v-for="option in agentTypeOptions" :key="option.value" :label="option.value">{{ option.label }}</el-radio>
+                        </el-radio-group>
+                        <el-tag v-else :type="bpmAgent.agentType | optionsFilter(agentTypeOptions, 'type')">{{ bpmAgent.agentType | optionsFilter(agentTypeOptions, 'label') }}</el-tag>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12" col>
+                    <el-form-item label="是否启用:" prop="isEnabled">
+                        <el-switch v-if="!readonly" v-model="bpmAgent.isEnabled" active-value="enabled" inactive-value="disabled" />
+                        <el-tag v-else :type="bpmAgent.isEnabled | optionsFilter(statusOptions, 'type')">{{ bpmAgent.isEnabled | optionsFilter(statusOptions, 'label') }}</el-tag>
+                    </el-form-item>
+                </el-col>
+            </el-row>
+            <el-form-item label="委托人:" prop="delegatorId">
+                <ibps-employee-selector v-if="!readonly" :orgAddId="orgAddId" :orgAddIndex="orgAddIndex" v-model="bpmAgent.delegatorId" @callback="callbackDelegatorrInfo" />
+                <span v-else>{{ bpmAgent.delegatorName }}</span>
+            </el-form-item>
+            <el-row>
+                <el-col :span="12" col>
+                    <el-form-item label="生效时间:" prop="effectiveTime">
+                        <el-date-picker v-if="!readonly" v-model="bpmAgent.effectiveTime" type="date" value-format="yyyy-MM-dd" style="width:100%;" />
+                        <span v-else>{{ bpmAgent.effectiveTime }}</span>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="12" col>
+                    <el-form-item label="失效时间:" prop="expiryTime">
+                        <el-date-picker v-if="!readonly" v-model="bpmAgent.expiryTime" type="date" value-format="yyyy-MM-dd" style="width:100%;" />
+                        <span v-else>{{ bpmAgent.expiryTime }}</span>
+                    </el-form-item>
+                </el-col>
+            </el-row>
 
-        </el-col>
-        <el-col :span="12" col>
-          <el-form-item label="是否启用:" prop="isEnabled">
-            <el-switch
-              v-if="!readonly"
-              v-model="bpmAgent.isEnabled"
-              active-value="enabled"
-              inactive-value="disabled"
-            />
-            <el-tag v-else :type="bpmAgent.isEnabled|optionsFilter(statusOptions,'type')">{{ bpmAgent.isEnabled|optionsFilter(statusOptions,'label') }}</el-tag>
-          </el-form-item>
-        </el-col>
-      </el-row>
-      <el-form-item label="委托人:" prop="delegatorId">
-        <ibps-employee-selector
-          v-if="!readonly"
-          v-model="bpmAgent.delegatorId"
-          @callback="callbackDelegatorrInfo"
-        />
-        <span v-else>{{ bpmAgent.delegatorName }}</span>
-      </el-form-item>
-      <el-row>
-        <el-col :span="12" col>
-          <el-form-item label="生效时间:" prop="effectiveTime">
-            <el-date-picker v-if="!readonly" v-model="bpmAgent.effectiveTime" type="date" value-format="yyyy-MM-dd" style="width:100%;" />
-            <span v-else>{{ bpmAgent.effectiveTime }}</span>
-          </el-form-item>
+            <!-- 全部代理 || 部分代理 -->
+            <el-form-item v-if="bpmAgent.agentType === 'all' || bpmAgent.agentType === 'part'" label="代理人:" prop="agenterId">
+                <ibps-employee-selector v-if="!readonly" :orgAddId="orgAddId" :orgAddIndex="orgAddIndex" v-model="bpmAgent.agenterId" @callback="callbackAgenterInfo" />
+                <span v-else>{{ bpmAgent.agenterName }}</span>
+            </el-form-item>
 
-        </el-col>
-        <el-col :span="12" col>
-          <el-form-item label="失效时间:" prop="expiryTime">
-            <el-date-picker v-if="!readonly" v-model="bpmAgent.expiryTime" type="date" value-format="yyyy-MM-dd" style="width:100%;" />
-            <span v-else>{{ bpmAgent.expiryTime }}</span>
-          </el-form-item>
+            <div v-if="bpmAgent.agentType === 'part'">
+                <el-form-item label="流程定义">
+                    <div v-if="!readonly" class="dialog-right">
+                        <bpm-definition-selector button multiple @callback="updateDefine" />
+                        <el-button class="ibps-icon-remove ibps-ml-10" type="danger" @click="handleAllDelete(multipleSelection)">删除</el-button>
+                    </div>
+                </el-form-item>
+                <el-form-item v-loading="rowLoading" label-width="20px" :element-loading-text="$t('common.loading')">
+                    <el-table ref="multipleTable" border :data="bpmAgent.bpmAgentDefPoList" tooltip-effect="dark" style="width: 100%" @selection-change="handleSelectionChange">
+                        <el-table-column v-if="!readonly" type="selection" width="45" />
+                        <el-table-column label="流程名称">
+                            <template slot-scope="scope">{{ scope.row.procDefName ? scope.row.procDefName : scope.row.name }}</template>
+                        </el-table-column>
+                        <el-table-column v-if="!readonly" label="操作" width="55">
+                            <template slot-scope="scope">
+                                <el-button type="danger" icon="el-icon-delete" circle @click="handleDelete(scope.$index, scope.row)" />
+                            </template>
+                        </el-table-column>
+                    </el-table>
+                </el-form-item>
+            </div>
 
-        </el-col>
-      </el-row>
+            <!-- 条件代理 -->
+            <div v-if="bpmAgent.agentType === 'condition'">
+                <el-form-item label="流程名称:">
+                    <bpm-definition-selector v-model="bpmAgent.procDefId" :disabled="readonly" />
+                </el-form-item>
+                <el-form-item label="流程代理条件">
+                    <div v-if="!readonly" class="dialog-right">
+                        <el-button class="ibps-icon-add" type="primary" @click="openConditionDialog">添加</el-button>
+                        <el-button class="ibps-icon-remove ibps-ml-5" type="danger">删除</el-button>
+                    </div>
+                </el-form-item>
+                <el-form-item v-loading="rowLoading" label-width="20px" :element-loading-text="$t('common.loading')">
+                    <el-table ref="multipleTable" :data="bpmAgent.bpmAgentConditionPoList" tooltip-effect="dark" style="width: 100%" @selection-change="handleConditionChange">
+                        <el-table-column type="selection" width="55" />
+                        <el-table-column label="代理人">
+                            <template slot-scope="scope">{{ scope.row.agenterName }}</template>
+                        </el-table-column>
+                        <el-table-column label="条件名称">
+                            <template slot-scope="scope">{{ scope.row.name }}</template>
+                        </el-table-column>
+                        <el-table-column prop="address" label="管理" width="100px" show-overflow-tooltip>
+                            <el-button type="primary" icon="el-icon-edit" circle @click="handleEdit(scope.$index, scope.row)" />
+                            <el-button type="danger" icon="el-icon-delete" circle @click="handleRemove(scope.$index, scope.row)" />
+                        </el-table-column>
+                    </el-table>
+                </el-form-item>
+            </div>
+        </el-form>
+        <div slot="footer" class="el-dialog--center">
+            <ibps-toolbar :actions="toolbars" @action-event="handleActionEvent" />
+        </div>
 
-      <!-- 全部代理 || 部分代理 -->
-      <el-form-item v-if="bpmAgent.agentType === 'all' || bpmAgent.agentType === 'part'" label="代理人:" prop="agenterId">
-        <ibps-employee-selector
-          v-if="!readonly"
-          v-model="bpmAgent.agenterId"
-          @callback="callbackAgenterInfo"
-        />
-        <span v-else>{{ bpmAgent.agenterName }}</span>
-      </el-form-item>
-
-      <div v-if="bpmAgent.agentType === 'part'">
-        <el-form-item label="流程定义">
-          <div v-if="!readonly" class="dialog-right">
-            <bpm-definition-selector
-              button
-              multiple
-              @callback="updateDefine"
-            />
-            <el-button class="ibps-icon-remove ibps-ml-10" type="danger" @click="handleAllDelete(multipleSelection)">删除</el-button>
-          </div>
-        </el-form-item>
-        <el-form-item
-          v-loading="rowLoading"
-          label-width="20px"
-          :element-loading-text="$t('common.loading')"
-        >
-          <el-table
-            ref="multipleTable"
-            border
-            :data="bpmAgent.bpmAgentDefPoList"
-            tooltip-effect="dark"
-            style="width: 100%"
-            @selection-change="handleSelectionChange"
-          >
-            <el-table-column
-              v-if="!readonly"
-              type="selection"
-              width="45"
-            />
-            <el-table-column
-              label="流程名称"
-            >
-              <template slot-scope="scope">{{ scope.row.procDefName?scope.row.procDefName:scope.row.name }}</template>
-            </el-table-column>
-            <el-table-column v-if="!readonly" label="操作" width="55">
-              <template slot-scope="scope">
-                <el-button type="danger" icon="el-icon-delete" circle @click="handleDelete(scope.$index, scope.row)" />
-              </template>
-            </el-table-column>
-          </el-table>
-        </el-form-item>
-      </div>
-
-      <!-- 条件代理 -->
-      <div v-if="bpmAgent.agentType === 'condition'">
-        <el-form-item label="流程名称:">
-          <bpm-definition-selector
-            v-model="bpmAgent.procDefId"
-            :disabled="readonly"
-          />
-        </el-form-item>
-        <el-form-item label="流程代理条件">
-          <div v-if="!readonly" class="dialog-right">
-            <el-button class="ibps-icon-add" type="primary" @click="openConditionDialog">添加</el-button>
-            <el-button class="ibps-icon-remove ibps-ml-5" type="danger">删除</el-button>
-          </div>
-        </el-form-item>
-        <el-form-item
-          v-loading="rowLoading"
-          label-width="20px"
-          :element-loading-text="$t('common.loading')"
-        >
-          <el-table
-            ref="multipleTable"
-            :data="bpmAgent.bpmAgentConditionPoList"
-            tooltip-effect="dark"
-            style="width: 100%"
-            @selection-change="handleConditionChange"
-          >
-            <el-table-column
-              type="selection"
-              width="55"
-            />
-            <el-table-column
-              label="代理人"
-            >
-              <template slot-scope="scope">{{ scope.row.agenterName }}</template>
-            </el-table-column>
-            <el-table-column
-              label="条件名称"
-            >
-              <template slot-scope="scope">{{ scope.row.name }}</template>
-            </el-table-column>
-            <el-table-column
-              prop="address"
-              label="管理"
-              width="100px"
-              show-overflow-tooltip
-            >
-              <el-button type="primary" icon="el-icon-edit" circle @click="handleEdit(scope.$index, scope.row)" />
-              <el-button type="danger" icon="el-icon-delete" circle @click="handleRemove(scope.$index, scope.row)" />
-            </el-table-column>
-          </el-table>
-        </el-form-item>
-
-      </div>
-    </el-form>
-    <div slot="footer" class="el-dialog--center">
-      <ibps-toolbar
-        :actions="toolbars"
-        @action-event="handleActionEvent"
-      />
-    </div>
-
-    <!-- 添加规则弹窗 -->
-    <condition
-      :def-id="bpmAgent.procDefId"
-      :visible="conditionDialogVisible"
-      @callback="callbackBpmAgentConditionPoList"
-      @close="visible => conditionDialogVisible = visible"
-    />
-  </el-dialog>
+        <!-- 添加规则弹窗 -->
+        <condition :def-id="bpmAgent.procDefId" :visible="conditionDialogVisible" @callback="callbackBpmAgentConditionPoList" @close="(visible) => (conditionDialogVisible = visible)" />
+    </el-dialog>
 </template>
 
 <script>
@@ -209,283 +115,292 @@ import Condition from './condition'
 import { setTimeout } from 'timers'
 
 export default {
-  components: {
-    IbpsEmployeeSelector,
-    BpmDefinitionSelector,
-    Condition
-  },
-  props: {
-    visible: {
-      type: Boolean,
-      default: false
-    },
-    readonly: {
-      type: Boolean,
-      default: false
-    },
-    id: String,
-    title: String
-  },
-  data() {
-    return {
-      formName: 'agentForm',
-      formLabelWidth: '120px',
-      dialogVisible: this.visible,
-      conditionDialogVisible: false, // 条件规则界面
-      dialogLoading: false,
-      rowLoading: false,
-      statusOptions: statusOptions,
-      agentTypeOptions: agentTypeOptions,
-      defaultForm: {},
-      multipleSelection: [],
-      conditionSelection: [],
-      bpmAgent: {
-        title: '',
-        procDefId: '',
-        procDefKey: '',
-        delegatorId: this.$store.getters.userId,
-        delegatorName: this.$store.getters.name,
-        effectiveTime: '',
-        expiryTime: '',
-        agenterId: '',
-        agenterName: '',
-        agentType: 'all',
-        isEnabled: 'enabled',
-        bpmAgentDefPoList: [],
-        bpmAgentConditionPoList: []
-      },
-      rules: {
-        title: [{ required: true, message: this.$t('validate.required') },
-          { min: 1, max: 64, message: '长度不能超过64个字符', trigger: 'blur' }],
-        delegatorId: [{ required: true, message: this.$t('validate.required') }],
-        agenterId: [{ required: true, message: this.$t('validate.required') }],
-        effectiveTime: [{ required: true, message: this.$t('validate.required') }],
-        expiryTime: [{ required: true, message: this.$t('validate.required') }]
-      },
-      toolbars: [
-        { key: 'save', hidden: () => { return this.readonly } },
-        { key: 'cancel' }
-      ],
-      orgAddIndex: 'qita',
-      orgAddId: '990905993732816896,1017183192769101824,990915218848612352,1017182150320979968,1017182194042404864,990914314816716800,990915476898971648,990915611989114880,990915712052625408,1017182721685848064,1017183098200129536'
-    }
-  },
-  computed: {
-    formId() {
-      return this.id
-    }
-  },
-  watch: {
-    visible: {
-      handler: function(val, oldVal) {
-        this.dialogVisible = this.visible
-      },
-      immediate: true
-    }
-  },
-  created() {
-    this.defaultForm = JSON.parse(JSON.stringify(this.bpmAgent))
-  },
-  mounted() {
-    this.$nextTick(() => {
-      if (this.$refs.multipleTable) {
-        this.$refs.multipleTable.doLayout()
-      }
-    })
-  },
-  methods: {
-    handleEdit() {
-      this.rowLoading = true
-      setTimeout(() => {
-        this.rowLoading = false
-        // TODO:
-      })
-    },
-    handleRemove() {
-      this.rowLoading = true
-      setTimeout(() => {
-        this.rowLoading = false
-        // TODO:
-      })
+    components: {
+        IbpsEmployeeSelector,
+        BpmDefinitionSelector,
+        Condition
     },
-    callbackBpmAgentConditionPoList(data) {
-      console.log(data)
+    props: {
+        visible: {
+            type: Boolean,
+            default: false
+        },
+        readonly: {
+            type: Boolean,
+            default: false
+        },
+        id: String,
+        title: String
     },
-    handleDelete(index, arr) {
-      this.rowLoading = true
-      setTimeout(() => {
-        if (arr !== []) {
-          this.bpmAgent.bpmAgentDefPoList.splice(index, 1)
-        } else {
-          arr.forEach(i => {
-            this.bpmAgent.bpmAgentDefPoList.forEach(l => {
-              if (i.procDefKey === l.procDefKey) {
-                this.bpmAgent.bpmAgentDefPoList.splice(l, 1)
-              }
-            })
-          })
+    data() {
+        return {
+            formName: 'agentForm',
+            formLabelWidth: '120px',
+            dialogVisible: this.visible,
+            conditionDialogVisible: false, // 条件规则界面
+            dialogLoading: false,
+            rowLoading: false,
+            statusOptions: statusOptions,
+            agentTypeOptions: agentTypeOptions,
+            defaultForm: {},
+            multipleSelection: [],
+            conditionSelection: [],
+            bpmAgent: {
+                title: '',
+                procDefId: '',
+                procDefKey: '',
+                delegatorId: this.$store.getters.userId,
+                delegatorName: this.$store.getters.name,
+                effectiveTime: '',
+                expiryTime: '',
+                agenterId: '',
+                agenterName: '',
+                agentType: 'all',
+                isEnabled: 'enabled',
+                bpmAgentDefPoList: [],
+                bpmAgentConditionPoList: []
+            },
+            rules: {
+                title: [
+                    { required: true, message: this.$t('validate.required') },
+                    { min: 1, max: 64, message: '长度不能超过64个字符', trigger: 'blur' }
+                ],
+                delegatorId: [{ required: true, message: this.$t('validate.required') }],
+                agenterId: [{ required: true, message: this.$t('validate.required') }],
+                effectiveTime: [{ required: true, message: this.$t('validate.required') }],
+                expiryTime: [{ required: true, message: this.$t('validate.required') }]
+            },
+            toolbars: [
+                {
+                    key: 'save',
+                    hidden: () => {
+                        return this.readonly
+                    }
+                },
+                { key: 'cancel' }
+            ],
+            orgAddIndex: 'qita',
+            orgAddId: '990905993732816896,1017183192769101824,990915218848612352,1017182150320979968,1017182194042404864,990914314816716800,990915476898971648,990915611989114880,990915712052625408,1017182721685848064,1017183098200129536'
         }
-        this.rowLoading = false
-      })
     },
-    handleAllDelete(arr) {
-      this.rowLoading = true
-      setTimeout(() => {
-        if (!this.$utils.isEmpty(arr)) {
-          arr.forEach(i => {
-            this.bpmAgent.bpmAgentDefPoList.forEach(l => {
-              if (i.procDefKey === l.procDefKey) {
-                this.bpmAgent.bpmAgentDefPoList.splice(l, 1)
-              }
-            })
-          })
+    computed: {
+        formId() {
+            return this.id
         }
-        this.rowLoading = false
-      })
-    },
-    handleSelectionChange(val) {
-      this.multipleSelection = val
-    },
-    handleConditionChange(val) {
-      this.conditionSelection = val
     },
-    handleActionEvent({ key }) {
-      switch (key) {
-        case 'save':
-          this.handleSave()
-          break
-        case 'cancel':
-          this.closeDialog()
-          break
-        default:
-          break
-      }
-    },
-    // 保存数据
-    handleSave() {
-      this.$refs[this.formName].validate(valid => {
-        if (valid) {
-          this.saveData()
-        } else {
-          ActionUtils.saveErrorMessage()
+    watch: {
+        visible: {
+            handler: function (val, oldVal) {
+                this.dialogVisible = this.visible
+            },
+            immediate: true
         }
-      })
-    },
-    // 提交保存数据
-    saveData() {
-      const data = JSON.parse(JSON.stringify(this.bpmAgent))
-      data.effectiveTime = new Date(this.bpmAgent.effectiveTime).getTime() || ''
-      data.expiryTime = new Date(this.bpmAgent.expiryTime).getTime() || ''
-      // 检测生效时间日期是否发布日期在之前。
-      if (data.effectiveTime > data.expiryTime) {
-        ActionUtils.error('生效时间与失效时间范围不合法!')
-        return
-      }
-      if (this.$utils.isEmpty(this.bpmAgent.bpmAgentDefPoList) && this.bpmAgent.agentType === 'part') {
-        ActionUtils.error('流程定义数据不能为空!')
-        return
-      }
-      save(this.bpmAgent).then(response => {
-        this.$emit('callback', this)
-        ActionUtils.saveSuccessMessage(response.message, (rtn) => {
-          if (this.$utils.isEmpty(this.formId)) {
-            this.$refs[this.formName].resetFields()
-          }
-          if (rtn) {
-            this.closeDialog()
-          }
-        })
-      }).catch((err) => {
-        console.error(err)
-      })
-    },
-    // 关闭当前窗口
-    closeDialog() {
-      this.$emit('close', false)
-      this.$refs[this.formName].resetFields()
     },
-    /**
-     * 表单验证
-     */
-    formValidate() {
-      if (this.readonly) return
-      this.$nextTick(() => {
-        this.$refs[this.formName].validate(() => {})
-      })
+    created() {
+        this.defaultForm = JSON.parse(JSON.stringify(this.bpmAgent))
     },
-    /**
-     * 获取表单数据
-     */
-    getFormData() {
-      if (this.$utils.isEmpty(this.formId)) {
-        // 重置表单
-        this.bpmAgent = JSON.parse(JSON.stringify(this.defaultForm))
-        this.formValidate()
-        return
-      }
-      this.dialogLoading = true
-      get({
-        id: this.formId
-      }).then(response => {
-        this.bpmAgent = response.data
-        console.log(this.bpmAgent)
-        this.formValidate()
-        this.dialogLoading = false
-      }).catch(() => {
-        this.dialogLoading = false
-      })
-    },
-    addDef() {
-      alert('打开流程选择器')
-    },
-    callbackDelegatorrInfo(data) {
-      this.bpmAgent.delegatorName = data.name
-    },
-    callbackAgenterInfo(data) {
-      this.bpmAgent.agenterName = data.name
+    mounted() {
+        this.$nextTick(() => {
+            if (this.$refs.multipleTable) {
+                this.$refs.multipleTable.doLayout()
+            }
+        })
     },
-    updateDefine(data) {
-      this.rowLoading = true
-      const arr = data.map(item => {
-        return {
-          id: '',
-          agentId: '',
-          procDefKey: item.defKey,
-          nodeId: '',
-          name: item.name
-        }
-      })
-      setTimeout(() => {
-        if (this.$utils.isEmpty(this.bpmAgent.bpmAgentDefPoList)) {
-          this.bpmAgent.bpmAgentDefPoList = arr
-        } else {
-          this.bpmAgent.bpmAgentDefPoList = this.bpmAgent.bpmAgentDefPoList.concat(arr)
+    methods: {
+        handleEdit() {
+            this.rowLoading = true
+            setTimeout(() => {
+                this.rowLoading = false
+                // TODO:
+            })
+        },
+        handleRemove() {
+            this.rowLoading = true
+            setTimeout(() => {
+                this.rowLoading = false
+                // TODO:
+            })
+        },
+        callbackBpmAgentConditionPoList(data) {
+            console.log(data)
+        },
+        handleDelete(index, arr) {
+            this.rowLoading = true
+            setTimeout(() => {
+                if (arr !== []) {
+                    this.bpmAgent.bpmAgentDefPoList.splice(index, 1)
+                } else {
+                    arr.forEach((i) => {
+                        this.bpmAgent.bpmAgentDefPoList.forEach((l) => {
+                            if (i.procDefKey === l.procDefKey) {
+                                this.bpmAgent.bpmAgentDefPoList.splice(l, 1)
+                            }
+                        })
+                    })
+                }
+                this.rowLoading = false
+            })
+        },
+        handleAllDelete(arr) {
+            this.rowLoading = true
+            setTimeout(() => {
+                if (!this.$utils.isEmpty(arr)) {
+                    arr.forEach((i) => {
+                        this.bpmAgent.bpmAgentDefPoList.forEach((l) => {
+                            if (i.procDefKey === l.procDefKey) {
+                                this.bpmAgent.bpmAgentDefPoList.splice(l, 1)
+                            }
+                        })
+                    })
+                }
+                this.rowLoading = false
+            })
+        },
+        handleSelectionChange(val) {
+            this.multipleSelection = val
+        },
+        handleConditionChange(val) {
+            this.conditionSelection = val
+        },
+        handleActionEvent({ key }) {
+            switch (key) {
+                case 'save':
+                    this.handleSave()
+                    break
+                case 'cancel':
+                    this.closeDialog()
+                    break
+                default:
+                    break
+            }
+        },
+        // 保存数据
+        handleSave() {
+            this.$refs[this.formName].validate((valid) => {
+                if (valid) {
+                    this.saveData()
+                } else {
+                    ActionUtils.saveErrorMessage()
+                }
+            })
+        },
+        // 提交保存数据
+        saveData() {
+            const data = JSON.parse(JSON.stringify(this.bpmAgent))
+            data.effectiveTime = new Date(this.bpmAgent.effectiveTime).getTime() || ''
+            data.expiryTime = new Date(this.bpmAgent.expiryTime).getTime() || ''
+            // 检测生效时间日期是否发布日期在之前。
+            if (data.effectiveTime > data.expiryTime) {
+                ActionUtils.error('生效时间与失效时间范围不合法!')
+                return
+            }
+            if (this.$utils.isEmpty(this.bpmAgent.bpmAgentDefPoList) && this.bpmAgent.agentType === 'part') {
+                ActionUtils.error('流程定义数据不能为空!')
+                return
+            }
+            save(this.bpmAgent)
+                .then((response) => {
+                    this.$emit('callback', this)
+                    ActionUtils.saveSuccessMessage(response.message, (rtn) => {
+                        if (this.$utils.isEmpty(this.formId)) {
+                            this.$refs[this.formName].resetFields()
+                        }
+                        if (rtn) {
+                            this.closeDialog()
+                        }
+                    })
+                })
+                .catch((err) => {
+                    console.error(err)
+                })
+        },
+        // 关闭当前窗口
+        closeDialog() {
+            this.$emit('close', false)
+            this.$refs[this.formName].resetFields()
+        },
+        /**
+         * 表单验证
+         */
+        formValidate() {
+            if (this.readonly) return
+            this.$nextTick(() => {
+                this.$refs[this.formName].validate(() => {})
+            })
+        },
+        /**
+         * 获取表单数据
+         */
+        getFormData() {
+            if (this.$utils.isEmpty(this.formId)) {
+                // 重置表单
+                this.bpmAgent = JSON.parse(JSON.stringify(this.defaultForm))
+                this.formValidate()
+                return
+            }
+            this.dialogLoading = true
+            get({
+                id: this.formId
+            })
+                .then((response) => {
+                    this.bpmAgent = response.data
+                    this.formValidate()
+                    this.dialogLoading = false
+                })
+                .catch(() => {
+                    this.dialogLoading = false
+                })
+        },
+        addDef() {
+            alert('打开流程选择器')
+        },
+        callbackDelegatorrInfo(data) {
+            this.bpmAgent.delegatorName = data.name
+        },
+        callbackAgenterInfo(data) {
+            this.bpmAgent.agenterName = data.name
+        },
+        updateDefine(data) {
+            this.rowLoading = true
+            const arr = data.map((item) => {
+                return {
+                    id: '',
+                    agentId: '',
+                    procDefKey: item.defKey,
+                    nodeId: '',
+                    name: item.name
+                }
+            })
+            setTimeout(() => {
+                if (this.$utils.isEmpty(this.bpmAgent.bpmAgentDefPoList)) {
+                    this.bpmAgent.bpmAgentDefPoList = arr
+                } else {
+                    this.bpmAgent.bpmAgentDefPoList = this.bpmAgent.bpmAgentDefPoList.concat(arr)
+                }
+                this.rowLoading = false
+            })
+        },
+        openConditionDialog() {
+            if (this.$utils.isEmpty(this.bpmAgent.procDefId)) {
+                ActionUtils.warning('请选择流程!!')
+                return
+            }
+            this.conditionDialogVisible = true
         }
-        this.rowLoading = false
-      })
-    },
-    openConditionDialog() {
-      if (this.$utils.isEmpty(this.bpmAgent.procDefId)) {
-        ActionUtils.warning('请选择流程!!')
-        return
-      }
-      this.conditionDialogVisible = true
     }
-  }
-
 }
 </script>
 
 <style lang="scss">
-.bpmn-agent-dialog{
-  .el-dialog__body{
-    height:  calc(70vh - 110px) !important;
-  }
-  .dialog-right{
-    float: right;
-    div{
-      display: inline-block;
+.bpmn-agent-dialog {
+    .el-dialog__body {
+        height: calc(70vh - 110px) !important;
+    }
+    .dialog-right {
+        float: right;
+        div {
+            display: inline-block;
+        }
     }
-  }
 }
 </style>