Commit bfccfc59 by landerliang@163.com

新增判断检测报告模板类型来定义签章坐标,report_pdf表新增字段pdfType

parent 6b245beb
......@@ -54,10 +54,10 @@ public class OnlineUserService {
String dept = jwtUserDto.getUser().getDept().getName();
String ip = StringUtils.getIp(request);
String browser = StringUtils.getBrowser(request);
String address = StringUtils.getCityInfo(ip);
//String address = StringUtils.getCityInfo(ip);
OnlineUserDto onlineUserDto = null;
try {
onlineUserDto = new OnlineUserDto(jwtUserDto.getUsername(), jwtUserDto.getUser().getNickName(), dept, browser , ip, address, EncryptUtils.desEncrypt(token), new Date());
onlineUserDto = new OnlineUserDto(jwtUserDto.getUsername(), jwtUserDto.getUser().getNickName(), dept, browser , ip, "", EncryptUtils.desEncrypt(token), new Date());
} catch (Exception e) {
log.error(e.getMessage(),e);
}
......
......@@ -43,4 +43,7 @@ public class ReportPdfVo {
@ApiModelProperty("保存时间")
private Date createTime;
@ApiModelProperty("pdf模板类型 0-正常 1-多出一行")
private Integer pdfType;
}
......@@ -42,6 +42,7 @@ import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 检测报告service
......@@ -143,8 +144,9 @@ public class ReportService {
//下载报告pdf 并写入数据库
reportPdfVo = new ReportPdfVo();
String pdfPath = carReportUtil.downloadReport(account, password, reportDetailsReqVo);
reportPdfVo.setPath(pdfPath);
Map<String, Object> result = carReportUtil.downloadReport(account, password, reportDetailsReqVo);
reportPdfVo.setPath(result.get("path").toString());
reportPdfVo.setPdfType(Integer.valueOf(result.get("pdfType").toString()));
reportPdfVo.setVehicleId(testReportVo.getVehicleID());
reportPdfVo.setUniqueString(testReportVo.getUniqueString());
reportPdfVo.setReportName(testReportVo.getInspectionNum());
......@@ -341,10 +343,13 @@ public class ReportService {
DeptVo deptVo = getCurrUserDept();
AssertUtil.isNotNull(deptVo,"列表获取失败,未找到当前账号所属部门");
String reportPath = "";
Integer pdfType = 0;
try {
//下载检测报告
reportPath = carReportUtil.downloadReport(deptVo.getEpAccount(), deptVo.getEpPassword(), detailsReqVo);
Map<String, Object> result = carReportUtil.downloadReport(deptVo.getEpAccount(), deptVo.getEpPassword(), detailsReqVo);
reportPath = result.get("path").toString();
pdfType = Integer.valueOf(result.get("pdfType").toString());
}catch (Exception e) {
log.error(e.getMessage());
}finally {
......@@ -361,6 +366,7 @@ public class ReportService {
reportPdfVo.setVehicleId(detailsReqVo.getVehicleId());
reportPdfVo.setUniqueString(detailsReqVo.getUniqueString());
reportPdfVo.setBusinessKey(detailsReqVo.getBusinessKey());
reportPdfVo.setPdfType(pdfType);
reportPdfMapper.insert(reportPdfVo);
} else {
reportPdfVo.setCarNum(detailsReqVo.getCarNum());
......@@ -370,6 +376,7 @@ public class ReportService {
reportPdfVo.setReportName(name);
reportPdfVo.setUniqueString(detailsReqVo.getUniqueString());
reportPdfVo.setVehicleId(detailsReqVo.getVehicleId());
reportPdfVo.setPdfType(pdfType);
reportPdfVo.setBusinessKey(detailsReqVo.getBusinessKey());
reportPdfMapper.updateById(reportPdfVo);
}
......
......@@ -3,7 +3,6 @@ package me.zhengjie.modules.system.util;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.URLUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import cn.hutool.http.HttpStatus;
......@@ -37,6 +36,7 @@ import org.springframework.stereotype.Component;
import sun.misc.BASE64Encoder;
import java.io.File;
import java.io.UnsupportedEncodingException;
import java.util.*;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
......@@ -694,7 +694,7 @@ public class CarReportUtil {
* @param detailsReqVo
* @return
*/
public String downloadReport(String username,String password,ReportDetailsReqVo detailsReqVo) {
public Map<String,Object> downloadReport(String username,String password,ReportDetailsReqVo detailsReqVo) {
//登录环保
WebDriver driver = null;
try {
......@@ -771,6 +771,8 @@ public class CarReportUtil {
reportDriver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS)
.setScriptTimeout(60, TimeUnit.SECONDS).pageLoadTimeout(120, TimeUnit.SECONDS);
boolean isError = reportDriver.getPageSource().contains("无检测方法结果数据不允许打印操作");
AssertUtil.isNotTrue(isError,"无检测方法结果数据不允许打印操作");
//替换掉css样式的链接以及去掉多余的元素
......@@ -803,8 +805,10 @@ public class CarReportUtil {
String base64Qrcode = encoder.encode(respBytes);
//将base64流的二维码加到页面上
parse1.getElementById("qrImg").attr("src","data:image/png;base64," + base64Qrcode);
FileUtil.writeBytes(parse1.html().getBytes(), reportHtmlPath);
FileUtil.writeBytes(parse1.html().getBytes("UTF-8"), reportHtmlPath);
//将保存到本地的html转成pdf
......@@ -814,8 +818,12 @@ public class CarReportUtil {
reportDriver.switchTo().parentFrame();
log.info(">> 检测报告下载完成!");
return getReportPath(fileName,".pdf");
} catch (InterruptedException e) {
Map<String, Object> resp = new HashMap<String,Object>();
String reportPath = getReportPath(fileName, ".pdf");
resp.put("path",reportPath);
resp.put("pdfType",(reportHtml.contains("<td class=\"readyStatus\" colspan=\"2\"> OBD系统故障指示器 </td>")?1:0));
return resp;
} catch (InterruptedException | UnsupportedEncodingException e) {
driver.close();
log.error(e.getMessage());
throw new BusinessException("服务器繁忙请重试");
......
......@@ -11,7 +11,7 @@
Target Server Version : 50732
File Encoding : 65001
Date: 08/12/2020 15:55:25
Date: 12/12/2020 15:28:13
*/
SET NAMES utf8mb4;
......@@ -250,7 +250,7 @@ CREATE TABLE `sys_log` (
PRIMARY KEY (`log_id`) USING BTREE,
INDEX `log_create_time_index`(`create_time`) USING BTREE,
INDEX `inx_log_type`(`log_type`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3678 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '系统日志' ROW_FORMAT = COMPACT;
) ENGINE = InnoDB AUTO_INCREMENT = 3747 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '系统日志' ROW_FORMAT = COMPACT;
-- ----------------------------
-- Table structure for sys_menu
......@@ -279,7 +279,7 @@ CREATE TABLE `sys_menu` (
UNIQUE INDEX `uniq_title`(`title`) USING BTREE,
UNIQUE INDEX `uniq_name`(`name`) USING BTREE,
INDEX `inx_pid`(`pid`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 131 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '系统菜单' ROW_FORMAT = COMPACT;
) ENGINE = InnoDB AUTO_INCREMENT = 132 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '系统菜单' ROW_FORMAT = COMPACT;
-- ----------------------------
-- Table structure for sys_quartz_job
......@@ -302,9 +302,15 @@ CREATE TABLE `sys_quartz_job` (
`update_by` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '更新者',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建日期',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
`dept_id` int(11) NOT NULL COMMENT '部门id',
`account` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '环保系统账号',
`password` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '环保系统密码',
`sn_name1` int(11) NULL DEFAULT NULL COMMENT '授权人签字章名称',
`sn_name2` int(11) NULL DEFAULT NULL COMMENT '批准人签字章名称',
`sn_name3` int(11) NULL DEFAULT NULL COMMENT '公章名称',
PRIMARY KEY (`job_id`) USING BTREE,
INDEX `inx_is_pause`(`is_pause`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '定时任务' ROW_FORMAT = COMPACT;
) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '定时任务' ROW_FORMAT = COMPACT;
-- ----------------------------
-- Table structure for sys_quartz_log
......@@ -322,7 +328,7 @@ CREATE TABLE `sys_quartz_log` (
`params` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`time` bigint(20) NULL DEFAULT NULL,
PRIMARY KEY (`log_id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '定时任务日志' ROW_FORMAT = COMPACT;
) ENGINE = InnoDB AUTO_INCREMENT = 1071 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '定时任务日志' ROW_FORMAT = COMPACT;
-- ----------------------------
-- Table structure for sys_role
......@@ -450,9 +456,10 @@ CREATE TABLE `t_report_pdf` (
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '存放时间',
`unique_string` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT '唯一字符串',
`vehicle_id` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
`pdf_type` int(1) NOT NULL DEFAULT 0 COMMENT 'pdf模板类型 0-正常 1-多出一行',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `uniq_reportNum`(`report_num`) USING BTREE COMMENT '检测报告编码唯一'
) ENGINE = InnoDB AUTO_INCREMENT = 26 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = DYNAMIC;
) ENGINE = InnoDB AUTO_INCREMENT = 36 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for t_signature
......@@ -486,7 +493,7 @@ CREATE TABLE `t_site` (
`secret_key` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '秘钥盘',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `uniq_site_num`(`num`) USING BTREE COMMENT '唯一站点编码'
) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = DYNAMIC;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for t_staff
......@@ -502,7 +509,35 @@ CREATE TABLE `t_staff` (
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`update_time` datetime(0) NULL DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = DYNAMIC;
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Table structure for t_task_error_log
-- ----------------------------
DROP TABLE IF EXISTS `t_task_error_log`;
CREATE TABLE `t_task_error_log` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '记录时间',
`err_msg` varchar(500) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL COMMENT '错误信息',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for t_upload_record
-- ----------------------------
DROP TABLE IF EXISTS `t_upload_record`;
CREATE TABLE `t_upload_record` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增id',
`dept_id` int(11) NOT NULL COMMENT '部门id',
`car_num` varchar(20) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT '车牌号',
`report_num` varchar(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT '检测报告编号',
`business_key` varchar(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT '业务key',
`state` int(1) NOT NULL DEFAULT 0 COMMENT '上传结果 0-失败 1-成功',
`create_time` datetime(0) NULL DEFAULT NULL COMMENT '记录时间',
`file_type` int(2) NOT NULL DEFAULT 0 COMMENT '上传文件类型 0-检测报告 1-检测申请表 2-身份证 3-行驶证1 4-行驶证2 5-维修凭证',
`path` varchar(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT '文件存放路径',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 38 CHARACTER SET = utf8 COLLATE = utf8_bin ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for tool_alipay_config
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment