Commit fbfaee2f authored by 夏东伟's avatar 夏东伟

联调修改

parent 8520d763
...@@ -63,87 +63,40 @@ public class WheelAlignmentJob extends QuartzJobBean { ...@@ -63,87 +63,40 @@ public class WheelAlignmentJob extends QuartzJobBean {
String dateString = DateUtils.parseDateToString(startOfDay, "yyyy-MM-dd HH:mm:ss"); String dateString = DateUtils.parseDateToString(startOfDay, "yyyy-MM-dd HH:mm:ss");
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMMdd", Locale.ENGLISH); SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMMdd", Locale.ENGLISH);
String newDateString = sdf.format(new Date()); String newDateString = sdf.format(new Date());
String dataBaseFileName = "BL_Align";
for (String ipAddress : ipAddressList){ for (String ipAddress : ipAddressList){
if (!PingIpUtils.ping(ipAddress, pingTimes, timeOut)) { if (!PingIpUtils.ping(ipAddress, pingTimes, timeOut)) {
log.error("ping: {}失败, 此次同步底盘四轮定位数据操作结束!", ipAddress); log.error("ping: {}失败, 此次同步底盘四轮定位数据操作结束!", ipAddress);
return; return;
} }
//todo:账户, 密码, 文件位置需要变 //todo:账户, 密码, 文件位置需要变 BL_Align(数据库文件)
String url = "smb://wanteng:wanteng@" + ipAddress + "/AN9637H/" + newDateString + ".mdb"; String url;
if (ipAddress.equals(ipAddress1)){
url = "smb://wanteng:wanteng@" + ipAddress + "/AN9637H/" + newDateString + ".mdb";
}else {
url = "smb://wanteng:wanteng@" + ipAddress + "/Database/" + dataBaseFileName + ".mdb";
}
SmbFile file = null; SmbFile file = null;
String dateFile = baseUrl + newDateString + "-" + ipAddress + ".mdb";
try { try {
file = new SmbFile(url); file = new SmbFile(url);
if (file.exists()) { if (file.exists()) {
SmbFileUtil.smbGet(url, baseUrl + newDateString + ".mdb"); SmbFileUtil.smbGet(url, dateFile);
}else { }else {
log.error("日期: {} 的底盘车间四轮定位共享数据库文件不存在!", newDateString); log.error("日期: {} 的底盘车间四轮定位共享数据库文件不存在!", url);
continue; continue;
} }
Database db; Database db;
List<WheelAlignment> list = new ArrayList<>();; List<WheelAlignment> list = new ArrayList<>();;
try { try {
db = DatabaseBuilder.open(new File(baseUrl + newDateString + ".mdb")); db = DatabaseBuilder.open(new File(dateFile));
Set<String> tableNames = db.getTableNames(); Set<String> tableNames = db.getTableNames();
for (String tableName : tableNames) { for (String tableName : tableNames) {
if (!"LEGEND-5214E5AF".equals(tableName)){ if ("LEGEND-5214E5AF".equals(tableName)){
continue; saveData(ipAddress, db, list, tableName);
} }
Table table = db.getTable(tableName); if (newDateString.equals(tableName)){
for (Row row : table) { saveData(ipAddress, db, list, tableName);
WheelAlignment map = new WheelAlignment();
map.setWorkOrderID(row.getString("WorkOrderID"));
map.setStartDateTime(row.getString("StartDateTime"));
map.setEndDateTime(row.getString("EndDateTime"));
map.setMake(row.getString("Make"));
map.setModel(row.getString("Model"));
map.setVIN(row.getString("VIN"));
map.setLFToeI(row.getInt("LFToeI") / 51.2 + "mm");
map.setLFToeF(row.getInt("LFToeF") / 51.2 + "mm");
map.setRFToeI(row.getInt("RFToeI") / 51.2 + "mm");
map.setRFToeF(row.getInt("RFToeF") / 51.2 + "mm");
map.setLFCamI((row.getInt("LFCamI") / 1000) + "°" + (Math.round((row.getInt("LFCamI") % 1000 * 60 / 1000f))) + "′");
map.setLFCamF((row.getInt("LFCamF") / 1000) + "°" + (Math.round((row.getInt("LFCamF") % 1000 * 60 / 1000f))) + "′");
map.setRFCamI((row.getInt("RFCamI") / 1000) + "°" + (Math.round((row.getInt("RFCamI") % 1000 * 60 / 1000f))) + "′");
map.setRFCamF((row.getInt("RFCamF") / 1000) + "°" + (Math.round((row.getInt("RFCamF") % 1000 * 60 / 1000f))) + "′");
map.setLCasI((row.getInt("LCasI") / 1000) + "°" + (Math.round((row.getInt("LCasI") % 1000 * 60 / 1000f))) + "′");
map.setLCasF((row.getInt("LCasF") / 1000) + "°" + (Math.round((row.getInt("LCasF") % 1000 * 60 / 1000f))) + "′");
map.setRCasI((row.getInt("RCasI") / 1000) + "°" + (Math.round((row.getInt("RCasI") % 1000 * 60 / 1000f))) + "′");
map.setRCasF((row.getInt("RCasF") / 1000) + "°" + (Math.round((row.getInt("RCasF") % 1000 * 60 / 1000f))) + "′");
//TODO:LKpiI/256*15′
int lKpiI = Math.round(row.getInt("LKpiI") % 1000 / 250f);
if (lKpiI == 4){
map.setLKpiI((row.getInt("LKpiI") / 1000 + 1) + "°" + "0′");
}else{
map.setLKpiI((row.getInt("LKpiI") / 1000 + 1) + "°" + (lKpiI * 15) + "′");
}
int lKpiF = Math.round(row.getInt("LKpiF") % 1000 / 250f);
if (lKpiF == 4){
map.setLKpiF((row.getInt("LKpiF") / 1000 + 1) + "°" + "0′");
}else{
map.setLKpiF((row.getInt("LKpiF") / 1000) + "°" + (lKpiF * 15) + "′");
}
int rKpiI = Math.round(row.getInt("RKpiI") % 1000 / 250f);
if (rKpiI == 4){
map.setRKpiI((row.getInt("RKpiI") / 1000 + 1) + "°" + "0′");
}else{
map.setRKpiI((row.getInt("RKpiI") / 1000) + "°" + (rKpiI * 15) + "′");
}
int rKpiF = Math.round(row.getInt("RKpiF") % 1000 / 250f);
if (rKpiF == 4){
map.setRKpiF((row.getInt("RKpiF") / 1000 + 1) + "°" + "0′");
}else{
map.setRKpiF((row.getInt("RKpiF") / 1000) + "°" + (rKpiF * 15) + "′");
}
map.setLAckermanF(String.valueOf(new BigDecimal(row.getDouble("LAckermanF")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()) + "°");
map.setRAckermanF(String.valueOf(new BigDecimal(row.getDouble("RAckermanF")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()) + "°");
map.setLMaxTurnF(String.valueOf(new BigDecimal(row.getDouble("LMaxTurnF")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()) + "°");
map.setRMaxTurnF(String.valueOf(new BigDecimal(row.getDouble("RMaxTurnF")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()) + "°");
map.setTandem0I((row.getInt("Tandem0I") / 47.5) + "mm");
map.setTandem0D1I((row.getInt("Tandem0D1I") / 115.926) + "mm");
map.setIpAddress(ipAddress);
map.setCreateTime(new Date());
list.add(map);
} }
} }
} catch (IOException e) { } catch (IOException e) {
...@@ -162,4 +115,64 @@ public class WheelAlignmentJob extends QuartzJobBean { ...@@ -162,4 +115,64 @@ public class WheelAlignmentJob extends QuartzJobBean {
} }
log.info("--------同步底盘车间四轮定位数据结束--------"); log.info("--------同步底盘车间四轮定位数据结束--------");
} }
private void saveData(String ipAddress, Database db, List<WheelAlignment> list, String tableName) throws IOException {
Table table = db.getTable(tableName);
for (Row row : table) {
WheelAlignment map = new WheelAlignment();
map.setWorkOrderID(row.getString("WorkOrderID"));
map.setStartDateTime(row.getString("StartDateTime"));
map.setEndDateTime(row.getString("EndDateTime"));
map.setMake(row.getString("Make"));
map.setModel(row.getString("Model"));
map.setVIN(row.getString("VIN"));
map.setLFToeI(row.getInt("LFToeI") / 51.2 + "mm");
map.setLFToeF(row.getInt("LFToeF") / 51.2 + "mm");
map.setRFToeI(row.getInt("RFToeI") / 51.2 + "mm");
map.setRFToeF(row.getInt("RFToeF") / 51.2 + "mm");
map.setLFCamI((row.getInt("LFCamI") / 1000) + "°" + (Math.round((row.getInt("LFCamI") % 1000 * 60 / 1000f))) + "′");
map.setLFCamF((row.getInt("LFCamF") / 1000) + "°" + (Math.round((row.getInt("LFCamF") % 1000 * 60 / 1000f))) + "′");
map.setRFCamI((row.getInt("RFCamI") / 1000) + "°" + (Math.round((row.getInt("RFCamI") % 1000 * 60 / 1000f))) + "′");
map.setRFCamF((row.getInt("RFCamF") / 1000) + "°" + (Math.round((row.getInt("RFCamF") % 1000 * 60 / 1000f))) + "′");
map.setLCasI((row.getInt("LCasI") / 1000) + "°" + (Math.round((row.getInt("LCasI") % 1000 * 60 / 1000f))) + "′");
map.setLCasF((row.getInt("LCasF") / 1000) + "°" + (Math.round((row.getInt("LCasF") % 1000 * 60 / 1000f))) + "′");
map.setRCasI((row.getInt("RCasI") / 1000) + "°" + (Math.round((row.getInt("RCasI") % 1000 * 60 / 1000f))) + "′");
map.setRCasF((row.getInt("RCasF") / 1000) + "°" + (Math.round((row.getInt("RCasF") % 1000 * 60 / 1000f))) + "′");
//TODO:LKpiI/256*15′
int lKpiI = Math.round(row.getInt("LKpiI") % 1000 / 250f);
if (lKpiI == 4){
map.setLKpiI((row.getInt("LKpiI") / 1000 + 1) + "°" + "0′");
}else{
map.setLKpiI((row.getInt("LKpiI") / 1000 + 1) + "°" + (lKpiI * 15) + "′");
}
int lKpiF = Math.round(row.getInt("LKpiF") % 1000 / 250f);
if (lKpiF == 4){
map.setLKpiF((row.getInt("LKpiF") / 1000 + 1) + "°" + "0′");
}else{
map.setLKpiF((row.getInt("LKpiF") / 1000) + "°" + (lKpiF * 15) + "′");
}
int rKpiI = Math.round(row.getInt("RKpiI") % 1000 / 250f);
if (rKpiI == 4){
map.setRKpiI((row.getInt("RKpiI") / 1000 + 1) + "°" + "0′");
}else{
map.setRKpiI((row.getInt("RKpiI") / 1000) + "°" + (rKpiI * 15) + "′");
}
int rKpiF = Math.round(row.getInt("RKpiF") % 1000 / 250f);
if (rKpiF == 4){
map.setRKpiF((row.getInt("RKpiF") / 1000 + 1) + "°" + "0′");
}else{
map.setRKpiF((row.getInt("RKpiF") / 1000) + "°" + (rKpiF * 15) + "′");
}
map.setLAckermanF(String.valueOf(new BigDecimal(row.getDouble("LAckermanF")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()) + "°");
map.setRAckermanF(String.valueOf(new BigDecimal(row.getDouble("RAckermanF")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()) + "°");
map.setLMaxTurnF(String.valueOf(new BigDecimal(row.getDouble("LMaxTurnF")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()) + "°");
map.setRMaxTurnF(String.valueOf(new BigDecimal(row.getDouble("RMaxTurnF")).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()) + "°");
map.setTandem0I((row.getInt("Tandem0I") / 47.5) + "mm");
map.setTandem0D1I((row.getInt("Tandem0D1I") / 115.926) + "mm");
map.setIpAddress(ipAddress);
map.setCreateTime(new Date());
list.add(map);
}
}
} }
...@@ -12,6 +12,7 @@ import lombok.Data; ...@@ -12,6 +12,7 @@ import lombok.Data;
import javax.persistence.Column; import javax.persistence.Column;
import javax.persistence.Id; import javax.persistence.Id;
import javax.persistence.Table; import javax.persistence.Table;
import javax.validation.constraints.NotNull;
import java.util.Date; import java.util.Date;
@ApiModel(value = "涂装日常检测项模板表") @ApiModel(value = "涂装日常检测项模板表")
...@@ -22,6 +23,7 @@ public class DailyItemModel { ...@@ -22,6 +23,7 @@ public class DailyItemModel {
@Id @Id
private Long id; private Long id;
@NotNull(message = "检测模板ID为空!")
@Column(name = "check_model_id") @Column(name = "check_model_id")
@ApiModelProperty(notes = "检测模板ID") @ApiModelProperty(notes = "检测模板ID")
private Integer checkModelId; private Integer checkModelId;
...@@ -50,6 +52,10 @@ public class DailyItemModel { ...@@ -50,6 +52,10 @@ public class DailyItemModel {
@ApiModelProperty(notes = "频次") @ApiModelProperty(notes = "频次")
private String frequency; private String frequency;
@Column(name = "is_necessary")
@ApiModelProperty(notes = "是否为必检项")
private Boolean isNecessary;
@ApiModelProperty(notes = "创建时间") @ApiModelProperty(notes = "创建时间")
private Date createTime; private Date createTime;
......
...@@ -54,6 +54,11 @@ public class DailyItemRecord { ...@@ -54,6 +54,11 @@ public class DailyItemRecord {
@ApiModelProperty(notes = "频次") @ApiModelProperty(notes = "频次")
private String frequency; private String frequency;
@Column(name = "is_necessary")
@ApiModelProperty(notes = "是否为必检项")
private Boolean isNecessary;
@Column(name = "create_time") @Column(name = "create_time")
@ApiModelProperty(notes = "取样时间") @ApiModelProperty(notes = "取样时间")
private Date createTime; private Date createTime;
......
...@@ -16,8 +16,6 @@ import net.vtstar.zhongtong.avi.laboratory.mapper.DailyCheckModelMapper; ...@@ -16,8 +16,6 @@ import net.vtstar.zhongtong.avi.laboratory.mapper.DailyCheckModelMapper;
import net.vtstar.zhongtong.avi.laboratory.mapper.DailyCheckRecordMapper; import net.vtstar.zhongtong.avi.laboratory.mapper.DailyCheckRecordMapper;
import net.vtstar.zhongtong.avi.laboratory.mapper.DailyItemModelMapper; import net.vtstar.zhongtong.avi.laboratory.mapper.DailyItemModelMapper;
import net.vtstar.zhongtong.avi.laboratory.mapper.DailyItemRecordMapper; import net.vtstar.zhongtong.avi.laboratory.mapper.DailyItemRecordMapper;
import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -177,8 +175,16 @@ public class DailyCheckService { ...@@ -177,8 +175,16 @@ public class DailyCheckService {
workbook = new XSSFWorkbook(is); workbook = new XSSFWorkbook(is);
sheet = workbook.getSheetAt(0); sheet = workbook.getSheetAt(0);
if (sheet != null) { if (sheet != null) {
XSSFRow row = sheet.getRow(4); sheet.getRow(1).getCell(5).setCellValue(recordById.getRev());
XSSFCell cell = row.getCell(1); sheet.getRow(2).getCell(5).setCellValue(recordById.getSheetNo());
sheet.getRow(3).getCell(5).setCellValue(recordById.getNo());
if ("PICKLING".equals(recordById.getType())){
sheet.getRow(4).getCell(0).setCellValue("酸洗磷化线槽液日常检测报告");
}else if("ELECTROPHORESIS".equals(recordById.getType())){
sheet.getRow(4).getCell(0).setCellValue("电泳槽液日常检测报告");
}else {
sheet.getRow(4).getCell(0).setCellValue("前处理槽液日常检测报告");
}
} }
ServletOutputStream outputStream = response.getOutputStream(); ServletOutputStream outputStream = response.getOutputStream();
String filename = "检测报告"; String filename = "检测报告";
......
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