From 1c5bdd46d4d8b71fd3dc7bbfb2331d9281305ec4 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期五, 22 十一月 2024 16:50:59 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override

---
 north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelProject.vue |  186 ++++++++++++++++++++++------------------------
 1 files changed, 90 insertions(+), 96 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelProject.vue b/north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelProject.vue
index 38d0abc..d8a3630 100644
--- a/north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelProject.vue
+++ b/north-glass-erp/northglass-erp/src/components/pp/PrintCustomLabelProject.vue
@@ -30,35 +30,63 @@
   list:null,//鍕鹃�夌殑鏁版嵁
   faceOrientation:null,//鍐呭闈�
   type:null,//鏍囩妯℃澘
-  lableType:null//鏍囩绫诲瀷
+  lableType:null,//鏍囩绫诲瀷
+  titleList:null,//鏍囬
+  switch:null,//鍒ゆ柇鏄惁涓烘柊鎵撳嵃,
+  lastList:[],
+  detailType:null
 })
 
 const {currentRoute} = useRouter()
 const route = currentRoute.value
 let type = props.type
-let faceOrientation = props.faceOrientation
-if (type.indexOf("鑻辨枃")>-1 && faceOrientation==="姝ら潰涓哄鍐呴潰"){
-  faceOrientation='INSIDE'
-}
-else if (type.indexOf("鑻辨枃")>-1 && faceOrientation==="姝ら潰涓哄澶栭潰"){
-  faceOrientation='OUTSIDE'
-}
+
 let lableType = props.lableType
+let switchType = props.switch
+let detailType= props.detailType
 data.value.printList = JSON.parse(props.list)
 onMounted(() => {
-      request.post(`/processCard/getPrintCustomDataProjectNoDetail/${type}`, data.value).then((res) => {
+      request.post(`/processCard/getPrintCustomDataProjectNoDetail/${type}/${detailType}`, data.value).then((res) => {
         if (res.code == 200) {
-          console.log(res.data.data)
           produceList.value = deepClone(res.data.title)
           list.value = deepClone(res.data.data)
           const data = produceList.value[0].value
           dataList = JSON.parse(`[${data}]`);
-          labelList = dataList[0]
+          const printElements = dataList[0].panels[0].printElements;
+          let a = []
+          printElements.forEach(element => {
+            if(element.options.field==='table'){
+              element.options.columns[0].forEach(elements => {
+                if(elements.field){
+                  a.push({
+                        title: elements.title,
+                        name: elements.field
+                      }
+                  )
+                }
+              })
+            }else{
+              a.push({
+                title: element.options.title,
+                name: element.options.field
+              })
+            }
+          })
+          labelList = a
           for (let i = 0; i < list.value.length; i++) {
             let count = list.value[i].data.length
             for (let j = 0; j < count; j++) {
-              lastList.value.push(list.value[i].data[j])
+              if (detailType==0){
+                for (let k = 0; k < list.value[i].data[j].quantity; k++) {
+                  props.lastList.push(list.value[i].data[j])
+                }
 
+              }
+              else {
+                //for (let k = 0; k < list.value[i].data[j].quantity; k++) {
+                  props.lastList.push(list.value[i].data[j])
+                //}
+              }
             }
           }
         } else {
@@ -127,17 +155,20 @@
 </script>
 
 <template>
-    <div id="print" :class="company.printLabel.className.custom.printFlowCardName()">
-      <div v-for="(item1,index) in lastList" :class="company.printLabel.className.custom.entiretyName()">
-        <div class="row4">{{ faceOrientation }}</div>
-        <div v-for="(item,id) in labelList" :class="company.printLabel.className.custom.contentRowName()">
-          <div v-if="item1[item.name] != null && item1[item.name] !== ''" class="row1"  contenteditable="true" @input="updateProductName($event, id,index)" v-text="item.title+'锛�'+item1[item.name]"></div>
-<!--          <div class="row2" style="width: 100%;"><input class="contentRow2" v-model="item1[item.name]"  @keyup="updataProductName()" style="border: none;"/></div>-->
-<!--          <div v-if="item1[item.name] != null && item1[item.name] !== ''" class="row2" style="width: 100%;" contenteditable="true" @input="updateProductName($event, id)" v-text="item1[item.name]"></div>-->
-        </div>
-        <div v-html="company.printLabel.custom(item1)"></div>
+  <div id="print" :class="company.printLabel.className.semi.printFlowCardName()">
+    <div v-for="(item1,index) in props.lastList" :class="company.printLabel.className.semi.entiretyName()">
+      <div class="row4">{{ faceOrientation }}</div>
+      <div v-for="(item,id) in labelList" :class="company.printLabel.className.semi.contentRowName()">
+        <div v-if="item1[item.name] != null && item1[item.name] !== ''" class="row1"  contenteditable="true" @input="updateProductName($event, id,index)" v-text="item.title+'锛�'+item1[item.name]"></div>
+        <!--          <div class="row2" style="width: 100%;"><input class="contentRow2" v-model="item1[item.name]"  @keyup="updataProductName()" style="border: none;"/></div>-->
+        <!--          <div v-if="item1[item.name] != null && item1[item.name] !== ''" class="row2" style="width: 100%;" contenteditable="true" @input="updateProductName($event, id)" v-text="item1[item.name]"></div>-->
       </div>
+<!--      <div v-html="company.printLabel.custom(item1)"></div>-->
+      <div v-if="(id + 1) % 2 === 0" class="pagebreak"></div>
     </div>
+  </div>
+
+
 
 
 
@@ -150,25 +181,10 @@
   padding: 0;
 }
 
-textarea {
-  border: none; /* 鍙栨秷榛樿杈规 */
-  padding: 0; /* 鍙栨秷榛樿鍐呰竟璺� */
-  margin: 0; /* 鍙栨秷榛樿澶栬竟璺� */
-  resize: none; /* 绂佺敤璋冩暣澶у皬鍔熻兘 */
-  font-family: Arial; /* 璁剧疆鑷畾涔夊瓧浣� */
-  font-size: 12px; /* 璁剧疆鑷畾涔夊瓧浣撳ぇ灏� */
-  line-height: 1; /* 璁剧疆琛岄珮 */
-  width: 100%; /* 璁剧疆瀹藉害涓�100% */
-  height: auto; /* 楂樺害鏍规嵁鍐呭鑷姩璋冩暣 */
-  box-sizing: border-box; /* 浣垮楂樺寘鎷唴杈硅窛鍜岃竟妗� */
-  overflow-y: hidden;
-}
-
-
-body {
+body{
   overflow: hidden;
   font-family: Arial;
-  font-size: 7px;
+
 }
 
 #printButton {
@@ -176,109 +192,87 @@
   width: 100px;
 }
 
-.print{
-  width: 100%;
-  height: 100%;
-}
 
-/*鎴�*/
-.printFlowCard_finished {
-  /*
-  font-family: 'Microsoft YaHei', '寰蒋闆呴粦', sans-serif;
-  */
-  flex-wrap: nowrap;
+
+/*鍗�*/
+.printFlowCard_semi {
+  flex-wrap: wrap;
+  font-size: 10px;
   display: flex;
-  flex-direction: column;
+  justify-content:space-between;
 }
 
 
-/*鎴�*/
-.entirety_finished {
+
+/*鍗�*/
+.entirety_semi {
+  width: 45%;
   display: flex;
   text-align: center;
-  flex-direction: column;
-  margin-left: 10px;
-  width: 100%;
-  height: 100%;
+  flex-direction:column;
+  margin: 8px;
 
 }
 
-/*div{
-  font-family: 'Microsoft YaHei', '寰蒋闆呴粦', sans-serif;
-}*/
-
-.row3 {
+.row3{
   text-align: center;
-  /*display: flex;
-  justify-content:space-evenly;*/
 }
 
-.row3 label {
-  margin-top: 28px;
+.contentRow{
+  display: flex;
+  text-align: center;
 }
 
-.contentRow {
+label{
   font-weight: bolder;
-  display: flex;
-  text-align: center;
+}
+
+.contentRow .row1{
   width: 100%;
 }
 
-label {
-  /*font-family: 'Microsoft YaHei', '寰蒋闆呴粦', sans-serif;*/
-}
-
-.contentRow .row1 {
-  width: 100%;
-}
-
-.entirety_finished .row4 {
-  font-weight: bolder;
+.entirety_semi .row4{
   text-align: right;
-  margin-right: 20px;
 }
 
-.contentRow .row1, .contentRow .row2 {
+.contentRow .row1,.contentRow .row2{
   text-align: left;
 }
 
-input{
-  width: 100%;
-  border: none;
-}
 
-
-@page {
-  size: auto;  /* auto is the initial value */
-  margin: 13mm 5mm 0mm 7mm;  /* this affects the margin in the printer settings */
-}
 
 @media print {
+  @page {
+    size: auto;  /* auto is the initial value */
+    margin: 13mm 5mm 0mm 7mm;  /* this affects the margin in the printer settings */
+  }
   div {
     page-break-inside: avoid;
   }
 
-  .entirety_finished {
-    page-break-before: always;
+
+
+  .pagebreak {
+    page-break-after: always;
   }
 
 }
 
-.printFlowCard_finished1 {
+.printFlowCard_semi1 {
   flex-wrap: wrap;
+  font-size: 8pt;
   display: flex;
-  flex-direction: column;
 }
 
 
 /*鎴�*/
-.entirety_finished1 {
+.entirety_semi1 {
+  width: 50%;
   display: flex;
   text-align: center;
   flex-direction: column;
-  margin-left: 10px;
-  width: 337px;
-  height: 120px;
+  margin-left: -10px;
+  height: 80px;
 
 }
 

--
Gitblit v1.8.0