chenlu
2024-09-24 edc227277159601c5cb86829f1c5ce14cf7903a4
north-glass-erp/northglass-erp/src/views/pp/processCard/PrintLabel.vue
@@ -12,8 +12,12 @@
let router = useRouter()
let produceList = ref([])
let labelList = ref([])
let list = ref([])
let projectNo = ref([])
let type = ref([])
let orderId = ref([])
const data = ref({
  printList: []
})
@@ -21,31 +25,42 @@
const {currentRoute} = useRouter()
const route = currentRoute.value
projectNo.value = route.query.projectNo
type.value = route.query.type
onMounted(() => {
      request.post(`/processCard/getSelectPrintLabel/${projectNo.value}`).then((res) => {
        if (res.code == 200) {
          console.log(res.data.data)
          produceList.value = deepClone(res.data.data)
          /*for (let i = 0; i < produceList.value.length; i++) {
           let count= produceList.value[i].data.length
            for (let j = 0; j < count; j++) {
              for (let k = 0; k < produceList.value[i].data[j].quantity; k++){
                labelList.value.push(produceList.value[i].data[j])
              }
  if(projectNo.value!=null){
    request.post(`/processCard/getSelectPrintLabel/${projectNo.value}/${type.value}`).then((res) => {
      if (res.code == 200) {
        labelList.value = deepClone(res.data.data)
      } else {
        ElMessage.warning(res.msg)
        router.push("/login")
      }
    })
  }else{
    data.value.printList = JSON.parse(route.query.printList)
    request.post(`/processCard/getSelectPrintLabel1`,data.value).then((res) => {
      if (res.code == 200) {
        produceList.value = deepClone(res.data.data)
        for (let i = 0; i < produceList.value.length; i++) {
         let count= produceList.value[i].data.length
          for (let j = 0; j < count; j++) {
            for (let k = 0; k < produceList.value[i].data[j].quantity; k++){
              labelList.value.push(produceList.value[i].data[j])
            }
          }
          console.log(labelList.value)*/
        } else {
          ElMessage.warning(res.msg)
          router.push("/login")
        }
      })
    }
          }
        }
      } else {
        ElMessage.warning(res.msg)
        router.push("/login")
      }
    })
  }
}
)
@@ -69,7 +84,11 @@
    style.innerHTML =
        "body>#" +
        printId +
        "{display:none}@media print{body>:not(#" +
        "{display:none}@media print{" +
        "@page {" +
        "    size: auto; " +
        "    margin: 13mm 4mm 0mm 4mm; " +
        "  }body>:not(#" +
        printId +
        "){display:none !important}body>#" +
        printId +
@@ -111,19 +130,28 @@
        </div>
      </div>
    </div>-->
    <div id="entirety" v-for="(item,id) in produceList" >
        <div class="row1">{{ item.customer_name }}</div>
        <div  class="row2">
          <span>{{ item.order_id }}</span>
          <span>{{ item.type_name }}</span>
    <div id="entirety" v-for="(item,id) in labelList" >
        <div class="row1">
          <div class="cell" v-if="item.heat_layout_id!=null">{{ item.heat_layout_id }}/{{ item.heat_layout_sort }}</div>
          <span>{{ item.customer_name }}</span>&nbsp;
          <span>{{ item.order_id }}</span>&nbsp;
          <span v-if="item.process.includes('夹胶')">胶片</span>
          <span v-else-if="item.process.includes('中空')">中空</span>
          <span v-else-if="item.process.includes('百叶')">百叶</span>
          <span v-else></span>
        </div>
        <div class="row3">{{item.width}}*{{item.height}}={{item.quantity}}</div>
        <div class="row3" v-if="item.other_columns!=null&&(JSON.parse(item.other_columns).S02!=null)">{{JSON.parse(item.other_columns).S02}}={{item.quantity}}</div>
        <div class="row3" v-else>{{Math.round(item.width)}}x{{Math.round(item.height)}}={{item.quantity}}</div>
        <div class="row5">
          <span>{{item.project}}</span>
          <span>{{item.project}}</span>&nbsp;
          <span>{{ item.building_number }}</span>
          <span v-if="item.bend_radius!=null">R={{item.bend_radius}}</span>
        </div>
        <div class="row6">
          <span>{{item.glass_child}}</span>
          <span>{{item.glass_child}}</span>&nbsp;
          <span>{{item.processing_note}}</span>
        </div>
    </div>
@@ -147,63 +175,91 @@
  justify-content: left;
  flex-wrap: wrap;
  margin-left: 5px;
  margin-top: 15px;
}
#entirety{
  text-align: center;
  width: 195px;
  width: 180px;
  height: 87px;
  margin-bottom: 10px;
  margin-right: 5px;
  overflow: hidden;
  white-space: nowrap;
}
.row1 {
  font-size: 8pt;
  font-weight: bold;
  height: 16px;
  height: 20px;
}
.row1 span {
  font-size: 10pt;
  font-weight: bold;
}
.row2 {
  font-size: 8pt;
  font-weight: bold;
  height: 16px;
  height: 20px;
}
span {
  font-size: 8pt;
  font-size: 10pt;
  font-weight: bold;
}
.row3 {
  margin-top: -5px;
  height: 19px;
  font-size: 12pt;
  height: 25px;
  font-size: 15pt;
  font-weight: bolder;
}
.row5 {
  height: 15px;
  height: 20px;
  font-weight: bold;
  font-size: 8pt;
}
.row5 span {
  font-size: 10pt;
  font-weight: bold;
}
.row6 {
  height: 15px;
  height: 20px;
  font-weight: bold;
  font-size: 8pt;
}
@page {
  size: auto;  /* auto is the initial value */
  margin: 7mm 2mm 2mm 0mm  /* this affects the margin in the printer settings */
.row6 span {
  font-size: 10pt;
  font-weight: bold;
}
.cell{
  position: absolute;
  font-weight: bold;
  margin-left: 5px;
  margin-top: 0px;
}
@media print {
  div {
    page-break-inside: avoid;
  }
  @page {
    size: auto;  /* auto is the initial value */
    margin: 13mm 4mm 0mm 4mm;  /* this affects the margin in the printer settings */
  }
}
</style>