瀏覽代碼

采购询价单-bug修改

jingbb 4 月之前
父節點
當前提交
98927c6858

+ 0 - 14
src/views/purchase/purchaseInquiryForm/components/BaseProjectArchive.api.ts

@@ -1,14 +0,0 @@
-import {defHttp} from '/@/utils/http/axios';
-import { useMessage } from "/@/hooks/web/useMessage";
-
-const { createConfirm } = useMessage();
-
-enum Api {
-  list = '/baseCode/baseProjectArchive/list'
-}
-/**
- * 列表接口
- * @param params
- */
-export const list = (params) =>
-  defHttp.get({url: Api.list, params});

+ 0 - 84
src/views/purchase/purchaseInquiryForm/components/BaseProjectArchive.data.ts

@@ -1,84 +0,0 @@
-import {BasicColumn} from '/@/components/Table';
-import {FormSchema} from '/@/components/Table';
-import { rules} from '/@/utils/helper/validator';
-import { render } from '/@/utils/common/renderUtils';
-import { getWeekMonthQuarterYear } from '/@/utils';
-//列表数据
-export const columns: BasicColumn[] = [
-  {
-    title: '编码(code)',
-    align:"center",
-    dataIndex: 'code'
-   },
-   {
-    title: '名称(name)',
-    align:"center",
-    dataIndex: 'name'
-   },
-  
-   {
-    title: '客户(customer)',
-    align:"center",
-    dataIndex: 'customerId_dictText'
-   },
-   {
-    title: '备注(notes)',
-    align:"center",
-    dataIndex: 'notes'
-   },
-   {
-    title: '创建时间(create time)',
-    align:"center",
-    dataIndex: 'createTime'
-   },
-   {
-    title: '创建人(create by)',
-    align:"center",
-    dataIndex: 'createBy'
-   },
-];
-//查询数据
-export const searchFormSchema: FormSchema[] = [
-	  {
-      label: "编码(code)",
-      field: 'code',
-      component: 'Input',
-      componentProps:{
-      },
-      //colProps: {span: 6},
- 	  },
-   {
-      label: "名称(name)",
-      field: 'name',
-      component: 'Input',
-        //colProps: {span: 6},
-    },
-    {
-      label: "客户(customer)",
-      field: 'customerId',
-      component: 'JDictSelectTag',
-      componentProps:{
-          dictCode: 'customer',
-      },
-      //colProps: {span: 6},
- 	  },
-     {
-      label: "创建时间(create time)",
-      field: "createTime",
-      component: 'RangePicker',
-      labelWidth: 150,
-      componentProps: {
-          valueType: 'Date',
-          showTime:true
-      },
-      //colProps: {span: 6},
-	},
-	{
-    label: "创建人(create by)",
-    field: 'createBy',
-    component: 'Input',
-    labelWidth: 120,
-    //colProps: {span: 6},
-   },
-	
-];

+ 0 - 107
src/views/purchase/purchaseInquiryForm/components/BaseShipArchiveAccessoriesModal.vue

