NNowhZzU
2024-01-02 7a2d8e315a666655616644bf015cb8297f5f8b17
Merge remote-tracking branch 'origin/master'
3个文件已添加
6个文件已修改
1个文件已删除
865 ■■■■ 已修改文件
north-glass-erp/northglass-erp/src/router/index.js 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/CreateProductStock.vue 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedGoodsIssue.vue 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductRework.vue 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocation.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocationUpdate.vue 40 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ReworkRecord.vue 231 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/TakeOutRecord.vue 223 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/TransferRecord.vue 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/router/index.js
@@ -571,6 +571,24 @@
              name: 'finishedProductRework',
              component:()=>import('../views/mm/mainProductStock/FinishedProductRework.vue'),
            },
            {
              // 调拨记录
              path: 'transferRecord',
              name: 'transferRecord',
              component:()=>import('../views/mm/mainProductStock/TransferRecord.vue'),
            },
            {
              // 领出记录
              path: 'takeOutRecord',
              name: 'takeOutRecord',
              component:()=>import('../views/mm/mainProductStock/TakeOutRecord.vue'),
            },
            {
              // 返工记录
              path: 'reworkRecord',
              name: 'reworkRecord',
              component:()=>import('../views/mm/mainProductStock/ReworkRecord.vue'),
            },
            {
              path: '',
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/CreateProductStock.vue
@@ -1,6 +1,6 @@
<script setup>
import {reactive} from "vue";
import {reactive, ref} from "vue";
import {useRouter} from  'vue-router'
let router=useRouter()
const getTableRow = (row,type) =>{
@@ -194,19 +194,14 @@
  }
})
const  xGrid = ref();
const gridEvents = {
  toolbarButtonClick ({ code }) {
    const $grid = xGrid.value
    if ($grid) {
      switch (code) {
        case 'add': {
          router.push({path: '/main/trader/CreateTrader'})
          /*if($grid.getCheckboxRecords().length==0){
            VXETable.modal.message( '请选择一条数据!')
            return
          }*/
          alert('我接收到子组件传送的编辑信息')
          return;
        }
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedGoodsIssue.vue
@@ -3,7 +3,7 @@
<script setup>
import {reactive} from "vue";
import {reactive, ref} from "vue";
import {useRouter} from  'vue-router'
let router=useRouter()
const getTableRow = (row,type) =>{
@@ -24,36 +24,33 @@
    // }
  }
}
const  xGrid = ref();
const gridEvents = {
  toolbarButtonClick ({ code }) {
  toolbarButtonClick({ code }) {
    const $grid = xGrid.value
    if ($grid) {
      switch (code) {
        case 'add': {
          router.push({path: '/main/trader/CreateTrader'})
          /*if($grid.getCheckboxRecords().length==0){
            VXETable.modal.message( '请选择一条数据!')
            return
          }*/
          return;
        }
      }
    }
  },
  toolbarToolClick ({ code }) {
    const $grid = xGrid.value
    if ($grid) {
      switch (code) {
        case 'myPrint': {
          $grid.print()
    if($grid){
      switch (code){
        case 'verify':{
          alert('我接收到子组件传送的编辑信息')
          // router.push({path: '/main/productStock/OrderAllocation'});
          // return;
          break
        }
        case 'out':{
          router.push({path: '/main/productStock/TakeOutRecord'});
          return;
          break;
        }
        case 'rework':{
          router.push({path: '/main/productStock/FinishedProductRework'});
          return;
          break;
        }
      }
    }
  },
}
@@ -113,9 +110,10 @@
  toolbarConfig: {
    buttons: [{
      'name': '确认领出',
      'code': 'verify',
      status: 'primary'
    },{
      'name': '领出记录',
      'name': '领出记录','code':'out',
    }],
    import: false,
    export: true,
@@ -206,7 +204,7 @@
        class="mytable-scrollbar"
        ref="xGrid"
        v-bind="gridOptions"
        v-on="gridEvents"
    >
      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
      <!--      下拉显示所有信息插槽-->
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue
@@ -1,6 +1,6 @@
<script setup>
import {reactive} from "vue";
import {reactive, ref} from "vue";
import {useRouter} from  'vue-router'
let router=useRouter()
const getTableRow = (row,type) =>{
@@ -18,6 +18,33 @@
      //alert('我接收到子组件传送的编辑信息')
      router.push({path: '/main/productStock/FinishedGoodsIssue', query: { id: row.id }})
      break
    }
  }
}
const  xGrid = ref();
const gridEvents = {
  toolbarButtonClick({ code }) {
    const $grid = xGrid.value
    if($grid){
      switch (code){
        case 'ver':{
          alert('我接收到子组件传送的编辑信息')
          // router.push({path: '/main/productStock/OrderAllocation'});
          // return;
          break
        }
        case 'record':{
          router.push({path: '/main/productStock/TransferRecord'});
          return;
          break;
        }
        case 'rework':{
          router.push({path: '/main/productStock/FinishedProductRework'});
          return;
          break;
        }
      }
    }
  }
}
@@ -83,7 +110,8 @@
  toolbarConfig: {
    buttons: [{
      'name': '确认出库',
      status: 'primary'
      status: 'primary',
      'code':'ver'
    }],
    import: false,
    export: true,
@@ -103,7 +131,7 @@
      "OrderQuantity": "7",
      "Length": "1230.00",
      "Width": "1075.00",
      "Thickness": "6。700",
      "Thickness": "6.700",
      "TotalQuantity": "100.00",
      "TotalArea": "360.80",
      "BoxNumber": "06",
@@ -124,7 +152,7 @@
      "OrderQuantity": "7",
      "Length": "1230.00",
      "Width": "1075.00",
      "Thickness": "6。700",
      "Thickness": "6.700",
      "TotalQuantity": "100.00",
      "TotalArea": "360.80",
      "BoxNumber": "06",
@@ -145,7 +173,7 @@
      "OrderQuantity": "7",
      "Length": "1230.00",
      "Width": "1075.00",
      "Thickness": "6。700",
      "Thickness": "6.700",
      "TotalQuantity": "100.00",
      "TotalArea": "360.80",
      "BoxNumber": "06",
@@ -166,7 +194,7 @@
      "OrderQuantity": "7",
      "Length": "1230.00",
      "Width": "1075.00",
      "Thickness": "6。700",
      "Thickness": "6.700",
      "TotalQuantity": "100.00",
      "TotalArea": "360.80",
      "BoxNumber": "06",
@@ -187,7 +215,7 @@
      "OrderQuantity": "7",
      "Length": "1230.00",
      "Width": "1075.00",
      "Thickness": "6。700",
      "Thickness": "6.700",
      "TotalQuantity": "100.00",
      "TotalArea": "360.80",
      "BoxNumber": "06",
@@ -208,7 +236,7 @@
      "OrderQuantity": "7",
      "Length": "1230.00",
      "Width": "1075.00",
      "Thickness": "6。700",
      "Thickness": "6.700",
      "TotalQuantity": "100.00",
      "TotalArea": "360.80",
      "BoxNumber": "06",
@@ -249,7 +277,7 @@
        class="mytable-scrollbar"
        ref="xGrid"
        v-bind="gridOptions"
        v-on="gridEvents"
    >
      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
      <!--      下拉显示所有信息插槽-->
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductRework.vue
@@ -4,7 +4,7 @@
<script setup>
import {reactive} from "vue";
import {reactive, ref} from "vue";
import {useRouter} from  'vue-router'
let router=useRouter()
const getTableRow = (row,type) =>{
@@ -24,6 +24,32 @@
      break
    }
  }
}
const  xGrid = ref();
const gridEvents = {
  toolbarButtonClick({ code }) {
    const $grid = xGrid.value
    if($grid){
      switch (code){
        case 'ver':{
          alert('我接收到子组件传送的编辑信息')
          // router.push({path: '/main/productStock/OrderAllocation'});
          // return;
          break
        }
        case 'record':{
          router.push({path: '/main/productStock/ReworkRecord'});
          return;
          break;
        }
        case 'rework':{
          router.push({path: '/main/productStock/FinishedProductRework'});
          return;
          break;
        }
      }
    }
  },
}
@@ -82,9 +108,13 @@
  ],//表头按钮
  toolbarConfig: {
    buttons: [{
      'name': '返工确认',status: 'primary'
    },{
      'name': '返工记录'
      'name': '返工确认',
      status: 'primary',
      'code':'ver'
    },
      {
      'name': '返工记录',
        'code':'record'
    }],
    import: false,
    export: true,
@@ -175,7 +205,7 @@
        class="mytable-scrollbar"
        ref="xGrid"
        v-bind="gridOptions"
        v-on="gridEvents"
    >
      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
      <!--      下拉显示所有信息插槽-->
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocation.vue
@@ -85,7 +85,7 @@
  toolbarConfig: {
    buttons: [
        {'name': '确认调拨',status: 'primary','code':'edit'},
        {'name': '调拨记录'}
        {'name': '调拨记录','code':'record'}
    ],
    import: false,
    export: true,
@@ -179,8 +179,8 @@
          // return;
          break
        }
        case 'out':{
          router.push({path: '/main/productStock/FinishedGoodsIssue'});
        case 'record':{
          router.push({path: '/main/productStock/TransferRecord'});
          return;
          break;
        }
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocationUpdate.vue
File was deleted
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ReworkRecord.vue
New file
@@ -0,0 +1,231 @@
<!-- 领出记录  -->
<script setup>
import {reactive} from "vue";
import {useRouter} from  'vue-router'
let router=useRouter()
const getTableRow = (row,type) =>{
  switch (type) {
    case 'edit' :{
      //alert('我接收到子组件传送的编辑信息')
      router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
      break
    }
    case 'delete':{
      alert('我接收到子组件传送的删除信息')
      break
    }
  }
}
//子组件接收参数
const gridOptions = reactive({
  border:  "full",//表格加边框
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe:true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true,height: 50},//鼠标移动或选择高亮
  id: 'CustomerList',
  showFooter: true,//显示脚
  printConfig: {},
  importConfig: {},
  exportConfig: {},
  scrollY:{ enabled: true },//开启虚拟滚动
  showOverflow:true,
  columnConfig: {
    resizable: true,
    useKey: true
  },
  filterConfig: {   //筛选配置项
    remote: true
  },
  customConfig: {
    storage: true
  },
  editConfig: {
    trigger: 'click',
    mode: 'row',
    showStatus: true
  },//表头参数
  columns:[
    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
    // { type: 'checkbox',fixed:"left", title: '选择', width: '80' },
    { type: 'seq',fixed:"left", title: '自序', width: '80' },
    // {title: '操作', width: '110', slots: { default: 'button_slot' },fixed:"left"},
    {field: 'id', width:'150', title: '领出单号', sortable: true,},
    {field: 'MaterialCode', width: '150',title: '订单号', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: 'Code', width: '150',title: '序号', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: 'MaterialName', width: '120',title: '补片单号', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: 'Origin', width: '100',title: '工序', sortable: true},
    {field: 'InventoryNumber',width: '100', title: '次破原因', sortable: true,showOverflow:"ellipsis"},
    {field: 'Thickness', width: '80',title: '退货单号', sortable: true},
    {field: 'MainUnit',width: '100', title: '完工数量', sortable: true},
    {field: 'RecordNum',width: '100', title: '返工数量', sortable: true},
    {field: 'ProductNum',width: '100', title: '产品编号', sortable: true},
    {field: 'ProductName',width: '100', title: '产品名称', sortable: true},
    {field: 'Height', width: '100',title: '长', sortable: true},
    {field: 'Width',width: '100', title: '宽', sortable: true},
    {field: 'status', width: '80',title: '审核状态', sortable: true},
    {field: 'ZhiDanRen', width: '80',title: '制单人', sortable: true},
    {field: 'SafetyStock', width: '100',title: '制单日期', sortable: true},
    {field: 'Auditor', width: '100',title: '审核人', sortable: true},
    {field: 'AuditorDate', width: '100',title: '审核日期', sortable: true},
  ],//表头按钮
  toolbarConfig: {
    // buttons: [{
    //   'name': '新增'
    // }],
    import: false,
    export: true,
    print: true,
    zoom: true,
    custom: true
  },
  data:  [
    {
      "id": "LC23123011",
      "MaterialCode": "NG23060212",
      "Code": "1",
      "MaterialName": "11月29退货众致",
      "Origin": "智镜",
      "InventoryNumber": '黑点',
      "Thickness": '',
      "MainUnit": "",
      "RecordNum": "876",
      "ProductNum": "0604000108",
      "ProductName": "4mm高性能环保镜",
      "Height": "930.00",
      "Width": "550.00",
      "status": "已审核",
      "ZhiDanRen": "曲慧霞",
      "SafetyStock": "2023-12-30",
      "Auditor": "曲慧霞",
      "AuditorDate": "2023-12-30",
    },
    {
      "id": "LC23123011",
      "MaterialCode": "NG23060212",
      "Code": "1",
      "MaterialName": "11月29退货众致",
      "Origin": "智镜",
      "InventoryNumber": '黑点',
      "Thickness": '',
      "MainUnit": "",
      "RecordNum": "876",
      "ProductNum": "0604000108",
      "ProductName": "4mm高性能环保镜",
      "Height": "930.00",
      "Width": "550.00",
      "status": "已审核",
      "ZhiDanRen": "曲慧霞",
      "SafetyStock": "2023-12-30",
      "Auditor": "曲慧霞",
      "AuditorDate": "2023-12-30",
    },
    {
      "id": "LC23123011",
      "MaterialCode": "NG23060212",
      "Code": "1",
      "MaterialName": "11月29退货众致",
      "Origin": "智镜",
      "InventoryNumber": '黑点',
      "Thickness": '',
      "MainUnit": "",
      "RecordNum": "876",
      "ProductNum": "0604000108",
      "ProductName": "4mm高性能环保镜",
      "Height": "930.00",
      "Width": "550.00",
      "status": "已审核",
      "ZhiDanRen": "曲慧霞",
      "SafetyStock": "2023-12-30",
      "Auditor": "曲慧霞",
      "AuditorDate": "2023-12-30",
    },
  ],//table body实际数据
  footerMethod ({ columns, data }) {//页脚函数
    return[
      columns.map((column, columnIndex) => {
        if (columnIndex === 0) {
          return '合计:'
        }
        // if (props.tableProp.footList.includes(column.field)) {
        //   return sumNum(data, column.field)
        // }
        return ''
      })
    ]
  }
})
</script>
<template>
  <div class="main-div-customer">
    <el-row gutter="10" >
      <el-col :span="2.5">
        <div class="label-text">制单日期范围</div>
      </el-col>
      <el-col :span="4">
        <el-date-picker
            type="daterange"
            start-placeholder="开始时间"
            end-placeholder="结束时间"
            style="width: 200px;"
        />
      </el-col>
      <el-col span="4">
        <el-button id="searchButton" type="primary" :icon="Search">查询</el-button>
      </el-col>
    </el-row>
    <vxe-grid
        max-height="100%"
        @filter-change="filterChanged"
        class="mytable-scrollbar"
        ref="xGrid"
        v-bind="gridOptions"
    >
      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
      <!--      下拉显示所有信息插槽-->
      <template #content="{ row}">
        <ul class="expand-wrapper">
          <li  v-for="(item,key,index) in row">
            <span style="font-weight: bold">{{key+':  '}}</span>
            <span>{{ item }}</span>
          </li>
        </ul>
      </template>
      <!--左边固定显示的插槽-->
      <template #button_slot="{ row }">
        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">编辑</el-button>
        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">删除</el-button>
      </template>
      <template #num1_filter="{ column, $panel }">
        <div>
          <div v-for="(option, index) in column.filters" :key="index">
            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
          </div>
        </div>
      </template>
    </vxe-grid>
  </div>
</template>
<style scoped>
.main-div-customer{
  width: 99%;
  height: 100%;
}
</style>
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/TakeOutRecord.vue
New file
@@ -0,0 +1,223 @@
<!-- 领出记录  -->
<script setup>
import {reactive} from "vue";
import {useRouter} from  'vue-router'
let router=useRouter()
const getTableRow = (row,type) =>{
  switch (type) {
    case 'edit' :{
      //alert('我接收到子组件传送的编辑信息')
      router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
      break
    }
    case 'delete':{
      alert('我接收到子组件传送的删除信息')
      break
    }
  }
}
//子组件接收参数
const gridOptions = reactive({
  border:  "full",//表格加边框
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe:true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true,height: 50},//鼠标移动或选择高亮
  id: 'CustomerList',
  showFooter: true,//显示脚
  printConfig: {},
  importConfig: {},
  exportConfig: {},
  scrollY:{ enabled: true },//开启虚拟滚动
  showOverflow:true,
  columnConfig: {
    resizable: true,
    useKey: true
  },
  filterConfig: {   //筛选配置项
    remote: true
  },
  customConfig: {
    storage: true
  },
  editConfig: {
    trigger: 'click',
    mode: 'row',
    showStatus: true
  },//表头参数
  columns:[
    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
    // { type: 'checkbox',fixed:"left", title: '选择', width: '80' },
    { type: 'seq',fixed:"left", title: '自序', width: '80' },
    // {title: '操作', width: '110', slots: { default: 'button_slot' },fixed:"left"},
    {field: 'id', width:'150', title: '领出单号', sortable: true,},
    {field: 'MaterialCode', width: '150',title: '原订单号', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: 'Code', width: '150',title: '序号', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: 'MaterialName', width: '120',title: '新订单号', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: 'Origin', width: '100',title: '新序号', sortable: true},
    {field: 'InventoryNumber',width: '100', title: '领出类型', sortable: true,showOverflow:"ellipsis"},
    {field: 'Thickness', width: '80',title: '调出数量', sortable: true},
    {field: 'MainUnit',width: '100', title: '产品编号', sortable: true},
    {field: 'ProductName',width: '100', title: '产品名称', sortable: true},
    {field: 'Height', width: '100',title: '长', sortable: true},
    {field: 'Width',width: '100', title: '宽', sortable: true},
    {field: 'ZhiDanRen', width: '80',title: '制单人', sortable: true},
    {field: 'status', width: '80',title: '单据状态', sortable: true},
    {field: 'SafetyStock', width: '100',title: '制单日期', sortable: true},
    {field: 'Auditor', width: '100',title: '审核人', sortable: true},
    {field: 'AuditorDate', width: '100',title: '审核日期', sortable: true},
  ],//表头按钮
  toolbarConfig: {
    // buttons: [{
    //   'name': '新增'
    // }],
    import: false,
    export: true,
    print: true,
    zoom: true,
    custom: true
  },
  data:  [
    {
      "id": "LC23123011",
      "MaterialCode": "NG23060212",
      "Code": "1",
      "MaterialName": "11月29退货众致",
      "Origin": "补单",
      "InventoryNumber": '退货废弃',
      "Thickness": '876',
      "MainUnit": "0604000108",
      "ProductName": "4mm高性能环保镜",
      "Height": "930.00",
      "Width": "550.00",
      "ZhiDanRen": "曲慧霞",
      "status": "已审核",
      "SafetyStock": "2023-12-30",
      "Auditor": "曲慧霞",
      "AuditorDate": "2023-12-30",
    },
    {
      "id": "LC23123010",
      "MaterialCode": "NG23060211",
      "Code": "1",
      "MaterialName": "11月29退货众致",
      "Origin": "补单",
      "InventoryNumber": '开介领出',
      "Thickness": '584',
      "MainUnit": "0604000107",
      "ProductName": "5mm环氧树脂镜",
      "Height": "866.00",
      "Width": "486.00",
      "ZhiDanRen": "曲慧霞",
      "status": "已审核",
      "SafetyStock": "2023-12-30",
      "Auditor": "曲慧霞",
      "AuditorDate": "2023-12-30",
    },
    {
      "id": "LC23123009",
      "MaterialCode": "NG23060210",
      "Code": "1",
      "MaterialName": "11月29退货众致",
      "Origin": "补单",
      "InventoryNumber": '开介领出',
      "Thickness": '584',
      "MainUnit": "0604000106",
      "ProductName": "5mm环氧树脂镜",
      "Height": "866.00",
      "Width": "486.00",
      "ZhiDanRen": "曲慧霞",
      "status": "已审核",
      "SafetyStock": "2023-12-30",
      "Auditor": "曲慧霞",
      "AuditorDate": "2023-12-30",
    },
  ],//table body实际数据
  footerMethod ({ columns, data }) {//页脚函数
    return[
      columns.map((column, columnIndex) => {
        if (columnIndex === 0) {
          return '合计:'
        }
        // if (props.tableProp.footList.includes(column.field)) {
        //   return sumNum(data, column.field)
        // }
        return ''
      })
    ]
  }
})
</script>
<template>
  <div class="main-div-customer">
    <el-row gutter="10" >
      <el-col :span="2.5">
        <div class="label-text">制单日期范围</div>
      </el-col>
      <el-col :span="4">
        <el-date-picker
            type="daterange"
            start-placeholder="开始时间"
            end-placeholder="结束时间"
            style="width: 200px;"
        />
      </el-col>
      <el-col span="4">
        <el-button id="searchButton" type="primary" :icon="Search">查询</el-button>
      </el-col>
    </el-row>
    <vxe-grid
        max-height="100%"
        @filter-change="filterChanged"
        class="mytable-scrollbar"
        ref="xGrid"
        v-bind="gridOptions"
    >
      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
      <!--      下拉显示所有信息插槽-->
      <template #content="{ row}">
        <ul class="expand-wrapper">
          <li  v-for="(item,key,index) in row">
            <span style="font-weight: bold">{{key+':  '}}</span>
            <span>{{ item }}</span>
          </li>
        </ul>
      </template>
      <!--左边固定显示的插槽-->
      <template #button_slot="{ row }">
        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">编辑</el-button>
        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">删除</el-button>
      </template>
      <template #num1_filter="{ column, $panel }">
        <div>
          <div v-for="(option, index) in column.filters" :key="index">
            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
          </div>
        </div>
      </template>
    </vxe-grid>
  </div>
</template>
<style scoped>
.main-div-customer{
  width: 99%;
  height: 100%;
}
</style>
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/TransferRecord.vue
New file
@@ -0,0 +1,202 @@
<!-- 调拨记录 -->
<script setup>
import {reactive} from "vue";
import {useRouter} from  'vue-router'
let router=useRouter()
const getTableRow = (row,type) =>{
  switch (type) {
    case 'edit' :{
      //alert('我接收到子组件传送的编辑信息')
      router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
      break
    }
    case 'delete':{
      alert('我接收到子组件传送的删除信息')
      break
    }
  }
}
//子组件接收参数
const gridOptions = reactive({
  border:  "full",//表格加边框
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe:true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true,height: 50},//鼠标移动或选择高亮
  id: 'CustomerList',
  showFooter: true,//显示脚
  printConfig: {},
  importConfig: {},
  exportConfig: {},
  scrollY:{ enabled: true },//开启虚拟滚动
  showOverflow:true,
  columnConfig: {
    resizable: true,
    useKey: true
  },
  filterConfig: {   //筛选配置项
    remote: true
  },
  customConfig: {
    storage: true
  },
  editConfig: {
    trigger: 'click',
    mode: 'row',
    showStatus: true
  },//表头参数
  columns:[
    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
    // { type: 'checkbox',fixed:"left", title: '选择', width: '80' },
    { type: 'seq',fixed:"left", title: '自序', width: '80' },
    // {title: '操作', width: '110', slots: { default: 'button_slot' },fixed:"left"},
    {field: 'id', width:'150', title: 'ID', sortable: true,},
    {field: 'MaterialCode', width: '150',title: '原订单号', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: 'MaterialName', width: '120',title: '新订单号', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: 'Origin', width: '100',title: '新序号', sortable: true},
    {field: 'InventoryNumber',width: '100', title: '库存数', sortable: true,showOverflow:"ellipsis"},
    {field: 'Width', width: '80',title: '调用数量', sortable: true},
    {field: 'ZhiDanRen', width: '80',title: '制单人', sortable: true},
    {field: 'Height',width: '100', title: '产品编号', sortable: true},
    {field: 'Thickness', width: '100',title: '长', sortable: true},
    {field: 'MainUnit',width: '100', title: '宽', sortable: true},
    {field: 'SafetyStock', width: '100',title: '制单日期', sortable: true},
  ],//表头按钮
  toolbarConfig: {
    // buttons: [{
    //   'name': '新增'
    // }],
    import: false,
    export: true,
    print: true,
    zoom: true,
    custom: true
  },
  data:  [
    {
      "id": "3765",
      "MaterialCode": "NG23120709",
      "MaterialName": "9",
      "Origin": "NG23122010",
      "InventoryNumber": "20",
      "Width": '12.00',
      "ZhiDanRen": '刘晓艳',
      "Height": "0601000437",
      "Thickness": "1390.00",
      "MainUnit": "760.00",
      "SafetyStock": "2023-12-30",
    },
    {
      "id": "3766",
      "MaterialCode": "NG23120709",
      "MaterialName": "9",
      "Origin": "NG23122010",
      "InventoryNumber": "20",
      "Width": '12.00',
      "ZhiDanRen": '刘晓艳',
      "Height": "0601000437",
      "Thickness": "1390.00",
      "MainUnit": "760.00",
      "SafetyStock": "2023-12-30",
    },{
      "id": "3767",
      "MaterialCode": "NG23120709",
      "MaterialName": "9",
      "Origin": "NG23122010",
      "InventoryNumber": "20",
      "Width": '12.00',
      "ZhiDanRen": '刘晓艳',
      "Height": "0601000437",
      "Thickness": "1390.00",
      "MainUnit": "760.00",
      "SafetyStock": "2023-12-30",
    },
  ],//table body实际数据
  footerMethod ({ columns, data }) {//页脚函数
    return[
      columns.map((column, columnIndex) => {
        if (columnIndex === 0) {
          return '合计:'
        }
        // if (props.tableProp.footList.includes(column.field)) {
        //   return sumNum(data, column.field)
        // }
        return ''
      })
    ]
  }
})
</script>
<template>
  <div class="main-div-customer">
    <el-row gutter="10" >
      <el-col :span="2.5">
        <div class="label-text">制单日期范围</div>
      </el-col>
      <el-col :span="4">
        <el-date-picker
            type="daterange"
            start-placeholder="开始时间"
            end-placeholder="结束时间"
            style="width: 200px;"
        />
      </el-col>
      <el-col span="4">
        <el-button id="searchButton" type="primary" :icon="Search">查询</el-button>
      </el-col>
    </el-row>
    <vxe-grid
        max-height="100%"
        @filter-change="filterChanged"
        class="mytable-scrollbar"
        ref="xGrid"
        v-bind="gridOptions"
    >
      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
      <!--      下拉显示所有信息插槽-->
      <template #content="{ row}">
        <ul class="expand-wrapper">
          <li  v-for="(item,key,index) in row">
            <span style="font-weight: bold">{{key+':  '}}</span>
            <span>{{ item }}</span>
          </li>
        </ul>
      </template>
      <!--左边固定显示的插槽-->
      <template #button_slot="{ row }">
        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">编辑</el-button>
        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">删除</el-button>
      </template>
      <template #num1_filter="{ column, $panel }">
        <div>
          <div v-for="(option, index) in column.filters" :key="index">
            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
          </div>
        </div>
      </template>
    </vxe-grid>
  </div>
</template>
<style scoped>
.main-div-customer{
  width: 99%;
  height: 100%;
}
</style>