Compare commits

...

2 Commits

Author SHA1 Message Date
xuxingjun
b18e0b9039 优化下载 2025-08-12 14:13:34 +08:00
xuxingjun
9c8d863232 优化贺报下载 2025-08-06 19:45:29 +08:00
2 changed files with 65 additions and 41 deletions

View File

@@ -255,11 +255,13 @@
@cancel="cancelChange"
/>
</van-popup>
<div class="hebao" v-if="hebaoShow">
<!-- <div class="hebao"> -->
<generateImg
v-if="hebaoShow"
@child-colse="closeHebao"
@custom-event="customEvent"
></generateImg>
</div>
<!-- </div> -->
<van-popup v-model="xiangqingShow" position="right" :style="{ width: '100%', height: '100%' }">
<policyDetails
v-if="xiangqingShow"
@@ -631,33 +633,40 @@ export default {
message: '加载中……'
})
let data = {}
if(this.dateFlag == 'all') {
data = {
outOrderType: this.outOrderType, // "accept",//--出单类型 承保 accept 预收 advance
// dateFlag: this.dateFlag, // -最近一月-m,最近一年y ,全部-all
dateFlag: '', // 暂不使用改参数,默认给空
// appntDate: this.postDate,
distCode: this.OrgLv2Code,
depCode: this.OrgLv3Code,
orgCode: this.OrgLv4Code,
pageNum: this.pageNum,
pageSize: this.pageSize
}
} else {
data = {
outOrderType: this.outOrderType, // "accept",//--出单类型 承保 accept 预收 advance
startDate: this.dialogForm.startDate, // "2024-09-01",
endDate: this.dialogForm.endDate, //"2024-09-30",
// dateFlag: this.dateFlag, // -最近一月-m,最近一年y ,全部-all
dateFlag: '', // 暂不使用改参数,默认给空
// appntDate: this.postDate,
distCode: this.OrgLv2Code,
depCode: this.OrgLv3Code,
orgCode: this.OrgLv4Code,
pageNum: this.pageNum,
pageSize: this.pageSize
if(localStorage.getItem("billingShow")) {
// console.log('用了');
data = JSON.parse(localStorage.getItem("billingDetail"))
}else {
// console.log('没用');
if(this.dateFlag == 'all') {
data = {
outOrderType: this.outOrderType, // "accept",//--出单类型 承保 accept 预收 advance
// dateFlag: this.dateFlag, // -最近一月-m,最近一年y ,全部-all
dateFlag: '', // 暂不使用改参数,默认给空
// appntDate: this.postDate,
distCode: this.OrgLv2Code,
depCode: this.OrgLv3Code,
orgCode: this.OrgLv4Code,
pageNum: this.pageNum,
pageSize: this.pageSize
}
} else {
data = {
outOrderType: this.outOrderType, // "accept",//--出单类型 承保 accept 预收 advance
startDate: this.dialogForm.startDate, // "2024-09-01",
endDate: this.dialogForm.endDate, //"2024-09-30",
// dateFlag: this.dateFlag, // -最近一月-m,最近一年y ,全部-all
dateFlag: '', // 暂不使用改参数,默认给空
// appntDate: this.postDate,
distCode: this.OrgLv2Code,
depCode: this.OrgLv3Code,
orgCode: this.OrgLv4Code,
pageNum: this.pageNum,
pageSize: this.pageSize
}
}
}
localStorage.setItem("billingDetail", JSON.stringify(data))
queryOutOrderList(data).then((res) => {
this.$toast.clear()
if (res.result == 0) {
@@ -673,6 +682,7 @@ export default {
this.total = res.content.total
this.loading = false
this.listShow = true
localStorage.setItem("billingShow", false)
} else{
this.tableData = []
this.listShow = false
@@ -856,6 +866,11 @@ export default {
closeDetails() {
this.xiangqingShow = !this.xiangqingShow
},
customEvent() {
this.closeHebao();
// console.log('缓存变true了');
this.queryOutOrderListFunc();
},
closeHebao() {
this.hebaoShow = !this.hebaoShow
},

View File

@@ -56,7 +56,7 @@ export default {
methods: {
getList() {
this.orderList = JSON.parse(localStorage.getItem('orderList'))
console.log('页面数据',this.orderList);
// console.log('页面数据',this.orderList);
},
// 将 Blob转base64
blobToBase64(blob) {
@@ -95,28 +95,25 @@ export default {
})
},
// 生成图片并下载
domToImage(domElement, quality, callback) {
console.log(location);
async domToImage(domElement, quality, callback) {
html2canvas(domElement, {
width: domElement.offsetWidth,
height: domElement.offsetHeight,
backgroundColor: '#fff',
scale: 1,
dpi: 300
dpi: 300,
useCORS: true,
allowTaint: true,
}).then((canvas) => {
// 转换canvas为PNG图片并压缩
this.$toast.loading({
duration: 1000, // 持续展示 toast
forbidClick: true, // 禁用背景点击
loadingType: 'spinner',
message: '加载中……'
})
canvas.toBlob(
(blob) => {
// const a = document.createElement('a')
// a.href = URL.createObjectURL(blob)
// a.download = '业绩贺报.png'
// a.click()
// let newimg = new Image()
// newimg.src = URL.createObjectURL(blob)
// newimg.onload = function () {
// URL.revokeObjectURL(newimg.src)
// callback(newimg)
// }
this.blobToBase64(blob).then((base64String) => {
base64Excel({ base64Img: base64String }).then(res => {
if (res.result == '0') {
@@ -130,6 +127,10 @@ export default {
.catch(() => {
this.$toast.fail('图片下载失败,请重新下载!')
})
setTimeout(() => {
localStorage.setItem("billingShow", true)
location.reload(true)
}, 1000)
}
})
@@ -141,6 +142,14 @@ export default {
)
})
},
downloadImage(dataUrl) {
const link = document.createElement('a')
link.download = '业绩贺报.png'
link.href = dataUrl
document.body.appendChild(link)
link.click()
document.body.removeChild(link)
},
downLoadImagesFunc() {
this.domToImage(this.$refs.generateImg)
},