@@ -1,107 +0,0 @@
-<template>
-  <div ref="accessoriesDetailsRef">
-      <a-modal
-            title="配件明细(accessories details)"
-            width="70%"
-            :visible="visible"
-            :maskClosable="false"
-            :getContainer ='()=>$refs.accessoriesDetailsRef'
-            switchFullscreen
-            @cancel="handleCancel">
-              <div>
-                <a-table
-                      :columns="columns"
-                      :row-key="record => record.id"
-                      :data-source="dataSource"
-                      bordered
-                      size="small"
-                      height="500"
-                      :pagination="false"
-                      :scroll="{ x: 1000, y: 500 }"
-                  > 
-                      <template #attachs="{ text, record,index }">
-                          <a :href="baseUrl+record.attachs">{{record.attachs}}</a>
-                      </template>
-                  </a-table>
-              </div>
-        </a-modal>
-  </div>
-</template>
-
-<script lang="ts" setup>
-    import {ref, computed, unref,reactive} from 'vue';
-    import { useGlobSetting } from '/@/hooks/setting';
-    import {defHttp} from '/@/utils/http/axios';
-    const { domainUrl } = useGlobSetting();
-    var visible = ref(false);
-    var columns = ref([
-          {
-          title: '配件类型(accessory type)',
-          align:"center",
-          dataIndex: 'accessoryType',
-          key: 'accessoryType'
-        },
-        {
-          title: '规格(specifications)',
-          align:"center",
-          dataIndex: 'specifications',
-          key: 'specifications'
-        },
-        {
-          title: '型号(model)',
-          align:"center",
-          dataIndex: 'model',
-          key: 'model'
-        },
-        {
-          title: '序列号(serial number)',
-          align:"center",
-          dataIndex: 'serialNumber',
-          key: 'serialNumber'
-        },
-        {
-          title: '备注(notes)',
-          align:"center",
-          dataIndex: 'notes',
-          key: 'notes'
-        },
-        {
-          title: '附件(attachs)',
-          align:"center",
-          dataIndex: 'attachs',
-          key: 'attachs',
-          slots: { customRender: 'attachs' },
-        },
-    ])
-    var dataSource=ref([])
-    const baseUrl = domainUrl + '/sys/common/static/';
-    function getTable(record){
-        visible.value = true
-        let params={headId:record.id}
-        defHttp.get({url:"/baseCode/baseShipArchiveAccessories/list",params}).then(res=>{
-        if(res){
-          dataSource.value = res.records
-        }
-    })
-    }
-    function handleCancel(){
-      visible.value = false;
-    }
-    defineExpose({
-      getTable
-    });
-  </script>
-
-<style lang="less" scoped>
-	/** 时间和数字输入框样式 */
-  :deep(.ant-input-number) {
-    width: 100%;
-  }
-
-  :deep(.ant-calendar-picker) {
-    width: 100%;
-  }
-  /deep/.ant-modal-body{
-    padding: 14px !important;
-  }
-</style>

+ 39 - 16
src/views/purchase/purchaseInquiryForm/components/PurchaseInquiryFormForm.vue

@@ -17,7 +17,7 @@
 						
 						<a-col :span="12">
 							<a-form-item label="询价项目(inquiry project)" v-bind="validateInfos.projectName" id="PuechaseInquiryFormForm-projectName" name="projectName">
-								<a-input-search v-model:value="formData.projectName" placeholder="请输入询价项目(inquiry project)" :disabled="PuechaseInquiryFormProductTable.dataSource.length!==0"  allow-clear enter-button="Search" @search="onSearchProject"></a-input-search>
+								<a-input-search v-model:value="formData.projectName" placeholder="请输入询价项目(inquiry project)" :disabled="notAllowEdit"  allow-clear enter-button="Search" @search="onSearchProject"></a-input-search>
 							</a-form-item>
 						</a-col>
 						<a-col :span="12">
@@ -141,7 +141,7 @@
           </j-vxe-table>
       </a-tab-pane>
     </a-tabs>
-    <BaseShipArchiveAccessoriesList ref="BaseShipArchiveAccessoriesListRef"></BaseShipArchiveAccessoriesList>
+    <BaseShipArchiveAccessoriesModal ref="BaseShipArchiveAccessoriesListRef"></BaseShipArchiveAccessoriesModal>
     <SelectPrpductModal ref="SelectPrpductModalRef" @selectProduct="addProduct"></SelectPrpductModal>
     <SelectProjectModal ref="SelectProjectModalRef" @selectProject="addProject"></SelectProjectModal>
     <SelectCustomerInquiryModal ref="SelectCustomerInquiryModalRef" @selectCustomerInquiry="addProductFromCustomer"></SelectCustomerInquiryModal>
