zhaowei
2025-06-23 dc69aa0393de3dc483cee86dc03f821eac675085
src/views/flowable/workflow/FlowTodo.vue
@@ -7,12 +7,23 @@
  <a-card :bordered='false'>
    <!-- 查询区域 -->
    <div class='table-page-search-wrapper'>
      <a-form layout='inline' @keyup.enter.native='searchQuery'>
      <a-form
        layout='inline'
        @keyup.enter.native='searchQuery'
      >
        <a-row :gutter='24'>
          <a-col :lg='6' :md='8' :sm='24' :xl='4'>
          <a-col
            :lg='6'
            :md='8'
            :sm='24'
            :xl='4'
          >
            <a-form-item label='流程分类'>
              <j-dict-select-tag v-model='queryParam.category' dictCode='flow_type'
                                 placeholder='请选择流程分类'></j-dict-select-tag>
              <j-dict-select-tag
                v-model='queryParam.category'
                dictCode='flow_type'
                placeholder='请选择流程分类'
              ></j-dict-select-tag>
            </a-form-item>
          </a-col>
          <!--<a-col :xl="4" :lg="6" :md="8" :sm="24">-->
@@ -20,35 +31,83 @@
          <!--<a-input placeholder="请输入流程名称" v-model="queryParam.flowName"></a-input>-->
          <!--</a-form-item>-->
          <!--</a-col>-->
          <a-col :lg='6' :md='8' :sm='24' :xl='4'>
          <a-col
            :lg='6'
            :md='8'
            :sm='24'
            :xl='4'
          >
            <a-form-item label='当前节点'>
              <a-input v-model='queryParam.name' placeholder='请输入当前节点精确查询'></a-input>
              <a-input
                v-model='queryParam.name'
                placeholder='请输入当前节点精确查询'
              ></a-input>
            </a-form-item>
          </a-col>
          <a-col :lg='6' :md='8' :sm='24' :xl='4'>
          <a-col
            :lg='6'
            :md='8'
            :sm='24'
            :xl='4'
          >
            <a-form-item label='简要描述'>
              <a-input v-model='queryParam.title' placeholder='请输入简要描述'></a-input>
              <a-input
                v-model='queryParam.title'
                placeholder='请输入简要描述'
              ></a-input>
            </a-form-item>
          </a-col>
          <template v-if='toggleSearchStatus'>
            <a-col :lg='8' :md='12' :sm='24' :xl='8'>
            <a-col
              :lg='8'
              :md='12'
              :sm='24'
              :xl='8'
            >
              <a-form-item label='任务时间范围'>
                <j-date v-model='queryParam.startTime' :show-time='false' class='query-group-cust'
                        date-format='YYYY-MM-DD HH:mm:ss'
                        placeholder='请选择开始时间'></j-date>
                <j-date
                  v-model='queryParam.startTime'
                  :show-time='false'
                  class='query-group-cust'
                  date-format='YYYY-MM-DD HH:mm:ss'
                  placeholder='请选择开始时间'
                ></j-date>
                <span class='query-group-split-cust'></span>
                <j-date v-model='queryParam.endTime' :show-time='false' class='query-group-cust'
                        date-format='YYYY-MM-DD HH:mm:ss'
                        placeholder='请选择结束时间'></j-date>
                <j-date
                  v-model='queryParam.endTime'
                  :show-time='false'
                  class='query-group-cust'
                  date-format='YYYY-MM-DD HH:mm:ss'
                  placeholder='请选择结束时间'
                ></j-date>
              </a-form-item>
            </a-col>
          </template>
          <a-col :lg='6' :md='8' :sm='24' :xl='4'>
            <span class='table-page-search-submitButtons' style='float: left;overflow: hidden;'>
              <a-button icon='search' type='primary' @click='searchQuery'>查询</a-button>
              <a-button icon='reload' style='margin-left: 8px' @click='searchReset'>重置</a-button>
               <a style='margin-left: 8px' @click='handleToggleSearch'>
          <a-col
            :lg='6'
            :md='8'
            :sm='24'
            :xl='4'
          >
            <span
              class='table-page-search-submitButtons'
              style='float: left;overflow: hidden;'
            >
              <a-button
                icon='search'
                type='primary'
                @click='searchQuery'
              >查询</a-button>
              <a-button
                icon='reload'
                style='margin-left: 8px'
                @click='searchReset'
              >重置</a-button>
              <a
                style='margin-left: 8px'
                @click='handleToggleSearch'
              >
                {{ toggleSearchStatus ? '收起' : '展开' }}
                <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
              </a>
