|
|
@@ -1,15 +1,13 @@
|
|
|
<template>
|
|
|
<div class="container-fluid">
|
|
|
- <NavBar
|
|
|
+ <Navbar
|
|
|
:title="$t('lang.WorkflowEdit.workflowManagement')"
|
|
|
:is-go-back="false"
|
|
|
/>
|
|
|
|
|
|
<div class="form-inline" style="margin-top: 10px">
|
|
|
<div class="form-group">
|
|
|
- <label for="condition">{{
|
|
|
- $t("lang.WorkflowEdit.queryCondition")
|
|
|
- }}</label>
|
|
|
+ <label for="condition">{{ $t("lang.WorkflowEdit.queryCondition") }}:</label>
|
|
|
<input
|
|
|
id="condition"
|
|
|
v-model="condition"
|
|
|
@@ -20,246 +18,191 @@
|
|
|
/>
|
|
|
</div>
|
|
|
|
|
|
- <button class="btn btn-default" type="button" @click="requeryWorkflows">
|
|
|
+ <a-button class="btn btn-default" @click="requeryWorkflows">
|
|
|
{{ $t("lang.WorkflowEdit.query") }}
|
|
|
- </button>
|
|
|
+ </a-button>
|
|
|
|
|
|
- <button class="btn btn-default" type="button" @click="addition">
|
|
|
+ <a-button class="btn btn-default" @click="addition">
|
|
|
{{ $t("lang.WorkflowEdit.newlyBuild") }}
|
|
|
- </button>
|
|
|
+ </a-button>
|
|
|
|
|
|
- <button class="btn btn-default" type="button" @click="exportJsonFile">
|
|
|
+ <a-button class="btn btn-default" @click="exportJsonFile">
|
|
|
{{ $t("lang.WorkflowEdit.export") }}
|
|
|
- </button>
|
|
|
+ </a-button>
|
|
|
|
|
|
- <button class="btn btn-default" type="button" @click="importJsonFile">
|
|
|
+ <a-button class="btn btn-default" @click="importJsonFile">
|
|
|
{{ $t("lang.WorkflowEdit.import") }}
|
|
|
- </button>
|
|
|
+ </a-button>
|
|
|
</div>
|
|
|
|
|
|
<div class="table-responsive" style="margin-top: 10px">
|
|
|
- <table class="table table-hover table-bordered table-condensed">
|
|
|
- <thead>
|
|
|
- <tr style="height: 40px;">
|
|
|
- <th style="text-align: center;">
|
|
|
- <input
|
|
|
- v-model="checked"
|
|
|
- autocomplete="off"
|
|
|
- type="checkbox"
|
|
|
- :checked="checked"
|
|
|
-
|
|
|
- @change="selectAll()"
|
|
|
- />
|
|
|
- </th>
|
|
|
- <th>{{ $t("lang.WorkflowEdit.serialNumber") }}</th>
|
|
|
- <th>{{ $t("lang.WorkflowEdit.corporateName") }}</th>
|
|
|
- <th>{{ $t("lang.WorkflowEdit.workflowName") }}</th>
|
|
|
- <th>{{ $t("lang.WorkflowEdit.filePath") }}</th>
|
|
|
- <th>{{ $t("lang.WorkflowEdit.window") }}</th>
|
|
|
- <th>{{ $t("lang.WorkflowEdit.workflowType") }}</th>
|
|
|
- <th>{{ $t("lang.WorkflowEdit.deploymentStatus") }}</th>
|
|
|
- </tr>
|
|
|
- </thead>
|
|
|
- <tbody id="workflowEditTab">
|
|
|
- <tr
|
|
|
- v-for="(workflow, index) in workflowDatas"
|
|
|
- :key="workflow.id"
|
|
|
- :class="{ active: selectedWorkflow === workflow }"
|
|
|
- @dblclick="selectWorkflow(workflow, true)"
|
|
|
- >
|
|
|
- <td style="text-align: center; line-height: 34px;">
|
|
|
- <input
|
|
|
- autocomplete="off"
|
|
|
- type="checkbox"
|
|
|
- name="checkboxinput"
|
|
|
- :checked="workflow.checked"
|
|
|
- @click="workflow.checked = !workflow.checked"
|
|
|
- />
|
|
|
- </td>
|
|
|
- <td>
|
|
|
- <label class="form-control-static">{{
|
|
|
- (pagination.current_page - 1) * pagination.per_page + index + 1
|
|
|
- }}</label>
|
|
|
- </td>
|
|
|
-
|
|
|
- <td>
|
|
|
- <label class="form-control-static">{{
|
|
|
- workflow.clientName
|
|
|
- }}</label>
|
|
|
- </td>
|
|
|
-
|
|
|
- <td>
|
|
|
- <label class="form-control-static">{{ workflow.name }}</label>
|
|
|
- </td>
|
|
|
-
|
|
|
- <td>
|
|
|
- <label class="form-control-static">{{
|
|
|
- workflow.bpmnFileName
|
|
|
- }}</label>
|
|
|
- </td>
|
|
|
-
|
|
|
- <td>
|
|
|
- <label class="form-control-static">{{ workflow.windowNo }}.{{ workflow.windowName }}</label>
|
|
|
- </td>
|
|
|
-
|
|
|
- <td>
|
|
|
- <label class="form-control-static">{{
|
|
|
- workflow.workflowTypeName
|
|
|
- }}</label>
|
|
|
- </td>
|
|
|
-
|
|
|
- <td>
|
|
|
- <label class="form-control-static">{{
|
|
|
- workflow.deploymentId != undefined &&
|
|
|
- workflow.deploymentId.length > 0
|
|
|
- ? "已部署"
|
|
|
- : "未部署"
|
|
|
- }}</label>
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- </tbody>
|
|
|
- </table>
|
|
|
- <div>
|
|
|
- <VueBootstrapPagination
|
|
|
- v-if="pagination.last_page > 0"
|
|
|
- :pagination="pagination"
|
|
|
- :callback="refreshWorkflows"
|
|
|
- />
|
|
|
- </div>
|
|
|
+ <template v-if="hasSelected">
|
|
|
+ {{ `Selected ${selectedRowKeys.length} items` }}
|
|
|
+ </template>
|
|
|
+ <CommonTable
|
|
|
+ ref="table"
|
|
|
+ :columns="columns"
|
|
|
+ :data-source="workflowDatas"
|
|
|
+ :total="pagination.total"
|
|
|
+ :row-selection="rowSelection"
|
|
|
+ @get-page="getPageParams"
|
|
|
+ >
|
|
|
+ <template #headerCell="{ column }">
|
|
|
+ <template v-if="column.dataIndex == 'check'">
|
|
|
+ <input
|
|
|
+ v-model="checked"
|
|
|
+ autocomplete="off"
|
|
|
+ type="checkbox"
|
|
|
+ :checked="checked"
|
|
|
+ @change="selectAll()"
|
|
|
+ />
|
|
|
+ </template>
|
|
|
+ </template>
|
|
|
+ <template #bodyCell="{ column, record }">
|
|
|
+ <template v-if="column.dataIndex === 'check'">
|
|
|
+ <input
|
|
|
+ autocomplete="off"
|
|
|
+ type="checkbox"
|
|
|
+ name="checkboxinput"
|
|
|
+ :checked="record.checked"
|
|
|
+ @click="record.checked = !record.checked"
|
|
|
+ />
|
|
|
+ </template>
|
|
|
+ <template v-if="column.dataIndex === 'operation'">
|
|
|
+ <a-button type="dashed" @click="selectWorkflow(record, true)">
|
|
|
+ 编辑
|
|
|
+ </a-button>
|
|
|
+ </template>
|
|
|
+ <template v-if="column.dataIndex === 'window'">
|
|
|
+ <span>{{ record.windowNo }}.{{ record.windowName }}</span>
|
|
|
+ </template>
|
|
|
+ <template v-if="column.dataIndex === 'deploymentId'">
|
|
|
+ <span>{{
|
|
|
+ record.deploymentId != undefined &&
|
|
|
+ record.deploymentId.length > 0
|
|
|
+ ? "已部署"
|
|
|
+ : "未部署"
|
|
|
+ }}
|
|
|
+ </span>
|
|
|
+ </template>
|
|
|
+ </template>
|
|
|
+ </CommonTable>
|
|
|
</div>
|
|
|
<Loading v-if="loading" />
|
|
|
-
|
|
|
- <Modal
|
|
|
- v-model:show="modal"
|
|
|
- small="true"
|
|
|
- :show-canel-button="false"
|
|
|
- :show-ok-button="false"
|
|
|
+ <a-drawer
|
|
|
+ v-model:visible="modal"
|
|
|
+ :width="640"
|
|
|
+ class="custom-class"
|
|
|
+ title="工作流定义"
|
|
|
+ placement="right"
|
|
|
>
|
|
|
- <template #header>
|
|
|
- {{ $t("lang.WorkflowEdit.workflowDefinition") }}
|
|
|
- </template>
|
|
|
- <div>
|
|
|
- <div class="form-group">
|
|
|
- <label>{{ $t("lang.WorkflowEdit.corporateName") }}</label>
|
|
|
- <v-select
|
|
|
- v-model="selectedWorkflow.client"
|
|
|
- :options="clientOptions"
|
|
|
- :label="'name'"
|
|
|
- />
|
|
|
- </div>
|
|
|
- <div class="form-group">
|
|
|
- <label>{{ $t("lang.WorkflowEdit.windowName") }}</label>
|
|
|
- <v-select
|
|
|
- v-model="selectedWorkflow.window"
|
|
|
- :options="windowOptions"
|
|
|
- :label="'value'"
|
|
|
- />
|
|
|
- </div>
|
|
|
- <div class="form-group">
|
|
|
- <label>{{ $t("lang.WorkflowEdit.workflowName") }}</label>
|
|
|
- <input
|
|
|
- v-model="selectedWorkflow.name"
|
|
|
- autocomplete="off"
|
|
|
- class="form-control"
|
|
|
- type="text"
|
|
|
- />
|
|
|
- </div>
|
|
|
- <div class="form-group">
|
|
|
- <label>{{ $t("lang.WorkflowEdit.workflowFilePath") }}</label>
|
|
|
- <v-select
|
|
|
- v-model="selectedWorkflow.bpmnFileName"
|
|
|
- :options="bpmns"
|
|
|
- :label="'value'"
|
|
|
- />
|
|
|
- </div>
|
|
|
- <div class="form-group">
|
|
|
- <label>{{ $t("lang.WorkflowEdit.workflowType") }}</label>
|
|
|
- <select v-model="selectedWorkflow.workflowType" class="form-control">
|
|
|
- <option
|
|
|
- v-for="workflowType in workflowTypes"
|
|
|
- :key="workflowType.keyStr"
|
|
|
- :value="workflowType.keyStr"
|
|
|
- >
|
|
|
- {{ workflowType.value }}
|
|
|
- </option>
|
|
|
- </select>
|
|
|
- </div>
|
|
|
- <div class="form-group">
|
|
|
- <label>{{ $t("lang.WorkflowEdit.deploymentStatus")
|
|
|
- }}{{
|
|
|
- selectedWorkflow.deploymentId != undefined &&
|
|
|
- selectedWorkflow.deploymentId.length > 0
|
|
|
- ? $t("lang.WorkflowEdit.deployed")
|
|
|
- : $t("lang.WorkflowEdit.notDeployed")
|
|
|
- }}</label>
|
|
|
- <input
|
|
|
- v-model="selectedWorkflow.deploymentId"
|
|
|
- autocomplete="off"
|
|
|
- class="form-control"
|
|
|
- type="text"
|
|
|
- />
|
|
|
- </div>
|
|
|
- <div class="form-group">
|
|
|
- <label>{{
|
|
|
- $t("lang.WorkflowEdit.deleteProcessVerificationPassword")
|
|
|
- }}</label>
|
|
|
- <input
|
|
|
- v-model="selectedWorkflow.deletePassword"
|
|
|
- autocomplete="off"
|
|
|
- onfocus="this.type='password'"
|
|
|
- class="form-control"
|
|
|
- type="text"
|
|
|
- />
|
|
|
- </div>
|
|
|
+ <div class="form-group">
|
|
|
+ <label>{{ $t("lang.WorkflowEdit.corporateName") }}</label>
|
|
|
+ <v-select
|
|
|
+ v-model="selectedWorkflow.client"
|
|
|
+ :options="clientOptions"
|
|
|
+ :label="'name'"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ <div class="form-group">
|
|
|
+ <label>{{ $t("lang.WorkflowEdit.windowName") }}</label>
|
|
|
+ <v-select
|
|
|
+ v-model="selectedWorkflow.window"
|
|
|
+ :options="windowOptions"
|
|
|
+ :label="'value'"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ <div class="form-group">
|
|
|
+ <label>{{ $t("lang.WorkflowEdit.workflowName") }}</label>
|
|
|
+ <input
|
|
|
+ v-model="selectedWorkflow.name"
|
|
|
+ autocomplete="off"
|
|
|
+ class="form-control"
|
|
|
+ type="text"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ <div class="form-group">
|
|
|
+ <label>{{ $t("lang.WorkflowEdit.workflowFilePath") }}</label>
|
|
|
+ <v-select
|
|
|
+ v-model="selectedWorkflow.bpmnFileName"
|
|
|
+ :options="bpmns"
|
|
|
+ :label="'value'"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ <div class="form-group">
|
|
|
+ <label>{{ $t("lang.WorkflowEdit.workflowType") }}</label>
|
|
|
+ <select v-model="selectedWorkflow.workflowType" class="form-control">
|
|
|
+ <option
|
|
|
+ v-for="workflowType in workflowTypes"
|
|
|
+ :key="workflowType.keyStr"
|
|
|
+ :value="workflowType.keyStr"
|
|
|
+ >
|
|
|
+ {{ workflowType.value }}
|
|
|
+ </option>
|
|
|
+ </select>
|
|
|
+ </div>
|
|
|
+ <div class="form-group">
|
|
|
+ <label>{{ $t("lang.WorkflowEdit.deploymentStatus")
|
|
|
+ }}{{
|
|
|
+ selectedWorkflow.deploymentId != undefined &&
|
|
|
+ selectedWorkflow.deploymentId.length > 0
|
|
|
+ ? $t("lang.WorkflowEdit.deployed")
|
|
|
+ : $t("lang.WorkflowEdit.notDeployed")
|
|
|
+ }}</label>
|
|
|
+ <input
|
|
|
+ v-model="selectedWorkflow.deploymentId"
|
|
|
+ autocomplete="off"
|
|
|
+ class="form-control"
|
|
|
+ type="text"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ <div class="form-group">
|
|
|
+ <label>{{
|
|
|
+ $t("lang.WorkflowEdit.deleteProcessVerificationPassword")
|
|
|
+ }}</label>
|
|
|
+ <input
|
|
|
+ v-model="selectedWorkflow.deletePassword"
|
|
|
+ autocomplete="off"
|
|
|
+ onfocus="this.type='password'"
|
|
|
+ class="form-control"
|
|
|
+ type="text"
|
|
|
+ />
|
|
|
</div>
|
|
|
-
|
|
|
<template #footer>
|
|
|
- <div>
|
|
|
- <button class="btn btn-default" type="button" @click="approvalFlow">
|
|
|
+ <div class="footerStyle">
|
|
|
+ <a-button class="btn btn-default" @click="approvalFlow">
|
|
|
{{ $t("lang.WorkflowEdit.editor") }}
|
|
|
- </button>
|
|
|
- <button
|
|
|
- class="btn btn-default"
|
|
|
- type="button"
|
|
|
- @click="deleteWorkflow"
|
|
|
- >
|
|
|
- {{ $t('lang.WorkflowEdit.delete') }}
|
|
|
- </button>
|
|
|
- <button class="btn btn-default" type="button" @click="save">
|
|
|
+ </a-button>
|
|
|
+ <a-button class="btn btn-default" @click="deleteWorkflow">
|
|
|
+ {{ $t("lang.WorkflowEdit.delete") }}
|
|
|
+ </a-button>
|
|
|
+ <a-button class="btn btn-default" @click="save">
|
|
|
{{ $t("lang.WorkflowEdit.save") }}
|
|
|
- </button>
|
|
|
- <button class="btn btn-default" type="button" @click="sync">
|
|
|
+ </a-button>
|
|
|
+ <a-button class="btn btn-default" @click="sync">
|
|
|
{{ $t("lang.WorkflowEdit.synchronization") }}
|
|
|
- </button>
|
|
|
- <button
|
|
|
- class="btn btn-default"
|
|
|
- type="button"
|
|
|
- @click="deleteInstance"
|
|
|
- >
|
|
|
- {{ $t('lang.WorkflowEdit.deleteInstance') }}
|
|
|
- </button>
|
|
|
- <button
|
|
|
- class="btn btn-default"
|
|
|
- type="button"
|
|
|
- @click="processInstanceCount"
|
|
|
- >
|
|
|
+ </a-button>
|
|
|
+ <a-button class="btn btn-default" @click="deleteInstance">
|
|
|
+ {{ $t("lang.WorkflowEdit.deleteInstance") }}
|
|
|
+ </a-button>
|
|
|
+ <a-button class="btn btn-default" @click="processInstanceCount">
|
|
|
{{ $t("lang.WorkflowEdit.numberOfProcessInstances") }}
|
|
|
- </button>
|
|
|
- <button
|
|
|
+ </a-button>
|
|
|
+
|
|
|
+ <a-button
|
|
|
v-if="
|
|
|
selectedWorkflow.workflowType == 'Timer' ||
|
|
|
- selectedWorkflow.workflowType == 'OTHER'||
|
|
|
+ selectedWorkflow.workflowType == 'OTHER' ||
|
|
|
selectedWorkflow.workflowType == 'NoticeOnLogin'
|
|
|
"
|
|
|
class="btn btn-default"
|
|
|
- type="button"
|
|
|
@click="manualStartWorkflow"
|
|
|
>
|
|
|
{{ $t("lang.WorkflowEdit.manualStartProcess") }}
|
|
|
- </button>
|
|
|
+ </a-button>
|
|
|
</div>
|
|
|
</template>
|
|
|
- </Modal>
|
|
|
+ </a-drawer>
|
|
|
|
|
|
<Modal v-model:show="modal1" small="true">
|
|
|
<template #header>
|
|
|
@@ -274,9 +217,9 @@
|
|
|
</Modal>
|
|
|
<Modal
|
|
|
v-model:show="modal2"
|
|
|
- small="true"
|
|
|
- :show-canel-button="false"
|
|
|
:show-ok-button="false"
|
|
|
+ :show-canel-button="false"
|
|
|
+ small="true"
|
|
|
>
|
|
|
<template #header>
|
|
|
{{ $t("lang.WorkflowEdit.workflowDefinition") }}
|
|
|
@@ -284,7 +227,7 @@
|
|
|
<div>
|
|
|
<div class="form-group">
|
|
|
<label>{{ $t("lang.WorkflowEdit.workflowJsonFile") }}</label>
|
|
|
- <textarea v-model="jsonFlie" class="form-control" rows="20" />
|
|
|
+ <textarea v-model="jsonFile" class="form-control" rows="20" />
|
|
|
</div>
|
|
|
</div>
|
|
|
<template #footer>
|
|
|
@@ -307,24 +250,83 @@
|
|
|
|
|
|
<script>
|
|
|
import Common from '../common/Common.js';
|
|
|
-
|
|
|
-
|
|
|
import vSelect from 'vue-select';
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
import WorkflowEditResource from './WorkflowEditResource.js';
|
|
|
import 'vue-select/dist/vue-select.css';
|
|
|
import { Notify, Uuid } from 'pc-component-v3';
|
|
|
-
|
|
|
+import CommonTable from './CommonTable.vue';
|
|
|
export default {
|
|
|
-
|
|
|
components: {
|
|
|
'v-select': vSelect,
|
|
|
-
|
|
|
+ CommonTable,
|
|
|
},
|
|
|
data: function () {
|
|
|
return {
|
|
|
+ isSelect: true,
|
|
|
+ columns: [
|
|
|
+ {
|
|
|
+ title: '',
|
|
|
+ dataIndex: 'check',
|
|
|
+ key: 'check',
|
|
|
+ width: 48,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '序号',
|
|
|
+ dataIndex: 'index',
|
|
|
+ key: 'index',
|
|
|
+ width: 75,
|
|
|
+ customRender: ({ text, record, index }) => `${index + 1}`,
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '公司名称',
|
|
|
+ dataIndex: 'clientName',
|
|
|
+ key: 'clientName',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '工作流名称',
|
|
|
+ dataIndex: 'name',
|
|
|
+ key: 'name',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '文件路径',
|
|
|
+ dataIndex: 'bpmnFileName',
|
|
|
+ key: 'bpmnFileName',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '窗口',
|
|
|
+ dataIndex: 'window',
|
|
|
+ key: 'window',
|
|
|
+ width: '250px',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '工作流类型',
|
|
|
+ dataIndex: 'workflowTypeName',
|
|
|
+ key: 'workflowTypeName',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '部署状态',
|
|
|
+ dataIndex: 'deploymentId',
|
|
|
+ key: 'deploymentId',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '操作',
|
|
|
+ dataIndex: 'operation',
|
|
|
+ key: 'operation',
|
|
|
+ width: '100px',
|
|
|
+ fixed: 'right',
|
|
|
+ },
|
|
|
+ ].map(item => ({ ...item, align: 'center' })),
|
|
|
+ // dataSource: [
|
|
|
+ // {
|
|
|
+ // key: '1',
|
|
|
+ // corporateName: '测试公司',
|
|
|
+ // workflowName: '资产申购单',
|
|
|
+ // fileUrl: '',
|
|
|
+ // window: '040601.资产申购单',
|
|
|
+ // workflowType: '用户自定义',
|
|
|
+ // deploymentStatus: '已部署',
|
|
|
+ // },
|
|
|
+ // ],
|
|
|
clientOptions: [],
|
|
|
workflowDatas: [],
|
|
|
windowOptions: [],
|
|
|
@@ -355,7 +357,7 @@ export default {
|
|
|
last_page: 0, // required
|
|
|
},
|
|
|
selectWorkflowDatas: undefined,
|
|
|
- jsonFlie: undefined,
|
|
|
+ jsonFile: undefined,
|
|
|
loading: false,
|
|
|
modal: false,
|
|
|
modal1: false,
|
|
|
@@ -375,22 +377,37 @@ export default {
|
|
|
},
|
|
|
|
|
|
methods: {
|
|
|
+ rowSelection: function () {
|
|
|
+ const onChange = (selectedRowKeys, selectedRows) => {
|
|
|
+ //第一个参数控制选不选中,第二个参数是选中列表的数据的集合
|
|
|
+ console.log(selectedRows);
|
|
|
+ };
|
|
|
+ const getCheckboxProps = record => ({
|
|
|
+ disabled: record.releaseState === 'ONLINE', //控制禁用那个按钮
|
|
|
+ releaseState: record.releaseState,
|
|
|
+ });
|
|
|
+ return onChange, getCheckboxProps;
|
|
|
+ },
|
|
|
+
|
|
|
/**
|
|
|
* 导入json文件
|
|
|
* @author GuoZhiBo 20210318
|
|
|
*/
|
|
|
saveWorkflowDto: function () {
|
|
|
var _self = this;
|
|
|
- var jsonFlie = JSON.parse(_self.jsonFlie);
|
|
|
- WorkflowEditResource.saveListWorkflowDto(jsonFlie).then(
|
|
|
+ var jsonFile = JSON.parse(_self.jsonFile);
|
|
|
+ WorkflowEditResource.saveListWorkflowDto(jsonFile).then(
|
|
|
successData => {
|
|
|
if (successData) {
|
|
|
Notify.success('导入成功', '导入成功', 1500);
|
|
|
_self.refreshWorkflows();
|
|
|
}
|
|
|
+ _self.modal2 = false;
|
|
|
+ _self.jsonFile = undefined;
|
|
|
},
|
|
|
errorData => {
|
|
|
Common.processException(errorData);
|
|
|
+ _self.modal2 = false;
|
|
|
},
|
|
|
);
|
|
|
},
|
|
|
@@ -483,7 +500,7 @@ export default {
|
|
|
*/
|
|
|
approvalFlow: function () {
|
|
|
var _self = this;
|
|
|
-
|
|
|
+
|
|
|
var url =
|
|
|
'/workflow.html#/?windowNo=' +
|
|
|
_self.selectedWorkflow.window.keyStr +
|
|
|
@@ -499,7 +516,7 @@ export default {
|
|
|
*/
|
|
|
loadWindows: function () {
|
|
|
var _self = this;
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL('CurdWindowResource/getWindowKeyValues'),
|
|
|
type: 'get',
|
|
|
@@ -508,7 +525,7 @@ export default {
|
|
|
Common.addTokenToRequest(request);
|
|
|
},
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
_self.windowOptions.splice(0, _self.windowOptions.length);
|
|
|
// 清空数据
|
|
|
if (data == undefined || data.length == 0) {
|
|
|
@@ -522,7 +539,7 @@ export default {
|
|
|
_self.refreshWorkflows();
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -554,7 +571,7 @@ export default {
|
|
|
*/
|
|
|
loadProcessReports: function () {
|
|
|
var _self = this;
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL(
|
|
|
'ProcessReportResource/getProcessReportKeyValues',
|
|
|
@@ -565,14 +582,14 @@ export default {
|
|
|
Common.addTokenToRequest(request);
|
|
|
},
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
_self.processReports.splice(0, _self.processReports.length);
|
|
|
for (var i = 0, len = data.length; i < len; i++) {
|
|
|
_self.processReports.push(data[i]);
|
|
|
}
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -583,7 +600,7 @@ export default {
|
|
|
*/
|
|
|
loadWorkflowTypes: function () {
|
|
|
var _self = this;
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL('workflowEditResource/getWorkflowTypes'),
|
|
|
type: 'get',
|
|
|
@@ -592,7 +609,7 @@ export default {
|
|
|
Common.addTokenToRequest(request);
|
|
|
},
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
_self.workflowTypes.splice(0, _self.workflowTypes.length);
|
|
|
if (data == undefined || data.length == 0) {
|
|
|
return;
|
|
|
@@ -605,7 +622,7 @@ export default {
|
|
|
_self.loadWindows();
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -618,6 +635,13 @@ export default {
|
|
|
this.initSelectedWorkflow();
|
|
|
this.pagination.current_page = 1;
|
|
|
this.pagination.last_page = 0;
|
|
|
+ this.$refs.table.backFirstPage();
|
|
|
+ },
|
|
|
+
|
|
|
+ // 从子组件获取的分页参数
|
|
|
+ getPageParams: function (start, length) {
|
|
|
+ this.pagination.current_page = start;
|
|
|
+ this.pagination.per_page = length;
|
|
|
this.refreshWorkflows();
|
|
|
},
|
|
|
|
|
|
@@ -627,7 +651,7 @@ export default {
|
|
|
*/
|
|
|
refreshWorkflows: function () {
|
|
|
var _self = this;
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
var workflowDto = {
|
|
|
range: {
|
|
|
start:
|
|
|
@@ -646,7 +670,8 @@ export default {
|
|
|
Common.addTokenToRequest(request);
|
|
|
},
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
+ _self.pagination.total = data.totalSize;
|
|
|
// 清空数据
|
|
|
_self.workflowDatas.splice(0, _self.workflowDatas.length);
|
|
|
if (data == undefined || data.dataList.length == 0) {
|
|
|
@@ -661,7 +686,7 @@ export default {
|
|
|
_self.selectedWorkflow != null &&
|
|
|
_self.selectedWorkflow.id == data.dataList[i].id
|
|
|
) {
|
|
|
- _self.selectWorkflow(data.dataList[i], true);
|
|
|
+ _self.selectWorkflow(data.dataList[i], false);
|
|
|
}
|
|
|
}
|
|
|
_self.pagination.last_page = Math.ceil(
|
|
|
@@ -669,7 +694,7 @@ export default {
|
|
|
);
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -724,7 +749,7 @@ export default {
|
|
|
if (_self.selectedWorkflow.id == 0) {
|
|
|
_self.modal = false;
|
|
|
} else {
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL('workflowEditResource/deleteWorkflowDto'),
|
|
|
@@ -736,13 +761,13 @@ export default {
|
|
|
contentType: 'application/json',
|
|
|
data: JSON.stringify(_self.selectedWorkflow),
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
_self.modal = false;
|
|
|
Notify.success('删除成功', '数据删除成功', 1500);
|
|
|
_self.refreshWorkflows();
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -754,7 +779,7 @@ export default {
|
|
|
*/
|
|
|
query: function () {
|
|
|
var _self = this;
|
|
|
- _self.refreshWorkflows();
|
|
|
+ _self.$refs.table.backFirstPage();
|
|
|
},
|
|
|
|
|
|
/**
|
|
|
@@ -771,7 +796,7 @@ export default {
|
|
|
_self.windowChange(_self.selectedWorkflow.window);
|
|
|
_self.clientChange(_self.selectedWorkflow.client);
|
|
|
_self.bpmnChange(_self.selectedWorkflow.bpmnFileName);
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL('workflowEditResource/saveWorkflowDto'),
|
|
|
type: 'post',
|
|
|
@@ -782,13 +807,13 @@ export default {
|
|
|
contentType: 'application/json',
|
|
|
data: JSON.stringify(_self.selectedWorkflow),
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
_self.setSelectedWorkflow(data);
|
|
|
Notify.success('保存成功', '数据保存成功', 1500);
|
|
|
_self.refreshWorkflows();
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -804,7 +829,7 @@ export default {
|
|
|
Notify.error('提示', '请选择数据', false);
|
|
|
return;
|
|
|
}
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL('workflowEditResource/syncWorkflowDto'),
|
|
|
type: 'post',
|
|
|
@@ -815,13 +840,13 @@ export default {
|
|
|
contentType: 'application/json',
|
|
|
data: JSON.stringify(_self.selectedWorkflow),
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
_self.setSelectedWorkflow(data);
|
|
|
Notify.success('同步成功', '数据同步成功', 1500);
|
|
|
_self.refreshWorkflows();
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -836,7 +861,7 @@ export default {
|
|
|
Notify.error('提示', '请选择数据', false);
|
|
|
return;
|
|
|
}
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL('workflowEditResource/deleteWorkflowResource'),
|
|
|
type: 'post',
|
|
|
@@ -847,12 +872,12 @@ export default {
|
|
|
contentType: 'application/json',
|
|
|
data: JSON.stringify(_self.selectedWorkflow),
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Notify.success('删除实例成功', '数据删除成功', 1500);
|
|
|
_self.refreshWorkflows();
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -868,7 +893,7 @@ export default {
|
|
|
Notify.error('提示', '请选择数据', false);
|
|
|
return;
|
|
|
}
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL('workflowEditResource/getProcessInstanceCount'),
|
|
|
type: 'post',
|
|
|
@@ -879,11 +904,11 @@ export default {
|
|
|
contentType: 'application/json',
|
|
|
data: JSON.stringify(_self.selectedWorkflow),
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Notify.success('流程实例数量:' + data, '', 1500);
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -895,7 +920,7 @@ export default {
|
|
|
Notify.error('提示', '请选择数据', false);
|
|
|
return;
|
|
|
}
|
|
|
- _self.loading=true;
|
|
|
+ _self.loading = true;
|
|
|
$.ajax({
|
|
|
url: Common.getApiURL('workflowEditResource/start'),
|
|
|
type: 'post',
|
|
|
@@ -906,12 +931,12 @@ export default {
|
|
|
contentType: 'application/json',
|
|
|
data: JSON.stringify(_self.selectedWorkflow),
|
|
|
success: function (data) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Notify.success('提示', '手工启动流程成功', 1500);
|
|
|
_self.refreshWorkflows();
|
|
|
},
|
|
|
error: function (XMLHttpRequest, textStatus, errorThrown) {
|
|
|
- _self.loading=false;
|
|
|
+ _self.loading = false;
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
|
},
|
|
|
});
|
|
|
@@ -1032,4 +1057,10 @@ export default {
|
|
|
.row {
|
|
|
margin: 10px 0px;
|
|
|
}
|
|
|
+.form-inline > .btn {
|
|
|
+ margin-left: 8px;
|
|
|
+}
|
|
|
+.footerStyle {
|
|
|
+ float: right;
|
|
|
+}
|
|
|
</style>
|