24282 преди 11 месеца
родител
ревизия
c036639d48

+ 8 - 0
jy-business/src/main/java/com/jy/business/payment/dao/PaymentRequestsDao.java

@@ -9,6 +9,7 @@ import com.jy.business.payment.model.entity.PaymentRequests;
 import com.jy.business.payment.model.table.PaymentRequestsTable;
 import com.jy.business.payment.model.vo.PaymentRequestsVo;
 import com.jy.framework.model.base.BaseDao;
+import com.jy.framework.model.base.BaseIdPo;
 import com.jy.system.model.table.SysDeptTable;
 import com.jy.system.model.table.SysUserTable;
 import com.jy.system.service.AuthService;
@@ -75,4 +76,11 @@ public class PaymentRequestsDao extends BaseDao<PaymentRequestsMapper, PaymentRe
                 .one();
     }
 
+    /**
+     * 更新流程状态
+     */
+    public void updateFlowStatus(String businessId, String flowStatus) {
+        lambdaUpdate().eq(BaseIdPo::getId, businessId).set(PaymentRequests::getApprovalStatus, flowStatus).update();
+    }
+    
 }

+ 26 - 0
jy-business/src/main/java/com/jy/business/payment/flow/PaymentRequestsFlow.java

@@ -0,0 +1,26 @@
+package com.jy.business.payment.flow;
+
+import com.jy.business.payment.dao.PaymentRequestsDao;
+import com.warm.flow.core.entity.Instance;
+import com.warm.flow.core.listener.Listener;
+import com.warm.flow.core.listener.ListenerVariable;
+import jakarta.annotation.Resource;
+import org.springframework.stereotype.Component;
+
+@Component("paymentRequestsFlow")
+public class PaymentRequestsFlow implements Listener {
+
+    @Resource
+    private PaymentRequestsDao paymentRequestsDao;
+
+    @Override
+    public void notify(ListenerVariable listenerVariable) {
+        Instance instance = listenerVariable.getInstance();
+
+        String businessId = instance.getBusinessId();
+        String flowStatus = instance.getFlowStatus();
+
+        paymentRequestsDao.updateFlowStatus(businessId, flowStatus);
+    }
+
+}

+ 6 - 5
jy-business/src/main/java/com/jy/business/payment/service/impl/PaymentRequestsServiceImpl.java

@@ -8,10 +8,11 @@ import com.jy.business.payment.model.dto.PaymentRequestsSelectDto;
 import com.jy.business.payment.model.entity.PaymentRequestsDetail;
 import com.jy.business.payment.model.vo.PaymentRequestsVo;
 import com.jy.business.payment.service.PaymentRequestsService;
+import com.jy.flow.model.enums.FlowStatusEnum;
 import com.jy.flow.utils.FlowUtil;
+import com.jy.framework.model.constants.CommonConstant;
 import com.jy.framework.model.constants.FlowConstant;
 import com.jy.framework.utils.AssertUtil;
