package com.zbooksoft.gdmis.common;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.ruili.wcp.common.CustomConfigUtil;
|
import com.ruili.wcp.common.SpringContextUtil;
|
import com.zbooksoft.gdmis.config.ArchivesCustomConfig;
|
import com.zbooksoft.gdmis.data.entity.CatAjjxx;
|
import com.zbooksoft.gdmis.data.entity.PackingManage;
|
import com.zbooksoft.gdmis.service.CatAjjxxService;
|
import com.zbooksoft.gdmis.service.CatYswjxxService;
|
|
import com.zbooksoft.gdmis.service.PackingManageService;
|
import tsc_sdk.TcpComm;
|
|
import java.util.List;
|
|
import static com.zbooksoft.gdmis.common.TscUtil.wrapText;
|
|
|
/**
|
* @Description:
|
* @Author: zhai
|
* @Date: 2025/8/19
|
**/
|
public class UsbSyncExampleWindows {
|
CatYswjxxService catYswjxxService = (CatYswjxxService) SpringContextUtil.getBean("catYswjxxServiceImpl");
|
CustomConfigUtil customConfigUtil = (CustomConfigUtil) SpringContextUtil.getBean("customConfigUtil");
|
|
CatAjjxxService catAjjxxService = (CatAjjxxService) SpringContextUtil.getBean("catAjjxxServiceImpl");
|
PackingManageService packingManageService = (PackingManageService) SpringContextUtil.getBean("packingManageServiceImpl");
|
|
public void printFileLabel(List<Long> idList) {
|
ArchivesCustomConfig archivesCustomConfig = customConfigUtil.getConfigObj(ArchivesCustomConfig.class);
|
String fileIp = archivesCustomConfig.getBoxIp();
|
TcpComm asyncComm = new TcpComm(fileIp, 9100);
|
try {
|
asyncComm.open();
|
for (Long id : idList) {
|
|
QueryWrapper<PackingManage> packingManageQueryWrapper = new QueryWrapper<>();
|
packingManageQueryWrapper.eq("item_id", id);
|
List<PackingManage> packingManageList = packingManageService.list(packingManageQueryWrapper);
|
|
|
for (PackingManage packingManage : packingManageList) {
|
QueryWrapper<CatAjjxx> catAjjxxQueryWrapper = new QueryWrapper<>();
|
catAjjxxQueryWrapper.eq("id", packingManage.getAjId());
|
CatAjjxx catAjjxx = catAjjxxService.getOne(catAjjxxQueryWrapper);
|
String boxNumber = packingManage.getBoxNumber();
|
QueryWrapper<PackingManage> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("box_number", boxNumber);
|
List<PackingManage> packingManageListByBox = packingManageService.list(queryWrapper);
|
int num = packingManageListByBox.size();
|
|
String code = catAjjxx.getDh();
|
|
String typeName = "类别:";
|
String type = "";
|
String itemNumName = "件数:";
|
String itemNum = String.valueOf(num);
|
String titleName = "题名:";
|
String boxMum = packingManage.getBoxNumber();
|
|
String codeNum = "000" + "A" + boxMum;
|
//(珠江口盆地珠五副海洋工程地质调查报)
|
// String all = "南海珠江口盆地海洋工程地质调查(珠五井幅)(珠江口盆地珠五副海洋工程地质调查报)";
|
String all = catAjjxx.getXmkyqmc();
|
List<String> wrappedLines = wrapText(all, 18, 7);
|
|
StringBuilder commandBuilder = new StringBuilder();
|
commandBuilder.append("SET RESPONSE ON\r\n");
|
commandBuilder.append("CLS\r\n");
|
|
commandBuilder.append("RFID WRITE,0,H,0,24,EPC,\"" + codeNum + "\"\r\n");
|
commandBuilder.append("BOX 15,165,550,165,10\r\n");
|
commandBuilder.append("BOX 15,265,550,265,10\r\n");
|
commandBuilder.append("BOX 15,365,550,365,10\r\n");
|
commandBuilder.append("BOX 15,700,550,700,10\r\n");
|
|
commandBuilder.append("BOX 15,165,15,700,10\r\n");
|
commandBuilder.append("BOX 150,165,150,700,10\r\n");
|
commandBuilder.append("BOX 550,165,550,700,10\r\n");
|
|
commandBuilder.append("TEXT 105,20,\"A123.TTF\",0,25,25,\"" + code + "\"\r\n");
|
|
// 第一行
|
commandBuilder.append("TEXT 35,200,\"STZHONGS.TTF\",0,10,10,\"类别\"\r\n");
|
commandBuilder.append("TEXT 160,200,\"STZHONGS.TTF\",0,10,10,\"" + type + "\"\r\n");
|
|
// 第二行
|
commandBuilder.append("TEXT 35,310,\"STZHONGS.TTF\",0,10,10,\"件数\"\r\n");
|
commandBuilder.append("TEXT 155,310,\"STZHONGS.TTF\",0,10,10,\"" + itemNum + "\"\r\n");
|
|
// // 第三行
|
commandBuilder.append("TEXT 35,530,\"STZHONGS.TTF\",0,10,10,\"题名\"\r\n");
|
|
|
int yPosition = 400;
|
for (String line : wrappedLines) {
|
commandBuilder.append("TEXT 155,").append(yPosition).append(",\"STZHONGS.TTF\",0,10,10,\"").append(line).append("\"\r\n");
|
yPosition += 60;
|
}
|
commandBuilder.append("BARCODE 130,750,\"128\",150,0,0,5,5,\"" + boxMum + "\"\r\n");
|
commandBuilder.append("TEXT 155,920,\"A123.TTF\",0,25,25,\"" + boxMum + "\"\r\n");
|
|
// if ("是".equals(fileData.getIsSecurity())) {
|
// commandBuilder.append("TEXT 80,920,\"A123.TTF\",0,25,25,\"" + boxMum + "★\"\r\n");
|
// } else {
|
// commandBuilder.append("TEXT 155,920,\"A123.TTF\",0,25,25,\"" + boxMum + "\"\r\n");
|
// }
|
|
// commandBuilder.append("RFID READ,0,H,0,24,EPC,\"EPC: \"\r\n");
|
commandBuilder.append("PRINT 1\r\n");
|
// System.out.println(commandBuilder.toString());
|
byte[] dataToSend = commandBuilder.toString().getBytes();
|
asyncComm.writeSync(dataToSend);
|
}
|
}
|
Thread.sleep(25000);
|
} catch (Exception e) {
|
System.err.println("打印错误: " + e.getMessage());
|
} finally {
|
try {
|
asyncComm.close(); //
|
System.out.println("连接关闭");
|
} catch (Exception e) {
|
System.err.println("关闭打印机连接错误: " + e.getMessage());
|
}
|
}
|
}
|
}
|