guoyujie
2025-07-08 7104751e2f26872d4891d01d42ee88cf19715d01
north-glass-erp/northglass-erp/src/views/pp/report/SplittingDetailsOutside.vue
@@ -96,6 +96,7 @@
  })
}
const orderOtherMoney = ref(null)
//点击查询
const getWorkOrder = () => {
  let inputVal = form.orderId
@@ -108,6 +109,21 @@
      // total.dataTotal = res.data.total.total*1
      // total.pageTotal= res.data.total.pageTotal
      // pageTotal.value = res.data.total
      orderOtherMoney.value = res.data.orderOtherMoney
      orderOtherMoney.value.forEach(item => {
        let column = {
          field: `${item.column}`,
          width: 100,
          title: item.alias,
          filters: [{data: ''}],
          slots: {filter: 'num1_filter'},
          filterMethod: filterChanged,
          sortable: true
        }
        gridOptions.columns.push(column)
      })
      produceList = deepClone(res.data.data)
      xGrid.value.reloadData(produceList)
    } else {
@@ -162,7 +178,7 @@
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe: true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true, height: 50},//鼠标移动或选择高亮
  rowConfig: {isCurrent: true, isHover: true, height: 30},//鼠标移动或选择高亮
  id: 'SplittingDetailsOutside',
  showFooter: true,//显示脚
  printConfig: {},
@@ -189,7 +205,7 @@
    {type: 'expand', fixed: "left", slots: {content: 'content'}, width: 50},
    {type: 'seq', fixed: "left", title: t('basicData.Number'), width: 50},
    {
      field: 'processId', width: 120, title: t('processCard.processId'), filters: [{data: ''}],
      field: 'processId', width: 135, title: t('processCard.processId'), filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
    },
@@ -217,8 +233,12 @@
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
    },
    {field: 'childWidth', width: 120, title: t('order.width')},
    {field: 'childHeight', width: 120, title: t('order.height')},
    {field: 'childWidth', width: 120, title: t('order.width'), filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged},
    {field: 'childHeight', width: 120, title: t('order.height'), filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged},
    {field: 'quantity', width: 120, title: t('order.quantity')},
    {field: 'area', width: 100, title: t('order.area')},
@@ -253,58 +273,60 @@
</script>
<template>
  <div class="main-div-customer">
    <div id="selectForm">
      <el-row :gutter="0">
  <div  style="width: 100%;height: 100%">
    <div class="head">
        <el-input v-model="form.orderId" :placeholder="$t('order.orderId')" clearable style="width: 130px"></el-input>
        <el-input v-model="form.orderId" :placeholder="$t('order.orderId')" clearable style="width: 140px"></el-input>
        &nbsp;&nbsp;
        <el-button type="primary" @click="getWorkOrder">{{$t('basicData.search')}}</el-button>
      </el-row>
    </div>
    <vxe-grid
        ref="xGrid"
        class="mytable-scrollbar"
        max-height="100%"
        v-bind="gridOptions"
    <div class="main-table">
      <vxe-grid
          ref="xGrid"
          class="mytable-scrollbar"
          height="100%"
          v-bind="gridOptions"
    >
      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
      <!--      下拉显示所有信息插槽-->
      <template #content="{ row }">
        <ul class="expand-wrapper">
          <li v-for="(item,index) in gridOptions.columns" v-show="item.field!=undefined ">
            <span style="font-weight: bold">{{ item.title + ':  ' }}</span>
            <span>{{ row[item.field] }}</span>
          </li>
        </ul>
      </template>
      >
        <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
        <!--      下拉显示所有信息插槽-->
        <template #content="{ row }">
          <ul class="expand-wrapper">
            <li v-for="(item,index) in gridOptions.columns" v-show="item.field!=undefined ">
              <span style="font-weight: bold">{{ item.title + ':  ' }}</span>
              <span>{{ row[item.field] }}</span>
            </li>
          </ul>
        </template>
      <template #num1_filter="{ column, $panel }">
        <div>
          <div v-for="(option, index) in column.filters" :key="index">
            <input v-model="option.data" type="text" @input="changeFilterEvent($event, option, $panel)"/>
        <template #num1_filter="{ column, $panel }">
          <div>
            <div v-for="(option, index) in column.filters" :key="index">
              <input v-model="option.data" type="text"
                     @keyup.enter.native="$panel.confirmFilter()"
                     @input="changeFilterEvent($event, option, $panel)"/>
            </div>
          </div>
        </div>
      </template>
        </template>
    </vxe-grid>
      </vxe-grid>
    </div>
  </div>
</template>
<style scoped>
.main-div-customer {
  width: 99%;
  height: 100%;
.head{
  width: 100%;
  height: 35px;
}
#selectForm {
  width: 60%;
  text-align: center;
.main-table{
  width: 100%;
  height: calc(100% - 35px);
}
</style>