whj пре 11 месеци
родитељ
комит
454f564805

+ 1 - 1
src/views/custom/form/CustomForm.vue

@@ -47,7 +47,7 @@
         <span slot="action" slot-scope="record">
           <template>
             <a @click="handleView(record)">查看</a>
-            <operation-button @click="handleEdit(record)">修改</operation-button>
+            <!-- <operation-button @click="handleEdit(record)">修改</operation-button> -->
             <operation-button @click="handleSubmit(record)">填报</operation-button>
             <operation-button :type="2" title="是否要删除该条数据?" @confirm="batchDelete(record.id)">删除</operation-button>
           </template>

+ 1 - 0
src/views/custom/form/modules/SubmitForm.vue

@@ -43,6 +43,7 @@ export default {
       this.record = record
       this.components = JSON.parse(record.jsonString).components
       this.config = JSON.parse(record.jsonString).config
+      console.log(this.components)
     },
     handleCancel() {
       this.visible = false

+ 2 - 2
src/views/custom/form/modules/component/modules/Detail.vue

@@ -5,9 +5,9 @@
         <a-input v-model="model.label" />
       </a-form-item>
       <template v-if="model.type!=='divider'">
-        <a-form-item label="字段名称">
+        <!-- <a-form-item label="字段名称">
           <a-input v-model="model.value" @blur="valueChange" />
-        </a-form-item>
+        </a-form-item> -->
         <a-form-item label="是否必填">
           <a-switch v-model="model.required" />
         </a-form-item>

+ 228 - 0
src/views/workplace/publish/Executed.vue

@@ -0,0 +1,228 @@
+<template>
+  <a-card :bordered="false">
+    <div v-show="visible">
+      <div class="table-page-search-wrapper" @keyup.enter="handleEnter">
+        <a-form layout="inline">
+          <a-row :gutter="48">
+            <a-col :md="6" :sm="24">
+              <a-form-item label="关键字">
+                <a-input v-model.trim="queryParam.taskName" placeholder="请输入名称/类型名称" />
+              </a-form-item>
+            </a-col>
+            <a-col :md="6 || 24" :sm="24">
+              <span class="table-page-search-submitButtons">
+                <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
+                <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
+              </span>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+
+      <div class="table-operator" style="margin-bottom: 8px;">
+        <a-row>
+          <a-col :md="16">
+            <!-- <a-button type="primary" icon="plus" @click="handleAdd()">新增</a-button> -->
+            <a-dropdown v-action:edit v-if="selectedRowKeys.length > 0">
+              <a-menu slot="overlay">
+                <a-popconfirm title="是否要删除所选数据?" @confirm="batchDelete()">
+                  <a-menu-item key="1"><a-icon type="delete" /><a>删除</a></a-menu-item>
+                </a-popconfirm>
+              </a-menu>
+              <a-button style="margin-left: 8px">
+                批量操作 <a-icon type="down" />
+              </a-button>
+            </a-dropdown>
+          </a-col>
+        </a-row>
+      </div>
+
+      <s-table ref="table" size="default" rowKey="id" :columns="columns" :data="loadData" :alert="options.alert" :rowSelection="options.rowSelection" showPagination="auto">
+        <span slot="action" slot-scope="record">
+          <template>
+            <a @click="handleView(record)">查看</a>
+            <operation-button @click="handleEdit(record)">修改</operation-button>
+            <operation-button :type="2" title="确认发送" @confirm="handleSend(record.id)">发送</operation-button>
+          </template>
+        </span>
+      </s-table>
+    </div>
+  </a-card>
+</template>
+
+<script>
+import { STable, Ellipsis } from '@/components'
+import { getWorplacePublishPage, sendWorkflow } from '@/api/workflow/publish'
+
+export default {
+  name: 'WorkflowTaskList',
+  components: {
+    STable,
+    Ellipsis,
+  },
+  props: {
+    personalType: {
+      type: [Number, null],
+      default: 2,
+    },
+    status: {
+      type: [Number, null],
+      default: 1,
+    },
+  },
+  data() {
+    return {
+      advanced: false,
+      visible: true,
+      // 查询参数
+      queryParam: {},
+      // 表头
+      columns: [
+        {
+          title: '序号',
+          dataIndex: 'index',
+          customRender: (text, record, index) => {
+            return `${
+              (this.$refs.table.localPagination.current - 1) * this.$refs.table.localPagination.pageSize + index + 1
+            }`
+          },
+        },
+        {
+          title: '标题',
+          dataIndex: 'taskName',
+        },
+        {
+          title: '创建时间',
+          dataIndex: 'taskCreatedTime',
+        },
+        {
+          title: '状态',
+          dataIndex: 'taskStatus',
+          customRender: (text, record, index) => {
+            return this.statusMap[text]
+          },
+        },
+        {
+          title: '操作',
+          key: 'action',
+          width: '200px',
+          align: 'center',
+          scopedSlots: { customRender: 'action' },
+        },
+      ],
+      // 下拉框map
+      // 加载数据方法 必须为 Promise 对象
+      loadData: (parameter) => {
+        parameter = {
+          personalType: this.personalType,
+          status: this.status,
+          ...parameter,
+          ...this.queryParam,
+          dataScope: {
+            sortBy: 'desc',
+            sortName: 'task.created_time',
+          },
+        }
+        return getWorplacePublishPage(Object.assign(parameter, this.queryParam)).then((res) => {
+          return res.data
+        })
+      },
+      selectedRowKeys: [],
+      selectedRows: [],
+
+      options: {
+        alert: {
+          show: true,
+          clear: () => {
+            this.selectedRowKeys = []
+          },
+        },
+        rowSelection: {
+          selectedRowKeys: this.selectedRowKeys,
+          onChange: this.onSelectChange,
+        },
+      },
+      optionAlertShow: false,
+      statusMap: {},
+    }
+  },
+  created() {
+    // 下拉框map
+    this.tableOption()
+    this.statusMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.FLOW_TASK_STATUS)
+  },
+  methods: {
+    tableOption() {
+      if (!this.optionAlertShow) {
+        this.options = {
+          alert: {
+            show: true,
+            clear: () => {
+              this.selectedRowKeys = []
+            },
+          },
+          rowSelection: {
+            selectedRowKeys: this.selectedRowKeys,
+            onChange: this.onSelectChange,
+            getCheckboxProps: (record) => ({
+              props: {
+                disabled: false,
+                name: record.id,
+              },
+            }),
+          },
+        }
+        this.optionAlertShow = true
+      } else {
+        this.options = {
+          alert: false,
+          rowSelection: null,
+        }
+        this.optionAlertShow = false
+      }
+    },
+    batchDelete(id) {
+      let ids = []
+      if (this.BaseTool.String.isBlank(id)) {
+        const length = this.selectedRows.length
+        if (length === 0) {
+          this.$message.info('请选择要删除的记录')
+          return
+        }
+        ids = this.selectedRows.map((item) => item.id)
+      } else {
+        ids = [id]
+      }
+      // deleteWorkflowTasks(ids).then((res) => {
+      //   this.$message.info('删除成功')
+      //   this.handleOk()
+      //   this.$refs.table.clearSelected()
+      // })
+    },
+    handleAdd() {},
+    handleEdit(record) {},
+    handleView(record) {},
+    handleSend(id) {
+      sendWorkflow({ id }).then((res) => {
+        this.$message.info('发送成功')
+        this.$refs.table.refresh()
+      })
+    },
+    handleOk(values) {
+      this.visible = true
+      this.$refs.table.refresh()
+    },
+    onSelectChange(selectedRowKeys, selectedRows) {
+      this.selectedRowKeys = selectedRowKeys
+      this.selectedRows = selectedRows
+    },
+    resetSearchForm() {
+      this.queryParam = {}
+      this.$refs.table.refresh(true)
+    },
+    handleEnter() {
+      this.$refs.table.refresh(true)
+    },
+  },
+}
+</script>

