干燥机配套车间生产管理系统/云平台前端
baoshiwei
2024-10-25 6fcb00f27e80b38cea4ccb059112ad7cf99d8745
src/views/dry/DryOrderList.vue
@@ -5,6 +5,7 @@
         <!--插槽:table标题-->
         <template #tableTitle>
            <a-button type="primary" @click="handleAdd" preIcon="ant-design:plus-outlined"> 新增</a-button>
        <a-button type="primary" @click="handleSend" preIcon="ant-design:vertical-align-bottom-outlined"> 下发</a-button>
            <a-button type="primary" preIcon="ant-design:export-outlined" @click="onExportXls"> 导出</a-button>
            <j-upload-button type="primary" preIcon="ant-design:import-outlined" @click="onImportXls">导入</j-upload-button>
            <a-dropdown v-if="selectedRowKeys.length > 0">
@@ -41,23 +42,27 @@
      </BasicTable>
      <!-- 表单区域 -->
      <DryOrderModal @register="registerModal" @success="handleSuccess" />
      <TrendModal @register="registerTrendModal" />
   </div>
</template>
<script lang="ts" name="dry-dryOrder" setup>
   import { ref } from 'vue'
   import { batchDelete, deleteOne, getExportUrl, getImportUrl, list } from './api/DryOrder.api'
   import DryOrderModal from './components/DryOrderModal.vue'
   import { batchDelete, deleteOne, getExportUrl, getImportUrl, list,batchSend } from './api/DryOrder.api'
   import DryOrderModal from './components/dryOrder/DryOrderModal.vue'
   import TrendModal from './components/dryOrder/TrendModal.vue'
   import { columns, searchFormSchema } from './dataDefine/DryOrder.data'
   import { useModal } from '/@/components/Modal'
   import { BasicTable, TableAction } from '/@/components/Table'
   import { useListPage } from '/@/hooks/system/useListPage'
   import { downloadFile } from '/@/utils/common/renderUtils'
   import { router } from '/@/router'
  import {message} from "ant-design-vue";
   const checkedKeys = ref<Array<string | number>>([])
   //注册model
   const [registerModal, { openModal }] = useModal()
   const [registerTrendModal, { openModal:openTrendModal }] = useModal()
   //注册table数据
   const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
      tableProps: {
@@ -88,7 +93,7 @@
      },
   })
   const [registerTable, { reload }, { rowSelection, selectedRowKeys }] = tableContext
   const [registerTable, { reload }, { rowSelection,selectedRows, selectedRowKeys }] = tableContext
   /**
    * 新增事件
@@ -99,7 +104,27 @@
         showFooter: true,
      })
   }
   /**
  /**
   * 下发工单
   */
  const handleSend = async () => {
    // 只有新建状态的工单才允许下发,根据勾选的记录id列表,遍历selectedRows,判断是不是新建工单,包含非新建工单进行提示
    if (selectedRowKeys.value.length > 0) {
      const newOrderList = selectedRows.value.filter(row => {
        return row.orderStatus > 0
      })
      if (newOrderList.length > 0) {
        message.warning('请选择新建状态的工单')
        return
      }else {
        await batchSend({ ids: selectedRowKeys.value }, handleSuccess)
      }
    }
  }
  /**
    * 编辑事件
    */
   function handleEdit(record: Recordable) {
@@ -142,10 +167,7 @@
    */
   function getTableAction(record) {
      return [
         {
            label: '操作记录',
            onClick: openReport.bind(null, record),
         },
         {
            label: '过程趋势',
            onClick: openProcessTendency.bind(null, record),
@@ -157,6 +179,10 @@
    */
   function getDropDownAction(record) {
      return [
         {
            label: '操作记录',
            onClick: openReport.bind(null, record),
         },
         {
            label: '编辑',
            onClick: handleEdit.bind(null, record),
@@ -189,6 +215,11 @@
   /** 打开过程趋势走势图窗口 */
   function openProcessTendency(record: Recordable) {
      console.log(`output->record`, record)
      openTrendModal(true, {
         record,
         isUpdate: true,
         showFooter: false,
      })
   }
</script>