-import com.warm.flow.core.service.InsService;
 import jakarta.annotation.Resource;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -30,9 +31,6 @@ import java.util.List;
 public class PaymentRequestsServiceImpl implements PaymentRequestsService {
 
     @Resource
-    private InsService insService;
-
-    @Resource
     private PaymentRequestsDao paymentRequestsDao;
 
     @Resource
@@ -56,6 +54,8 @@ public class PaymentRequestsServiceImpl implements PaymentRequestsService {
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void add(PaymentRequestsDto dto) {
+        dto.setApprovalStatus(FlowStatusEnum.UNDER_WAY.getKey());
+        dto.setPaymentStatus(CommonConstant.NO);
         paymentRequestsDao.save(dto);
 
         List<PaymentRequestsDetail> paymentRequestsDetailList = dto.getPaymentRequestsDetailList();
@@ -69,12 +69,13 @@ public class PaymentRequestsServiceImpl implements PaymentRequestsService {
     @Transactional(rollbackFor = Exception.class)
     @Override
     public void edit(PaymentRequestsDto dto) {
+        dto.setApprovalStatus(FlowStatusEnum.UNDER_WAY.getKey());
         paymentRequestsDao.updateById(dto);
         List<PaymentRequestsDetail> paymentRequestsDetailList = dto.getPaymentRequestsDetailList();
         paymentRequestsDetailList.forEach(item -> item.setPaymentRequestsId(dto.getId()));
         paymentRequestsDetailDao.updateLinked(paymentRequestsDetailList, PaymentRequestsDetail::getPaymentRequestsId, dto.getId());
 
-
+        FlowUtil.next(dto.getId());
     }
 
     @Transactional(rollbackFor = Exception.class)

+ 0 - 5
jy-flow/src/main/java/com/jy/flow/model/dto/WarmFlowHandleDto.java

@@ -22,9 +22,4 @@ public class WarmFlowHandleDto {
      */
     private String message;
 
-    /**
-     * 流程跳转节点
-     */
-    private String nodeCode;
-
 }

+ 23 - 0
jy-flow/src/main/java/com/jy/flow/utils/FlowUtil.java

@@ -1,15 +1,25 @@
 package com.jy.flow.utils;
 
 import cn.hutool.extra.spring.SpringUtil;
+import com.jy.flow.controller.ExecuteController;
+import com.jy.flow.model.dto.WarmFlowHandleDto;
 import com.jy.flow.model.enums.FlowStatusEnum;
 import com.jy.framework.satoken.LoginContext;
+import com.jy.framework.utils.AssertUtil;
 import com.warm.flow.core.dto.FlowParams;
+import com.warm.flow.core.entity.Instance;
+import com.warm.flow.core.entity.Task;
 import com.warm.flow.core.service.InsService;
+import com.warm.flow.core.service.TaskService;
+import com.warm.flow.orm.entity.FlowInstance;
+import com.warm.flow.orm.entity.FlowTask;
 
 import java.util.Map;
 
 public class FlowUtil {
     private final static InsService insService = SpringUtil.getBean(InsService.class);
+    private final static TaskService taskService = SpringUtil.getBean(TaskService.class);
+    private final static ExecuteController executeController = SpringUtil.getBean(ExecuteController.class);
 
     /**
      * 发起流程
@@ -36,4 +46,17 @@ public class FlowUtil {
         insService.start(businessId.toString(), flowParams);
     }
 
+    public static void next(Long businessId) {
+        Instance instance = insService.getOne(new FlowInstance().setBusinessId(businessId.toString()));
+        AssertUtil.notNull(instance, "未知流程实例");
+
+        Task task = taskService.getOne(new FlowTask().setInstanceId(instance.getId()));
+        AssertUtil.notNull(task, "未知流程任务");
+
+        WarmFlowHandleDto dto = new WarmFlowHandleDto();
+        dto.setTaskId(task.getId());
+        dto.setHandleType(1);
+        executeController.handle(dto);
+    }
+
 }

+ 87 - 85
jy-ui/src/views/business/payment/requests/index.vue

@@ -1,20 +1,14 @@
 <script setup lang="ts">
 import AForm from '@/components/AForm/index.vue'
-import { FormConfigType } from '@/components/AForm/type'
-import { ToolbarConfigType } from '@/components/AToolbar/type'
-import { ColumnConfigType } from '@/components/ATable/type'
-import { StrAnyObj, StrAnyObjArr } from '@/typings'
-import { useHandleData } from '@/utils/useHandleData'
-import {
-  getPageApi,
-  getDetailApi,
-  addApi,
-  editApi,
-  deleteApi
-} from '@/api/business/payment/requests'
-import { getPageApi as getCorporationPageApi } from '@/api/business/corporation/corporation'
+import {FormConfigType} from '@/components/AForm/type'
+import {ToolbarConfigType} from '@/components/AToolbar/type'
+import {ColumnConfigType} from '@/components/ATable/type'
+import {StrAnyObj, StrAnyObjArr} from '@/typings'
+import {useHandleData} from '@/utils/useHandleData'
+import {addApi, deleteApi, editApi, getDetailApi, getPageApi} from '@/api/business/payment/requests'
+import {getPageApi as getCorporationPageApi} from '@/api/business/corporation/corporation'
 import DeptTreeSelect from '@/views/components/DeptTreeSelect/index.vue'
-import { getPageApi as getCapitalAccountPageApi } from '@/api/business/capital/account'
+import {getPageApi as getCapitalAccountPageApi} from '@/api/business/capital/account'
 import FileUpload from '@/components/FlieUpload/index.vue'
 
 const queryRef = ref<InstanceType<typeof AForm>>()
@@ -24,9 +18,9 @@ const showQuery = ref<boolean>(true)
 const selectKeys = ref<string[]>([])
 const pageTotal = ref<number>(0)
 
-const queryData = ref<StrAnyObj>({ pageNum: 1, pageSize: 10 })
+const queryData = ref<StrAnyObj>({pageNum: 1, pageSize: 10})
 const tableData = ref<StrAnyObjArr>([])
-const formData = ref<StrAnyObj>({ paymentRequestsDetailList: [{}] })
+const formData = ref<StrAnyObj>({paymentRequestsDetailList: [{}]})
 
 const dialogTitle = ref<string>('')
 const dialogVisible = ref<boolean>(false)
@@ -128,15 +122,6 @@ const toolbarConfig: ToolbarConfigType[] = [
       dialogTitle.value = '新增'
       nextTick(() => deptIdRef.value?.load())
     }
-  },
-  {
-    common: 'delete',
-    disabled() {
-      return selectKeys.value.length == 0
-    },
-    click() {
-      handleRemove(selectKeys.value)
-    }
   }
 ]
 
@@ -186,31 +171,48 @@ const columnConfig: ColumnConfigType[] = [
   },
   {
     prop: 'approvalStatus',
-    label: '审批状态'
+    label: '审批状态',
+    formatter(row) {
+      switch (row.approvalStatus) {
+        case 0:
+          return '待发起'
+        case 1:
+          return '进行中'
+        case 2:
+          return '已通过'
+        case 3:
+          return '已驳回'
+      }
+    }
   },
   {
     prop: 'paymentStatus',
-    label: '放款状态'
+    label: '放款状态',
+    formatter(row) {
+      switch (row.paymentStatus) {
+        case 0:
+          return '未放款'
+        case 1:
+          return '已放款'
+      }
+    }
   },
   {
     width: 250,
     handleConfig: [
       {
-        common: 'update',
+        text: '重新发起',
+        if(row) {
+          return row.approvalStatus == 0
+        },
         click(row) {
           dialogVisible.value = true
           dialogTitle.value = '编辑'
-          getDetailApi({ id: row.id }).then((resp: StrAnyObj) => {
+          getDetailApi({id: row.id}).then((resp: StrAnyObj) => {
             formData.value = resp
           })
           nextTick(() => deptIdRef.value?.load())
         }
-      },
-      {
-        common: 'delete',
-        click(row) {
-          handleRemove([row.id])
-        }
       }
     ]
   }
@@ -224,23 +226,23 @@ const formConfig: FormConfigType[] = [
     keyName: 'id',
     labelName: 'name',
     async option() {
-      const data = await getCorporationPageApi({ searchAll: true })
+      const data = await getCorporationPageApi({searchAll: true})
       return data.records
     },
-    rule: [{ required: true, message: '归属公司id不能为空', trigger: 'blur' }]
+    rule: [{required: true, message: '归属公司id不能为空', trigger: 'blur'}]
   },
   {
     type: 'slot',
     prop: 'deptId',
     label: '归属部门',
-    rule: [{ required: true, message: '部门id不能为空', trigger: 'blur' }]
+    rule: [{required: true, message: '部门id不能为空', trigger: 'blur'}]
   },
   {
     type: 'select',
     prop: 'type',
     label: '请款类型',
     dict: 'payment_requests_type',
-    rule: [{ required: true, message: '请款类型不能为空', trigger: 'blur' }]
+    rule: [{required: true, message: '请款类型不能为空', trigger: 'blur'}]
   },
   {
     type: 'datePicker',
@@ -285,14 +287,14 @@ const formConfig: FormConfigType[] = [
     label: '单据数量',
     min: 0,
     precision: 0,
-    rule: [{ required: true, message: '单据数量不能为空', trigger: 'blur' }]
+    rule: [{required: true, message: '单据数量不能为空', trigger: 'blur'}]
   },
   {
     type: 'select',
     prop: 'payType',
     label: '付款方式',
     dict: 'pay_type',
-    rule: [{ required: true, message: '付款方式不能为空', trigger: 'blur' }]
+    rule: [{required: true, message: '付款方式不能为空', trigger: 'blur'}]
   },
   {
     type: 'select',
@@ -301,7 +303,7 @@ const formConfig: FormConfigType[] = [
     keyName: 'id',
     labelName: 'accountAlias',
     async option() {
-      const data = await getCapitalAccountPageApi({ searchAll: true })
+      const data = await getCapitalAccountPageApi({searchAll: true})
       return data.records
     }
   },
@@ -412,7 +414,7 @@ function formClosed() {
 
 function handleRemove(idList: string[]) {
   useHandleData('是否确认删除?', () => {
-    deleteApi({ idList }).then(() => {
+    deleteApi({idList}).then(() => {
       ElMessage.success('删除成功')
       getPage()
     })
@@ -425,86 +427,86 @@ function addPaymentRequestsDetailList() {
 
 function updateDetailRemark() {
   formData.value.useRemark = formData.value.paymentRequestsDetailList
-    .map((item) => item.remark)
-    .filter((item) => item !== '' && item !== null && item !== undefined)
-    .join(' - \n')
+      .map((item) => item.remark)
+      .filter((item) => item !== '' && item !== null && item !== undefined)
+      .join(' - \n')
 }
 
 function updateAmount() {
   formData.value.totalAmount = formData.value.paymentRequestsDetailList
-    .map((item) => item.amount)
-    .filter((item) => item !== '' && item !== null && item !== undefined)
-    .reduce((pre, next) => pre + next, 0)
+      .map((item) => item.amount)
+      .filter((item) => item !== '' && item !== null && item !== undefined)
+      .reduce((pre, next) => pre + next, 0)
 }
 </script>
 
 <template>
   <div>
     <el-card v-if="showQuery">
-      <a-form ref="queryRef" v-model="queryData" :config="queryConfig" :span="6"> </a-form>
+      <a-form ref="queryRef" v-model="queryData" :config="queryConfig" :span="6"></a-form>
     </el-card>
 
     <a-table
-      selection
-      :data="tableData"
-      :page-total="pageTotal"
-      :toolbar-config="toolbarConfig"
-      :column-config="columnConfig"
-      v-model:showQuery="showQuery"
-      v-model:page-num="queryData.pageNum"
-      v-model:page-size="queryData.pageSize"
-      @page-num-change="getPage"
-      @page-size-change="getPage"
-      @selection-change="tableSelectionChange"
+        selection
+        :data="tableData"
+        :page-total="pageTotal"
+        :toolbar-config="toolbarConfig"
+        :column-config="columnConfig"
+        v-model:showQuery="showQuery"
+        v-model:page-num="queryData.pageNum"
+        v-model:page-size="queryData.pageSize"
+        @page-num-change="getPage"
+        @page-size-change="getPage"
+        @selection-change="tableSelectionChange"
     >
     </a-table>
 
     <a-dialog
-      v-model="dialogVisible"
-      :title="dialogTitle"
-      @submit="formSubmit"
-      @closed="formClosed"
-      width="1400px"
-      height="200px"
+        v-model="dialogVisible"
+        :title="dialogTitle"
+        @submit="formSubmit"
+        @closed="formClosed"
+        width="1400px"
+        height="200px"
     >
       <a-form ref="formRef" v-model="formData" :config="formConfig" :span="12">
         <template #deptId>
-          <dept-tree-select ref="deptIdRef" v-model="formData.deptId" />
+          <dept-tree-select ref="deptIdRef" v-model="formData.deptId"/>
         </template>
         <template #atts>
-          <file-upload v-model="formData.atts" />
+          <file-upload v-model="formData.atts"/>
         </template>
         <template #detailTable>
           <a-table
-            :data="formData.paymentRequestsDetailList"
-            :columnConfig="detailTableColumnConfig"
-            style="width: 100%"
-            :card="false"
+              :data="formData.paymentRequestsDetailList"
+              :columnConfig="detailTableColumnConfig"
+              style="width: 100%"
+              :card="false"
           >
             <template #expenseType="scope">
-              <a-select v-model="scope.row.expenseType" dict="expense_type" />
+              <a-select v-model="scope.row.expenseType" dict="expense_type"/>
             </template>
             <template #remark="scope">
               <a-input
-                v-model="scope.row.remark"
-                type="textarea"
-                :rows="2"
-                @change="updateDetailRemark"
+                  v-model="scope.row.remark"
+                  type="textarea"
+                  :rows="2"
+                  @change="updateDetailRemark"
               />
             </template>
             <template #amount="scope">
               <a-inputNumber
-                v-model="scope.row.amount"
-                :min="0.01"
-                :precision="2"
-                @change="updateAmount"
+                  v-model="scope.row.amount"
+                  :min="0.01"
+                  :precision="2"
+                  @change="updateAmount"
               />
             </template>
           </a-table>
           <el-button
-            style="width: 100%; margin-bottom: 20px"
-            type="primary"
-            @click="addPaymentRequestsDetailList"
+              style="width: 100%; margin-bottom: 20px"
+              type="primary"
+              @click="addPaymentRequestsDetailList"
           >
             添加行
           </el-button>

+ 25 - 25
jy-ui/src/views/flow/taskDone/index.vue

@@ -1,11 +1,11 @@
 <script setup lang="ts">
 import AForm from '@/components/AForm/index.vue'
-import { FormConfigType } from '@/components/AForm/type'
-import { ToolbarConfigType } from '@/components/AToolbar/type'
-import { ColumnConfigType } from '@/components/ATable/type'
-import { StrAnyObj, StrAnyObjArr } from '@/typings'
-import { getDoneListApi, getDonePageApi, handleApi } from '@/api/flow/execute'
-import { getChartApi } from '@/api/flow/definition'
+import {FormConfigType} from '@/components/AForm/type'
+import {ToolbarConfigType} from '@/components/AToolbar/type'
+import {ColumnConfigType} from '@/components/ATable/type'
+import {StrAnyObj, StrAnyObjArr} from '@/typings'
+import {getDoneListApi, getDonePageApi} from '@/api/flow/execute'
+import {getChartApi} from '@/api/flow/definition'
 
 const modules = import.meta.glob('@/views/**/*.vue')
 
@@ -14,7 +14,7 @@ const queryRef = ref<InstanceType<typeof AForm>>()
 const showQuery = ref<boolean>(true)
 const pageTotal = ref<number>(0)
 
-const queryData = ref<StrAnyObj>({ pageNum: 1, pageSize: 10 })
+const queryData = ref<StrAnyObj>({pageNum: 1, pageSize: 10})
 const tableData = ref<StrAnyObjArr>([])
 
 const chartVisible = ref(false)
@@ -32,7 +32,7 @@ const queryConfig: FormConfigType[] = [
     type: 'input',
     prop: 'nodeName',
     label: '节点名称'
-  },
+  }
   // {
   //   type: 'select',
   //   prop: 'flowStatus',
@@ -112,7 +112,7 @@ const columnConfig: ColumnConfigType[] = [
         case '1':
           return '进行中'
         case '2':
-          return '已完成'
+          return '已通过'
         case '3':
           return '已驳回'
       }
@@ -182,10 +182,10 @@ const doneListColumnConfig: ColumnConfigType[] = [
     prop: 'type',
     label: '审批类型',
     formatter(row) {
-      if (row.flowStatus == 3){
-        return "驳回"
+      if (row.flowStatus == 3) {
+        return '驳回'
       }
-      if (row.skipType == 'PASS'){
+      if (row.skipType == 'PASS') {
         return '通过'
       }
       return '退回'
@@ -213,32 +213,32 @@ function getPage() {
 <template>
   <div>
     <el-card v-if="showQuery">
-      <a-form ref="queryRef" v-model="queryData" :config="queryConfig" :span="6"> </a-form>
+      <a-form ref="queryRef" v-model="queryData" :config="queryConfig" :span="6"></a-form>
     </el-card>
 
     <a-table
-      :data="tableData"
-      :page-total="pageTotal"
-      :toolbar-config="toolbarConfig"
-      :column-config="columnConfig"
-      v-model:showQuery="showQuery"
-      v-model:page-num="queryData.pageNum"
-      v-model:page-size="queryData.pageSize"
-      @page-num-change="getPage"
-      @page-size-change="getPage"
+        :data="tableData"
+        :page-total="pageTotal"
+        :toolbar-config="toolbarConfig"
+        :column-config="columnConfig"
+        v-model:showQuery="showQuery"
+        v-model:page-num="queryData.pageNum"
+        v-model:page-size="queryData.pageSize"
+        @page-num-change="getPage"
+        @page-size-change="getPage"
     >
     </a-table>
 
     <a-dialog title="" v-model="handleVisible" width="1200px" :footer="false">
-      <component :is="handleComponent" :businessId="businessId" />
+      <component :is="handleComponent" :businessId="businessId"/>
     </a-dialog>
 
     <a-dialog title="流程图" v-model="chartVisible" width="1200px" :footer="false">
-      <img :src="imgUrl" width="100%" style="margin: 0 auto" alt="" />
+      <img :src="imgUrl" width="100%" style="margin: 0 auto" alt=""/>
     </a-dialog>
 
     <a-dialog title="审批记录" v-model="doneListVisible" width="1000px" :footer="false">
-      <a-table :data="doneList" :column-config="doneListColumnConfig" :card="false"> </a-table>
+      <a-table :data="doneList" :column-config="doneListColumnConfig" :card="false"></a-table>
     </a-dialog>
   </div>
 </template>

+ 27 - 27
jy-ui/src/views/flow/taskTodo/index.vue

@@ -1,11 +1,11 @@
 <script setup lang="ts">
 import AForm from '@/components/AForm/index.vue'
-import { FormConfigType } from '@/components/AForm/type'
-import { ToolbarConfigType } from '@/components/AToolbar/type'
-import { ColumnConfigType } from '@/components/ATable/type'
-import { StrAnyObj, StrAnyObjArr } from '@/typings'
-import { getDoneListApi, getToDoPageApi, handleApi } from '@/api/flow/execute'
-import { getChartApi } from '@/api/flow/definition'
+import {FormConfigType} from '@/components/AForm/type'
+import {ToolbarConfigType} from '@/components/AToolbar/type'
+import {ColumnConfigType} from '@/components/ATable/type'
+import {StrAnyObj, StrAnyObjArr} from '@/typings'
+import {getDoneListApi, getToDoPageApi, handleApi} from '@/api/flow/execute'
+import {getChartApi} from '@/api/flow/definition'
 
 const modules = import.meta.glob('@/views/**/*.vue')
 
@@ -14,7 +14,7 @@ const queryRef = ref<InstanceType<typeof AForm>>()
 const showQuery = ref<boolean>(true)
 const pageTotal = ref<number>(0)
 
-const queryData = ref<StrAnyObj>({ pageNum: 1, pageSize: 10 })
+const queryData = ref<StrAnyObj>({pageNum: 1, pageSize: 10})
 const tableData = ref<StrAnyObjArr>([])
 
 const chartVisible = ref(false)
@@ -35,7 +35,7 @@ const queryConfig: FormConfigType[] = [
     type: 'input',
     prop: 'nodeName',
     label: '节点名称'
-  },
+  }
   // {
   //   type: 'select',
   //   prop: 'flowStatus',
@@ -117,7 +117,7 @@ const columnConfig: ColumnConfigType[] = [
         case '1':
           return '进行中'
         case '2':
-          return '已完成'
+          return '已通过'
         case '3':
           return '已驳回'
       }
@@ -184,10 +184,10 @@ const doneListColumnConfig: ColumnConfigType[] = [
     prop: 'type',
     label: '审批类型',
     formatter(row) {
-      if (row.flowStatus == 3){
-        return "驳回"
+      if (row.flowStatus == 3) {
+        return '驳回'
       }
-      if (row.skipType == 'PASS'){
+      if (row.skipType == 'PASS') {
         return '通过'
       }
       return '退回'
@@ -232,7 +232,7 @@ function getPage() {
 
 function handle(handleType) {
   const message = handleData.value.message
-  handleApi({ taskId: taskId.value, handleType, message }).then(() => {
+  handleApi({taskId: taskId.value, handleType, message}).then(() => {
     getPage()
     ElMessage.success('办理成功')
     this.handleVisible = false
@@ -243,26 +243,26 @@ function handle(handleType) {
 <template>
   <div>
     <el-card v-if="showQuery">
-      <a-form ref="queryRef" v-model="queryData" :config="queryConfig" :span="6"> </a-form>
+      <a-form ref="queryRef" v-model="queryData" :config="queryConfig" :span="6"></a-form>
     </el-card>
 
     <a-table
-      :data="tableData"
-      :page-total="pageTotal"
-      :toolbar-config="toolbarConfig"
-      :column-config="columnConfig"
-      v-model:showQuery="showQuery"
-      v-model:page-num="queryData.pageNum"
-      v-model:page-size="queryData.pageSize"
-      @page-num-change="getPage"
-      @page-size-change="getPage"
+        :data="tableData"
+        :page-total="pageTotal"
+        :toolbar-config="toolbarConfig"
+        :column-config="columnConfig"
+        v-model:showQuery="showQuery"
+        v-model:page-num="queryData.pageNum"
+        v-model:page-size="queryData.pageSize"
+        @page-num-change="getPage"
+        @page-size-change="getPage"
     >
     </a-table>
 
     <a-dialog title="" v-model="handleVisible" width="1200px" :footer="false">
       <el-card shadow="always">
         <template #header>流程明细</template>
-        <component :is="handleComponent" :businessId="businessId" />
+        <component :is="handleComponent" :businessId="businessId"/>
       </el-card>
 
       <el-card shadow="always" style="margin-top: 20px">
@@ -271,7 +271,7 @@ function handle(handleType) {
           <template #handle>
             <el-button type="primary" @click="handle(1)">通 过</el-button>
             <el-button type="primary" @click="handle(2)">回 退</el-button>
-            <el-button type="primary" @click="handle(3)">拒 绝</el-button>
+            <el-button type="primary" @click="handle(3)">驳 回</el-button>
             <el-button @click="handleVisible = false">关 闭</el-button>
           </template>
         </a-form>
@@ -279,11 +279,11 @@ function handle(handleType) {
     </a-dialog>
 
     <a-dialog title="流程图" v-model="chartVisible" width="1200px" :footer="false">
-      <img :src="imgUrl" width="100%" style="margin: 0 auto" alt="" />
+      <img :src="imgUrl" width="100%" style="margin: 0 auto" alt=""/>
     </a-dialog>
 
     <a-dialog title="审批记录" v-model="doneListVisible" width="1000px" :footer="false">
-      <a-table :data="doneList" :column-config="doneListColumnConfig" :card="false"> </a-table>
+      <a-table :data="doneList" :column-config="doneListColumnConfig" :card="false"></a-table>
     </a-dialog>
   </div>
 </template>