@@ -63,7 +122,10 @@
    <div class='table-operator'>
      <a-dropdown v-if='selectedRowKeys.length > 0 '>
        <a-menu slot='overlay'>
          <a-menu-item key='1' @click='batchHandle'>
          <a-menu-item
            key='1'
            @click='batchHandle'
          >
            <a-icon type='delete' />
            批量处理
          </a-menu-item>
@@ -76,10 +138,16 @@
    <!-- table区域-begin -->
    <div>
      <div class='ant-alert ant-alert-info' style='margin-bottom: 16px;'>
      <div
        class='ant-alert ant-alert-info'
        style='margin-bottom: 16px;'
      >
        <i class='anticon anticon-info-circle ant-alert-icon'></i>已选择&nbsp;<a style='font-weight: 600'>{{
          selectedRowKeys.length }}</a>项&nbsp;&nbsp;
        <a style='margin-left: 24px' @click='onClearSelected'>清空</a>
        <a
          style='margin-left: 24px'
          @click='onClearSelected'
        >清空</a>
      </div>
      <a-table
@@ -93,54 +161,130 @@
        bordered
        rowKey='id'
        size='middle'
        @change='handleTableChange'>
        @change='handleTableChange'
      >
        <span slot='action' slot-scope='text, record'>
            <a @click='handelDetail(record,text)'>执行/审批</a>
        <span
          slot='action'
          slot-scope='text, record'
        >
          <a @click='handelDetail(record,text)'>执行/审批</a>
        </span>
      </a-table>
    </div>
    <AssignFileStreamHandle ref='modalFormApproval' :selectShenpiData='selectShenpiData'
                            @searchReset='searchReset'></AssignFileStreamHandle>
    <DispatchFileHandle ref='modalFormDispatchFileXq' :selectShenpiData='selectDispatchFileXqData'
                        @searchReset='searchReset'></DispatchFileHandle>
    <DispatchFileBachHandleStyle ref='modalFormDispatchFileBatch' @ok='modalFormOk'
                                 @searchReset='searchReset'></DispatchFileBachHandleStyle>
    <AssignFileStreamHandle
      ref='modalFormApproval'
      :selectShenpiData='selectShenpiData'
      @searchReset='searchReset'
    ></AssignFileStreamHandle>
    <DispatchFileHandle
      ref='modalFormDispatchFileXq'
      :selectShenpiData='selectDispatchFileXqData'
      @searchReset='searchReset'
    ></DispatchFileHandle>
    <StandardizedProcessHandle
      ref='StandardizedProcessHandle'
      :selectShenpiData='selectDispatchFileXqData'
      @searchReset='searchReset'
    ></StandardizedProcessHandle>
    <DispatchFileBachHandleStyle
      ref='modalFormDispatchFileBatch'
      @ok='modalFormOk'
      @searchReset='searchReset'
    ></DispatchFileBachHandleStyle>
    <!--单个流程处理-->
    <InspectionOrderHandle ref='modalFormInspectionOrder' :selectShenpiData='selectInspectionOrderData'
                           @searchReset='searchReset'></InspectionOrderHandle>
    <week-maintenance-approval-modal ref='weekMaintenanceApprovalModal' :selectShenpiData='selectWeekMaintenanceData'
                                     @searchReset='searchReset'></week-maintenance-approval-modal>
    <repair-order-approval-modal ref='repairOrderApprovalModal' :selectShenpiData='selectRepairOrderData'
                                 @searchReset='searchReset'></repair-order-approval-modal>
    <out-bound-order-handle ref='outBoundOrderHandle' :selectShenpiData='selectOutBoundOrderData'
                            @searchReset='searchReset'></out-bound-order-handle>
    <stocktaking-bound-handle ref='stocktakingBoundHandle' :selectShenpiData='selectStocktakingBoundOrderData'
                              @searchReset='searchReset'></stocktaking-bound-handle>
    <InspectionOrderHandle
      ref='modalFormInspectionOrder'
      :selectShenpiData='selectInspectionOrderData'
      @searchReset='searchReset'
    ></InspectionOrderHandle>
    <week-maintenance-approval-modal
      ref='weekMaintenanceApprovalModal'
      :selectShenpiData='selectWeekMaintenanceData'
      @searchReset='searchReset'
    ></week-maintenance-approval-modal>
    <repair-order-approval-modal
      ref='repairOrderApprovalModal'
      :selectShenpiData='selectRepairOrderData'
      @searchReset='searchReset'
    ></repair-order-approval-modal>
    <out-bound-order-handle
      ref='outBoundOrderHandle'
      :selectShenpiData='selectOutBoundOrderData'
      @searchReset='searchReset'
    ></out-bound-order-handle>
    <stocktaking-bound-handle
      ref='stocktakingBoundHandle'
      :selectShenpiData='selectStocktakingBoundOrderData'
      @searchReset='searchReset'
    ></stocktaking-bound-handle>
    <loss-bound-handle ref='lossBoundHandle' :selectShenpiData='selectLossBoundOrderData'
                       @searchReset='searchReset'></loss-bound-handle>
    <loss-bound-handle
      ref='lossBoundHandle'
      :selectShenpiData='selectLossBoundOrderData'
      @searchReset='searchReset'
    ></loss-bound-handle>
    <!--批量处理-->
    <inspection-order-batch-handle ref='inspectionOrderBatchHandleRef' :taskList='selectionRows'
                                   @searchReset='searchReset' />
    <inspection-order-batch-handle
      ref='inspectionOrderBatchHandleRef'
      :taskList='selectionRows'
      @searchReset='searchReset'
    />
    <week-maintenance-batch-approval-modal ref='weenMaintenanceBatchApprovalModalRef' :taskList='selectionRows'
                                           @searchReset='searchReset' />
    <equipment-lean-out-approval-modal ref='equipmentLeanOutApprovalModelRef' @searchReset='searchReset' />
    <week-maintenance-batch-approval-modal
      ref='weenMaintenanceBatchApprovalModalRef'
      :taskList='selectionRows'
      @searchReset='searchReset'
    />
    <equipment-lean-out-approval-modal
      ref='equipmentLeanOutApprovalModelRef'
      @searchReset='searchReset'
    />
    <second-maintenance-approval-modal ref='secondMaintenanceApprovalModal'
                                       :selectShenpiData='selectSecondMaintenanceData'
                                       @searchReset='searchReset'></second-maintenance-approval-modal>
    <third-maintenance-approval-modal ref='thirdMaintenanceApprovalModal' :selectShenpiData='selectThirdMaintenanceData'
                                      @searchReset='searchReset'></third-maintenance-approval-modal>
    <equipment-seal-up-approval-modal ref='equipmentSealUpApprovalModelRef' @searchReset='searchReset' />
    <inbound-order-handle ref='inboundOrderApprovalModal' :selectInboundOrderData='selectInboundOrderData'
                          @searchReset='searchReset'></inbound-order-handle>
    <equipment-transfer-approval-modal ref='equipmentTransferApprovalModelRef' @searchReset='searchReset' />
    <equipment-scrap-approval-modal ref='equipmentScrapApprovalModelRef' @searchReset='searchReset' />
    <second-maintenance-approval-modal
      ref='secondMaintenanceApprovalModal'
      :selectShenpiData='selectSecondMaintenanceData'
      @searchReset='searchReset'
    ></second-maintenance-approval-modal>
    <third-maintenance-approval-modal
      ref='thirdMaintenanceApprovalModal'
      :selectShenpiData='selectThirdMaintenanceData'
      @searchReset='searchReset'
    ></third-maintenance-approval-modal>
    <equipment-seal-up-approval-modal
      ref='equipmentSealUpApprovalModelRef'
      @searchReset='searchReset'
    />
    <inbound-order-handle
      ref='inboundOrderApprovalModal'
      :selectInboundOrderData='selectInboundOrderData'
      @searchReset='searchReset'
    ></inbound-order-handle>
    <equipment-transfer-approval-modal
      ref='equipmentTransferApprovalModelRef'
      @searchReset='searchReset'
    />
    <equipment-scrap-approval-modal
      ref='equipmentScrapApprovalModelRef'
      @searchReset='searchReset'
    />
    <spare-part-apply-handle
      ref='sparePartApplyModal'
      :selectSparePartApplyData='selectSparePartApplyData'
      @searchReset='searchReset'
    ></spare-part-apply-handle>
    <guide-card-batch-handle
      ref='guideCardBatchHandle'
      :selectShenpiData='selectGuideCardData'
      @searchReset='searchReset'
    ></guide-card-batch-handle>
    <AssignEquipmentFileStreamHandle
      ref='assignEquipmentFileStreamHandle'
      :selectShenpiData='selectEquipmentSealUpData'
      @searchReset='searchReset'
    ></AssignEquipmentFileStreamHandle>
  </a-card>
