廖井涛
2024-08-19 1d193f2cc23f54634ef8ed73c11436fbe76bb575
north-glass-erp/northglass-erp/src/views/pp/Replenish/PrintReplenishFlowCard.vue
@@ -11,7 +11,8 @@
import {addListener, toolbarButtonClickEvent} from "@/hook/mouseMove";
import PrintProcess from '@/components/pp/PrintProcessReplenish.vue'
import PrintLabel from '@/views/pp/processCard/PrintLabel.vue'
import PrintCustomLabel from '@/views/pp/processCard/PrintCustomLabel.vue'
import PrintCustomLabel from '@/components/pp/PrintRepairCustomLabel.vue'
import PrintCustomLabelSemi from '@/components/pp/PrintRepairCustomLabelSemi.vue'
import footSum from "@/hook/footSum"
import {Search} from "@element-plus/icons-vue";
import companyInfo from "@/stores/sd/companyInfo"
@@ -89,6 +90,14 @@
  printMergeVal:null
})
//标签
let  labelRow = ref({
  list:null,//勾选的数据
  faceOrientation:null,//内外面
  type:null,//标签模板
  lableType:null//标签类型
})
//室内室外面
const stateValue = ref('')
const stateOptions = [
@@ -104,7 +113,7 @@
//标签类型
let  filteredOptions=[]
const lableType = ref('1')
const lableType = ref('2')
const lableTypeOptions = [
  {
    value: '1',
@@ -141,8 +150,17 @@
})
const printContentLabel = ref({
  id: 'childLabel',
})
const printContentLabelSemi = ref({
  id: 'childLabelSemi',
})
//打印类型
const printType = ref()
const printType = ref('小片标签')
//定义接收加载表头下拉数据
const titleSelectJson = ref({
@@ -192,6 +210,7 @@
  request.post(`/Replenish/selectPrint/${startTime}/${endTime}`, filterData.value).then((res) => {
    if (res.code == 200) {
      xGrid.value.loadData(res.data.data)
      titleSelectJson.value.dataType = res.data.type
      gridOptions.loading = false
@@ -259,49 +278,59 @@
      title: t('order.orderId'),
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
      filterMethod: filterChanged,
      width:110
    },
    {
      field: 'process_id',
      title: t('processCard.processId'),
      showOverflow: "ellipsis",
      sortable: true,
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
      filterMethod: filterChanged,
      width:140
    },
    {
      field: 'customer_name',
      title: t('customer.customerName'),
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
      filterMethod: filterChanged,
      width:110
    },
    {
      field: 'project',
      title:  t('order.project'),
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
      filterMethod: filterChanged,
      width:110
    },
    {
      field: 'order_number',
      title:  t('order.OrderNum'),
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
      filterMethod: filterChanged,
      width:100
    },
    {field: 'technology_number', title: t('processCard.technologyNumber'), showOverflow: "ellipsis"},
    {field: 'glass_address', title: t('processCard.glassAddress'),},
    {field: 'patch_num', title:  t('order.quantity'),},
    {field: 'patch_area', title:  t('order.area'),},
    {field: 'responsible_team', title:  t('reportingWorks.responsibleTeam'),},
    {field: 'responsible_equipment', title:  t('reportingWorks.responsibleEquipment'),},
    {field: 'responsible_personnel', title:  t('reportingWorks.responsiblePersonnel'),},
    {field: 'patch_type', title:  t('reportingWorks.breakageType'),},
    {field: 'patch_reason', title:  t('reportingWorks.breakageReason'),},
    {field: 'patch_processes', title:  t('reportingWorks.responsibleProcess'),},
    {field: 'product_name', title: t('order.product'),},
    {field: 'glass_child', title: t('reportingWorks.glassChild'),},
    {field: 'technology_number', title: t('processCard.technologyNumber'), showOverflow: "ellipsis",
      width:90},
    {field: 'glass_address', title: t('processCard.glassAddress'),
      width:110},
    {field: 'patch_num', title:  t('order.quantity'),
    width:70},
    {field: 'patch_area', title:  t('order.area'),width:80},
    {field: 'responsible_team', title:  t('reportingWorks.responsibleTeam'),width:110},
    {field: 'responsible_equipment', title:  t('reportingWorks.responsibleEquipment'),width:110},
    {field: 'responsible_personnel', title:  t('reportingWorks.responsiblePersonnel'),width:110},
    {field: 'patch_type', title:  t('reportingWorks.breakageType'),width:110},
    {field: 'patch_reason', title:  t('reportingWorks.breakageReason'),width:110},
    {field: 'patch_processes', title:  t('reportingWorks.responsibleProcess'),width:110},
    {field: 'product_name', title: t('order.product'),width:110},
    {field: 'glass_child', title: t('reportingWorks.glassChild'),width:110},
    {field: 'reporting_work_id', title: t('reportingWorks.reportingWorkId'),width:120},
  ],//表头按钮
  toolbarConfig: {
@@ -325,7 +354,7 @@
        if (columnIndex === 0) {
          return t('basicData.total')
        }
        const List = ["quantity",'total_area',]
        const List = ["patch_num",'patch_area',]
        if (List.includes(column.field)) {
          return footSum(data, column.field)
        }
@@ -429,13 +458,27 @@
              id += selectRecords[i].id + "|"
            }
          }
          if (lableTypes==1){
            router.push({path: '/main/Replenish/PrintRepairCustomLabel', query: {type:type,faceOrientation:faceOrientation,lableType:lableTypes,  printList: JSON.stringify(selectRecords)}})
            labelRow.value.list=JSON.stringify(selectRecords)
            labelRow.value.faceOrientation=faceOrientation
            labelRow.value.type=type
            labelRow.value.lableType= lableTypes
            dialogTableVisibleLabel.value=true
            //router.push({path: '/main/processCard/PrintCustomLabel', query: {type:type,faceOrientation:faceOrientation,lableType:lableTypes,  printList: JSON.stringify(selectRecords)}})
          }
          else {
            router.push({path: '/main/Replenish/PrintRepairCustomLabelSemi', query: {type:type,faceOrientation:faceOrientation,lableType:lableTypes,  printList: JSON.stringify(selectRecords)}})
          else if (lableTypes==2) {
            labelRow.value.list=JSON.stringify(selectRecords)
            labelRow.value.faceOrientation=faceOrientation
            labelRow.value.type=type
            labelRow.value.lableType= lableTypes
            dialogTableVisibleCustomLabel.value=true
            //router.push({path: '/main/processCard/PrintCustomLabelSemi', query: {type:type,faceOrientation:faceOrientation,lableType:lableTypes,  printList: JSON.stringify(selectRecords)}})
          }else
          if (lableTypes==3) {
            router.push({path: '/main/processCard/PrintLabel1', query: {type:type,faceOrientation:faceOrientation,lableType:lableTypes,  printList: JSON.stringify(selectRecords)}})
          }
@@ -650,8 +693,8 @@
    </el-button>
    &nbsp;&nbsp;
    <el-input clearable :placeholder="$t('processCard.mergePrinting')" v-model="printMerge" style="width: 90px"></el-input>
    &nbsp;
<!--    <el-input clearable :placeholder="$t('processCard.mergePrinting')" v-model="printMerge" style="width: 90px"></el-input>-->
<!--    &nbsp;-->
    <label>{{$t('processCard.labelStyle')}}:</label>
    <el-select v-model="printType" clearable default-value="default_city" :placeholder="$t('processCard.pleaseSelect')" style="width: 120px">
      <el-option
@@ -682,8 +725,7 @@
    <vxe-grid
        ref="xGrid"
        class="mytable-scrollbar"
        height="600px"
        max-height="100%"
        height="100%"
        v-bind="gridOptions"
        v-on="gridEvents"
@@ -733,30 +775,49 @@
        destroy-on-close
        style="width: 75%;height:75% ">
      <template #header="{ close, titleId, titleClass }">
        <el-button v-print="printContent" @click="printNumber"  :icon="Printer" circle />
        <el-button v-print="printContent"   :icon="Printer" circle />
      </template>
      <print-process id="child" :printList="printRow.list" :printMerge="printRow.printMergeVal" :printLike="printRow.like"
                     style="width: 100%;height: 100%" />
    </el-dialog>
    <!--    成品标签-->
    <el-dialog
        id="sizeCustom"
        v-model="dialogTableVisibleLabel"
        destroy-on-close
        :title="$t('processCard.printLabel')"
        style="width: 80%;height:75% ">
      <PrintLabel :printList="selectRecords"
                  style="width: 100%;height: 100%" />
      <template #header="{ close, titleId, titleClass }">
        <el-button v-print="printContentLabel"   :icon="Printer" circle />
      </template>
      <print-custom-label id="childLabel"
                          :list="labelRow.list"
                          :faceOrientation="labelRow.faceOrientation"
                          :type="labelRow.type"
                          :lableType="labelRow.lableType"
                          style="width: 100%;height: 100%" />
    </el-dialog>
    <!--   小片标签 -->
    <el-dialog
        id="sizeCustomSemi"
        v-model="dialogTableVisibleCustomLabel"
        destroy-on-close
        :title="$t('processCard.labelStyle')"
        style="width: 80%;height:75% ">
      <PrintLabel :printList="selectRecords"
                  style="width: 100%;height: 100%" />
      <template #header="{ close, titleId, titleClass }">
        <el-button v-print="printContentLabelSemi"   :icon="Printer" circle />
      </template>
      <print-custom-label-semi id="childLabelSemi"
                               :list="labelRow.list"
                               :faceOrientation="labelRow.faceOrientation"
                               :type="labelRow.type"
                               :lableType="labelRow.lableType"
                               style="width: 100%;height: 100%" />
    </el-dialog>
<!--    排序-->
    <el-dialog
        id="sizeCheck"
        v-model="printVisible"
@@ -773,7 +834,7 @@
<style scoped>
.main-div-customer {
  width: 99%;
  height: 100%;
  height: 94%;
}
@@ -788,5 +849,15 @@
  overflow-y: auto;
}
:deep(#sizeCustom .el-dialog__body){
  height: 85%;
  width: 100%;
  overflow-y: auto;
}
:deep(#sizeCustomSemi .el-dialog__body){
  height: 85%;
  width: 100%;
  overflow-y: auto;
}
</style>