@@ -155,15 +155,15 @@
   import { queryQurcodeInquiryFormShipListByMainId, queryPurcodeInquiryFormProductListByMainId, queryDataById, saveOrUpdate } from '../purchaseInquiryForm.api';
   import { JVxeTable } from '/@/components/jeecg/JVxeTable';
   import {PuechaseInquiryFormShipColumns, PuechaseInquiryFormProductColumns} from '../PurchaseInquiryForm.data';
-  import BaseShipArchiveAccessoriesList from './BaseShipArchiveAccessoriesModal.vue';
-  import SelectPrpductModal from './SelectPrpductModal.vue';
-  import SelectProjectModal from './SelectProjectModal.vue';
+  import BaseShipArchiveAccessoriesModal from '../../../publicComponents/BaseShipArchiveAccessoriesModal.vue';
+  import SelectPrpductModal from '../../../publicComponents/SelectPrpductModal.vue';
+  import SelectProjectModal from '../../../publicComponents/SelectProjectModal.vue';
   import SelectCustomerInquiryModal from './SelectCustomerInquiryModal.vue';
   import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
   import JUpload from '/@/components/Form/src/jeecg/components/JUpload/JUpload.vue';
   import { JDictSelectTag} from '/@/components/Form';
   import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
-  import { Form } from 'ant-design-vue';
+  import { Form ,message} from 'ant-design-vue';
   import moment from 'moment';
   const useForm = Form.useForm;
   export default defineComponent({
@@ -171,7 +171,7 @@
     components:{
       JVxeTable,
 			JFormContainer,
-      BaseShipArchiveAccessoriesList,
+      BaseShipArchiveAccessoriesModal,
       SelectPrpductModal,
       JUpload,
       SelectProjectModal,
@@ -209,6 +209,7 @@
       });
       var BaseShipArchiveAccessoriesListRef = ref();
       const activeKey = ref('PuechaseInquiryFormShip');
+      var notAllowEdit = ref(false);
       var supplierOption = ref([]);
       const formData = reactive<Record<string, any>>({
         id: '',
@@ -289,6 +290,7 @@
         getSupplierOption()
         inquiryPeriod.value[0]=formData.inquiryPeriodBegin?moment(formData.inquiryPeriodBegin):''
         inquiryPeriod.value[1]=formData.inquiryPeriodEnd?moment(formData.inquiryPeriodEnd):''
+        notAllowEdit.value=true
       }
 
       async function queryMainData(id) {
@@ -326,14 +328,18 @@
       }
 
       async function submitForm() {
-        const mainData = await getFormData();
-        const subData = await getSubFormAndTableData();
-        const values = Object.assign({}, dbData, mainData, subData);
-        console.log('表单提交数据', values)
-        const isUpdate = values.id ? true : false
-        await saveOrUpdate(values, isUpdate);
-        //关闭弹窗
-        emit('success');
+        if(formData.sourceCode==''){
+          message.warning('请选择客户询价单')
+        }else{
+          const mainData = await getFormData();
+          const subData = await getSubFormAndTableData();
+          const values = Object.assign({}, dbData, mainData, subData);
+          console.log('表单提交数据', values)
+          const isUpdate = values.id ? true : false
+          await saveOrUpdate(values, isUpdate);
+          //关闭弹窗
+          emit('success');
+        }
       }
       
       function setFieldsValue(values) {
@@ -361,6 +367,21 @@
         var newArray = [...PuechaseInquiryFormProductTable.dataSource]
         newArray.splice(prop.rowIndex, 1)
         PuechaseInquiryFormProductTable.dataSource = newArray  
+        if( PuechaseInquiryFormProductTable.dataSource.length!==0){
+          var arr = []
+          PuechaseInquiryFormProductTable.dataSource.map(item=>{
+            if(item.sourceId){
+              arr.push(item.sourceId)
+            } 
+          })
+          if(arr.length==0){
+            formData.sourceCode = ''
+            notAllowEdit.value=false
+          }
+        }else{
+           notAllowEdit.value=false
+           formData.sourceCode = ''
+        }
       }
       function addShip(data){
         var arr = data.concat(PuechaseInquiryFormShipTable.dataSource)
@@ -407,6 +428,7 @@
           item.model = item.childModel
           item.deliveryTime = formData.deliveryTime
         })
+        notAllowEdit.value=true
         PuechaseInquiryFormProductTable.dataSource=arrProduct     
         formData.inquiryProject = data[0].inquiryProject
         formData.projectName = data[0].projectName
@@ -543,7 +565,8 @@
         SelectCustomerInquiry,
         addProductFromCustomer,
         changeFormDeliveryTime,
-        changeSupplier
+        changeSupplier,
+        notAllowEdit
       }
     }
   });

