Browse Source

feat(print): 更新箱体标签打印功能

- 重命名打印函数从printPage到printBoxPage以统一命名规范
- 新增labelFlag为'D'的打印页面类型printBoxPageD
- 修改条件判断逻辑从labelFlag != 'A' && labelFlag != 'B'改为labelFlag = 'C'
- 在B类型打印中添加对D类型打印的支持
- 完善代码注释和格式化以提高可读性
master
qiankanghui 15 hours ago
parent
commit
43568b5a13
  1. 2
      src/main/java/com/ccl/tt/controller/PrintController.java
  2. 130
      src/main/resources/templates/print/box.ftl

2
src/main/java/com/ccl/tt/controller/PrintController.java

@ -728,7 +728,7 @@ public class PrintController {
String pkgC="CCL"+partApn+pkgcDate+seqNo;
model.addAttribute("pkg", pkgC);
}
if("B".equals(printFlag)){
if("B".equals(printFlag) || "D".equals(printFlag)){
// 使用Calendar类获取周数
calendar.setTime(productTime);
int week = calendar.get(Calendar.WEEK_OF_YEAR);

130
src/main/resources/templates/print/box.ftl

@ -6,18 +6,21 @@
<#else >
<script>
function lodopReady(){
<#if labelFlag == 'A'>
printPageA();
<#if labelFlag == 'A'>
printBoxPageA();
</#if>
<#if labelFlag == 'B'>
printPageB();
printBoxPageB();
</#if>
<#if labelFlag != 'A' && labelFlag != 'B'>
printPageC();
<#if labelFlag == 'D'>
printBoxPageD();
</#if>
<#if labelFlag = 'C'>
printBoxPageC();
</#if>
}
function printPageA(){
function printBoxPageA(){
LODOP.NewPage();
LODOP.SET_PRINT_PAGESIZE(1,1500,1000,"");
LODOP.SET_PRINT_MODE("PRINT_NOCOLLATE",1);
@ -101,7 +104,7 @@ function printPageA(){
LODOP.SET_PRINT_STYLEA(0,"Stretch",2);
}
function printPageB(){
function printBoxPageB(){
LODOP.NewPage();
LODOP.SET_PRINT_PAGESIZE(1,1500,1000,"");
LODOP.SET_PRINT_MODE("PRINT_NOCOLLATE",1);
@ -214,7 +217,7 @@ function printPageB(){
LODOP.ADD_PRINT_RECT(211,282,36,26,0,1);
}
function printPageC(){
function printBoxPageC(){
LODOP.SET_PRINT_PAGESIZE(1,1500,1000,"");
LODOP.SET_PRINT_MODE("PRINT_NOCOLLATE",1);
LODOP.ADD_PRINT_LINE(11,5,10,546,0,1);
@ -325,7 +328,118 @@ function printPageC(){
LODOP.SET_PRINT_STYLEA(0,"FontSize",12);
LODOP.SET_PRINT_STYLEA(0,"Bold",2);
}
function printBoxPageD(){
LODOP.NewPage();
LODOP.SET_PRINT_PAGESIZE(1,1500,1000,"");
LODOP.SET_PRINT_MODE("PRINT_NOCOLLATE",1);
LODOP.ADD_PRINT_TEXT(13,17,188,21,"(P)HH P/N:"+"${customerPartNo}");
LODOP.ADD_PRINT_BARCODE(30,19,161,15,"128A","${customerPartNo}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(46,18,186,21,"(Q)QTY:"+"${boxQty}");
LODOP.ADD_PRINT_BARCODE(62,19,65,15,"128A","${boxNo}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(80,19,189,20,"(M)Mfr P/N:"+"${partNo}");
LODOP.ADD_PRINT_BARCODE(97,19,161,15,"128A","${partNo}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(116,19,190,20,"(D)Date Code:"+"${rollTime1}");
LODOP.ADD_PRINT_BARCODE(133,19,167,15,"128A","${rollTime1}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(185,19,192,20,"(L)Lot NO:"+"${boxNo}");
LODOP.ADD_PRINT_BARCODE(201,19,161,16,"128A","${boxNo}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(250,19,192,20,"PKG ID:${pkg}");
LODOP.ADD_PRINT_BARCODE(265,19,225,15,"128A","${pkg}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_BARCODE(282,21,110,79,"QRCode","${customerPartNo}"+","+"${boxQty}"+","+"${partNo}"+","+"${rollTime1}"+","+"${dateCode}"+","+"${boxNo}"+","+"${order.revNo}"+","+"${pkg}");
<#--LODOP.ADD_PRINT_TEXT(299,206,121,20,"机种:"+"${resource}");-->
LODOP.ADD_PRINT_TEXT(217,293,30,20,"HF");
LODOP.SET_PRINT_STYLEA(0,"FontSize",12);
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_IMAGE(22,363,119,37,"<img src='/img/ccl-logo.png'>");
LODOP.SET_PRINT_STYLEA(0,"Stretch",1);
LODOP.ADD_PRINT_IMAGE(212,209,55,20,"<img src='/img/cclimg.png'>");
LODOP.SET_PRINT_STYLEA(0,"Stretch",1);
LODOP.ADD_PRINT_TEXT(219,20,75,20,"Rev:"+"${order.revNo}");
LODOP.ADD_PRINT_BARCODE(234,19,69,15,"128A","${order.revNo}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_LINE(57,353,56,527,0,2);
LODOP.ADD_PRINT_TEXT(35,527,39,25,"GP");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"FontSize",14);
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(12,489,79,25,"${index}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"FontSize",11);
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(60,355,210,25,"Customer:FINISHED GOODS STOCK");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"FontSize",8);
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(97,355,209,25,"Part No.:"+"${partNo}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"FontSize",10);
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(118,355,211,25,"Desc.:"+"${order.partDesc}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(139,355,208,20,"Locn.:");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(160,355,205,20,"Box Qty.:"+"${boxQty}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(78,355,205,20,"Qty of Rolls/Packs:"+"${count}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(184,355,201,20,"Total Ship Qty:"+"${shipQty}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(202,355,204,25,"Manf Date:"+"${rollTime1}"+" "+"${rollTime2}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(221,355,199,25,"Material:");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
// LODOP.ADD_PRINT_TEXT(240,278,277,25,"AWF04X(FS)+AMP-E");
// LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
// LODOP.SET_PRINT_STYLEA(0,"FontSize",10);
// LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(261,355,200,48,"Approvals:");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_LINE(321,352,320,525,0,2);
LODOP.ADD_PRINT_TEXT(322,355,198,20,"Job No.:"+"${boxNo}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(340,355,196,20,"Lot No:"+"${boxNo}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(221,444,106,20,"${rollTime3}");
LODOP.SET_PRINT_STYLEA(0,"FontName","微软雅黑");
LODOP.SET_PRINT_STYLEA(0,"Bold",1);
LODOP.ADD_PRINT_TEXT(150,20,136,20,"(W)Week Code:"+"${dateCode}");
LODOP.ADD_PRINT_BARCODE(165,20,96,15,"128A","${dateCode}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(13,208,171,20,"Project:"+"${resource}");
LODOP.ADD_PRINT_BARCODE(30,208,98,15,"128A","${resource}");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(46,208,100,20,"Stage:MP");
LODOP.ADD_PRINT_BARCODE(62,208,89,15,"128A","MP");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(80,208,100,20,"Supplier:CCL");
LODOP.ADD_PRINT_BARCODE(97,208,94,15,"128A","CCL");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(116,208,100,20,"Config:NA");
LODOP.ADD_PRINT_BARCODE(133,208,82,15,"128A","NA");
LODOP.SET_PRINT_STYLEA(0,"ShowBarText",0);
LODOP.ADD_PRINT_TEXT(150,208,100,20,"Bin:");
LODOP.ADD_PRINT_TEXT(170,208,100,20,"WK-DC-QTY List");
LODOP.ADD_PRINT_RECT(211,282,36,26,0,1);
}
</script>
</#if>

Loading…
Cancel
Save