廖井涛
2024-04-22 42bc535c947bcf999c706a753635d35ef73f91e6
Merge branch 'master' of https://gitee.com/a1536384743/erp_-override
45个文件已修改
9 文件已重命名
2个文件已添加
9个文件已删除
4179 ■■■■ 已修改文件
north-glass-erp/northglass-erp/config.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/components/basic/BasicTable.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/RegisterView.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainIngredient/CreateIngredients.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorage.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorageCreate.vue 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/StorageRecord.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/TakeOutRecord.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/machine/MaintenanceAndRepair.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintFlowCard.vue 314 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintProcess.vue 1194 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/ProcessCard.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/SelectPrintFlowCard.vue 321 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/report/ProcessCardProgress.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/pp/workOrder/SelectWorkOrder.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/basicData/CreateBasicData.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/customer/SelectCustomerOrder.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/DeliveryPrinting.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDeliveryDetail.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/src/views/sd/product/Test.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/entity/sd/OrderOtherMoney.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/sd/BasicOtherMoneyMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderOtherMoneyMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/pp/ReplenishService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/CustomerService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/service/sd/ProductService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/java/com/example/erp/tools/netty/MyWebSocketHandler.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/BasicDataMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/BasicGlassTypeMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/BasicOtherMoneyMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/CustomerMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/DeliveryMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/OrderOtherMoneyMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/OrderProcessDetailMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/ProductDetailMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/src/main/resources/mapper/sd/ProductMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/pp/FolwCard.xml 83 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/BasicData.xml 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/BasicGlassType.xml 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/Customer.xml 250 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/Delivery.xml 311 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/DeliveryDetail.xml 701 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/OrderDetail.xml 414 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/OrderProcessDetail.xml 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/Product.xml 110 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/classes/mapper/sd/ProductDetail.xml 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/erp-0.0.1-SNAPSHOT.jar.original 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
north-glass-erp/northglass-erp/config.js
@@ -1,4 +1,4 @@
export default {
  serverUrl:"localhost:8086"
  //serverUrl:"res.abeim.cn"
  //serverUrl:"10.153.19.150:8086"
}
north-glass-erp/northglass-erp/src/components/basic/BasicTable.vue
@@ -184,7 +184,6 @@
        }
        case 'myInsert': {
          $grid.insert({})
          console.log($grid.getRecordset().insertRecords)
          break
        }
        case 'mySave': {
north-glass-erp/northglass-erp/src/views/RegisterView.vue
@@ -69,7 +69,6 @@
        request.post('/user/register',
            register).then((res) => {
          if(res['code']==200){
            console.log(res.data)
            ElMessageBox.alert(
                `<strong>用户:<i style="color: #1890FF;">'${res.data.userName}</i>'
                 <br>账号ID:<i style="color: #1890FF;">${res.data.loginName}</i> </strong>`,
north-glass-erp/northglass-erp/src/views/mm/mainIngredient/CreateIngredients.vue
@@ -118,7 +118,6 @@
  }
  console.log(materialStore)
  if(isBool){
    request.post("/MaterialStore/saveMaterialStore", materialStore).then((res) => {
      if(res.code==200){
north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorage.vue
@@ -61,7 +61,6 @@
request.post(`/MaterialInventory/getSelectReturningWarehouseDate/1/${total.pageSize}/${selectDate.value}`,filterData.value).then((res) => {
  if(res.code==200){
    console.log(res.data)
    total.dataTotal = res.data.total.total*1
    total.pageTotal= res.data.total.pageTotal
    pageNum.value=1
north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorageCreate.vue
@@ -126,7 +126,6 @@
  const str = route.query.returningId
  if (typeof str != 'undefined' && str != null && str !== '' && str !== '\n' && str !== '\r'){
    filterData.value.returningId=str
    console.log(filterData.value)
    //第一次调用
    request.post("/MaterialInventory/getSelectReturningWarehouse/1/100",filterData.value).then((res) => {
@@ -171,7 +170,6 @@
      if(res.code==200){
        console.log(res.data.data)
        titleUploadData.value.warehouseManager=userStore.user.userName
        titleUploadData.value.returningType = titleSelectJson.value.returningType[0].operateTypeName
@@ -253,7 +251,6 @@
//数据绑定
const getStoreWorks = () => {
  console.log(filterData.value)
  request.post(`/MaterialStore/getSelectMaterialStore/1/100`,filterData.value).then((res) => {
    if(res.code==200){
@@ -294,7 +291,6 @@
      switch (code) {
        case 'add': {
          const selectRecords = $grid.getCheckboxRecords()
          console.log(selectRecords)
          if (selectRecords.length === 0) {
            ElMessage.warning(t('productStock.unselectedData'))
            return
@@ -345,7 +341,6 @@
            returningId: route.query.returningId
          })
          console.log(flowData)
          request.post("/MaterialInventory/saveReturningWarehouse", flowData.value).then((res) => {
            if(res.code==200){
              ElMessage.success('保存成功')
@@ -364,7 +359,6 @@
            type: 1
          })
          console.log(flowData.value)
          request.post("/MaterialInventory/updateReturningWarehouseToExamine", flowData.value).then((res) => {
            if (res.code == 200) {
              ElMessage.success(t('basicData.msg.ReviewSuccess'))
@@ -382,7 +376,6 @@
            type: 0
          })
          console.log(flowData.value)
          request.post("/MaterialInventory/updateReturningWarehouseToExamine", flowData.value).then((res) => {
            if (res.code == 200) {
              ElMessage.success(t('basicData.msg.cancelReviewSuccess'))
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue
@@ -282,7 +282,6 @@
              userName: username,
              orderDetail: selectRecords
            })
            console.log(orderDetailData)
            request.post("/FinishedGoodsInventory/addDeliveryDetail", orderDetailData.value).then((res) => {
              if (res.code == 200) {
                ElMessage.success(t('productStock.deliverySuccessful'))
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/StorageRecord.vue
@@ -77,7 +77,6 @@
    request.post(`/FinishedGoodsInventory/getSelectStorageRecord/1/${total.pageSize}/${selectDate.value}/${type.value}`,filterData.value).then((res) => {
      if(res.code==200){
        console.log(res.data)
        total.dataTotal = res.data.total.total*1
        total.pageTotal= res.data.total.pageTotal
        selectDate.value = res.data.selectDate
@@ -277,7 +276,6 @@
              orderDetail:selectRecords
            })
            console.log(flowData)
            request.post("/FinishedGoodsInventory/cancelFinishedGoodsInventoryStorage",flowData.value).then((res) => {
              if(res.code==200){
                ElMessage.success(t('productStock.invalidSuccessfully'))
north-glass-erp/northglass-erp/src/views/mm/mainProductStock/TakeOutRecord.vue
@@ -304,7 +304,6 @@
              orderDetail:selectRecords
            })
            console.log(flowData)
            request.post("/FinishedGoodsInventory/cancelFinishedGoodsInventoryToExamine",flowData.value).then((res) => {
              if(res.code==200){
                ElMessage.success(t('productStock.invalidSuccessfully'))
north-glass-erp/northglass-erp/src/views/pp/machine/MaintenanceAndRepair.vue
@@ -114,7 +114,6 @@
  let endTime = form.date1[1]
  request.post(`/maintenance/selectMaintenance/${startTime}/${endTime}`).then((res) => {
    if (res.code == 200) {
      console.log(res.data.data)
      xGrid.value.loadData(res.data.data)
      gridOptions.loading = false
    } else {
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintFlowCard.vue
@@ -1,25 +1,70 @@
<script setup>
import {reactive} from "vue";
import request from "@/utils/request"
import deepClone from "@/utils/deepClone"
import {ElDatePicker, ElMessage} from "element-plus"
import {nextTick, onMounted, onUnmounted, reactive, ref, watch} from "vue"
import {useRouter} from  'vue-router'
import {useI18n} from 'vue-i18n'
import {changeFilterEvent, filterChanged} from "@/hook"
import {VXETable} from "vxe-table";
import {toolbarButtonClickEvent} from "@/hook/mouseMove";
import PrintProcess from '@/views/pp/processCard/PrintProcess.vue'
//语言获取
const {t} = useI18n()
let router=useRouter()
const getTableRow = (row,type) =>{
  switch (type) {
    case 'edit' :{
      //alert('我接收到子组件传送的编辑信息')
      router.push({path: '/main/processCard/PrintFlowCard', query: { id: row.id }})
      break
const dialogTableVisible = ref(false)
let selectRecords = ref(null)
//定义滚动条高度
let scrollTop = ref(null)
let scrollHeight = ref(null)
let clientHeight = ref(null)
const scrollEvnt = (row) => {
  // 内容高度
  scrollTop.value = row.$event.target.scrollTop
  scrollHeight.value = row.$event.target.scrollHeight
  clientHeight.value = row.$event.target.clientHeight
    }
    case 'delete':{
      alert('我接收到子组件传送的删除信息')
      break
//筛选条件,有外键需要先定义明细里面的数据
let filterData = ref({
  orderGlassDetail: {
    productionId: '',
  },
  orderDetail: {
    orderId: '',
    productId: '',
    productName: '',
    }
    case  'setType':{
      alert('我接收到子组件传送的排版状态')
      break
})
//定义页面总页数
let pageTotal = ref('')
//定义数据返回结果
let produceList = ref([])
//定义当前页数
let pageNum = $ref(1)
let pageState = null
const {currentRoute} = useRouter()
const route = currentRoute.value
let orderId = route.query.orderId
// 第一次加载查询
request.post(`/processCard/selectPrint/${orderId}`, filterData.value).then((res) => {
  if (res.code == 200) {
    produceList = produceList.value.concat(deepClone(res.data.data))
    xGrid.value.reloadData(produceList)
    gridOptions.loading = false
  } else {
    ElMessage.warning(res.msg)
    }
  }
}
})
//表尾求和
const sumNum = (list, field) => {
@@ -30,27 +75,35 @@
  return count.toFixed(2)
}
//子组件接收参数
const hasDecimal = (value) => {
  const regex = /\./; // 定义正则表达式,查找小数点
  return regex.test(value); // 返回true/false
}
//子组件接收参数
const xGrid = ref()
const gridOptions = reactive({
  loading: true,
  border:  "full",//表格加边框
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe:true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true,height: 50},//鼠标移动或选择高亮
  id: 'CustomerList',
  rowConfig: {isCurrent: true, isHover: true, height: 30},//鼠标移动或选择高亮
  id: 'demo_1',
  showFooter: true,//显示脚
  printConfig: {},
  importConfig: {},
  exportConfig: {},
  scrollY:{ enabled: true },//开启虚拟滚动
  scrollX: {enabled: true},
  scrollY: {enabled: true, gt: 0},//开启虚拟滚动
  showOverflow:true,
  columnConfig: {
    resizable: true,
    useKey: true
  },
  filterConfig: {   //筛选配置项
    remote: true
    // remote: true
  },
  customConfig: {
    storage: true
@@ -62,42 +115,50 @@
  },//表头参数
  columns:[
    {type:'expand',fixed:"left",slots: { content:'content' },width: 50},
    { type: 'seq',fixed:"left", title: '自序', width: 50 },
    {field: '销售单号',width: 120, title: '销售单号',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true, },
    {field: '生产订单号',width: 140, title: '生产订单号', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: '流程卡号',width: 120, title: '流程卡号', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: '客户名称',width: 120, title: '客户名称', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
    {field: '项目名称',width: 120, title: '项目名称',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
    {field: '片标记',width: 90, title: '片标记', sortable: true,showOverflow:"ellipsis"},
    {field: '标记',width: 80, title: '标记', sortable: true},
    {field: '片数',width: 80, title: '片数', sortable: true},
    {field: '面积',width: 80, title: '面积', sortable: true,showOverflow:"ellipsis"},
    {field: '产品名称',width: 120, title: '产品名称', sortable: true},
    {field: '单片名称',width: 120, title: '单片名称', sortable: true},
    {field: '楼层编号',width: 120, title: '楼层编号', sortable: true},
    {field: '分架员', width: 120,title: '分架员', sortable: true},
    {field: '分架时间',width: 120, title: '分架时间', sortable: true},
    {field: '备注',width: 120, title: '备注', sortable: true}
    {type: 'checkbox', fixed: "left", title: t('basicData.check'), width: 80},
    {type: 'seq', fixed: "left", title: t('basicData.Number'), width: 50},
    {
      field: 'order_id',
      title: t('order.orderId'),
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
    },
    {
      field: 'process_id',
      title: '流程卡号',
      showOverflow: "ellipsis",
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
    },
    {
      field: 'customer_name',
      title: '客户名称',
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
    },
    {
      field: 'project',
      title: '项目名称',
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
    },
    {field: 'technology_number', title: '小片顺序', showOverflow: "ellipsis"},
    {field: 'glass_address', title: '小片标记',},
    {field: 'quantity', title: '数量',},
    {field: 'total_area', title: '面积',},
    {field: 'product_name', title: '产品名称',},
    {field: 'glass_child', title: '单片名称',},
    {field: 'founder', title: '分架员',},
    {field: 'splitFrame_time', title: '分架时间',},
  ],//表头按钮
  toolbarConfig: {
    buttons: [
    {
        name:'室内面',
        dropdowns: [
          { code: 'other1', name: '室内面', type: 'text', },
          { code: 'other2', name: '室外面', type: 'text',  },
        ]
      },
      {
        name:'成品标签',
        dropdowns: [
          { code: 'other1', name: '成品标签', type: 'text', },
          { code: 'other2', name: '单片标签', type: 'text',},
        ]
      },
      {code: 'print_lck', name: '打印流程卡',status:'primary' },
      {code: 'print_bq', name: '打印标签',status:'primary' }
        {code: 'print', name: '打印', status: 'primary'},
    ],
    // import: false,
    // export: true,
@@ -105,83 +166,14 @@
    zoom: true,
    custom: true
  },
  data:  [
    {
      销售单号: 'NG231201',
      生产订单号:'NG231201A',
      流程卡号: 'NG231201A01',
      客户名称:'西安高科幕墙门窗有限公司',
      项目名称:'银隆广场',
      片标记:'(外)',
      标记:'1',
      片数:'16',
      面积:'24.14',
      产品名称: '10mm超白UD60平钢(外)+12Ar(结)+10mm超白平钢(内)',
      单片名称: '10mm超白UD60平钢(外)',
      楼层编号: '16-BSGB05',
      分架员: '张三',
      分架时间: '2023-01-11',
      备注: '',
    },
    {
      销售单号: 'NG231201',
      生产订单号:'NG231201A',
      流程卡号: 'NG231201A01',
      客户名称:'西安高科幕墙门窗有限公司',
      项目名称:'银隆广场',
      片标记:'(外)',
      标记:'1',
      片数:'16',
      面积:'24.14',
      产品名称: '10mm超白UD60平钢(外)+12Ar(结)+10mm超白平钢(内)',
      单片名称: '10mm超白UD60平钢(外)',
      楼层编号: '16-BSGB05',
      分架员: '张三',
      分架时间: '2023-01-11',
      备注: '',
    },
    {
      销售单号: 'NG231201',
      生产订单号:'NG231201A',
      流程卡号: 'NG231201A01',
      客户名称:'西安高科幕墙门窗有限公司',
      项目名称:'银隆广场',
      片标记:'(外)',
      标记:'1',
      片数:'16',
      面积:'24.14',
      产品名称: '10mm超白UD60平钢(外)+12Ar(结)+10mm超白平钢(内)',
      单片名称: '10mm超白UD60平钢(外)',
      楼层编号: '16-BSGB05',
      分架员: '张三',
      分架时间: '2023-01-11',
      备注: '',
    },
    {
      销售单号: 'NG231201',
      生产订单号:'NG231201A',
      流程卡号: 'NG231201A01',
      客户名称:'西安高科幕墙门窗有限公司',
      项目名称:'银隆广场',
      片标记:'(外)',
      标记:'1',
      片数:'16',
      面积:'24.14',
      产品名称: '10mm超白UD60平钢(外)+12Ar(结)+10mm超白平钢(内)',
      单片名称: '10mm超白UD60平钢(外)',
      楼层编号: '16-BSGB05',
      分架员: '张三',
      分架时间: '2023-01-11',
      备注: '',
    },
  ],//table body实际数据
  data: null,//表格数据
  //脚部求和
  footerMethod ({ columns, data }) {//页脚函数
    let footList=['片数','面积']
    let footList = ['data.orderDetail.quantity', 'data.orderDetail.computeGrossArea']
    return[
      columns.map((column, columnIndex) => {
        if (columnIndex === 0) {
          return '合计:'
          return t('basicData.total')
        }
        if (footList.includes(column.field)) {
          return sumNum(data, column.field)
@@ -190,52 +182,93 @@
      })
    ]
  }
})
const gridEvents = {
  toolbarButtonClick ({ code}) {
    const $grid = xGrid.value
     selectRecords = $grid.getCheckboxRecords()
    if ($grid) {
      switch (code) {
        case 'print': {
          if(selectRecords.value===null){
            ElMessage.warning(t('searchOrder.msgList.checkOrder'))
            return
          }
          let id = ""
          for (let i = 0; i < selectRecords.length; i++) {
            if (i + 1 === selectRecords.length) {
              id += selectRecords[i].id
            } else {
              id += selectRecords[i].id + "|"
            }
          }
          router.push({path: '/main/processCard/printProcess', query: {printList: JSON.stringify(selectRecords)}})
          //dialogTableVisible.value = true
          break
        }
      }
    }
  },
}
</script>
<template>
  <div class="main-div-customer">
    <vxe-grid
        max-height="100%"
        @filter-change="filterChanged"
        class="mytable-scrollbar"
        ref="xGrid"
        class="mytable-scrollbar"
        height="600px"
        max-height="100%"
        v-bind="gridOptions"
        v-on="gridEvents"
    >
      <!--      @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 v-for="(item,index) in gridOptions.columns" v-show="item.field!=undefined ">
            <span style="font-weight: bold">{{ item.title + ':  ' }}</span>
            <span v-if="hasDecimal(item.field)">{{ row[item.field.split('.')[0]][item.field.split('.')[1]] }}</span>
            <span v-else>{{ row[item.field] }}</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,'setType')" link type="primary" size="small">排版</el-button>
        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">删除</el-button>
        <el-button link size="small" type="primary" @click="getTableRow(row,'edit')">{{ $t('basicData.edit') }}
        </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)"/>
            <input type="text"
                   v-model="option.data"
                   @input="changeFilterEvent($event, option, $panel)"/>
          </div>
        </div>
      </template>
    </vxe-grid>
    <el-dialog
        v-model="dialogTableVisible"
        destroy-on-close
        title="流程卡打印"
        style="width: 80%;height:75% ">
      <PrintProcess :printList="selectRecords"
          style="width: 100%;height: 100%" />
    </el-dialog>
  </div>
</template>
@@ -243,14 +276,5 @@
.main-div-customer{
  width: 99%;
  height: 100%;
}
.stnw{
  height: 33px;
  width: 80px;
  background-color: #409eff;
  color: white;
  border: none;
  border-radius: 5px;
}
</style>
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintProcess.vue
@@ -1,954 +1,358 @@
<script setup>
import request from "@/utils/request"
import {ElDatePicker, ElMessage} from "element-plus"
import {nextTick, onMounted, onUnmounted, reactive, ref, watch} from "vue"
import {Search} from "@element-plus/icons-vue"
import {useRouter} from 'vue-router'
import {changeFilterEvent, filterChanged} from "@/hook"
import {useI18n} from 'vue-i18n'
import deepClone from "@/utils/deepClone";
//语言获取
const {t} = useI18n()
let router = useRouter()
let produceList = ref([])
let details = ref([])
const data = ref({
  printList:[]
})
const {currentRoute} = useRouter()
const route = currentRoute.value
data.value.printList = JSON.parse(route.query.printList)
let flowCardCount=data.value.printList.length
onMounted(() => {
  // if (id === null || id === undefined || id === '') {
  //   return
  // }
      request.post(`/processCard/getSelectPrinting`, data.value).then((res) => {
        if (res.code == 200) {
          produceList.value = deepClone(res.data.data)
        } else {
          ElMessage.warning(res.msg)
          router.push("/login")
        }
      })
    }
  )
// 打印方法
const printFlowCard = () => {
  // 需要打印的局部区域赋予"print-wrap"的id
  let el = document.getElementById("printFlowCard");
  let doc = document;
  let body = doc.body || doc.getElementsByTagName("body")[0];
  let printId = "print-" + Date.now();
  // 创建无副作用的打印容器(因不确定页面的打印元素有无其它样式)
  let content = doc.createElement("div");
  content.id = printId;
  // 样式控制与打印无关的元素隐藏
  let style = doc.createElement("style");
  style.innerHTML =
      "body>#" +
      printId +
      "{display:none}@media print{body>:not(#" +
      printId +
      "){display:none !important}body>#" +
      printId +
      "{display:block;padding-top:1px}}";
  //
   content.innerHTML = el.outerHTML;
  // // console.log("el.outerHTML", el.outerHTML);
  body.appendChild(style);
  // 与style元素设置的样式相配合
  // 把打印内容的元素添加到body(作为body的子元素,可用body的子选择器 '>' 控制打印样式)
  body.appendChild(content);
  setTimeout(() => {
    window.print();
    body.removeChild(content);
    body.removeChild(style);
  }, 20);
}
</script>
<template>
  <div class="shu" style="height:0px;"></div>
  <div id="big" class="big">
    <div id="content">
      <table id="tab" border="1">
  <el-button id="printButton" @click="printFlowCard">打印</el-button>
  <div id="printFlowCard">
    <table v-for="(item,id) in produceList" id="contentTable" :key="id">
        <thead>
        <tr>
          <td colspan="22">
            <div class="bj">1</div>
            <h1>洛阳北方玻璃技术股份有限公司</h1>
            <h1>生产流程卡</h1>
            <div id="top">
              &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>包装方式:铁架</span><span
                style="float: right;position: relative;right: 5px;">流程卡号:<label class="liuchengka"
                                                                                    for="">NG23120401A01</label>/1共2架</span></div>
      <tr v-for="(itemFlow,index) in item.detail" :key="index">
        <td colspan="24">
          <div id="bj" style="float: right;font-size: 28px">{{ id+1 }}</div>
          <div>常州市吉利玻璃有限公司</div>
          <div>生产流程卡</div>
          <div style="text-align: right;font-weight: bolder">流程卡号: {{ itemFlow.process_id }}/{{ itemFlow.technologyNumber }} 共 {{flowCardCount}} 架</div>
          </td>
        </tr>
        <tr style="height:25px;">
          <td style="min-width:70px;">客户名称:</td>
          <td style="min-width:200px;">钢化设备事业部</td>
          <td style="min-width:200px;" colspan="2">项目名称:钢化设备事业部(23-12-1-01)</td>
          <td style="min-width:75px;">工艺流程:</td>
          <td style="min-width:550px;" colspan="17">切割-&gt;磨边-&gt;打孔-&gt;钢化-&gt;包装</td>
      <tr v-for="(items,index) in item.detail" :key="index">
        <td>客户名称:</td>
        <td colspan="2">{{ items.customer_name }}</td>
        <td>项目名称:</td>
        <td colspan="2">{{ items.project }}</td>
        <td style="width:100px">工艺流程:</td>
        <td colspan="16">{{ items.process }}</td>
        </tr>
        <tr style="height:25px;">
          <td>磨&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;边:</td>
          <td>精抛</td>
          <td colspan="2" style="word-wrap: break-word;">单片名称:<span class="dpmc">5mm欧洲灰平钢</span></td>
          <td>成品名称:</td>
          <td class="chengpinmingcheng" colspan="17" style="word-wrap: break-word;">5mm欧洲灰平钢</td>
      <tr v-for="(itemTr,index) in item.detail" :key="index">
        <td>磨边类型:</td>
        <td colspan="2">{{ itemTr.edging_type }}</td>
        <td>单片名称:</td>
        <td colspan="2">{{ itemTr.glass_child }}</td>
        <td>产品名称:</td>
        <td colspan="16">{{ itemTr.product_name }}</td>
        </tr>
        <tr>
          <td colspan="22">
            <table border="1" style="border-collapse: collapse;" frame="below">
              <tbody>
              <tr>
                <td rowspan="2" style="min-width:70px;">序号</td>
                <td rowspan="2" style="min-width:200px;">编号</td>
                <td rowspan="2" style="min-width:100px;">宽(弧长)*高</td>
                <td rowspan="2" style="min-width:49px;">数量</td>
                <td rowspan="2" style="min-width:49px;">面积</td>
                <td rowspan="2" style="min-width:49px;">周长</td>
                <td rowspan="2" style="min-width:73px;">半径</td>
                <td rowspan="2" style="min-width:73px;">备注</td>
                <td style="min-width:59px;" colspan="2">切割</td>
                <td style="min-width:59px;" colspan="2">磨边</td>
                <td style="min-width:59px;" colspan="2">打孔</td>
                <td style="min-width:59px;" colspan="2">钢化</td>
                <td style="min-width:59px;" colspan="2">包装</td>
                <td style="min-width:59px;" colspan="2"></td>
                <td style="min-width:59px;" colspan="2"></td>
                <td style="min-width:59px;" colspan="2"></td>
              </tr>
              <tr>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
              </tr>
              </tbody>
            </table>
          </td>
        </tr>
        </thead>
        <tbody>
        <tr>
          <td colspan="22">
            <table class="tab" border="1" frame="below">
              <tbody>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">2</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-1视窗玻璃ACB50.10.02-003</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1698</span>*339</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">1.15</td>
                <td style="min-width:49px;height:35.5px;">8.15</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">见图A,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">1</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-1视窗玻璃ACB50.10.01-003</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1428</span>*339</td>
                <td style="min-width:49px;height:35.5px;" class="sl">3</td>
                <td style="min-width:49px;height:35.5px;" class="mj">1.45</td>
                <td style="min-width:49px;height:35.5px;">10.6</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">见图A,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">3</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-2视窗玻璃ACB50.10.01-003</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1428</span>*339</td>
                <td style="min-width:49px;height:35.5px;" class="sl">3</td>
                <td style="min-width:49px;height:35.5px;" class="mj">1.45</td>
                <td style="min-width:49px;height:35.5px;">10.6</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">见图A,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">5</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-3视窗玻璃ACB50.10.01-003</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1428</span>*339</td>
                <td style="min-width:49px;height:35.5px;" class="sl">3</td>
                <td style="min-width:49px;height:35.5px;" class="mj">1.45</td>
                <td style="min-width:49px;height:35.5px;">10.6</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">见图A,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">4</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-2视窗玻璃ACB50.10.03-003</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1338</span>*339</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.91</td>
                <td style="min-width:49px;height:35.5px;">6.71</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">见图A,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">6</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-3视窗玻璃ACB50.10.03-003</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1338</span>*339</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.91</td>
                <td style="min-width:49px;height:35.5px;">6.71</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">见图A,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              </tbody>
            </table>
          </td>
        </tr>
        </tbody>
        <tfoot>
        <tr style="height: 20px;line-height: 20px;">
          <td colspan="22">数量:<label class="zsl" for="">15片</label>&nbsp;&nbsp;&nbsp;重量:<label class="zzl"
                                                                                                    for="">91.50kg</label>&nbsp;&nbsp;&nbsp;面积:<label class="zmj" for="">7.32m²</label></td>
        </tr>
        <tr>
          <td width="50%" style="word-wrap: break-word;;" colspan="5" rowspan="7"><textarea
              style="width: 100%; height: 90%; overflow: hidden; border: 0px;font-size:12px;">1)按企标。
2)各工序:成品玻璃贴编号及尺寸标签。
3)磨边:此单宽,高尺寸公差均为(0~-1)。
4)钢化:北玻商标,位置如图。
</textarea></td>
        </tr>
        <tr>
          <td width="70px" height="23px;">完工签名</td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
        </tr>
        <tr>
          <td>接收签名</td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
        </tr>
        <tr>
          <td>生产日期</td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
        </tr>
        <tr>
          <td>质检签名</td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
        </tr>
        <tr>
          <td>架子编号</td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
        </tr>
        <tr height="65px">
          <td colspan="22"><span id="qrcode1" class="qr" title="NG23120401A01/1"><canvas width="60" height="60"
                                                                                         style="display: none;"></canvas><img alt="Scan me!"
                                                                                                                              src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAAulJREFUaEPtmuFywyAMg5P3f+jsmjU7cG1/AtLrErqfLSwIW5bsdF2WZVs6/rbtd9u6rtXu6PNj0fF9ttce53gG/W8FxuO0cwIubz67KXvbx9roc/X7MuJq9rSeeX/GEeHWzXb9ZQFbTlrutQKj9V5kVQ4Tp73vXyL8Bfy8bntbrbfrrScaqfVCDZLLYXXztICJby0VX+G7Us2junNKhC8PmNwKRSGiROa0IomzZ4nqiHrmU3XYGozoEJ61/AhguiX1tiPfm1VpdQ8VSgXDaV6aZOvfAN5IDJVrc7omcVu1rNWu9jxjnR6w2ntSR6PIFVX8qBBGSUnObK/SNsK3B2zbwxYdLV2Pp7NllJVotl62zQAl6+RuKQIUjXiUlKY15Ou7AB8prWph5lO9qpm5o955GHE10+s/Dk8HmNKD5JpSu4fDZFeJsx4l5Cp9G8DREI/4pVrJKHPKCk8emZqLlrOEU8vbAlaNB/nc1qL3iPAZ/W35fyKZq/zAdIB7ORzpMfGpvO1RbipDBusGuzn8Bfx8i3iZCFMzTemn7i+rP8lRa0MimRv1dentAKsS0WrcM4dGdjTKmpEWNmwPe6cK6sW19NKKvqrVH2daquMiDlMj4B2YOKmanWoWTkO82wEm43FWsfIiTO1dL4ezbEPjcTvAdsRDsysyFtQ3e7ev0qaHsy/WcjrANKZVU5pckxd5VYdJd2mwWFXp6QCTLJG+Eq+yEQ9VYdXEUKaU36PxuB1gtXmwwMl6Eq+UEU9v9c6s6PALcfK5WTGjlH0rYFU/Rznr9cMRz4mbkT/PLnL4x6Vqu5hZy48CjjSPHFbrjMtrD6M6oeowucT9maTDKhB1XWUCzK/pLwGYtDS69cxTUzapLwW8Zw9HeDrAxPmokpY6TNJGHkCdjLyFw0rhoDSnIkUpLRmPXh0eSWnKDlXyIm8gcTgCEGnlZQET0F4eZfyi1KXUVw1LefbTvLSaftXDQYe/gIM0JA6X234ACjSUFgdqRbsAAAAASUVORK5CYII="
                                                                                                                              style="display: block;"><span class="ma">NG23120401A01/1</span></span></td>
        </tr>
        </tfoot>
      </table>
    </div>
  </div>
  <div class="shu" style="height:0px;"></div>
  <div id="big" class="big">
    <div id="content">
      <table id="tab" border="1">
        <thead>
        <tr>
          <td colspan="22">
            <div class="bj">1</div>
            <h1>洛阳北方玻璃技术股份有限公司</h1>
            <h1>生产流程卡</h1>
            <div id="top">
              &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span>包装方式:铁架</span><span
                style="float: right;position: relative;right: 5px;">流程卡号:<label class="liuchengka"
                                                                                    for="">NG23120401B02</label>/1共2架</span></div>
          </td>
        </tr>
        <tr style="height:25px;">
          <td style="min-width:70px;">客户名称:</td>
          <td style="min-width:200px;">钢化设备事业部</td>
          <td style="min-width:200px;" colspan="2">项目名称:钢化设备事业部(23-12-1-01)</td>
          <td style="min-width:75px;">工艺流程:</td>
          <td style="min-width:550px;" colspan="17">切割-&gt;磨边-&gt;钢化-&gt;包装</td>
        </tr>
        <tr style="height:25px;">
          <td>磨&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;边:</td>
          <td>精抛</td>
          <td colspan="2" style="word-wrap: break-word;">单片名称:<span class="dpmc">5mm欧洲灰平钢</span></td>
          <td>成品名称:</td>
          <td class="chengpinmingcheng" colspan="17" style="word-wrap: break-word;">5mm欧洲灰平钢</td>
        </tr>
        <tr>
          <td colspan="22">
            <table border="1" style="border-collapse: collapse;" frame="below">
              <tbody>
              <tr>
                <td rowspan="2" style="min-width:70px;">序号</td>
                <td rowspan="2" style="min-width:200px;">编号</td>
                <td rowspan="2" style="min-width:100px;">宽(弧长)*高</td>
                <td rowspan="2" style="min-width:49px;">数量</td>
                <td rowspan="2" style="min-width:49px;">面积</td>
                <td rowspan="2" style="min-width:49px;">周长</td>
                <td rowspan="2" style="min-width:73px;">半径</td>
                <td rowspan="2" style="min-width:73px;">备注</td>
                <td style="min-width:59px;" colspan="2">切割</td>
                <td style="min-width:59px;" colspan="2">磨边</td>
                <td style="min-width:59px;" colspan="2">钢化</td>
                <td style="min-width:59px;" colspan="2">包装</td>
                <td style="min-width:59px;" colspan="2"></td>
                <td style="min-width:59px;" colspan="2"></td>
                <td style="min-width:59px;" colspan="2"></td>
                <td style="min-width:59px;" colspan="2"></td>
              </tr>
              <tr>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
                <td>正品</td>
                <td>次品</td>
              </tr>
              </tbody>
            </table>
          </td>
        </tr>
        </thead>
        <tbody>
        <tr>
          <td colspan="22">
            <table class="tab" border="1" frame="below">
              <tbody>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">11</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-1钢化5</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1852</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.53</td>
                <td style="min-width:49px;height:35.5px;">7.98</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
        <td rowspan='2'>序号</td>
        <td rowspan='2'>宽*高</td>
        <td rowspan='2'>数量</td>
        <td rowspan='2'>面积</td>
        <td rowspan='2'>周长</td>
        <td rowspan='2'>半径</td>
        <td rowspan='2'>备注</td>
        <td colspan='2'>切割</td>
        <td colspan='2'>磨边</td>
        <td colspan='2'>钢化</td>
        <td colspan='2'>中空</td>
        <td colspan='2'>包装</td>
        <td colspan='2'></td>
        <td colspan='2'></td>
        <td colspan='2'></td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">9</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-1钢化3</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1835</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">6</td>
                <td style="min-width:49px;height:35.5px;" class="mj">1.57</td>
                <td style="min-width:49px;height:35.5px;">23.74</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
      <tr>
        <td>正品</td>
        <td>次品</td>
        <td>正品</td>
        <td>次品</td>
        <td>正品</td>
        <td>次品</td>
        <td>正品</td>
        <td>次品</td>
        <td>正品</td>
        <td>次品</td>
        <td>正品</td>
        <td>次品</td>
        <td>正品</td>
        <td>次品</td>
        <td>正品</td>
        <td>次品</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">14</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-2钢化3</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1835</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">4</td>
                <td style="min-width:49px;height:35.5px;" class="mj">1.05</td>
                <td style="min-width:49px;height:35.5px;">15.82</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">19</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-3钢化3</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1835</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">6</td>
                <td style="min-width:49px;height:35.5px;" class="mj">1.57</td>
                <td style="min-width:49px;height:35.5px;">23.74</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">13</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-2钢化2</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1732</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.5</td>
                <td style="min-width:49px;height:35.5px;">7.5</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">12</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-2钢化1</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1692</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.48</td>
                <td style="min-width:49px;height:35.5px;">7.34</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">16</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-2钢化5</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1492</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.43</td>
                <td style="min-width:49px;height:35.5px;">6.54</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">21</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-3钢化5</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1492</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.43</td>
                <td style="min-width:49px;height:35.5px;">6.54</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">10</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-1钢化4</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1435</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">3</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.62</td>
                <td style="min-width:49px;height:35.5px;">9.47</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">15</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-2钢化4</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1435</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">3</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.62</td>
                <td style="min-width:49px;height:35.5px;">9.47</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">20</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-3钢化4</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1435</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">3</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.62</td>
                <td style="min-width:49px;height:35.5px;">9.47</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">8</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-1钢化2</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1387</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.4</td>
                <td style="min-width:49px;height:35.5px;">6.12</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">18</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-3钢化2</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1387</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.4</td>
                <td style="min-width:49px;height:35.5px;">6.12</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">7</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-1钢化1</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1347</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.39</td>
                <td style="min-width:49px;height:35.5px;">5.96</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              <tr class="tr">
                <td style="min-width:70px;height:35.5px;" class="tab_td1">17</td>
                <td style="min-width:200px;height:35.5px;" class="tab_td2">01-3钢化1</td>
                <td style="min-width:100px;height:35.5px;" class="kg"><span class="kuan">1347</span>*143</td>
                <td style="min-width:49px;height:35.5px;" class="sl">2</td>
                <td style="min-width:49px;height:35.5px;" class="mj">0.39</td>
                <td style="min-width:49px;height:35.5px;">5.96</td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3 banjin"></td>
                <td style="min-width:73px;height:35.5px;" class="tab_td3">不打商标,</td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td style="min-width:29px;height:35.5px;"></td>
                <td class="xh" style="display:none;">1</td>
              </tr>
              </tbody>
            </table>
          </td>
      <tr v-for="(itemDatile,index) in item.detailList" :key="index">
        <td>{{ itemDatile.order_number }}</td>
        <td>{{ itemDatile.child_width }}</td>
        <td>{{ itemDatile.quantity }}</td>
        <td>{{ itemDatile.total_area }}</td>
        <td>{{ itemDatile.perimeter }}</td>
        <td>{{ itemDatile.bend_radius }}</td>
        <td>{{ itemDatile.order_number }}</td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        </tr>
        </tbody>
        <tfoot>
        <tr style="height: 20px;line-height: 20px;">
          <td colspan="22">数量:<label class="zsl" for="">43片</label>&nbsp;&nbsp;&nbsp;重量:<label class="zzl"
                                                                                                    for="">125.00kg</label>&nbsp;&nbsp;&nbsp;面积:<label class="zmj" for="">10.00m²</label></td>
        </tr>
        <tr>
          <td width="50%" style="word-wrap: break-word;;" colspan="5" rowspan="7">
              <textarea style="width: 100%; height: 90%; overflow: hidden; border: 0px;font-size:12px;">1)按企标。
2)各工序:成品玻璃贴编号及尺寸标签。
3)磨边:此单宽,高尺寸公差均为(0~-1)。
4)钢化:北玻商标,位置如图。
</textarea>
        <td colspan="24" v-for="(itemsum,index) in item.detail" :key="index">
          数量:
          <label>{{ itemsum.quantity }}</label>
          面积:
          <label>{{ itemsum.gross_area }}</label>
          重量:
          <label>{{ itemsum.gross_area }}</label>
          </td>
        </tr>
        <tr>
          <td width="70px" height="23px;">完工签名</td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
          <td width="56px;" height="23px;" colspan="2"></td>
      <tr v-for="(itemtextarea,index) in item.detail" :key="index">
        <td colspan="6" rowspan="6" style="width: 450px;height: 150px ">
          <div style="width: 100%;height: 100%"><textarea style="height: 98%;width: 98%">{{ itemtextarea.processing_note }}</textarea></div>
        </td>
        <td>完工签名</td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        </tr>
        <tr>
          <td>接收签名</td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
        <td>接受签名</td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        </tr>
        <tr>
          <td>生产日期</td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        </tr>
        <tr>
          <td>质检签名</td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        </tr>
        <tr>
          <td>架子编号</td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
          <td colspan="2"></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        <td></td>
        </tr>
        <tr height="65px">
          <td colspan="22"><span id="qrcode2" class="qr" title="NG23120401B02/1"><canvas width="60" height="60"
                                                                                         style="display: none;"></canvas><img alt="Scan me!"
                                                                                                                              src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAAXNSR0IArs4c6QAAAxBJREFUaEPtmuFyhDAIhPX9H9rO2dpJOOBboh2rXn9W47GBXZboPE3TMg38Lcv3snmeB1b7S7Zn2qvbbxzxm69onwk42l3a7Wp6vYqgzG6/YTNcjXmtyC3D1cXq/dGGtf8/FXDESdpdy7MNkMI/CzhaE8WgxuxmWF1MQd4WsLpBloetwlNJ0+ZWYnjjsLqYWkR0vQ0+okFUHZWqed3rxbAbsA3CilSUHU+0aAM+gMH8SBmmvkpZIIVtn2/pU6WJ2hrb3zm8D18GMGU24iYBzPow9VW6Xo2568PVxRQMXfdUlNZQySsY5kUlgvK05h7FYamKfmSIH8BqZqi8qDy9giHH5bk1T/Wz3v+W4dsDjg4AyBqq0xE5MUW8qlyP+nuq0o8FbHe3mtlM3OlZau+veOzwTIsEhEY2pYudAtj2YRItAlpZTyee1U5gVdx7flmlLw/YHuKNTjBUwjRleevVkqee3x06PB5wpMrkclQ1p0pQrmd9Npu3uz5MqnwbwJtKE8focC/qhVQxntOK1JZUO0pKd+LxAfxzMKZkps3O5TJMokMlP7JBZFJIN9TjpU7IohMPehipqcL5UwFXpZ4O2BXVjwzD6GYOiVa1jCx31fWeOqtnV6oH92ILvbTaGkbn5tUEiJ9LULWUrGU0Ld0WsPoFQJXjtGFthqtcVivD0wL5VcttAJPTOmpE88RMHUVVjiqx/ooW3ay2Ieqt3WxqRKsqgKpX6Lw0zcMRFyvtJxsQWp5RJqk/04atuvE4wHtfphEPFQWm0iQfT4LqjodULtH1ywHe+62lOmVVVJrsKlVENrnt/rj0soCrxl3hZuamVOX2VDzLIA0lstOyZXYbwDS4E39UEfOyT5uqCmv6Qny0D6smIasE1d1Vh4U/BVwVrYyT1epSK6L0qkUZ81oQ5KUvD1jNCnlvUnRlo+hkZJeXprcAipEfpQO9spWMx2gfHnVFlT5MAIlGKYdJ+klZifMtBahKIhqMtsaupAmovU4VQUFlnFVNjarSnagePTxQEN6JB/X00c31knj48PDfAX8Bd8KdHJuN7HEAAAAASUVORK5CYII="
                                                                                                                              style="display: block;"><span class="ma">NG23120401B02/1</span></span></td>
      <tr>
        <td colspan="17" rowspan="2">
          <div style="width: 60px;height: 60px;background-color: red"></div>
        </td>
        </tr>
        </tfoot>
      </table>
    </div>
  </div>
</template>
<style scoped>
.JColResizer {
  table-layout: fixed;
* {
  margin: 0;
  padding: 0;
}
.JColResizer>tbody>tr>td,
.JColResizer>tbody>tr>th {
  overflow: hidden;
  padding-left: 0 !important;
  padding-right: 0 !important;
#printButton{
  margin-top: -40px;
  width: 100px;
}
.JCLRgrips {
  height: 0px;
  position: relative;
#printFlowCard {
  margin-top: -40px;
  text-align: center;
  //font-weight: bolder;
  height: 600px;
}
.JCLRgrip {
  margin-left: -5px;
  position: absolute;
  z-index: 5;
#contentTable {
  border-collapse: collapse;
  border: 1px solid black;
  width: 100%;
}
.JCLRgrip .JColResizer {
  position: absolute;
  background-color: red;
  filter: alpha(opacity=1);
  opacity: 0;
  width: 10px;
  height: 100%;
  cursor: e-resize;
  top: 0px
#contentTable thead {
  font-size: 13px;
  font-weight: bolder;
}
.JCLRLastGrip {
  position: absolute;
  width: 1px;
#contentTable thead div {
  font-size: 15px;
  font-weight: bolder;
}
.JCLRgripDrag {
  border-left: 1px dotted black;
#contentTable tr td {
  border: 1px solid black;
  height: 22px;
  font-weight: bolder;
}
#contentTable tbody{
  height: 22px;
}
.JCLRFlex {
  width: auto !important;
#contentTable tbody td {
  width: 50px;
}
.JCLRgrip.JCLRdisabledGrip .JColResizer {
  cursor: default;
  display: none;
#contentTable tfoot{
  font-size: 12px;
  font-weight: bolder;
}
/* 在 .footer 元素后始终插入分页符 */
@media print {
  #contentTable {page-break-after: always;}
}
thead { display:table-header-group;page-break-inside:avoid; }
tbody { display:table-row-group;}
tfoot { display:table-footer-group;page-break-inside:avoid; }
</style>
north-glass-erp/northglass-erp/src/views/pp/processCard/ProcessCard.vue
@@ -27,6 +27,7 @@
        </el-breadcrumb-item>
        <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/processCard/ProductionScheduling' }">{{$t('processCard.scheduling')}}
        </el-breadcrumb-item>
        <el-breadcrumb-item @click="changeRouter(4)" :class="indexFlag===4?'indexTag':''" :to="{ path: '/main/processCard/SelectPrintFlowCard' }" >打印</el-breadcrumb-item>
        <el-breadcrumb-item @click="changeRouter(4)" :class="indexFlag===4?'indexTag':''" :to="{ path: '/main/processCard/SelectPrintFlowCard' }" style="display: none">打印</el-breadcrumb-item>
      </el-breadcrumb>
    </div>
north-glass-erp/northglass-erp/src/views/pp/processCard/SelectPrintFlowCard.vue
@@ -1,105 +1,288 @@
<script lang="ts" setup>
import {reactive, ref} from 'vue'
import {reactive, ref} from "vue";
import {useRouter} from 'vue-router'
import request from "@/utils/request";
import deepClone from "@/utils/deepClone";
import {ElDatePicker, ElMessage} from "element-plus";
import {Search} from "@element-plus/icons-vue";
import {useI18n} from 'vue-i18n'
import {changeFilterEvent, filterChanged} from "@/hook"
//语言获取
const {t} = useI18n()
// do not use same name with ref
let router = useRouter()
//定义页面总页数
let pageTotal = ref('')
//定义数据返回结果
let produceList = ref([])
//定义当前页数
let pageNum = $ref(1)
let pageState = null
const form = reactive({
  name: '',
  region: '',
  date1: '',
  date2: '',
  delivery: false,
  type: [],
  resource: '',
  desc: '',
  orderId: '',
  project: ''
})
const defaultTime = ref<[Date, Date]>([
  new Date(2000, 1, 1, 0, 0, 0),
  new Date(2000, 2, 1, 23, 59, 59),
])
const tableData = [
const getTableRow = (row, type) => {
  switch (type) {
    case 'edit' :{
      router.push({path: '/main/processCard/PrintFlowCard', query: { orderId: row.order_id }})
      break
    }
  }
}
/*后端返回结果多层嵌套展示*/
const hasDecimal = (value) => {
  const regex = /\./; // 定义正则表达式,查找小数点
  return regex.test(value); // 返回true/false
}
//筛选条件,有外键需要先定义明细里面的数据
let filterData = ref({
  orderGlassDetail: {
    productionId: '',
  },
  orderDetail: {
    orderId: '',
    productId: '',
    productName: '',
  }
})
//获取七天前到当前时间
function getNowTime() {
  const start = new Date(new Date().getTime() - 3600 * 1000 * 24 * 7)
      .toISOString()
      .replace('T', ' ')
      .slice(0, 10) //默认开始时间7天前
  const end = new Date(new Date().getTime() + 3600 * 1000 * 24)
      .toISOString()
      .replace('T', ' ')
      .slice(0, 10)//默认结束时间当前时间
  return [start, end]
}
//第一次加载获取近七天时间和默认状态
form.date1 = getNowTime()
let startTime = form.date1[0]
let endTime = form.date1[1]
let orderId=form.orderId
let project=form.project
if (orderId==''){
  orderId=null
}
if (project==''){
  project=null
}
//第一次加载数据
request.post(`/processCard/selectPrintFlowCard/${startTime}/${endTime}/${orderId}/${project}`, filterData.value).then((res) => {
  if (res.code == 200) {
    produceList = produceList.value.concat(deepClone(res.data.data))
    xGrid.value.reloadData(produceList)
    gridOptions.loading = false
  } else {
    ElMessage.warning(res.msg)
  }
})
//点击查询
const getWorkOrder = () => {
  let startTime = form.date1[0]
  let endTime = form.date1[1]
  let orderId=form.orderId
  let project=form.project
  if (orderId==''){
    orderId=null
  }
  if (project==''){
    project=null
  }
  request.post(`/processCard/selectPrintFlowCard/${startTime}/${endTime}/${orderId}/${project}`, filterData.value).then((res) => {
    if (res.code == 200) {
      xGrid.value.loadData(res.data.data)
      gridOptions.loading = false
    } else {
      ElMessage.warning(res.msg)
    }
  })
}
//子组件接收参数
const xGrid = ref()
const gridOptions = reactive({
  loading: true,
  border: "full",//表格加边框
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe: true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true, height: 30},//鼠标移动或选择高亮
  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},
    {title: t('basicData.operate'), width: 80, slots: { default: 'button_slot' },fixed:"left"},
    {type: 'seq', fixed: "left", title: t('basicData.Number'), width: 50},
  {
    salesOrderNo: 'NG231201',
    entryName: '信合春天里',
    total: '169',
    TotalArea: '175.31',
      field: 'order_id',
      title: '销售单号',
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
  },
  {
    salesOrderNo: 'NG231202',
    entryName: '信合春天里',
    total: '169',
    TotalArea: '175.31',
      field: 'project',
      title: '项目名称',
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
  },
  {
    salesOrderNo: 'NG231203',
    entryName: '信合春天里',
    total: '169',
    TotalArea: '175.31',
      field: 'quantity',
      title: '数量',
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
  },
  {
    salesOrderNo: 'NG231204',
    entryName: '信合春天里',
    total: '169',
    TotalArea: '175.31',
      field: 'area',
      title: '面积',
      filters: [{data: ''}],
      slots: {filter: 'num1_filter'},
      filterMethod: filterChanged
  },
  {
    salesOrderNo: 'NG231205',
    entryName: '信合春天里',
    total: '169',
    TotalArea: '175.31',
  ],//表头按钮
  toolbarConfig: {
    buttons: [],
    import: false,
    // export: true,
    // print: true,
    zoom: true,
    custom: true
  },
  {
    salesOrderNo: 'NG231206',
    entryName: '信合春天里',
    total: '169',
    TotalArea: '175.31',
  },
  {
    salesOrderNo: 'NG231207',
    entryName: '信合春天里',
    total: '169',
    TotalArea: '175.31',
  },
  data: [],//table body实际数据
  //脚部求和
  footerMethod({columns, data}) {//页脚函数
    let footList = []
    return [
      columns.map((column, columnIndex) => {
        if (columnIndex === 0) {
          return '合计:'
        }
        if (footList.includes(column.field)) {
          return sumNum(data, column.field)
        }
        return ''
      })
]
  }
})
</script>
<template>
  <div>
  <div class="main-div-customer">
    <div id="selectForm">
      <el-row :gutter="0">
<!--        <el-input placeholder="销售单号" v-model="form.name" style="width: 200px"/>-->
<!--        &nbsp;&nbsp;-->
<!--        <el-input placeholder="项目名称" v-model="form.region" style="width: 200px"/>-->
<!--        &nbsp;&nbsp;-->
        <el-date-picker
            v-model="form.date1"
            type="daterange"
            start-placeholder="开始时间"
            end-placeholder="结束时间"
            :default-time="defaultTime"
            format="YYYY/MM/DD"
            start-placeholder="开始时间"
            type="daterange"
            value-format="YYYY-MM-DD"
        />
        &nbsp;&nbsp;
        <el-button type="primary">查询</el-button>
        <el-input v-model="form.orderId" :placeholder="$t('order.orderId')" clearable style="width: 110px"></el-input>
        &nbsp;&nbsp;
        <el-input v-model="form.project" clearable placeholder="项目名称" style="width: 110px"></el-input>
        &nbsp;&nbsp;
        <el-button
            id="select"
            :icon="Search"
            type="primary" @click="getWorkOrder">{{ $t('basicData.search') }}
        </el-button>
      </el-row>
    </div>
    <el-table :data="tableData" border style="width: 100%" height="100%">
      <el-table-column sortable prop="salesOrderNo" label="销售单号" width="110" >
        <template v-slot="scope">
          <router-link :to="{path:'PrintFlowCard'}" >{{scope.row.salesOrderNo}}</router-link>
    <vxe-grid
        ref="xGrid"
        class="mytable-scrollbar"
        height="100%"
        max-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 v-if="hasDecimal(item.field)">{{ row[item.field.split('.')[0]][item.field.split('.')[1]] }}</span>
            <span v-else>{{ row[item.field] }}</span>
          </li>
        </ul>
        </template>
      </el-table-column>
      <el-table-column prop="entryName" label="项目名称" width="155" />
      <el-table-column prop="total" label="总片数" width="75" />
      <el-table-column prop="TotalArea" label="总面积" width="100" />
    </el-table><!-- <h1>{{msg}}</h1> -->
      <!--左边固定显示的插槽-->
      <template #button_slot="{ row }">
        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">{{$t('basicData.edit')}}</el-button>
      </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)"/>
          </div>
        </div>
      </template>
    </vxe-grid>
  </div>
</template>
<style scoped>
#selectForm {
  width: 40%;
.main-div-customer {
  width: 99%;
  height: 100%;
  text-align: center;
}
#selectForm {
  width: 60%;
}
north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue
@@ -24,7 +24,6 @@
  let endTime = form.date1[1]
  switch (type) {
    case 'select' : {
      console.log(row.processId)
      router.push({path: '/main/processCard/SelectDetailProcessCard', query: { processId: row.processId }})
      break
    }
@@ -159,7 +158,6 @@
    pageTotal.value = res.data.total
    produceList = produceList.value.concat(deepClone(res.data.data))
    xGrid.value.reloadData(produceList)
    console.log(produceList)
    gridOptions.loading = false
  } else {
    ElMessage.warning(res.msg)
north-glass-erp/northglass-erp/src/views/pp/report/ProcessCardProgress.vue
@@ -86,7 +86,6 @@
        item.reportWorkQuantityCount=JSON.parse(item.reportWorkQuantityCount)
      })
      mergeCells.value = res.data.mergeCell
      console.log(res.data.title)
      xGrid.value.loadData(res.data.data)
    } else {
      ElMessage.warning(res.msg)
north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
@@ -516,7 +516,6 @@
const checkClose = async (done) => {
  if(brokenGrid.value.getTableData().fullData.length===0){
    console.log(brokenRow.value)
    brokenRow.value.breakageQuantity=null
    brokenRow.value.completedQuantity = brokenRow.value.quantity
    brokenRow.value.damageDetails=[]
north-glass-erp/northglass-erp/src/views/pp/workOrder/SelectWorkOrder.vue
@@ -29,7 +29,6 @@
      let startTime = form.date1[0]
      let endTime = form.date1[1]
      let state = optionVal.value
      console.log(startTime, endTime, state)
        request.post(`/workOrder/deleteOrderWork/${row.orderId}/${row.productionId}`).then((res) => {
        if (res.code == 200) {
          ElMessage.success(t('workOrder.deleteOk'))
@@ -128,7 +127,6 @@
let state = optionVal.value
//第一次加载数据
console.log('第一次加载数据:',state,startTime,endTime)
request.post(`/workOrder/orderGlassDetail/${startTime}/${endTime}/${state}`, filterData.value).then((res) => {
  if (res.code == 200) {
north-glass-erp/northglass-erp/src/views/sd/basicData/CreateBasicData.vue
@@ -157,7 +157,6 @@
const handleChange = (value) => {
  const filterArr = options.value.filter((item) =>item.value === value[0]
  ).map((item) =>item.children.filter((item) =>item.value === value[1]))
  console.log(filterArr)
}
north-glass-erp/northglass-erp/src/views/sd/customer/SelectCustomerOrder.vue
@@ -68,7 +68,6 @@
    request.post(`/customer/getSelectCustomerOderDate/1/${total.pageSize}/${selectDate.value}`,filterData.value).then((res) => {
      if(res.code==200){
        console.log(res.data.data)
        total.dataTotal = res.data.total.total*1
        total.pageTotal= res.data.total.pageTotal
        selectDate.value = res.data.selectDate
north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue
@@ -107,7 +107,6 @@
  if(res.code==200){
    titleSelectJson.value=deepClone(res.data)
    console.log(titleSelectJson.value)
    const today = new Date
    today.setTime(today.getTime() + (15 * 24 * 60 * 60 * 1000))
    titleUploadData.value.deliveryDate = today.getFullYear() +
@@ -431,7 +430,6 @@
            deliveryId: route.query.deliveryID
          })
          console.log(flowData)
           request.post("/Delivery/insertDelivery", flowData.value).then((res) => {
             if(res.code==200){
               ElMessage.success(t('delivery.deliveryNoteSubmittedSuccessfully'))
north-glass-erp/northglass-erp/src/views/sd/delivery/DeliveryPrinting.vue
@@ -69,7 +69,6 @@
onMounted(()=>{
  console.log(props.deliveryId)
  /*if(props.deliveryId===null  || props.deliveryId===undefined || props.deliveryId===''){
    return
  }
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue
@@ -86,7 +86,6 @@
request.post(`/Delivery/getSelectShippingOrder/1/${total.pageSize}/${selectDate.value}`,filterData.value).then((res) => {
  if(res.code==200){
    console.log(res.data.data)
    total.dataTotal = res.data.total.total*1
    total.pageTotal= res.data.total.pageTotal
north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDeliveryDetail.vue
@@ -296,7 +296,6 @@
  }
  request.post(`/order/getOrderById/${str}`).then((res) => {
    if(res.code==200){
      console.log(res.data.order)
      titleUploadData.value = res.data.order
      //取消工艺按钮禁用
      gridOptions.toolbarConfig.buttons[1].disabled = false
north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
@@ -72,17 +72,20 @@
let otherMoney = ref(null)
const gridOptions = reactive({
  loading:false,
  border:  "full",//表格加边框
  keepSource: true,//保持源数据
  align: 'center',//文字居中
  stripe:true,//斑马纹
  rowConfig: {isCurrent: true, isHover: true,height: 30},//鼠标移动或选择高亮
  //virtualScroll: true, // 开启虚拟滚动功能
  id: 'OrderList',
  showFooter: true,//显示脚
  printConfig: {},
  importConfig: {},
  exportConfig: {},
  scrollY:{ enabled: true },//开启虚拟滚动
  scrollY:{ enabled: true,gt:15 },//开启虚拟滚动
  scrollX:{ enabled: true,gt:30 },//开启虚拟滚动
  showOverflow:true,
  menuConfig: {
    body: {
@@ -435,6 +438,7 @@
//初始化判断是否有id传入
onMounted(()=>{
  gridOptions.loading=true
  //启用表格拖动选中
  addListener(xGrid.value,gridOptions)
  const str = route.query.orderId || history.state.orderId
@@ -495,15 +499,17 @@
      orderDetails.forEach(item => {
        item.otherColumns = JSON.parse(item.otherColumns)
      })
      otherMoney.value =res.data.orderOtherMoneyList
      //加载副表数据
      xGrid.value.reloadData(orderDetails)
      gridOptions.loading=false
    }else{
      ElMessage.error(res.msg)
    }
  })
})
//作废订单
const cancelOrder = () => {
  request.post(`/order/cancelOrder/${titleUploadData.value.orderId}`).then((res) =>{
    if (res.code== 200){
@@ -695,7 +701,9 @@
   }else if(column.property.indexOf('otherColumns.M')>-1){
     let quantity = 0
     xGrid.value.getTableData().fullData.forEach(item => {
       quantity += item.quantity*(getNestedProperty(item,column.property)*1)
       let orderQuantity = isNaN(item.quantity) ? 0 : item.quantity
       let value = isNaN((getNestedProperty(item,column.property)*1)) ? 0 : (getNestedProperty(item,column.property)*1)
       quantity += orderQuantity*value
     })
     if(!isNaN(quantity)){
       otherMoney.value.forEach(item => {
north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
@@ -248,7 +248,6 @@
        selectDate.value=res.data.selectDate
        orderList.value = deepClone(res.data.data)
        xGrid.value.loadData(orderList.value)
        console.log(xGrid.value.getTableData().fullData)
      }else{
        ElMessage.warning(res.msg)
      }
north-glass-erp/northglass-erp/src/views/sd/product/Test.vue
@@ -69,7 +69,6 @@
//接收子组件传过来的选中复选框数据
const getCheckList = (row) =>{
  alert('我接收到子组件传送的确认复选框信息可在控制台查看')
  console.log(row)
}
north-glass-erp/src/main/java/com/example/erp/controller/pp/ProcessCardController.java
@@ -2,6 +2,7 @@
import com.example.erp.common.Constants;
import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.sd.DeliveryDetail;
import com.example.erp.entity.sd.Order;
import com.example.erp.common.Result;
import com.example.erp.entity.sd.OrderDetail;
@@ -44,7 +45,6 @@
            @PathVariable Date selectTime2,
            @RequestBody FlowCard  flowCard){
        return Result.seccess(flowCardService.selectAddProcess(selectTime1,selectTime2,flowCard));
    }
    //分架明细查询
@@ -144,4 +144,30 @@
        return Result.seccess(flowCardService.flowCardDetailSv(processId,flowCard));
    }
    @ApiOperation("流程卡打印查询接口")
    @PostMapping  ("/selectPrintFlowCard/{selectTime1}/{selectTime2}/{orderId}/{project}")
    public Result selectPrintFlowCard(
            @PathVariable Date selectTime1,
            @PathVariable Date selectTime2,
            @PathVariable String orderId,
            @PathVariable String project,
            @RequestBody FlowCard flowCard){
        return Result.seccess(flowCardService.selectPrintFlowCardSv(selectTime1,selectTime2,orderId,project,flowCard));
    }
    @ApiOperation("流程卡明细查询接口")
    @PostMapping  ("/selectPrint/{orderId}")
    public Result selectPrint(
            @PathVariable String orderId,
            @RequestBody FlowCard flowCard){
        return Result.seccess(flowCardService.selectPrintSv(orderId,flowCard));
    }
    @ApiOperation("打印流程卡数据查询接口")
    @PostMapping("/getSelectPrinting")
    public Result getSelectPrinting( @RequestBody Map<String,Object> object){
        return Result.seccess(flowCardService.getSelectPrintingSv(object));
    }
}
north-glass-erp/src/main/java/com/example/erp/entity/sd/OrderOtherMoney.java
@@ -17,5 +17,7 @@
    private Double quantity;
    private Double price;
    private Double money;
    @TableField(select = false,exist= false)
    private String alias;
    private LocalDateTime createTime;
}
north-glass-erp/src/main/java/com/example/erp/mapper/pp/FlowCardMapper.java
@@ -2,9 +2,6 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.sd.Order;
import com.example.erp.entity.sd.OrderDetail;
import com.example.erp.entity.sd.OrderGlassDetail;
import org.apache.ibatis.annotations.Mapper;
import java.sql.Date;
@@ -68,4 +65,14 @@
    List<Map<String, String>> flowCardDetailMp(String processId, FlowCard flowCard);
    Boolean deleteReportingWork(String processId);
    List<Map<String, String>> selectPrintFlowCardMp(Date selectTime1, Date selectTime2, String orderId, String project, FlowCard flowCard);
    List<Map<String, String>> selectPrintMp(String orderId, FlowCard flowCard);
    List<Map<String, String>> getPrimaryList(String processId, Integer technologyNumber);
    List<Map<String, Object>> getDetailList(String processId, Integer technologyNumber);
    List<Map<String, Object>> getProcessList(String processId, Integer technologyNumber);
}
north-glass-erp/src/main/java/com/example/erp/mapper/sd/BasicOtherMoneyMapper.java
@@ -4,6 +4,8 @@
import com.example.erp.entity.sd.BasicOtherMoney;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface BasicOtherMoneyMapper extends BaseMapper<BasicOtherMoney> {
}
north-glass-erp/src/main/java/com/example/erp/mapper/sd/OrderOtherMoneyMapper.java
@@ -4,6 +4,10 @@
import com.example.erp.entity.sd.OrderOtherMoney;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface OrderOtherMoneyMapper extends BaseMapper<OrderOtherMoney> {
    List<OrderOtherMoney> findById(String id);
}
north-glass-erp/src/main/java/com/example/erp/service/mm/MaterialInventoryService.java
@@ -198,7 +198,6 @@
    public Map<String, Object> getSelectMaterialInventoryEngineering(Integer pageNum, Integer pageSize, OptimizeUse optimizeUse) {
        Integer offset = (pageNum - 1) * pageSize;
        System.out.println(optimizeUse);
        Map<String, Object> map = new HashMap<>();
        map.put("data", materialInventoryMapper.getSelectMaterialInventoryEngineering(offset, pageSize, optimizeUse));
        map.put("total", materialInventoryMapper.getSelectMaterialInventoryEngineeringPageTotal(offset, pageSize, optimizeUse));
north-glass-erp/src/main/java/com/example/erp/service/pp/FlowCardService.java
@@ -6,17 +6,15 @@
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.sd.Order;
import com.example.erp.entity.sd.OrderDetail;
import com.example.erp.entity.sd.OrderGlassDetail;
import com.example.erp.entity.sd.OrderProcessDetail;
import com.example.erp.mapper.pp.FlowCardMapper;
import com.example.erp.mapper.sd.OrderGlassDetailMapper;
import com.example.erp.mapper.sd.OrderProcessDetailMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.sql.Date;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -195,4 +193,46 @@
        map.put("data", flowCardMapper.flowCardDetailMp(processId, flowCard));
        return map;
    }
    public Object selectPrintFlowCardSv(Date selectTime1, Date selectTime2, String orderId, String project, FlowCard flowCard) {
        if ("null".equals(orderId)) {
            orderId = "";
        }
        if ("null".equals(project)) {
            project = "";
        }
        Map<String, Object> map = new HashMap<>();
        map.put("data", flowCardMapper.selectPrintFlowCardMp(selectTime1, selectTime2, orderId, project, flowCard));
        return map;
    }
    public Object selectPrintSv(String orderId, FlowCard flowCard) {
        Map<String, Object> map = new HashMap<>();
        map.put("data", flowCardMapper.selectPrintMp(orderId, flowCard));
        return map;
    }
    public Map<String, Object> getSelectPrintingSv(Map<String, Object> object) {
        Map<String, Object> map = new HashMap<>();
        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();//最终结果
        List<FlowCard> flowCardList = JSONArray.parseArray(JSONObject.toJSONString(object.get("printList")), FlowCard.class);
        if (!flowCardList.isEmpty()) {
            for (FlowCard flowCard : flowCardList) {
                Map<String, Object> itemmap = new HashMap<>();
                //流程卡表头表尾数据
                itemmap.put("detail", flowCardMapper.getPrimaryList(flowCard.getProcessId(), flowCard.getTechnologyNumber()));
                //流程卡明细数据
                List<Map<String, Object>> detailList = flowCardMapper.getDetailList(flowCard.getProcessId(), flowCard.getTechnologyNumber());
                //工艺流程
                List<Map<String, Object>> processList = flowCardMapper.getProcessList(flowCard.getProcessId(), flowCard.getTechnologyNumber());
                itemmap.put("detailList", detailList);
                itemmap.put("processList", processList);
                list.add(itemmap);
            }
        }
        map.put("data", list);
        return map;
    }
}
north-glass-erp/src/main/java/com/example/erp/service/pp/ReplenishService.java
@@ -126,7 +126,6 @@
                   patchMapper.updateReplenish(patchLog,userName);
                    ReportingWork reportingWork = reportingWorkMapper
                            .selectOne(new QueryWrapper<ReportingWork>().eq("reporting_work_id",patchLog.getReportingWorkId()));
                    System.out.println(reportingWork.getReportingWorkId());
                    //修改小片流程卡数量
                    patchMapper.updateOrderProcessDetail(patchLog,reportingWork);
                }
north-glass-erp/src/main/java/com/example/erp/service/sd/CustomerService.java
@@ -45,10 +45,8 @@
            Customer customer = JSONObject.parseObject(JSONObject.toJSONString(object.get("customer")), Customer.class);
           if(customer!=null){
               if (customer.getId()!=null && customer.getId()!=0){
                   System.out.println(111);
                   customerMapper.updateCustomer(customer);
               }else{
                   System.out.println(222);
                   customerMapper.insertCustomer(customer);
               }
@@ -109,8 +107,6 @@
                endDate = selectDate.get(1);
            }
        }
        System.out.println(orderDetail);
        System.out.println(orderDetail.getOrder());
        Map<String, Object> map = new HashMap<>();
        map.put("data", customerMapper.getSelectCustomerOderDate(offset, pageSize,startDate,endDate, orderDetail));
        map.put("total", customerMapper.getSelectCustomerOderDatePageTotal(offset, pageSize,startDate,endDate, orderDetail));
north-glass-erp/src/main/java/com/example/erp/service/sd/DeliveryService.java
@@ -77,7 +77,6 @@
                endDate = selectDate.get(1);
            }
        }
        System.out.println(pageSize);
        Map<String, Object> map = new HashMap<>();
        map.put("data", deliveryDetailMapper.getSelectDeliveryDetailReport(offset, pageSize,startDate,endDate, deliveryDetail));
        map.put("total", deliveryDetailMapper.getSelectDeliveryDetailReportPageTotal(offset, pageSize,startDate,endDate, deliveryDetail));
@@ -179,7 +178,6 @@
                //新增发货表数据
                deliveryMapper.insertDelivery(delivery, oddNumber, orderDetaillist.get(0).getOrderId());
            }
            System.out.println(4);
            Double area = 0.0;
            Integer quantity = 0;
            Double money = 0.0;
north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -190,9 +190,11 @@
    public Map<String,Object> getOrderById(String id) {
        Order order = orderMapper.selectOne(new QueryWrapper<Order>().eq("order_id",id));
        List<OrderDetail> orderDetails = orderDetailMapper.selectList(new QueryWrapper<OrderDetail>().eq("order_id",id));
        List<OrderOtherMoney> orderOtherMoneyList = orderOtherMoneyMapper.findById(id);
        Map<String,Object> map = new HashMap<>();
        map.put("order",order);
        map.put("orderDetails",orderDetails);
        map.put("orderOtherMoneyList",orderOtherMoneyList);
        return map;
    }
    //订单审核
north-glass-erp/src/main/java/com/example/erp/service/sd/ProductService.java
@@ -50,7 +50,6 @@
        JSONObject productJson = new JSONObject(productObject);
        Product product = JSONObject.parseObject(JSONObject.toJSONString(productJson.get("title")), Product.class);
        List<ProductDetail> productDetails = JSONArray.parseArray(JSONObject.toJSONString(productJson.get("detail")), ProductDetail.class);
        System.out.println(product);
        //完善主附表信息并返回
        Map<String,Object> getProductJson = updateProduct(productDetails,product);
        Product getProduct = JSONObject.parseObject(JSONObject.toJSONString(getProductJson.get("title")), Product.class);
north-glass-erp/src/main/java/com/example/erp/tools/netty/MyWebSocketHandler.java
@@ -37,7 +37,6 @@
            //如果url包含参数,需要处理
            if(uri.contains("?")){
                String newUri=uri.substring(0,uri.indexOf("?"));
                System.out.println(newUri);
                request.setUri(newUri);
            }
north-glass-erp/src/main/resources/mapper/pp/FolwCard.xml
@@ -402,4 +402,87 @@
        delete from sd.order_process_detail
        where  left(process_id,11) = left(#{processId},11)
    </delete>
    <select id="selectPrintFlowCardMp">
        select * from  sd.order where create_time between #{selectTime1} and #{selectTime2} and
                                      position(#{orderId} in order_id ) and position(#{project} in project)
        and processing_card=2
    </select>
    <select id="selectPrintMp">
        select fc.id,
               fc.order_id,
               fc.process_id,
               o.customer_name,
               o.project,
               ogd.technology_number,
               ogd.glass_address,
               od.quantity,
               ogd.total_area,
               od.product_name,
               ogd.glass_child,
               fc.founder,
               date(fc.splitFrame_time) as splitFrame_time
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on ogd.order_id = fc.order_id and ogd.order_number = fc.order_number and
                              ogd.technology_number = fc.technology_number
                 left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
                 left join sd.`order` as o on o.order_id = fc.order_id
        where fc.order_id = #{orderId}
        GROUP BY fc.process_id, ogd.technology_number
        order by fc.process_id, ogd.technology_number
    </select>
    <select id="getPrimaryList">
        select o.customer_name,
               o.project,
               ogd.process,
               od.edging_type,
               ogd.glass_child,
               od.product_name,
               o.processing_note,
               fc.process_id,
               SUM( od.quantity) as quantity,
               SUM(od.gross_area) as gross_area,
               #{technologyNumber} as technologyNumber
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
                              fc.technology_number = ogd.technology_number
                 left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
                 left join sd.`order` as o on o.order_id = fc.order_id
        where fc.process_id = #{processId}
          and fc.technology_number = #{technologyNumber}
        group by fc.process_id, fc.technology_number
    </select>
    <select id="getDetailList">
        select fc.order_number,
               concat(ogd.child_width, "*", ogd.child_height) as child_width,
               od.quantity,
               ogd.total_area,
               od.perimeter,
               od.bend_radius,
               od.remarks
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
                              fc.technology_number = ogd.technology_number
                 left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
        where fc.process_id = #{processId}
          and fc.technology_number = #{technologyNumber}
        group by fc.process_id, fc.order_number
        order by fc.order_number
        limit 15
    </select>
    <select id="getProcessList">
        select *
        from sd.order_process_detail
        where process_id = #{processId}
          and technology_number = #{technologyNumber}
        group by process
    </select>
</mapper>
north-glass-erp/src/main/resources/mapper/sd/BasicDataMapper.xml
north-glass-erp/src/main/resources/mapper/sd/BasicGlassTypeMapper.xml
north-glass-erp/src/main/resources/mapper/sd/BasicOtherMoneyMapper.xml
New file
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.erp.mapper.sd.BasicOtherMoneyMapper">
</mapper>
north-glass-erp/src/main/resources/mapper/sd/CustomerMapper.xml
north-glass-erp/src/main/resources/mapper/sd/DeliveryDetailMapper.xml
north-glass-erp/src/main/resources/mapper/sd/DeliveryMapper.xml
north-glass-erp/src/main/resources/mapper/sd/OrderDetailMapper.xml
north-glass-erp/src/main/resources/mapper/sd/OrderOtherMoneyMapper.xml
New file
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.erp.mapper.sd.OrderOtherMoneyMapper">
    <select id="findById">
        select
            a.*,
            b.alias
        from order_other_money as a
        left join  basic_other_money as b
        on a.`column` = b.`column`
    </select>
</mapper>
north-glass-erp/src/main/resources/mapper/sd/OrderProcessDetailMapper.xml
north-glass-erp/src/main/resources/mapper/sd/ProductDetailMapper.xml
north-glass-erp/src/main/resources/mapper/sd/ProductMapper.xml
north-glass-erp/target/classes/mapper/pp/FolwCard.xml
@@ -402,4 +402,87 @@
        delete from sd.order_process_detail
        where  left(process_id,11) = left(#{processId},11)
    </delete>
    <select id="selectPrintFlowCardMp">
        select * from  sd.order where create_time between #{selectTime1} and #{selectTime2} and
                                      position(#{orderId} in order_id ) and position(#{project} in project)
        and processing_card=2
    </select>
    <select id="selectPrintMp">
        select fc.id,
               fc.order_id,
               fc.process_id,
               o.customer_name,
               o.project,
               ogd.technology_number,
               ogd.glass_address,
               od.quantity,
               ogd.total_area,
               od.product_name,
               ogd.glass_child,
               fc.founder,
               date(fc.splitFrame_time) as splitFrame_time
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on ogd.order_id = fc.order_id and ogd.order_number = fc.order_number and
                              ogd.technology_number = fc.technology_number
                 left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
                 left join sd.`order` as o on o.order_id = fc.order_id
        where fc.order_id = #{orderId}
        GROUP BY fc.process_id, ogd.technology_number
        order by fc.process_id, ogd.technology_number
    </select>
    <select id="getPrimaryList">
        select o.customer_name,
               o.project,
               ogd.process,
               od.edging_type,
               ogd.glass_child,
               od.product_name,
               o.processing_note,
               fc.process_id,
               SUM( od.quantity) as quantity,
               SUM(od.gross_area) as gross_area,
               #{technologyNumber} as technologyNumber
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
                              fc.technology_number = ogd.technology_number
                 left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
                 left join sd.`order` as o on o.order_id = fc.order_id
        where fc.process_id = #{processId}
          and fc.technology_number = #{technologyNumber}
        group by fc.process_id, fc.technology_number
    </select>
    <select id="getDetailList">
        select fc.order_number,
               concat(ogd.child_width, "*", ogd.child_height) as child_width,
               od.quantity,
               ogd.total_area,
               od.perimeter,
               od.bend_radius,
               od.remarks
        from flow_card as fc
                 left join sd.order_glass_detail as ogd
                           on fc.order_id = ogd.order_id and fc.order_number = ogd.order_number and
                              fc.technology_number = ogd.technology_number
                 left join sd.order_detail as od on od.order_id = fc.order_id and od.order_number = fc.order_number
        where fc.process_id = #{processId}
          and fc.technology_number = #{technologyNumber}
        group by fc.process_id, fc.order_number
        order by fc.order_number
        limit 15
    </select>
    <select id="getProcessList">
        select *
        from sd.order_process_detail
        where process_id = #{processId}
          and technology_number = #{technologyNumber}
        group by process
    </select>
</mapper>
north-glass-erp/target/classes/mapper/sd/BasicData.xml
File was deleted
north-glass-erp/target/classes/mapper/sd/BasicGlassType.xml
File was deleted
north-glass-erp/target/classes/mapper/sd/Customer.xml
File was deleted
north-glass-erp/target/classes/mapper/sd/Delivery.xml
File was deleted
north-glass-erp/target/classes/mapper/sd/DeliveryDetail.xml
File was deleted
north-glass-erp/target/classes/mapper/sd/OrderDetail.xml
File was deleted
north-glass-erp/target/classes/mapper/sd/OrderProcessDetail.xml
File was deleted
north-glass-erp/target/classes/mapper/sd/Product.xml
File was deleted
north-glass-erp/target/classes/mapper/sd/ProductDetail.xml
File was deleted
north-glass-erp/target/erp-0.0.1-SNAPSHOT.jar.original
Binary files differ
north-glass-erp/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -10,6 +10,7 @@
com\example\erp\service\pp\ReplenishService.class
com\example\erp\entity\sd\OrderDetail.class
com\example\erp\config\MyCorsConfig$1.class
com\example\erp\controller\sd\BasicOtherMoneyController.class
com\example\erp\controller\pp\ProductionSchedulingController.class
com\example\erp\service\sd\OrderProcessDetailService.class
com\example\erp\entity\mm\MaterialOutboundDetail.class
@@ -20,11 +21,13 @@
com\example\erp\mapper\mm\FinishedGoodsInventoryMapper.class
com\example\erp\service\IOrderService.class
com\example\erp\service\pp\ReportingWorkService.class
com\example\erp\tools\DownExcel.class
com\example\erp\mapper\sd\BasicDateMapper.class
com\example\erp\controller\pp\ReplenishController.class
com\example\erp\mapper\sd\OrderGlassDetailMapper.class
com\example\erp\entity\pp\WorkprogressMonthlySettlement.class
com\example\erp\entity\mm\FinishedGoodsInventory.class
com\example\erp\entity\sd\BasicOtherMoney.class
com\example\erp\mapper\sd\DeliveryDetailMapper.class
com\example\erp\config\MybatisPlusConfig.class
com\example\erp\entity\mm\BasicWarehouseType.class
@@ -35,6 +38,7 @@
com\example\erp\mapper\sd\OrderMapper.class
com\example\erp\controller\pp\ReportController.class
com\example\erp\service\mm\BasicWarehouseTypeService.class
com\example\erp\entity\sd\OrderOtherMoney.class
com\example\erp\mapper\OrderTestMapper.class
com\example\erp\mapper\mm\MaterialStoreMapper.class
com\example\erp\service\pp\ProductionSchedulingService.class
@@ -99,6 +103,7 @@
com\example\erp\entity\pp\ReportingWork.class
com\example\erp\tools\netty\MyWebSocketHandler.class
com\example\erp\entity\mm\MaterialOutbound.class
com\example\erp\mapper\sd\OrderOtherMoneyMapper.class
com\example\erp\controller\sd\OrderController.class
com\example\erp\mapper\pp\ReportMapper.class
com\example\erp\entity\pp\BasicDataProduce.class
@@ -108,6 +113,7 @@
com\example\erp\controller\sd\CustomerController.class
com\example\erp\entity\pp\ProductionScheduling.class
com\example\erp\common\CacheUtil.class
com\example\erp\service\sd\BasicOtherMoneyService.class
com\example\erp\entity\pp\OrderBom.class
com\example\erp\mapper\sd\DeliveryMapper.class
com\example\erp\controller\mm\BasicWarehouseTypeController.class
@@ -127,6 +133,7 @@
com\example\erp\entity\pp\Device.class
com\example\erp\tools\WebSocketServerPool.class
com\example\erp\controller\OrderTestController.class
com\example\erp\mapper\sd\BasicOtherMoneyMapper.class
com\example\erp\mapper\userInfo\SysMenuMapper.class
com\example\erp\tools\TokenTools.class
com\example\erp\controller\mm\MaterialStoreController.class
north-glass-erp/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -50,6 +50,7 @@
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\pp\ProductionSchedulingController.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\mm\FinishedOperateLogMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\pp\FlowCardMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\sd\BasicOtherMoneyController.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\tools\TokenTools.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\mm\MaterialInventoryController.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\pp\ReportWorkController.java
@@ -62,6 +63,7 @@
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\service\pp\FlowCardService.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\service\pp\ReworkService.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\OrderTest.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\sd\OrderOtherMoney.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\service\pp\ReportWorkService.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\sd\BasicDateMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\sd\OrderController.java
@@ -85,6 +87,7 @@
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\userInfo\SysError.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\exception\ServiceException.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\tools\netty\MyChannelHandlerPool.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\sd\BasicOtherMoney.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\config\InterceptorConfig.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\pp\BasicDataProduce.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\service\sd\BasicGlassTypeServise.java
@@ -108,11 +111,13 @@
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\pp\ReportMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\mm\FinishedGoodsInventoryController.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\service\userInfo\UserService.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\sd\BasicOtherMoneyMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\sd\BasicGlassTypeMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\common\Constants.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\pp\ReportingWorkMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\pp\PatchLogMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\userInfo\SysErrorMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\tools\DownExcel.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\sd\DeliveryDetail.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\mm\BasicWarehouseTypeController.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\pp\DamageDetailsMapper.java
@@ -121,6 +126,7 @@
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\pp\DamageDetails.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\sd\ReturnsDetail.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\ErpApplication.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\sd\OrderOtherMoneyMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\config\WebSocketConfig.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\pp\BasicDataProduceController.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\pp\BasicDateProduceMapper.java
@@ -134,6 +140,7 @@
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\sd\OrderProcessDetail.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\entity\mm\BasicWarehouseType.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\pp\ReplenishController.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\service\sd\BasicOtherMoneyService.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\controller\sd\CustomerController.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\mapper\pp\DeviceMaintenanceMapper.java
D:\Documents\ERP_override\north-glass-erp\src\main\java\com\example\erp\exception\GlobalExceptionHandle.java