+ 2 - 2
src/views/workplace/publish/WaitPublish.vue

@@ -6,10 +6,10 @@
           <a-row :gutter="48">
             <a-col :md="6" :sm="24">
               <a-form-item label="关键字">
-                <a-input v-model="queryParam.keyword" placeholder="请输入名称/类型名称" />
+                <a-input v-model.trim="queryParam.taskName" placeholder="请输入名称/类型名称" />
               </a-form-item>
             </a-col>
-            <a-col :md="6 || 24" :sm="24" style="text-align: right">
+            <a-col :md="6 || 24" :sm="24">
               <span class="table-page-search-submitButtons">
                 <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
                 <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>

+ 247 - 0
src/views/workplace/publish/WaitWork.vue

@@ -0,0 +1,247 @@
+<template>
+  <a-card :bordered="false">
+    <div v-show="visible">
+      <div class="table-page-search-wrapper" @keyup.enter="handleEnter">
+        <a-form layout="inline">
+          <a-row :gutter="48">
+            <a-col :md="6" :sm="24">
+              <a-form-item label="关键字">
+                <a-input v-model.trim="queryParam.taskName" placeholder="请输入名称/类型名称" />
+              </a-form-item>
+            </a-col>
+            <a-col :md="6 || 24" :sm="24">
+              <span class="table-page-search-submitButtons">
+                <a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
+                <a-button style="margin-left: 8px" @click="resetSearchForm">重置</a-button>
+              </span>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+
+      <div class="table-operator" style="margin-bottom: 8px;">
+        <a-row>
+          <a-col :md="16">
+            <!-- <a-button type="primary" icon="plus" @click="handleAdd()">新增</a-button> -->
+            <a-dropdown v-action:edit v-if="selectedRowKeys.length > 0">
+              <a-menu slot="overlay">
+                <a-popconfirm title="是否要删除所选数据?" @confirm="batchDelete()">
+                  <a-menu-item key="1"><a-icon type="delete" /><a>删除</a></a-menu-item>
+                </a-popconfirm>
+              </a-menu>
+              <a-button style="margin-left: 8px">
+                批量操作 <a-icon type="down" />
+              </a-button>
+            </a-dropdown>
+          </a-col>
+        </a-row>
+      </div>
+
+      <s-table ref="table" size="default" rowKey="id" :columns="columns" :data="loadData" :alert="options.alert" :rowSelection="options.rowSelection" showPagination="auto">
+        <span slot="action" slot-scope="record">
+          <template>
+            <a @click="handleView(record)">查看</a>
+            <operation-button @click="handleEdit(record)">修改</operation-button>
+            <operation-button :type="2" title="确认发送" @confirm="handleSend(record.id)">发送</operation-button>
+          </template>
+        </span>
+      </s-table>
+    </div>
+  </a-card>
+</template>
+
+<script>
+import { STable, Ellipsis } from '@/components'
+import { getWorplacePublishPage, sendWorkflow } from '@/api/workflow/publish'
+
+export default {
+  name: 'WorkflowTaskList',
+  components: {
+    STable,
+    Ellipsis,
+  },
+  props: {
+    personalType: {
+      type: [Number, null],
+      default: 2,
+    },
+    status: {
+      type: [Number, null],
+      default: 0,
+    },
+  },
+  data() {
+    return {
+      advanced: false,
+      visible: true,
+      // 查询参数
+      queryParam: {},
+      // 表头
+      columns: [
+        {
+          title: '序号',
+          dataIndex: 'index',
+          customRender: (text, record, index) => {
+            return `${
+              (this.$refs.table.localPagination.current - 1) * this.$refs.table.localPagination.pageSize + index + 1
+            }`
+          },
+        },
+        {
+          title: '标题',
+          dataIndex: 'taskName',
+        },
+        {
+          title: '发起人',
+          dataIndex: 'applyUserName',
+        },
+        {
+          title: '发起时间',
+          dataIndex: 'applyTime',
+        },
+        {
+          title: '上一处理人',
+          dataIndex: 'lastUserName',
+        },
+        {
+          title: '接收时间',
+          dataIndex: 'createdTime',
+        },
+        {
+          title: '当前节点',
+          dataIndex: 'nodeRemark',
+        },
+        {
+          title: '催办次数',
+          dataIndex: 'reminderNum',
+        },
+        {
+          title: '已阅标识',
+          dataIndex: 'readFlag',
+          fixed: 'right',
+        },
+        {
+          title: '操作',
+          key: 'action',
+          width: '200px',
+          fixed: 'right',
+          align: 'center',
+          scopedSlots: { customRender: 'action' },
+        },
+      ],
+      // 下拉框map
+      // 加载数据方法 必须为 Promise 对象
+      loadData: (parameter) => {
+        parameter = {
+          personalType: this.personalType,
+          status: this.status,
+          ...parameter,
+          ...this.queryParam,
+          dataScope: {
+            sortBy: 'desc',
+            sortName: 'task.created_time',
+          },
+        }
+        return getWorplacePublishPage(Object.assign(parameter, this.queryParam)).then((res) => {
+          return res.data
+        })
+      },
+      selectedRowKeys: [],
+      selectedRows: [],
+
+      options: {
+        alert: {
+          show: true,
+          clear: () => {
+            this.selectedRowKeys = []
+          },
+        },
+        rowSelection: {
+          selectedRowKeys: this.selectedRowKeys,
+          onChange: this.onSelectChange,
+        },
+      },
+      optionAlertShow: false,
+      statusMap: {},
+    }
+  },
+  created() {
+    // 下拉框map
+    this.tableOption()
+    this.statusMap = this.DictCache.getLabelByValueMapByType(this.DictCache.TYPE.FLOW_TASK_STATUS)
+  },
+  methods: {
+    tableOption() {
+      if (!this.optionAlertShow) {
+        this.options = {
+          alert: {
+            show: true,
+            clear: () => {
+              this.selectedRowKeys = []
+            },
+          },
+          rowSelection: {
+            selectedRowKeys: this.selectedRowKeys,
+            onChange: this.onSelectChange,
+            getCheckboxProps: (record) => ({
+              props: {
+                disabled: false,
+                name: record.id,
+              },
+            }),
+          },
+        }
+        this.optionAlertShow = true
+      } else {
+        this.options = {
+          alert: false,
+          rowSelection: null,
+        }
+        this.optionAlertShow = false
+      }
+    },
+    batchDelete(id) {
+      let ids = []
+      if (this.BaseTool.String.isBlank(id)) {
+        const length = this.selectedRows.length
+        if (length === 0) {
+          this.$message.info('请选择要删除的记录')
+          return
+        }
+        ids = this.selectedRows.map((item) => item.id)
+      } else {
+        ids = [id]
+      }
+      // deleteWorkflowTasks(ids).then((res) => {
+      //   this.$message.info('删除成功')
+      //   this.handleOk()
+      //   this.$refs.table.clearSelected()
+      // })
+    },
+    handleAdd() {},
+    handleEdit(record) {},
+    handleView(record) {},
+    handleSend(id) {
+      sendWorkflow({ id }).then((res) => {
+        this.$message.info('发送成功')
+        this.$refs.table.refresh()
+      })
+    },
+    handleOk(values) {
+      this.visible = true
+      this.$refs.table.refresh()
+    },
+    onSelectChange(selectedRowKeys, selectedRows) {
+      this.selectedRowKeys = selectedRowKeys
+      this.selectedRows = selectedRows
+    },
+    resetSearchForm() {
+      this.queryParam = {}
+      this.$refs.table.refresh(true)
+    },
+    handleEnter() {
+      this.$refs.table.refresh(true)
+    },
+  },
+}
+</script>