122 lines
4.7 KiB
HTML
122 lines
4.7 KiB
HTML
checkboxes.forEach(cb => cb.checked = false)
|
||
updateSelectionStatus()
|
||
updateStatus('选择已清除', 'success')
|
||
}
|
||
|
||
// 重置筛选
|
||
function resetFilter() {
|
||
document.getElementById('statusFilter').value = '1'
|
||
loadOrders()
|
||
}
|
||
|
||
// 打开打印对话框
|
||
function openPrintDialog() {
|
||
if (selectedOrderIds.size === 0) {
|
||
alert('请选择订单')
|
||
return
|
||
}
|
||
|
||
// 获取选中的订单
|
||
const selectedOrders = orders.filter(order => selectedOrderIds.has(order.id))
|
||
|
||
// 更新对话框内容
|
||
const ordersList = document.getElementById('selectedOrdersList')
|
||
ordersList.innerHTML = selectedOrders.slice(0, 10).map(order => `
|
||
<div class="order-item">
|
||
<span>${order.shortId}</span>
|
||
<span>${order.platformOrderSn}</span>
|
||
<span>${order.receiverName}</span>
|
||
</div>
|
||
`).join('')
|
||
|
||
if (selectedOrders.length > 10) {
|
||
ordersList.innerHTML += `<div class="order-item" style="text-align:center;color:#909399;">
|
||
还有 ${selectedOrders.length - 10} 个订单...
|
||
</div>`
|
||
}
|
||
|
||
// 重置表单
|
||
document.getElementById('expressSelect').value = ''
|
||
document.getElementById('templateSelect').value = ''
|
||
document.getElementById('remark').value = ''
|
||
|
||
// 显示对话框
|
||
document.getElementById('printDialog').style.display = 'flex'
|
||
}
|
||
|
||
// 关闭打印对话框
|
||
function closePrintDialog() {
|
||
document.getElementById('printDialog').style.display = 'none'
|
||
document.getElementById('printLoading').style.display = 'none'
|
||
document.getElementById('printError').style.display = 'none'
|
||
isPrinting = false
|
||
}
|
||
|
||
// 开始打印
|
||
function startPrint() {
|
||
if (isPrinting) return
|
||
|
||
const expressId = document.getElementById('expressSelect').value
|
||
const templateId = document.getElementById('templateSelect').value
|
||
|
||
if (!expressId || !templateId) {
|
||
alert('请选择快递公司和模板')
|
||
return
|
||
}
|
||
|
||
isPrinting = true
|
||
document.getElementById('startPrintBtn').disabled = true
|
||
document.getElementById('printLoading').style.display = 'block'
|
||
document.getElementById('printError').style.display = 'none'
|
||
|
||
// 模拟打印过程
|
||
setTimeout(() => {
|
||
try {
|
||
// 模拟打印成功
|
||
const selectedCount = selectedOrderIds.size
|
||
|
||
// 清空选择
|
||
selectedOrderIds.clear()
|
||
updateSelectionStatus()
|
||
|
||
// 关闭对话框
|
||
closePrintDialog()
|
||
|
||
// 显示成功消息
|
||
updateStatus(`成功打印 ${selectedCount} 个订单`, 'success')
|
||
alert(`打印完成!成功打印 ${selectedCount} 个订单`)
|
||
|
||
} catch (error) {
|
||
document.getElementById('printError').textContent = '打印失败: ' + error.message
|
||
document.getElementById('printError').style.display = 'block'
|
||
updateStatus('打印失败', 'error')
|
||
} finally {
|
||
isPrinting = false
|
||
document.getElementById('startPrintBtn').disabled = false
|
||
document.getElementById('printLoading').style.display = 'none'
|
||
}
|
||
}, 2000)
|
||
}
|
||
|
||
// 添加键盘快捷键
|
||
document.addEventListener('keydown', function(event) {
|
||
// ESC键关闭对话框
|
||
if (event.key === 'Escape') {
|
||
closePrintDialog()
|
||
}
|
||
|
||
// Ctrl+Enter 开始打印
|
||
if (event.ctrlKey && event.key === 'Enter') {
|
||
if (document.getElementById('printDialog').style.display === 'flex') {
|
||
startPrint()
|
||
}
|
||
}
|
||
})
|
||
|
||
// 初始化
|
||
console.log('🆘 紧急可用版初始化完成')
|
||
console.log('如果此页面正常但Vue页面空白,说明是Vue编译问题')
|
||
console.log('请检查浏览器控制台是否有Vue编译错误')
|
||
</script>
|
||
</body>
|
||
</html> |