+ 42 - 15
src/views/purchase/purchaseInquiryForm/components/SelectCustomerInquiryModal.vue

@@ -19,27 +19,27 @@
                     </a-col>
                     <a-col :md="6" :sm="8">
                         <a-form-item label="单据日期(bill date)">
-                            <a-range-picker value-format="YYYY-MM-DD"  v-model:value="queryParams.billDate" class="query-group-cust"/>
+                            <a-range-picker value-format="YYYY-MM-DD"  v-model:value="billDate"  @change="changeBillDate" class="query-group-cust"/>
                         </a-form-item>
                     </a-col>
                     <a-col :md="6" :sm="8">
                         <a-form-item label="询价项目(inquiry project)">
-                            <a-input placeholder="请输入" v-model:value="queryParams.inquiryProject" :disabled="fatherProjectName!==''"></a-input>
+                            <a-input placeholder="请输入" v-model:value="queryParams.projectName" :disabled="fatherProjectName!==''"></a-input>
                         </a-form-item>
                     </a-col>
                     <template v-if="toggleSearchStatus">
-                        <a-col :md="6" :sm="8">
+                        <!-- <a-col :md="6" :sm="8">
                             <a-form-item  label="业务类型(busyness type)">
                                 <JDictSelectTag v-model:value="queryParams.busynessType" placeholder="请选择" dictCode="busyness_type"/>
                             </a-form-item>
-                        </a-col>
+                        </a-col> -->
                         <a-col :md="6" :sm="8">
                             <a-form-item label="优先级(priority)">
                                 <JDictSelectTag v-model:value="queryParams.priority" placeholder="请选择" dictCode="priority"/>
                             </a-form-item>
                         </a-col>
                         <a-col :md="6" :sm="8">
-                            <a-form-item label="产品分类(production class)" >
+                            <a-form-item label="产品分类(product class)" >
                                 <JSelectInput   v-model:value="queryParams.productionClass"  placeholder="请选择" :options="classOption" ></JSelectInput>
                             </a-form-item>
                         </a-col>
@@ -138,7 +138,8 @@
             title: '询价客户(inquiry customer)',
             key: 'inquiryCustomer',
             dataIndex: 'inquiryCustomer_dictText',
