diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/indexs.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/indexs.vue
index 66776ce3..8b5a715e 100644
--- a/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/indexs.vue
+++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/indexs.vue
@@ -7,11 +7,13 @@
-
-
@@ -21,11 +23,13 @@
-
-
@@ -52,7 +56,8 @@
-
@@ -88,6 +93,7 @@
全部审核
+ 打印
@@ -132,13 +138,15 @@
-
+
@@ -151,6 +159,8 @@ import {dateFormatter1} from "@/utils/formatTime";
import {ref} from "vue";
import {ElTable, ElTableColumn} from "element-plus";
import dayjs from "dayjs";
+import Print from './print.vue'
+const printRef = ref()
defineOptions({ name: 'PartPurchaseCheck' })
const router = useRouter()
const message = useMessage() // 消息弹窗
@@ -242,7 +252,50 @@ const approves = async () => {
formLoading.value = false;
}
}
+const print = async () => {
+ try{
+ const list = multipleTable.value|| []; // 安全获取数据
+ // 1. 检查空数据
+ if (!list || list.length==null) {
+ message.error("请选择要打印的采购订单,请确认");
+ return;
+ }
+ formLoading.value = true;
+ const printData = list.map((item,index)=>({
+ 编号:index+1,
+ 日期:item.createTime,
+ 客户名: item.brief,
+ 模具名: item.projectSubCode,
+ 件号: item.blueprintNo,
+ 零件名称: item.boomName,
+ 材料: item.composition,
+ 规格: item.boomSpec,
+ 数量: item.purchaseAmount,
+ 单价: item.unitPrice,
+ 总价格: item.estimatedPrice,
+ 要求日期: item.requireTime,
+ 合立经手人: item.duEmpName,
+ }))
+ console.log(JSON.parse(JSON.stringify(printData)))
+ //校验责任人必须是同一人
+ const duEmpNames = printData.map(item => item.合立经手人);
+ const uniqueDuEmpNames = new Set(duEmpNames);
+ if (uniqueDuEmpNames.size !== 1) {
+ message.error("合立经手人必须是同一人,请确认");
+ return;
+ }
+ const printDataStr = JSON.parse(JSON.stringify(printData));
+ // 生成打印模板 顺序分别为 编号 日期 客户名 模具名 件号 零件名称 材料 规格 数量 单价 总价格 要求日期
+ // 将其放在table中 调用打印
+ printRef.value.open(printDataStr)
+
+} catch (error) {
+ console.error("打印失败:", error);
+} finally {
+ formLoading.value = false;
+}
+}
/** 添加/修改操作 */
const formRef = ref()
const openForm = (id?: number) => {
diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/print.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/print.vue
new file mode 100644
index 00000000..e27399c2
--- /dev/null
+++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/print.vue
@@ -0,0 +1,229 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ | 编号 |
+ 日期 |
+ 客户名 |
+ 模具名 |
+ 件号 |
+ 零件名称 |
+ 材料 |
+ 规格 |
+ 数量 |
+ 单价 |
+ 总价格 |
+ 要求日期 |
+
+
+
+
+ | {{ row['编号'] }} |
+ {{ fmtDate(row['日期']) }} |
+ {{ row['客户名'] }} |
+ {{ row['模具名'] }} |
+ {{ row['件号'] }} |
+ {{ row['零件名称'] }} |
+ {{ row['材料'] }} |
+ {{ row['规格'] }} |
+ {{ row['数量'] }} |
+ {{ row['单价'] }} |
+ {{ row['总价格'] }} |
+ {{ fmtDate(row['要求日期']) }} |
+
+
+
+
+ | 合计 |
+ {{ sumQuantity }} |
+ |
+ {{ sumTotal }} |
+ |
+
+
+
+
+
+
+
+
+ 关闭
+ 打印
+
+
+
+
+
+
+