</template>
@@ -153,17 +297,17 @@
import WeekMaintenanceApprovalModal from '@views/flowable/workflow/weekMaintenance/WeekMaintenanceApprovalModal'
import RepairOrderApprovalModal from '@views/flowable/workflow/repairOrder/RepairOrderApprovalModal'
import InspectionOrderHandle from '@views/flowable/workflow/InspectionOrder/InspectionOrderHandle.vue'
import { getAction } from '@api/manage'
import InspectionOrderBatchHandle from './InspectionOrder/InspectionOrderBatchHandle'
import WeekMaintenanceBatchApprovalModal from './weekMaintenance/WeekMaintenanceBatchApprovalModal'
import AssignFileStreamHandle from '@views/flowable/workflow/assignFileStream/AssignFileStreamHandle.vue'
import DispatchFileHandle from '@views/flowable/workflow/dispatchFile/DispatchFileHandle.vue'
import DispatchFileBachHandleStyle from '@views/flowable/workflow/dispatchFile/DispatchFileBachHandleStyle#Drawer.vue'
import GuideCardBatchHandle from '@views/flowable/workflow/guideCardBatch/GuideCardBatchHandle.vue'
import AssignEquipmentFileStreamHandle from '@views/flowable/workflow/assignEquipmentFileStream/AssignEquipmentFileStreamHandle.vue'
import OutBoundOrderHandle from '@views/flowable/workflow/outBoundOrder/OutBoundOrderHandle.vue'
import EquipmentLeanOutApprovalModal from '@views/flowable/workflow/leanOut/EquipmentLeanOutApprovalModal.vue'
import SecondMaintenanceApprovalModal
  from '@views/flowable/workflow/secondMaintenance/SecondMaintenanceApprovalModal.vue'