-            align:"center"
+            align:"center",
+            ellipsis: true,
         },
         {
             title: '询价有效期(inquiry period)',
@@ -258,9 +259,9 @@
     var fatherProjectName = ref('');
     var fatherSourceCode = ref('');
     const toggleSearchStatus = ref(false);
+    var billDate = ref([])
     const queryParams = ref({
         billCode:'',
-        billDate:'',
         inquiryProject:'',
         busynessType:'',
         priority:'',
@@ -268,7 +269,9 @@
         model:'',
         productCode:'',
         inquiryTeam:'',
-        projectName:''
+        projectName:'',
+        billDate_begin:'',
+        billDate_end:'',
     });
     let pagination = ref({
       current: 1,
@@ -306,7 +309,7 @@
         if(fatherProjectName.value&&fatherProjectName.value!==''){
             params.projectName = fatherProjectName.value
         }else{
-            params.projectName = ''
+            params.projectName = params.projectName
         }
         return filterObj(params);
     }
@@ -339,9 +342,9 @@
         loadData();
     }
     function searchReset(){
+        billDate.value = []
         queryParams.value = {
             billCode:'',
-            billDate:'',
             inquiryProject:'',
             busynessType:'',
             priority:'',
@@ -349,14 +352,12 @@
             model:'',
             productCode:'',
             inquiryTeam:'',
+            projectName:'',
+            billDate_begin:'',
+            billDate_end:'',
         }
         pagination.value.current =1;
         pagination.value.pageSize = 10; 
-        if(fatherProjectName.value&&fatherProjectName.value!==''){
-            queryParams.value.projectName = fatherProjectName.value
-        }else{
-            queryParams.value.projectName = ''
-        }
         loadData();
     }
     function handleToggleSearch(){
@@ -383,6 +384,20 @@
     }
     function handleCancel(){
       visible.value = false
+      billDate.value = []
+      queryParams.value = {
+            billCode:'',
+            inquiryProject:'',
+            busynessType:'',
+            priority:'',
+            productionClass:'',
+            model:'',
+            productCode:'',
+            inquiryTeam:'',
+            projectName:'',
+            billDate_begin:'',
+            billDate_end:'',
+        }
       selectedRowKeys.value = []
       selectedRows.value=[]
     }
@@ -401,6 +416,18 @@
         loadData()
         getOptiom()
     }
+    function changeBillDate(prop){
+       if(prop){
+            billDate.value = prop
+            queryParams.value.billDate_begin = prop[0]
+            queryParams.value.billDate_end = prop[1]
+       }else{
+            billDate.value = []
+            queryParams.value.billDate_begin = ''
+            queryParams.value.billDate_end = ''
+       }
+       
+    }
     defineExpose({
       getTable
     });

+ 0 - 84
src/views/purchase/purchaseInquiryForm/components/SelectProjectModal.vue

@@ -1,84 +0,0 @@
-<template>
-    <a-modal
-      title="选择项目(select project)"
-      width="95%"
-      :visible="visible"
-      :maskClosable="false"
-      switchFullscreen
-      @ok = "handleOk"
-      @cancel="handleCancel">
-      <div>
-            <!--引用表格-->
-        <BasicTable @register="registerTable" :rowSelection="rowSelection"></BasicTable>
-        </div>
-      </a-modal>
-</template>
-<script lang="ts" name="baseCode-baseShipArchive" setup>
-  import {ref, reactive } from 'vue';
-  import {BasicTable, useTable, TableAction} from '/@/components/Table';
-  import { useListPage } from '/@/hooks/system/useListPage'
-  import {columns, searchFormSchema} from './BaseProjectArchive.data';
-  import {list} from './BaseProjectArchive.api';
-  import { message } from 'ant-design-vue';
-
-  const queryParam = reactive<any>({});
-  var visible = ref(false);
-  const emit = defineEmits([ 'selectProject']); //定义emit
-  //注册table数据
-  const { tableContext} = useListPage({
-      tableProps:{
-           api:list,
-           columns,
-           canResize:false,
-           formConfig: {
-              schemas: searchFormSchema,
-              autoSubmitOnEnter:true,
-              showAdvancedButton:true,
-              fieldMapToNumber: [
-              ],
-              fieldMapToTime: [
-                 ['shipDate', ['shipDate_begin', 'shipDate_end'], 'YYYY-MM-DD HH:mm:ss'],
-              ],
-            },
-           showTableSetting:false,
-           showActionColumn:false,
-           actionColumn: {
-               width: 200,
-               fixed:'right'
-            },
-            beforeFetch: (params) => {
-              return Object.assign(params, queryParam);
-            },
-      }
-  })
-
-  const [registerTable, {reload},{ rowSelection, selectedRowKeys }] = tableContext
-  
-  function handleCancel() {
-    visible.value = false;
-    selectedRowKeys.value = []
-    emit('selectProject',rowSelection.selectedRows)
-  }
-  function handleOk() {
-    if(selectedRowKeys.value.length!==1){
-      message.warning('请选择一条数据数据')
-    }else{
-        emit('selectProject',rowSelection.selectedRows)
-        handleCancel()
-     }  
-    }
-   function getTable(){
-    visible.value = true
-   }
-   defineExpose({
-    getTable
-  });
-
-
-</script>
-
-<style lang="less" scoped>
-  :deep(.ant-picker),:deep(.ant-input-number){
-    width: 100%;
-  }
-</style>

