Compare commits
No commits in common. "23ca847b938d589992e0fb36676e8177db7a73be" and "4376ee65aa79be118bf1d2d3f4cfd2addb7e0a1c" have entirely different histories.
23ca847b93
...
4376ee65aa
|
@ -5,13 +5,9 @@ import com.dpkj.common.dto.LexMarkResultDTO;
|
||||||
import com.dpkj.common.vo.Result;
|
import com.dpkj.common.vo.Result;
|
||||||
import com.dpkj.modules.print.request.ReceiptPrintRequest;
|
import com.dpkj.modules.print.request.ReceiptPrintRequest;
|
||||||
import com.dpkj.modules.print.service.PrintService;
|
import com.dpkj.modules.print.service.PrintService;
|
||||||
|
import com.dpkj.modules.print.vo.PrinterStatus;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestParam;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.io.UnsupportedEncodingException;
|
import java.io.UnsupportedEncodingException;
|
||||||
|
|
|
@ -47,23 +47,23 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public LexMarkResultDTO<LexMarkResultDTO.Param> printImage(JSONObject data, String template, int width, int height, String saveDir) {
|
public LexMarkResultDTO<LexMarkResultDTO.Param> printImage(JSONObject data, String template, int width, int height, String saveDir) {
|
||||||
if (height <= 0) {
|
if ( height <= 0){
|
||||||
width = FIXED_WIDTH;
|
width = FIXED_WIDTH;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (StringUtils.isEmpty(printerConfig.getTimeType())) {
|
if ( StringUtils.isEmpty(printerConfig.getTimeType())){
|
||||||
throw new RRException("获取打印时间格式出错:" + printerConfig.getTimeType());
|
throw new RRException("获取打印时间格式出错:" + printerConfig.getTimeType());
|
||||||
}
|
}
|
||||||
// if ( StringUtils.isEmpty(printerConfig.getTerminalNumber())){
|
if ( StringUtils.isEmpty(printerConfig.getTerminalNumber())){
|
||||||
// throw new RRException("获取终端号出错:" + printerConfig.getTerminalNumber());
|
throw new RRException("获取终端号出错:" + printerConfig.getTerminalNumber());
|
||||||
// }
|
}
|
||||||
|
|
||||||
// 强行设置终端号
|
// 强行设置终端号
|
||||||
// data.put("terminalNumber", printerConfig.getTerminalNumber());
|
data.put("terminalNumber", printerConfig.getTerminalNumber());
|
||||||
|
|
||||||
// 强行设置终端号和打印时间
|
// 强行设置终端号和打印时间
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat(printerConfig.getTimeType());
|
SimpleDateFormat sdf = new SimpleDateFormat(printerConfig.getTimeType());
|
||||||
String formattedDate = sdf.format(new Date());
|
String formattedDate = sdf.format( new Date());
|
||||||
data.put("printTime", formattedDate);
|
data.put("printTime", formattedDate);
|
||||||
|
|
||||||
// 获取模板
|
// 获取模板
|
||||||
|
@ -84,25 +84,25 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
JSONObject itemEntity = (JSONObject) item;
|
JSONObject itemEntity = (JSONObject) item;
|
||||||
String projectName = String.valueOf(itemEntity.get("name"));
|
String projectName = String.valueOf(itemEntity.get("name"));
|
||||||
int length = projectName.length();
|
int length = projectName.length();
|
||||||
int count = (int) Math.ceil((double) length / singleLineMaxLength);
|
int count = (int)Math.ceil((double) length / singleLineMaxLength);
|
||||||
dinyHeight += count * singleLineHeight;
|
dinyHeight += count * singleLineHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 计算是否有门诊号
|
// 计算是否有门诊号
|
||||||
String outpatientNumber = data.getString("outpatientNumber");
|
String outpatientNumber = data.getString("outpatientNumber");
|
||||||
if (!StringUtils.isEmpty(outpatientNumber)) {
|
if ( !StringUtils.isEmpty(outpatientNumber)){
|
||||||
dinyHeight += 35;
|
dinyHeight += 35;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 计算是否有就诊医生
|
// 计算是否有就诊医生
|
||||||
String doctor = data.getString("doctor");
|
String doctor = data.getString("doctor");
|
||||||
if (!StringUtils.isEmpty(doctor)) {
|
if ( !StringUtils.isEmpty(doctor)){
|
||||||
dinyHeight += 35;
|
dinyHeight += 35;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 计算是否有就诊科室
|
// 计算是否有就诊科室
|
||||||
String department = data.getString("department");
|
String department = data.getString("department");
|
||||||
if (!StringUtils.isEmpty(department)) {
|
if ( !StringUtils.isEmpty(department)){
|
||||||
dinyHeight += 35;
|
dinyHeight += 35;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -112,9 +112,9 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
this.getStatus();
|
this.getStatus();
|
||||||
StringBuilder filePath = new StringBuilder(saveDir);
|
StringBuilder filePath = new StringBuilder(saveDir);
|
||||||
// 校验是否选中了模板,如果没选中模板的话则不需要另外生成了
|
// 校验是否选中了模板,如果没选中模板的话则不需要另外生成了
|
||||||
if (!StringUtils.isEmpty(templateName) && !StringUtils.isEmpty(saveDir)) {
|
if ( !StringUtils.isEmpty(templateName) && !StringUtils.isEmpty(saveDir)){
|
||||||
byte[] image = new TemplateUtils().generateReceiptImage(data, templateName, width, height, filePath);
|
byte[] image = new TemplateUtils().generateReceiptImage(data, templateName, width, height, filePath);
|
||||||
} else {
|
}else {
|
||||||
throw new RRException("模板渲染错误");
|
throw new RRException("模板渲染错误");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -125,7 +125,7 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
deletePathList[0] = filePath.toString();
|
deletePathList[0] = filePath.toString();
|
||||||
String[] filePathList = new String[numPieces];
|
String[] filePathList = new String[numPieces];
|
||||||
// 对图片进行分块处理,当前台式打印机最大参数配置 宽度690,高度1200
|
// 对图片进行分块处理,当前台式打印机最大参数配置 宽度690,高度1200
|
||||||
if (height > MAX_HEIGHT) {
|
if ( height > MAX_HEIGHT){
|
||||||
try {
|
try {
|
||||||
// 读取输入图片
|
// 读取输入图片
|
||||||
BufferedImage originalImage = ImageIO.read(new File(filePath.toString()));
|
BufferedImage originalImage = ImageIO.read(new File(filePath.toString()));
|
||||||
|
@ -150,7 +150,7 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
log.error("模板切割失败");
|
log.error("模板切割失败");
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
} else {
|
}else {
|
||||||
filePathList[0] = "LOGO1=" + filePath;
|
filePathList[0] = "LOGO1=" + filePath;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -172,7 +172,7 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
LexMarkResultDTO<LexMarkResultDTO.Param> paramLexMarkResultDTO = thirdService.callDevice(lexMarkDTO, LexMarkResultDTO.Param.class);
|
LexMarkResultDTO<LexMarkResultDTO.Param> paramLexMarkResultDTO = thirdService.callDevice(lexMarkDTO, LexMarkResultDTO.Param.class);
|
||||||
|
|
||||||
for (String path : deletePathList) {
|
for (String path : deletePathList) {
|
||||||
if (path != null && !path.isEmpty()) {
|
if ( path != null && !path.isEmpty()) {
|
||||||
File file = new File(path);
|
File file = new File(path);
|
||||||
// 检查文件是否存在
|
// 检查文件是否存在
|
||||||
if (file.exists()) {
|
if (file.exists()) {
|
||||||
|
@ -200,7 +200,7 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
lexMarkDTO.setPluginMethod("getInfo");
|
lexMarkDTO.setPluginMethod("getInfo");
|
||||||
// lexMarkDTO.setMethodType(0);
|
// lexMarkDTO.setMethodType(0);
|
||||||
LexMarkResultDTO<PrinterStatus> status = thirdService.callDevice(lexMarkDTO, PrinterStatus.class);
|
LexMarkResultDTO<PrinterStatus> status = thirdService.callDevice(lexMarkDTO, PrinterStatus.class);
|
||||||
if (status.getResult() != 0) {
|
if ( status.getResult() != 0){
|
||||||
thirdService.open("ReceiptPrinter", 1);
|
thirdService.open("ReceiptPrinter", 1);
|
||||||
status = thirdService.callDevice(lexMarkDTO, PrinterStatus.class);
|
status = thirdService.callDevice(lexMarkDTO, PrinterStatus.class);
|
||||||
}
|
}
|
||||||
|
@ -212,16 +212,16 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
throw new RRException("获取打印机纸张状态出问题");
|
throw new RRException("获取打印机纸张状态出问题");
|
||||||
}
|
}
|
||||||
String[] papers = stPaperEx.split("\\|");
|
String[] papers = stPaperEx.split("\\|");
|
||||||
if (papers.length < 1) {
|
if ( papers.length < 1) {
|
||||||
throw new RRException("打印机纸盒数量不对");
|
throw new RRException("打印机纸盒数量不对");
|
||||||
}
|
}
|
||||||
String paperStatus = papers[0];
|
String paperStatus = papers[0];
|
||||||
if (!(paperStatus.equals(MS439PaperStatusEnum.PAPERFULL.getPrintCode()) || paperStatus.equals(MS439PaperStatusEnum.PAPERLOW.getPrintCode()))) {
|
if ( !(paperStatus.equals(MS439PaperStatusEnum.PAPERFULL.getPrintCode()) || paperStatus.equals(MS439PaperStatusEnum.PAPERLOW.getPrintCode()))){
|
||||||
throw new RRException(500, paperStatus);
|
throw new RRException(500, paperStatus);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验打印机是否正常,除了HEALTHY都抛异常
|
// 校验打印机是否正常,除了HEALTHY都抛异常
|
||||||
if (!ms439.getStDeviceStatus().equals(MS439DeviceStatusEnum.HEALTHY.getPrintCode())) {
|
if (!ms439.getStDeviceStatus().equals(MS439DeviceStatusEnum.HEALTHY.getPrintCode()) ) {
|
||||||
throw new RRException(500, ms439.getStDeviceStatus());
|
throw new RRException(500, ms439.getStDeviceStatus());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -231,13 +231,13 @@ public class RegisterServiceImpl implements PrintService {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验磁带 满或者少才放行
|
// 校验磁带 满或者少才放行
|
||||||
if (false && !(ms439.getStToner().equals(MS439TonerStatusEnum.TONERFULL.getPrintCode()) || ms439.getStToner().equals(MS439TonerStatusEnum.TONERLOW.getPrintCode()))) {
|
if ( false && !(ms439.getStToner().equals(MS439TonerStatusEnum.TONERFULL.getPrintCode()) || ms439.getStToner().equals(MS439TonerStatusEnum.TONERLOW.getPrintCode()))){
|
||||||
throw new RRException(500, ms439.getStToner());
|
throw new RRException(500, ms439.getStToner());
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验墨盒 满或者少才放行,当前获取为未知
|
// 校验墨盒 满或者少才放行,当前获取为未知
|
||||||
if (false && !(ms439.getStInk().equals(MS439InkStatusEnum.INKFULL.getPrintCode()) || ms439.getStInk().equals(MS439InkStatusEnum.INKLOW.getPrintCode())
|
if ( false && !(ms439.getStInk().equals(MS439InkStatusEnum.INKFULL.getPrintCode()) || ms439.getStInk().equals(MS439InkStatusEnum.INKLOW.getPrintCode())
|
||||||
|| ms439.getStInk().equals(MS439InkStatusEnum.INKUNKNOWN.getPrintCode()))) {
|
|| ms439.getStInk().equals(MS439InkStatusEnum.INKUNKNOWN.getPrintCode()))){
|
||||||
throw new RRException(500, ms439.getStInk());
|
throw new RRException(500, ms439.getStInk());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue