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