import SecondMaintenanceApprovalModal from '@views/flowable/workflow/secondMaintenance/SecondMaintenanceApprovalModal.vue'
import ThirdMaintenanceApprovalModal from '@views/flowable/workflow/thirdMaintenance/ThirdMaintenanceApprovalModal.vue'
import EquipmentSealUpApprovalModal from '@views/flowable/workflow/sealUp/EquipmentSealUpApprovalModal.vue'
import EquipmentTransferApprovalModal from '@views/flowable/workflow/transfer/EquipmentTransferApprovalModal.vue'
@@ -171,6 +315,8 @@
import stocktakingBoundHandle from '@views/flowable/workflow/stocktakingBound/stocktakingBoundHandle.vue'
import lossBoundHandle from '@views/flowable/workflow/lossBound/lossBoundHandle.vue'
import InboundOrderHandle from '@views/flowable/workflow/inboundOrder/InboundOrderHandle.vue'
import SparePartApplyHandle from '@views/flowable/workflow/sparePartApply/SparePartApplyHandle.vue'
import StandardizedProcessHandle from '@views/flowable/workflow/standardizedProcess/StandardizedProcessHandle.vue'
export default {
  name: 'NcDeviceCharactersList',
@@ -194,7 +340,11 @@
    EquipmentSealUpApprovalModal,
    InboundOrderHandle,
    EquipmentTransferApprovalModal,
    EquipmentScrapApprovalModal
    EquipmentScrapApprovalModal,
    SparePartApplyHandle,
    StandardizedProcessHandle,
    GuideCardBatchHandle,
    AssignEquipmentFileStreamHandle
  },
  data() {
    return {
@@ -207,14 +357,15 @@
          key: 'rowIndex',
          width: 60,
          align: 'center',
          customRender: function(t, r, index) {
          customRender: function (t, r, index) {
            return parseInt(index) + 1
          }
        },
        {
          title: '流程分类',
          align: 'center',
          dataIndex: 'category_dictText'
          dataIndex: 'category_dictText',
          width: 100
        },
        {
          title: '流程名称',
@@ -280,6 +431,10 @@
      selectLossBoundOrderData: {},
      selectStocktakingBoundOrderData: {},
      selectInboundOrderData: {},
      selectSparePartApplyData: {},
      selectGuideCardData:{},
      selectEquipmentAssignProductData:{},
      selectEquipmentSealUpData:{},
      //业务信息ID
      dataId: undefined
    }
@@ -287,7 +442,7 @@
  created() {
  },
  computed: {
    importExcelUrl: function() {
    importExcelUrl: function () {
      return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`
    },
    getTableColumnsTotalWidth() {
@@ -342,6 +497,9 @@
        case 'ggApproval':
          this.handDispatchFileDetial(item)
          break
        case 'standardized_approval':
          this.handStandardizedDetial(item)
          break
        case 'sbdjApproval':
          this.handInspectionOrder(item)
          break
@@ -380,6 +538,15 @@
          break
        case 'equipment_scrap':
          this.handleEquipmentScrap(item)
          break
        case 'spare_part_apply':
          this.handleSparePartApplyApproval(item)
          break
        case 'programConfirmApproval':
          this.handleGuideCardApproval(item)
          break
        case 'equipmentAssignProductApproval':
          this.handleEquipmentAssignProductApproval(item)
          break
        default:
          alert('没找到该流程')
@@ -433,6 +600,12 @@
      this.selectDispatchFileXqData = item
      this.$refs.modalFormDispatchFileXq.clearTableSource()
      this.$refs.modalFormDispatchFileXq.getAllApproveData(item)
    },
    //定型审批页面
    handStandardizedDetial(item){
      this.selectDispatchFileXqData = item
      this.$refs.StandardizedProcessHandle.clearTableSource()
      this.$refs.StandardizedProcessHandle.getAllApproveData(item)
    },
    handInspectionOrder(record) {
@@ -536,6 +709,28 @@
      this.$refs.equipmentScrapApprovalModelRef.title = item.name
      this.$refs.equipmentScrapApprovalModelRef.handleDetail(item)
      this.$refs.equipmentScrapApprovalModelRef.disableSubmit = false
    },
    handleSparePartApplyApproval(item) {
      if (item && item.dataId) {
        this.selectSparePartApplyData = Object.assign({}, item)
        this.$refs.sparePartApplyModal.auditVisible = true
        this.$refs.sparePartApplyModal.clearTableSource()
        this.$refs.sparePartApplyModal.getAllApproveData(item)
      }
    },
    //DNC-程序确认表流程
    handleGuideCardApproval(item) {
      console.log('item----->', item)
      this.selectGuideCardData = item
      this.$refs.guideCardBatchHandle.clearTableSource()
      this.$refs.guideCardBatchHandle.getAllApproveData(item)
    },
    //DNC-设备结构树指派产品结构树
    handleEquipmentAssignProductApproval(item){
      console.log('item----->', item)
      this.selectEquipmentSealUpData = item
      this.$refs.assignEquipmentFileStreamHandle.clearTableSource()
      this.$refs.assignEquipmentFileStreamHandle.getAllApproveData(item)
    }
  }
}