From 6fac4cbed12a84473e8eab217abacc221dedca9f Mon Sep 17 00:00:00 2001
From: 于杰 <1210123631@qq.com>
Date: 星期一, 28 七月 2025 14:40:34 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml                    |    3 
 north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyang.vue        |   24 +
 north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue           |   69 ++++---
 north-glass-erp/src/main/resources/mapper/pp/Report.xml                                |    5 
 north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml                           |    2 
 north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue                |    3 
 north-glass-erp/src/main/java/com/example/erp/service/pp/ReportService.java            |    2 
 north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyangDetails.vue |  424 ++++++++++++++++++++++++++++------------------
 north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java             |    2 
 9 files changed, 324 insertions(+), 210 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue b/north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue
index f2b41b1..0ed6705 100644
--- a/north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue
+++ b/north-glass-erp/northglass-erp/src/components/mm/PrintPackingListLuoyang.vue
@@ -88,37 +88,50 @@
       customer.value = produceList.value[0].detail[0]
       let height = 0
       let index = 0
-
-      produceList.value[0].detailList.forEach(order => {
-        if(orderDetailList.value[index]===undefined){
-          orderDetailList.value[index]=[]
-        }
-        height+=50
-        //鍒ゆ柇楂樺害鏄惁瓒呰繃350锛屽垯鎹㈤〉
-        if(height>=500){
-          height=0
+      for(let i=0;i<produceList.value.length;i++){
+        //鎹骇鍝佸氨鎹㈤〉
+        if(i>0){
           index+=1
-          orderDetailList.value[index]=[]
         }
+        orderDetailList.value[index]=[]
         orderDetailList.value[index].push({
-          type:'product',
-          productName:order.product_name
+          type:'customer',
+          customer:produceList.value[i].detail[0]
         })
-
-
-        order.detailList.forEach(item => {
-          height+=30
+        produceList.value[i].detailList.forEach(order => {
+          height+=50
+          //鍒ゆ柇楂樺害鏄惁瓒呰繃350锛屽垯鎹㈤〉
           if(height>=500){
             height=0
             index+=1
             orderDetailList.value[index]=[]
+
+            orderDetailList.value[index].push({
+              type:'customer',
+              customer:produceList.value[i].detail[0]
+            })
           }
           orderDetailList.value[index].push({
-            type:'size',
-            size:item
+            type:'product',
+            productName:order.product_name
+          })
+
+
+          order.detailList.forEach(item => {
+            height+=30
+            if(height>=500){
+              height=0
+              index+=1
+              orderDetailList.value[index]=[]
+            }
+            orderDetailList.value[index].push({
+              type:'size',
+              size:item
+            })
           })
         })
-      })
+      }
+      console.log(orderDetailList.value)
       orderDetailList.value.forEach((page,index)=>{
         let sum = {
           quantity:0,
@@ -179,23 +192,23 @@
               <div style="display:flex;">
                 <div style="width: 100%"><span style="font-weight: bold;">瀹㈡埛鍚嶇О</span>锛�
                   <input class="contactNumber" style="width: 80%;font-size: 9px" type="text"
-                         v-model="customer.customer_name" />
+                         v-model="page[0].customer.customer_name" />
                 </div>
               </div>
               <div style="display:flex;">
-                <div style="width: 100%"><span style="font-weight: bold">宸ョ▼鍚嶇О</span>锛歿{customer.project}}</div>
+                <div style="width: 100%"><span style="font-weight: bold">宸ョ▼鍚嶇О</span>锛歿{page[0].customer.project}}</div>
               </div>
               <div style="display:flex;">
-                <div style="width: 50%"><span style="font-weight: bold">璁㈠崟鍙�</span>锛歿{customer.order_id}}</div>
-                <div style="width: 50%"><span style="font-weight: bold">瑁呯鍗曞彿</span>锛歿{customer.remarks}}</div>
+                <div style="width: 50%"><span style="font-weight: bold">璁㈠崟鍙�</span>锛歿{page[0].customer.order_id}}</div>
+                <div style="width: 50%"><span style="font-weight: bold">瑁呯鍗曞彿</span>锛歿{page[0].customer.remarks}}</div>
               </div>
               <div style="display:flex;">
