包装规则 打印功能优化

dev
qiuhongwu 2 months ago
parent c05742ad45
commit fdf85079cd

@ -32,7 +32,10 @@ const formData: any = ref({
const minAmount = ref()
const Fdata: any = ref()
const vals: any = ref()
// sorts
let allSorts:any = []
const open = async (fdata, val) => {
allSorts=[]
Fdata.value = fdata
dialogVisible.value = true
resetForm()
@ -41,11 +44,16 @@ const open = async (fdata, val) => {
if (val.id) {
try {
const data = await ProjectOrderApi.getProjectOrderclauseDetail(val.id)
console.log(data)
formData.value = data
data.forEach((item) => {
item.integer = Math.trunc(item.orderAmount / item.amount)
item.remainder = item.orderAmount - item.integer * item.amount
// item.sort allSorts
allSorts.push(item.sort)
})
allSorts = [...new Set(allSorts)];
vals.value = data
minAmount.value = data.reduce((min, item) => Math.min(min, item.integer), data[0].integer)
@ -82,14 +90,14 @@ const handleChangeRange = () => {
} else if (rangeval.value.min > rangeval.value.max) {
message.error('结束页数不能小于开始页数')
return
}else if(rangeval.value.max-rangeval.value.min>99 ){
} else if (rangeval.value.max - rangeval.value.min > 99) {
message.error('打印范围不得超过100页')
return
}
// console.log(':',rangeval.value.max-rangeval.value.min);
// console.log(Fdata.value, vals.value, rangeval.value,'preview')
printref.value.open(Fdata.value, vals.value, rangeval.value)
printref.value.open(Fdata.value, vals.value, rangeval.value,allSorts)
selectedRow.value = null
rangeval.value = {
min: undefined,

@ -131,16 +131,19 @@ const datavals = ref([])
const specarr: any = ref([])
const cnenList: any = ref([])
let allSpecs = []
const open = async (Fdata, vals, val) => {
const open = async (Fdata, vals, val,allSorts) => {
console.log(Fdata, vals, val);
specarr.value=[]
allSpecs=[]
//
cnenList.value = await ProjectOrderApi.getcnenList()
datavals.value = []
printCodeName.value = []
vals.forEach((item) => {
if (item.sort == null || item.sort == undefined) {
item.sort = ''
}
// if (item.sort == null || item.sort == undefined) {
// item.sort = ''
// }
allSpecs = allSpecs.concat(item.spec)
const matchingCnen = cnenList.value.find((cnen) => item.projectSubName.includes(cnen.cn))
let projectSubNames = item.projectSubName
@ -191,9 +194,9 @@ const open = async (Fdata, vals, val) => {
<div class="qr-code-container" style=" padding:0 5mm; border:1px #d3d3d3 solid;display:flex; justify-content: flex-start; font-size:16px;font-weight:700;">
<img src="${qrCodeData}" width="30%" alt="QR Code"/>
<div style="margin-left:5mm;text-align:left;" >
<p style="line-height:20px">订单名称(Order name)${Fdata.code}</p>
<p style="line-height:20px;position: relative;">订单名称(Order name)${Fdata.code} <span style="position:absolute;right:0;border:1px solid #999;width:25px;height:25px;line-height:25px; text-align: center;border-radius: 50%;font-weight:500 !important;font-size:12px !important;color:#999;"> ${item.index}</span></p>
<hr style="margin: -10px 0;"/>
<p style="line-height:20px">序号(Serial number)${specarr.value}-${item.index}</p>
<p style="line-height:20px">序号(Serial number)${specarr.value}- ${allSorts}</p>
<hr style="margin: -10px 0;"/>
<p style="line-height:20px">产品清单(Product list)</p>` +
tempString +
@ -249,6 +252,7 @@ defineExpose({ open }) // 提供 open 方法,用于打开弹窗
page-break-after: always;
}
.qr-code-container {
display: flex;
justify-content: flex-start;
align-items: center;
@ -258,7 +262,7 @@ defineExpose({ open }) // 提供 open 方法,用于打开弹窗
}
.qr-code-container-item {
width: 100mm;
width: 100mm ;
height: 69mm;
}
/*

Loading…
Cancel
Save