+ 0 - 341
src/views/purchase/purchaseInquiryForm/components/SelectPrpductModal.vue

@@ -1,341 +0,0 @@
-<template>
-    <a-modal
-      title="选择产品(select product)"
-      width="95%"
-      :visible="visible"
-      :maskClosable="false"
-      switchFullscreen
-      @ok = "handleOk"
-      @cancel="handleCancel">
-        <div>
-          <a-card  :body-style="{ padding: '10px' }" :bordered="false" style="margin: 10px;">
-            <div class="table-page-search-wrapper">
-                <a-form :model="queryParams" :label-col="labelCol" :wrapper-col="wrapperCol" @keyup.enter.native="searchQuery">
-                <a-row :gutter="24">
-                    <a-col :md="6" :sm="8">
-                        <a-form-item label="分类(class)">
-                            <!-- <a-input placeholder="请输入" v-model:value="queryParams.classId"></a-input> -->
-                            <JSelectInput   v-model:value="queryParams.classId"  placeholder="请选择" :options="classOption" ></JSelectInput>
-                        </a-form-item>
-                    </a-col>
-                    <a-col :md="6" :sm="8">
-                        <a-form-item label="编码(code)">
-                            <a-input placeholder="请输入" v-model:value="queryParams.code"></a-input>
-                        </a-form-item>
-                    </a-col>
-                    <a-col :md="6" :sm="8">
-                        <a-form-item label="中文名(Chinese name)">
-                            <a-input placeholder="请输入" v-model:value="queryParams.chineseName"></a-input>
-                        </a-form-item>
-                    </a-col>
-                    <template v-if="toggleSearchStatus">
-                        <a-col :md="6" :sm="8">
-                            <a-form-item label="虚拟产品(virtual product)" :label-col="labelCol1" :wrapper-col="wrapperCol1">
-                                <JDictSelectTag v-model:value="queryParams.virtualProduct" placeholder="请选择" dictCode="yes_or_no"/>
-                            </a-form-item>
-                        </a-col>
-                        <a-col :md="6" :sm="8">
-                            <a-form-item label="英文名(English name)">
-                                <a-input placeholder="请输入" v-model:value="queryParams.englishName"></a-input>
-                            </a-form-item>
-                        </a-col>
-                        <!-- <a-col :md="6" :sm="8">
-                            <a-form-item label="规格(specifications)">
-                                <a-input placeholder="请输入" v-model:value="queryParams.specifications"></a-input>
-                            </a-form-item>
-                        </a-col> -->
-                        <a-col :md="6" :sm="8">
-                            <a-form-item label="型号(model)">
-                                <a-input placeholder="请输入" v-model:value="queryParams.model"></a-input>
-                            </a-form-item>
-                        </a-col>
-                        
-                        <a-col :md="6" :sm="8">
-                            <a-form-item label="有害物质(harmful substances)" :label-col="labelCol1" :wrapper-col="wrapperCol1">
-                                <JDictSelectTag v-model:value="queryParams.harmfulSubstances" placeholder="请选择" dictCode="yes_or_no"/>
-                            </a-form-item>
-                        </a-col>
-                    </template>
-                    <a-col :md="6" :sm="8">
-                        <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
-                            <a-button type="primary" @click="searchQuery" >查询(search)</a-button>
-                            <a-button type="primary" @click="searchReset"  style="margin-left: 8px">重置(reset)</a-button>
-                            <a @click="handleToggleSearch" style="margin-left: 8px">
-                            {{ toggleSearchStatus ? '收起' : '展开' }}
-                            <a-icon :type="toggleSearchStatus ? 'up' : 'down'" />
-                            </a>
-                        </span>
-                    </a-col>
-                </a-row>
-            </a-form>
-           </div>
-        </a-card>
-
-        <a-card  :body-style="{ padding: '10px' }" :bordered="false" style="margin: 10px;">
-            <a-alert type="info" show-icon class="alert" style="margin-bottom: 8px">
-            <template #message>
-                <template v-if="selectedRowKeys.length > 0">
-                <span>已选中 {{ selectedRowKeys.length }} 条记录</span>
-                <a-divider type="vertical" />
-                <a @click="selectedRowKeys = []">清空</a>
-                </template>
-                <template v-else>
-                <span>未选中任何数据</span>
-                </template>
-            </template>
-            </a-alert>
-            <a-table
-                :columns="columns"
-                :row-key="record => record.id"
-                :data-source="dataSource"
-                bordered
-                size="small"
-                @change="handleTableChange"
-                :pagination="pagination"
-                :scroll="{ x: 2500, y: 300 }"
-                :rowSelection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
-            >
-            </a-table>
-        </a-card>
-      </div>
-    </a-modal>
-</template>
-<script lang="ts" setup>
-    import {ref, reactive } from 'vue';
-    import { defHttp } from '/@/utils/http/axios';
-    import { message } from 'ant-design-vue';
-    import { filterObj, getFileAccessHttpUrl } from '/@/utils/common/compUtils';
-    import { JDictSelectTag} from '/@/components/Form';
-    import JSelectInput from '/@/components/Form/src/jeecg/components/JSelectInput.vue';
-    const emit = defineEmits([ 'selectProduct']); //定义emit
-    let classOption = ref([])
-    var visible = ref(false)
-    const columns = [
-        {
-            title: '分类(class)',
-            dataIndex: 'classId_dictText',
-            key: 'classId_dictText',
-            align:"center"
-        },
-        {
-            title: '编码(code)',
-            dataIndex: 'code',
-            key: 'code',
-            align:"center"
-        },
-        {
-            title: '中文名(Chinese name)',
-            dataIndex: 'chineseName',
-            key: 'chineseName',
-            align:"center",
-            width:200
-        },
-        {
-            title: '英文名(English name)',
-            key: 'englishName',
-            dataIndex: 'englishName',
-            align:"center"
-        },
-        // {
-        //     title: '规格(specifications)',
-        //     key: 'specifications',
-        //     dataIndex: 'specifications',
-        //     align:"center"
-        // },
-        {
-            title: '型号(model)',
-            key: 'model',
-            dataIndex: 'model',
-            align:"center"
-        },
-        {
-            title: '计量单位(measurement unit)',
-            key: 'measurementUnit',
-            dataIndex: 'measurementUnit',
-            align:"center",
-            width:250
-        },
-        {
-            title: '虚拟产品(virtual product)',
-            key: 'virtualProduct',
-            dataIndex: 'virtualProduct',
-            align:"center",
-            customRender:function (t, r, index) {
-              if(t.text==1){
-                return '是(yes)'
-              }else if(t.text==0){
-                return '否(no)'
-              }else{
-                return ''
-              } 
-            }
-        },
-        {
-            title: '有害物质(harmful substances)',
-            key: 'harmfulSubstances',
-            dataIndex: 'harmfulSubstances',
-            align:"center",
-            width:250,
-            customRender:function (t, r, index) {
-              if(t.text==1){
-                return '是(yes)'
-              }else if(t.text==0){
-                return '否(no)'
-              }else{
-                return ''
-              } 
-            }
-        },
-    ];
-    const labelCol = ref({
-    xs: { span: 24 },
-    sm: { span: 9 },
-    });
-    const wrapperCol = ref({
-        xs: { span: 24 },
-        sm: { span: 15 },
-    });
-    const labelCol1 = ref({
-    xs: { span: 24 },
-    sm: { span: 12 },
-    });
-    const wrapperCol1 = ref({
-        xs: { span: 24 },
-        sm: { span: 12 },
-    });
-    const dataSource =ref([]);
-    let selectedRowKeys = ref([]);
-    let selectedRows = ref([]);
-    const toggleSearchStatus = ref(false);
-    const queryParams = ref({
-        classId:'',
-        code:'',
-        chineseName:'',
-        englishName:'',
-        specifications:'',
-        model:'',
-        chineseAlias:'',
-        englishAlias:'',
-        status:'',
-        virtualProduct:'',
-        harmfulSubstances:'',
-    });
-    let pagination = ref({
-      current: 1,
-      pageSize: 10,
-      total: '', // 假设总共有100条数据
-      showSizeChanger: true,
-      showQuickJumper: true,
-      showTotal: (total, range) => {
-          return range[0] + "-" + range[1] + " 共" + total + "条"
-      },
-      size:'small'
-    });
-    function loadData(){
-        let params = getQueryParams();
-        defHttp
-        .get({ url: '/baseCode/baseProductArchive/list',params}, { isTransformResponse: false })
-        .then((res) => {
-            if (res.success) {
-                dataSource.value = res.result.records;
-                pagination.value.total = res.result.total;
-                pagination.value.current = res.result.current;
-                pagination.value.pageSize = res.result.size;                
-            } else {
-                message.error(res.message);
-            }
-        })
-        .finally(() => {
-            // loading.value = false;
-        });
-    }
-    function getQueryParams(){
-        let params = Object.assign(queryParams.value);
-        params.pageNo = pagination.value.current;
-        params.pageSize = pagination.value.pageSize;
-        return filterObj(params);
-    }
-    function handleTableChange(paginations, filters, sorter){
-        pagination.value.total = paginations.total;
-        pagination.value.current = paginations.current;
-        pagination.value.pageSize = paginations.pageSize;
-        loadData()
-    };
-    function getOptiom(){
-    defHttp
-        .get({ url: 'baseCode/baseProductClass/list'}, { isTransformResponse: false })
-        .then((res) => {
-            if (res.success) {
-              classOption.value = []
-              res.result.records.forEach(element => {
-                  var obj = {
-                    label: element.name?element.name:'无名称请维护',
-                    value: element.id?element.id:''
-                  };
-                  classOption.value.push( obj)
-              });    
-            }
-        })
-        .finally(() => {
-            // loading.value = false;
-        });
-  }
-    function searchQuery(){
-        loadData();
-    }
-    function searchReset(){
-        queryParams.value = {
-            classId:'',
-            code:'',
-            chineseName:'',
-            englishName:'',
-            specifications:'',
-            model:'',
-            chineseAlias:'',
-            englishAlias:'',
-            status:'',
-            virtualProduct:'',
-            harmfulSubstances:'',
-        }
-        pagination.value.current =1;
-        pagination.value.pageSize = 10; 
-        loadData();
-    }
-    function handleToggleSearch(){
-        toggleSearchStatus.value = !toggleSearchStatus.value;
-    }
-    function onSelectChange(keys,rows){
-        selectedRowKeys.value = keys
-        selectedRows.value = rows
-    }
-    function handleOk(){
-      if(selectedRowKeys.value.length==0){
-        message.error('请勾选数据');
-      }else{
-        emit('selectProduct', selectedRows.value)
-        handleCancel()
-      }
-    }
-    function handleCancel(){
-      visible.value = false
-      selectedRowKeys.value = []
-      selectedRows.value=[]
-    }
-    function getTable(){
-        visible.value = true
-        loadData()
-        getOptiom()
-    }
-    defineExpose({
-      getTable
-    });
-</script>
-<style scoped lang="less">
-/deep/.ant-form-item{
-    margin-bottom: 8px !important;
-}
-// /deep/.ant-table-wrapper .ant-table-thead > tr > th, .ant-table-wrapper .ant-table-thead > tr > td{
-//     padding: 8px !important;
-// }
-
-</style>