-                <div style="width: 50%"><span style="font-weight: bold">鍖呰鏃ユ湡</span>锛歿{customer.reporting_work_time}}</div>
-                <div style="width: 50%"><span style="font-weight: bold">鏈灦鏁伴噺</span>锛歿{customer.quantity}}</div>
+                <div style="width: 50%"><span style="font-weight: bold">鍖呰鏃ユ湡</span>锛歿{page[0].customer.reporting_work_time}}</div>
+                <div style="width: 50%"><span style="font-weight: bold">鏈灦鏁伴噺</span>锛歿{page[0].customer.quantity}}</div>
               </div>
               <div style="display:flex;">
-                <div style="width: 50%;font-size: 9px"><span style="font-weight: bold">鍔犲伐鐝粍</span>锛歿{customer.teams_groups_name2}}</div>
-                <div style="width: 50%;font-size: 9px"><span style="font-weight: bold">鍖呰鐝粍</span>锛歿{customer.teams_groups_name}}</div>
+                <div style="width: 50%;font-size: 9px"><span style="font-weight: bold">鍔犲伐鐝粍</span>锛歿{page[0].customer.teams_groups_name2}}</div>
+                <div style="width: 50%;font-size: 9px"><span style="font-weight: bold">鍖呰鐝粍</span>锛歿{page[0].customer.teams_groups_name}}</div>
               </div>
               <div style="display:flex;">
                 <div style="width: 50%"><span style="font-weight: bold">璐ㄩ噺妫�楠�</span>锛氬垬鍖栬強</div>
@@ -231,7 +244,7 @@
               <td>{{ row.size.area }}</td>
             </tr>
 
-            <tr id="footsum" v-else style="border: 0;font-size: 10px">
+            <tr id="footsum" v-else-if="row.type==='sum'" style="border: 0;font-size: 10px">
               <td colspan="5" style="border: 0;">
                 <div style="display:flex;">
                   <div>鏈〉鏁伴噺</div>&nbsp;&nbsp;&nbsp;&nbsp;
diff --git a/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyang.vue b/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyang.vue
index 0044117..724b277 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyang.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyang.vue
@@ -258,7 +258,7 @@
           <td colspan="6">
             <el-row :gutter="20">
               <el-col :span="2"></el-col>
-              <el-col :span="12" style="font-size: 17px;font-weight: bold"> {{delivery.orderId }}</el-col>
+              <el-col :span="12" style="font-size: 16px"> {{delivery.orderId }}</el-col>
             </el-row>
           </td>
         </tr>
@@ -302,16 +302,16 @@
           </td>
         </tr>
 
-        <tr>
-          <td></td>
-          <td></td>
-          <td>
+        <tr id="table-sum">
+          <td style="width: 5cm"></td>
+          <td style="width: 150px" ></td>
+          <td style="width: 65px" >
             {{getQuantitySum(pageIndex)}}
           </td>
-          <td>
-            <input  style="border: 0;width: 100px" :value="getAreaSum(pageIndex)">
+          <td style="width: 100px">
+            <input  style="border: 0;width: 100px;font-size: 17px" :value="getAreaSum(pageIndex)">
           </td>
-          <td></td>
+         <td style="width: 80px"></td>
           <td v-if="props.type===1">
             {{getMoneySum(pageIndex)}}
           </td>
@@ -368,6 +368,11 @@
     bottom: 1cm;
     width: 100%; /* 鎴栬�呰缃垚鍏蜂綋鐨勫搴� */
   }
+  #table-sum {
+    position: absolute; /* 鎴栬�呬娇鐢� relative锛屾牴鎹叿浣撻渶姹� */
+    bottom: 5cm;
+  }
+
 }
 
 .textarea{
@@ -389,4 +394,7 @@
 :deep(.bbb){
   width: 5cm;
 }
+:deep(#table-sum td){
+  font-size: 17px;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyangDetails.vue b/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyangDetails.vue
index 4cbde36..eeb918a 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyangDetails.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/delivery/PrintSheetLuoyangDetails.vue
@@ -5,7 +5,7 @@
 import companyInfo from "@/stores/sd/companyInfo"
 import deepClone from "@/utils/deepClone";
 import {ElMessage} from "element-plus";
-import {add,addAuto} from '@/utils/decimal';
+import {add, addAuto} from '@/utils/decimal';
 
 const company = companyInfo()
 let produceList = ref([])
@@ -15,17 +15,15 @@
 let money = ref("")
 let otherMoneys = 0
 let sumMoney = 0
-let takeCare =ref("鍏蜂綋瑙勬牸璇﹁娓呭崟")
-let remark =ref(company.deliveryRemark)
-
+let takeCare = ref("鍏蜂綋瑙勬牸璇﹁娓呭崟")
+let remark = ref(company.deliveryRemark)
 
 
 let props = defineProps({
-  deliveryId:null,
-  type:null
+  deliveryId: null,
+  type: null
 })
-const form = ref({
-})
+const form = ref({})
 let produceList2 = ref([])
 
 
@@ -33,56 +31,55 @@
 
 const pageData = ref()
 const getData = () => {
-  if(props.deliveryId===null  || props.deliveryId===undefined || props.deliveryId===''){
+  if (props.deliveryId === null || props.deliveryId === undefined || props.deliveryId === '') {
     return
   }
   deliveryId.value = props.deliveryId[0].deliveryId
-  form.value.deliveryId=props.deliveryId
-  form.value.type=company.productName
-  form.value.state=props.type
+  form.value.deliveryId = props.deliveryId
+  form.value.type = company.productName
+  form.value.state = props.type
 
 
-  request.post(`/delivery/getSelectDeliveryPrinting`,form.value).then((res) => {
-    if(res.code==200){
-      console.log(res.data)
+  request.post(`/delivery/getSelectDeliveryPrinting`, form.value).then((res) => {
+    if (res.code == 200) {
+      //console.log(res.data)
       produceList.value = deepClone(res.data)
-      for(let i=0;i<produceList.value.length;i++){
-        produceList.value[i].data.forEach(item =>{
+      for (let i = 0; i < produceList.value.length; i++) {
+        produceList.value[i].data.forEach(item => {
 
 
         })
-        let produceList1= ({
-          data:null,
-          otherMoney:null,
-          otherMoney1:null,
-          delivery:null,
-          money:null,
-          otherMoneys:0,
-          sumMoney:0
+        let produceList1 = ({
+          data: null,
+          otherMoney: null,
+          otherMoney1: null,
+          delivery: null,
+          money: null,
+          otherMoneys: 0,
+          sumMoney: 0
         })
-        produceList1.data=produceList.value[i].data
-        produceList1.delivery=produceList.value[i].delivery
-        produceList1.money=produceList.value[i].money
-        produceList1.otherMoney=produceList.value[i].otherMoney
-        for(let j=0;j<produceList1.data.length;j++){
-          produceList1.sumMoney+=produceList1.data[j].DeliveryDetail.money
+        produceList1.data = produceList.value[i].data
+        produceList1.delivery = produceList.value[i].delivery
+        produceList1.money = produceList.value[i].money
+        produceList1.otherMoney = produceList.value[i].otherMoney
+        for (let j = 0; j < produceList1.data.length; j++) {
+          produceList1.sumMoney += produceList1.data[j].DeliveryDetail.money
         }
-        otherMoney1=[]
-        for(let i=0;i<produceList1.otherMoney.length;i++){
-          if(produceList1.otherMoney[i].DeliveryDetailOtherMoney.monery!=null){
-            produceList1.otherMoneys+=produceList1.otherMoney[i].DeliveryDetailOtherMoney.monery
-            if(otherMoney1.length===0){
+        otherMoney1 = []
+        for (let i = 0; i < produceList1.otherMoney.length; i++) {
+          if (produceList1.otherMoney[i].DeliveryDetailOtherMoney.monery != null) {
+            produceList1.otherMoneys += produceList1.otherMoney[i].DeliveryDetailOtherMoney.monery
+            if (otherMoney1.length === 0) {
               otherMoney1.push(produceList1.otherMoney[i])
-            }
-            else{
-              for(let s=0;s<otherMoney1.length;s++){
-                if(produceList1.otherMoney[i].DeliveryDetailOtherMoney.alias===otherMoney1[s].DeliveryDetailOtherMoney.alias){
+            } else {
+              for (let s = 0; s < otherMoney1.length; s++) {
+                if (produceList1.otherMoney[i].DeliveryDetailOtherMoney.alias === otherMoney1[s].DeliveryDetailOtherMoney.alias) {
 
-                  otherMoney1[s].DeliveryDetailOtherMoney.count=add(produceList1.otherMoney[i].DeliveryDetailOtherMoney.count,otherMoney1[s].DeliveryDetailOtherMoney.count)
-                  otherMoney1[s].DeliveryDetailOtherMoney.monery =add(produceList1.otherMoney[i].DeliveryDetailOtherMoney.monery,otherMoney1[s].DeliveryDetailOtherMoney.monery)
+                  otherMoney1[s].DeliveryDetailOtherMoney.count = add(produceList1.otherMoney[i].DeliveryDetailOtherMoney.count, otherMoney1[s].DeliveryDetailOtherMoney.count)
+                  otherMoney1[s].DeliveryDetailOtherMoney.monery = add(produceList1.otherMoney[i].DeliveryDetailOtherMoney.monery, otherMoney1[s].DeliveryDetailOtherMoney.monery)
                   break
                 }
-                if(s+1===otherMoney1.length){
+                if (s + 1 === otherMoney1.length) {
                   otherMoney1.push(produceList1.otherMoney[i])
                   break
                 }
@@ -93,30 +90,29 @@
           }
 
         }
-        produceList1.otherMoney1=otherMoney1
+        produceList1.otherMoney1 = otherMoney1
         produceList2.value.push(produceList1)
       }
-      for(let j=0;j<produceList2.value.length;j++){
+      for (let j = 0; j < produceList2.value.length; j++) {
 
-        if(produceList2.value[j].delivery.money.toFixed(0)!==(produceList2.value[j].otherMoneys
-            +produceList2.value[j].sumMoney+produceList2.value[j].delivery.freight).toFixed(0)){
+        if (produceList2.value[j].delivery.money.toFixed(0) !== (produceList2.value[j].otherMoneys
+            + produceList2.value[j].sumMoney + produceList2.value[j].delivery.freight).toFixed(0)) {
           console.log(produceList2.value[j])
           console.log(produceList2.value[j].delivery.money)
           console.log((produceList2.value[j].otherMoneys
-              +produceList2.value[j].sumMoney).toFixed(0))
+              + produceList2.value[j].sumMoney).toFixed(0))
           console.log(produceList2.value[j].delivery.deliveryId)
         }
 
       }
       //缁欐暟鎹繘琛屽垎椤�
       pageData.value = groupArrayByFive(produceList2.value[0].data)
-      console.log(pageData.value)
+      //console.log(pageData.value)
       delivery.value = produceList2.value[0].delivery
-      console.log(delivery.value)
+      //console.log(delivery.value)
 
 
-
-    }else{
+    } else {
       ElMessage.warning(res.msg)
       router.push("/login")
     }
@@ -125,7 +121,7 @@
 
 function groupArrayByFive(arr) {
 
-  let result = [];
+  /*let result = [];
   let productName=ref()
   arr.forEach(item=>{
     for (let i = 0; i < item.DeliveryDetailList.length; i += 8) {
@@ -140,10 +136,84 @@
       result.push(resultMap)
     }
 
+  })*/
+  let result = [];
+  arr.forEach(item => {
+    item.DeliveryDetailList.forEach(items => {
+      result.push(items)
+    })
   })
+  console.log(result)
+  let index=0
+  let number=0
+  let numberResult = [];
+  let results = [];
+  let productName=result[0]['product_name']
+  for (let i = 0; i < result.length; i ++) {
+    if(productName!=result[i]['product_name']){
+      productName=result[i]['product_name']
+      index++
+    }
+    number++
+    numberResult.push(result[i])
 
-  return result;
+
+    let next=false
+    if (i + 1 != result.length) {
+      if(result[i+1]['product_name']!=productName){
+        next=true
+      }
+    }else{
+      next=true
+    }
+
+    if((index==3 && next) ||number==8){
+      results.push(numberResult);
+      index=0
+      number=0
+      numberResult=[]
+    }else{
+      if (i + 1 == result.length) {
+        results.push(numberResult);
+        index=0
+        number=0
+        numberResult=[]
+      }
+    }
+
+
+
+
+
+  }
+  console.log(results)
+
+  /*for (let i = 0; i < result.length; i += 8) {
+    results.push(result.slice(i, i + 8));
+  }*/
+
+  for (let i = 0; i < results.length; i++) {
+    let name = results[i][0]['product_name'] //涓婁竴娆″悕绉�
+    let key = 0;   //鐩稿悓鏁�
+    for (let j = 0; j < results[i].length; j++) {
+      let thisName = results[i][j]['product_name'];
+      if (thisName != name) {
+        results[i][key].rowspan = j - key;
+        name=results[i][j]['product_name']
+        key = j;
+      }
+      if (j + 1 == results[i].length) {
+        results[i][key].rowspan = j - key+1;
+        name=results[i][j]['product_name']
+      }
+
+    }
+  }
+
+
+  return results;
 }
+
 let deliveryDate = ref()
 onMounted(() => {
   const today = new Date
@@ -155,35 +225,34 @@
 })
 
 
-
 const printSheet = () => {
 }
 let companyName = ref('娲涢槼鐜荤拑鍏徃')
 
-const getQuantitySum = (page)=>{
-  if(pageData.value[page] === undefined){
-    return  0
+const getQuantitySum = (page) => {
+  if (pageData.value[page] === undefined) {
+    return 0
   }
-  return pageData.value[page].DeliveryDetailList[0].reduce((accumulator, currentValue) => {
-    return add(accumulator,currentValue.quantity)
+  return pageData.value[page].reduce((accumulator, currentValue) => {
+    return add(accumulator, currentValue.quantity)
   }, 0)
 
 
 }
-const getAreaSum = (page)=>{
-  if(pageData.value[page] === undefined){
-    return  0
+const getAreaSum = (page) => {
+  if (pageData.value[page] === undefined) {
+    return 0
   }
-  return pageData.value[page].DeliveryDetailList[0].reduce((accumulator, currentValue) => {
-    return addAuto(accumulator,currentValue.area,2)
+  return pageData.value[page].reduce((accumulator, currentValue) => {
+    return addAuto(accumulator, currentValue.area, 2)
   }, 0)
 }
-const getMoneySum = (page)=>{
-  if(pageData.value[page] === undefined){
-    return  0
+const getMoneySum = (page) => {
+  if (pageData.value[page] === undefined) {
+    return 0
   }
-  return pageData.value[page].DeliveryDetailList[0].reduce((accumulator, currentValue) => {
-    return addAuto(accumulator,currentValue.money,2)
+  return pageData.value[page].reduce((accumulator, currentValue) => {
+    return addAuto(accumulator, currentValue.money, 2)
   }, 0)
 }
 
@@ -194,126 +263,133 @@
 </script>
 
 <template>
-  <div >
-    <el-row id="footsum" :gutter="20" >
+  <div>
+    <el-row id="footsum" :gutter="20">
       <el-col :span="20"></el-col>
-      <el-col :span="4" style="font-size: 17px" >{{delivery.creator}}</el-col>
+      <el-col :span="4" style="font-size: 17px">{{ delivery.creator }}</el-col>
     </el-row>
-    <el-row id="footsum1" :gutter="20" >
-      <el-col :span="2" ></el-col>
+    <el-row id="footsum1" :gutter="20">
+      <el-col :span="2"></el-col>
       <el-col :span="3" style="font-size: 17px">{{ delivery.contacts }}</el-col>
       <el-col :span="7" style="font-size: 17px">{{ delivery.contactNumber }}</el-col>
-      <el-col :span="1" ></el-col>
+      <el-col :span="1"></el-col>
       <el-col :span="11" style="font-size: 17px">{{ delivery.deliveryAddress }}</el-col>
     </el-row>
 
-    <table  class="content1" v-for="(page,pageIndex) in pageData" >
+    <table class="content1" v-for="(page,pageIndex) in pageData">
       <thead>
-        <tr style="height: 3.6cm"><td></td></tr>
+      <tr style="height: 3.6cm">
+        <td></td>
+      </tr>
 
-        <tr>
-          <td colspan="6" >
-            <el-row :gutter="20">
-              <el-col :span="2"></el-col>
-              <el-col :span="9">
-                <input v-model="companyName"
-                       style="border: 0;width: 100%;
+      <tr>
+        <td colspan="6">
+          <el-row :gutter="20">
+            <el-col :span="2"></el-col>
+            <el-col :span="9">
+              <input v-model="companyName"
+                     style="border: 0;width: 100%;
                        height: 100%;font-size:19px;font-weight: bold "/>
-              </el-col>
-              <el-col :span="5" style="font-size:19px;font-weight: bold"> {{deliveryId}} </el-col>
-              <el-col :span="6"></el-col>
-              <el-col :span="2" style="white-space: nowrap;font-size:19px;font-weight: bold">{{deliveryDate}}</el-col>
-            </el-row>
-          </td>
-        </tr>
-        <tr style="height: 0.1cm"><td></td></tr>
+            </el-col>
+            <el-col :span="5" style="font-size:19px;font-weight: bold"> {{ deliveryId }}</el-col>
+            <el-col :span="6"></el-col>
+            <el-col :span="2" style="white-space: nowrap;font-size:19px;font-weight: bold">{{ deliveryDate }}</el-col>
+          </el-row>
+        </td>
+      </tr>
+      <tr style="height: 0.1cm">
+        <td></td>
+      </tr>
 
-        <tr style="margin-top: 20px">
-          <td colspan="6">
-            <el-row :gutter="20">
-              <el-col :span="2"></el-col>
-              <el-col :span="17" style="font-size: 16px;">{{delivery.customerName }}</el-col>
+      <tr style="margin-top: 20px">
+        <td colspan="6">
+          <el-row :gutter="20">
+            <el-col :span="2"></el-col>
+            <el-col :span="17" style="font-size: 16px;">{{ delivery.customerName }}</el-col>
 
-              <el-col :span="5" style="font-size: 16px;white-space: nowrap;"> {{delivery.project }}</el-col>
-            </el-row>
-          </td>
-        </tr>
-        <tr style="height: 0.1cm"><td></td></tr>
-        <tr>
-          <td colspan="6">
-            <el-row :gutter="20">
-              <el-col :span="2"></el-col>
-              <el-col :span="12" style="font-size: 17px;font-weight: bold"> {{delivery.orderId }}</el-col>
-            </el-row>
-          </td>
-        </tr>
+            <el-col :span="5" style="font-size: 16px;white-space: nowrap;"> {{ delivery.project }}</el-col>
+          </el-row>
+        </td>
+      </tr>
+      <tr style="height: 0.1cm">
+        <td></td>
+      </tr>
+      <tr>
+        <td colspan="6">
+          <el-row :gutter="20">
+            <el-col :span="2"></el-col>
+            <el-col :span="12" style="font-size: 16px"> {{ delivery.orderId }}</el-col>
+          </el-row>
+        </td>
+      </tr>
 
-        <tr style="height: 1cm"><td></td></tr>
-
+      <tr style="height: 1cm">
+        <td></td>
+      </tr>
 
 
       </thead>
-      <tbody  >
-      <template v-for="(items,index1) in page.DeliveryDetailList[0]">
+      <tbody>
+      <template v-for="(items,index1) in page">
         <tr>
 
-          <td style="width: 4cm" :rowspan="page.id" v-if="index1===0">
-            <el-input  class="textarea" type="textarea"
-                       :autosize="{ minRows: 1, maxRows: 20 }"
-                       v-model="page.DeliveryDetail.orderDetail.productName" />
+          <td style="width: 4cm" :rowspan="items.rowspan" v-if="items.rowspan!==undefined">
+            <el-input class="textarea" type="textarea"
+                      :autosize="{ minRows: 1, maxRows: 20 }"
+                      v-model="items.product_name"/>
           </td>
           <td style="width: 0.8cm"></td>
 
           <td style="width: 2cm">
-            <el-input  class="textarea" type="textarea"
-                       :autosize="{ minRows: 1, maxRows: 20 }"
-                       v-model="items.width" />
+            <el-input class="textarea" type="textarea"
+                      :autosize="{ minRows: 1, maxRows: 20 }"
+                      v-model="items.width"/>
 
           </td>
-           <td style="width: 2cm">
-              <el-input  class="textarea" type="textarea"
-                         :autosize="{ minRows: 1, maxRows: 20 }"
-                         v-model="items.height" />
+          <td style="width: 2cm">
+            <el-input class="textarea" type="textarea"
+                      :autosize="{ minRows: 1, maxRows: 20 }"
+                      v-model="items.height"/>
 
-           </td>
-         <td style="width: 60px">
-            {{items.quantity}}
           </td>
-          <td style="width: 100px">
-            <input   style="border: 0;width: 100px" v-model="items.area">
+          <td style="width: 60px">
+            {{ items.quantity }}
+          </td>
+          <td style="width: 100px;font-size: 17px">
+            <input style="border: 0;width: 100px" v-model="items.area">
           </td>
 
           <td
               v-if="props.type===1||props.type===3"
               style="width: 80px"
           >
-            {{items.price}}
+            {{ items.price }}
           </td>
           <td
               v-if="props.type===1||props.type===3"
           >
-            {{items.money}}
+            {{ items.money }}
           </td>
 
         </tr>
       </template>
-        <tr>
-          <td></td>
-          <td></td>
-          <td></td>
-          <td></td>
-          <td>
-            {{getQuantitySum(pageIndex)}}
-          </td>
-          <td>
-            <input   style="border: 0;width: 100px" :value="getAreaSum(pageIndex)">
-          </td>
-          <td></td>
-          <td v-if="props.type===1||props.type===3">
-            {{getMoneySum(pageIndex)}}
-          </td>
+      <tr id="table-sum">
+        <td style="width: 4cm"></td>
+        <td style="width: 0.8cm"></td>
+        <td style="width: 2cm"></td>
+        <td style="width: 2cm"></td>
+        <td style="width: 60px">
+          {{ getQuantitySum(pageIndex) }}
+        </td>
+        <td>
+          <input style="border: 0;width: 100px;font-size: 17px" :value="getAreaSum(pageIndex)">
+        </td>
+        <td style="width: 80px"></td>
+        <td v-if="props.type===1||props.type===3">
+          {{ getMoneySum(pageIndex) }}
+        </td>
 
-        </tr>
+      </tr>
 
       </tbody>
     </table>
@@ -325,57 +401,67 @@
 </template>
 
 
-
-
 <style scoped>
-*{
+* {
   color: rgba(0, 0, 0, 0.8); /* 鏇存繁鐨勯粦鑹� */
   font-family: 'Microsoft YaHei', '寰蒋闆呴粦', sans-serif;
   outline: none;
 }
-#sheet{
+
+#sheet {
   width: 21cm;
 }
-table{
+
+table {
   width: 18.3cm
 
 }
-.content1{
+
+.content1 {
   page-break-after: always;
 
 }
-span{
+
+span {
   width: 7cm;
   text-align: center;
 }
-tbody *{
+
+tbody * {
   font-size: 12px;
 }
-#footsum1,#footsum{
+
+#footsum1, #footsum {
   font-size: 17px;
 }
 
 @media print {
-  #footsum{
+  #footsum {
     position: fixed;
     bottom: 3.5cm;
     width: 100%; /* 鎴栬�呰缃垚鍏蜂綋鐨勫搴� */
     font-size: 17px;
   }
-  #footsum1{
+
+  #footsum1 {
     position: fixed;
     bottom: 1cm;
     width: 100%; /* 鎴栬�呰缃垚鍏蜂綋鐨勫搴� */
   }
+  #table-sum {
+    position: absolute; /* 鎴栬�呬娇鐢� relative锛屾牴鎹叿浣撻渶姹� */
+    bottom: 5cm;
+  }
 }
 
-.textarea{
---el-border-color: rgba(255,255,255,0.0);
---el-input-focus-border-color: rgba(255,255,255,0.0);
---el-input-focus-border-width: 0px;
---el-input-hover-border-color: rgba(255,255,255,0.0);
---el-input-hover-border-width: 0px;
+.textarea {
+  --el-border-color: rgba(255, 255, 255, 0.0);
+  --el-input-focus-border-color: rgba(255, 255, 255, 0.0);
+  --el-input-focus-border-width: 0px;
+  --el-input-hover-border-color: rgba(255, 255, 255, 0.0);
+  --el-input-hover-border-width: 0px;
 }
+
 /*textarea {
 
   font-size: 16px;
@@ -385,11 +471,13 @@
   width: 100%;
   height: 100%;
 }*/
-:deep(.el-textarea__inner){
+:deep(.el-textarea__inner) {
   color: #333333;
   font-family: 'Microsoft YaHei', '寰蒋闆呴粦', sans-serif;
   font-size: 12px;
 }
-
+:deep(#table-sum td){
+  font-size: 17px;
+}
 
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue b/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
index 3b18357..cc69b2c 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
@@ -41,7 +41,7 @@
   mergeCells:[],
   toolbarConfig: {
     zoom: true,
-    custom: true
+    /*custom: true*/
   },
   cellClassName ({ row, column,columnIndex})  {
     if (columnIndex>10 && row.thisQuantity*1 === row.reportWorkQuantity[column.title]*1){
@@ -103,7 +103,6 @@
   gridOptions.loading = true
   request.post(`/report/processCardProgress/${props.orderId}`,column).then(async (res) => {
     if (res.code == 200) {
-
       gridOptions.columns = JSON.parse(JSON.stringify(columns))
       gridOptions.columns.forEach(item =>{
         item.filterMethod = filterChanged
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportService.java
index 97a4c22..633c40b 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/ReportService.java
@@ -222,7 +222,7 @@
                 Map<String, String> data = JSON.parseObject(dataList.get(i).get("reportWorkQuantity"),
                         new TypeReference<Map<String, String>>() {
                         });
-                dataList.get(i).put("reportWorkQuantityShow",dataList.get(i).get("reportWorkQuantity"));
+
                 for (String key : clos.keySet()) {
                     if(data.get(key) != null){
                        Integer max = orderGlassDetailMapper
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
index dd14e75..5b7e0ba 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/OrderService.java
@@ -388,7 +388,7 @@
     public Map<String,Object> getOrderList(Integer pageNum, Integer pageSize, List<String> selectDate, Map<String,Object> config,Integer orderType) {
         Integer offset = (pageNum-1)*pageSize;
         String endDate = LocalDate.now().toString();
-        String startDate = LocalDate.now().minusDays(15).toString();
+        String startDate = LocalDate.now().minusDays(365).toString();
         if(selectDate !=null && selectDate.size()==2){
             if(!selectDate.get(0).isEmpty()){
                 startDate = selectDate.get(0);
diff --git a/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml b/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
index edcf65d..1af63db 100644
--- a/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
+++ b/north-glass-erp/src/main/resources/mapper/mm/FinishedOperateLog.xml
@@ -803,7 +803,8 @@
                 and fol.remarks regexp #{finishedOperateLog.remarksr}
             </if>
         </where>
-        group by fol.remarks,od.order_id,fol.process_id
+        group by fol.remarks,od.order_id
+        -- ,fol.process_id
         order by fol.operate_time desc
         limit #{offset},#{pageSize};
     </select>
diff --git a/north-glass-erp/src/main/resources/mapper/pp/Report.xml b/north-glass-erp/src/main/resources/mapper/pp/Report.xml
index a4051ac..21d10d7 100644
--- a/north-glass-erp/src/main/resources/mapper/pp/Report.xml
+++ b/north-glass-erp/src/main/resources/mapper/pp/Report.xml
@@ -178,6 +178,7 @@
 #                c.quantity,
                c.quantity as thisQuantity,/*鐢ㄤ簬鍒ゆ柇鏄惁鏀瑰彉棰滆壊*/
                e.reportWorkQuantity,
+               e.reportWorkQuantityShow,
                e.reportWorkQuantityCount,
                e.reportWorkTime,
                e.broken_num,
@@ -220,6 +221,10 @@
                                           '}'
                                        )             as reportWorkQuantity,
                                    concat('{',
+                                          GROUP_CONCAT(concat("\"", process, "\":\"", if(technology_number!=1 and (bd.nickname='stepD' || bd.nickname='stepB' ) ,0,reporting_work_num), "\"")),
+                                          '}'
+                                       )             as reportWorkQuantityShow,
+                                   concat('{',
                                           GROUP_CONCAT(concat("\"", process, "\":\"", reporting_work_num_count, "\"")),
                                           '}'
                                        )             as reportWorkQuantityCount,
diff --git a/north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml b/north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml
index 7b39dd2..ee11ca0 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/OrderMapper.xml
@@ -110,7 +110,7 @@
             sd.`order` as o
         left join mm.finished_goods_inventory as  fgi
         on o.order_id = fgi.order_id
-        where  date(o.create_time)>=#{startDate} and date(o.create_time) &lt;= #{endDate}
+        where  date(o.create_time) between #{startDate} and  #{endDate}
 
           <if test="orderType!= null and orderType != ''">
                and o.create_order = #{orderType}

--
Gitblit v1.8.0