|
@@ -60,7 +60,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
|
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.*;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.net.HttpURLConnection;
|
|
@@ -587,8 +586,12 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
if (CollUtil.isNotEmpty(page.getRecords())) {
|
|
|
List<MtRecordResponse> records = page.getRecords();
|
|
|
for (MtRecordResponse mtRecord : records) {
|
|
|
- String repairDuration = getRepairDuration(mtRecord.getRepairDiff());
|
|
|
- mtRecord.setRepairDuration(repairDuration);
|
|
|
+ if (mtRecord.getRepairDiff() != null) {
|
|
|
+ String repairDuration = getRepairDuration(mtRecord.getRepairDiff());
|
|
|
+ mtRecord.setRepairDuration(repairDuration);
|
|
|
+ } else {
|
|
|
+ mtRecord.setRepairDuration("");
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
return page;
|
|
@@ -908,10 +911,13 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
//处理文件夹路径
|
|
|
String projectName = mtRecordResponse.getProjectName();
|
|
|
String registrationCode = mtRecordResponse.getRegistrationCode();
|
|
|
+ String useCompanyCode = mtRecordResponse.getUseCompanyCode();
|
|
|
projectName = StrUtil.isNotEmpty(projectName) ? projectName.replace(illegalChars, "-") : "[项目]";
|
|
|
registrationCode = StrUtil.isNotEmpty(registrationCode) ? registrationCode.replace(illegalChars, "-") : "[电梯注册代码]";
|
|
|
+ useCompanyCode = useCompanyCode != null ? useCompanyCode : "";
|
|
|
//保养单及图片文件夹 dir/i.ProjectName-RegistrationCode/
|
|
|
- String imgDir = StrUtil.format("{}{}{}.{}-{}{}", dir, File.separator, (i + 1), projectName, registrationCode, File.separator);
|
|
|
+ String imgDir = StrUtil.format("{}{}{}.{}-{}-", dir, File.separator, (i + 1), projectName, registrationCode);
|
|
|
+ imgDir += useCompanyCode + File.separator;
|
|
|
//生成维保图片
|
|
|
List<MtRecordImg> mtRecordImgs = mtRecordResponse.getMtRecordImgs();
|
|
|
List<MtRecordImg> imgs = mtRecordImgs.stream().filter(img -> mtRecordResponse.getId().equals(img.getMtRecordId())).collect(Collectors.toList());
|
|
@@ -950,8 +956,11 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
if (entity == null) {
|
|
|
throw new ValidateException("维保记录不存在");
|
|
|
}
|
|
|
- String repairDuration = this.getRepairDuration(entity.getRepairDiff());
|
|
|
- entity.setRepairDuration(repairDuration);
|
|
|
+ if (entity.getRepairDiff() != null) {
|
|
|
+ String repairDuration = this.getRepairDuration(entity.getRepairDiff());
|
|
|
+ entity.setRepairDuration(repairDuration);
|
|
|
+ }
|
|
|
+ entity.setRepairDuration("");
|
|
|
Validate.notNull(entity, ValuePool.MAINTENANCE_RECORD_NOT_EXIST);
|
|
|
/**
|
|
|
* 维保项id:0/1/2, 0:无需保养,1:已保养,2:需要更换
|
|
@@ -984,6 +993,9 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
HSSFWorkbook wb = new HSSFWorkbook();
|
|
|
ExcelWriter writer = new ExcelWriter(wb, "保养单");
|
|
|
|
|
|
+ String stopDate = mtRecordResponse.getStopDate() != null ? mtRecordResponse.getStopDate().toString().replace("T", " ") : "未设置";
|
|
|
+ String recoveryDate = mtRecordResponse.getRecoveryDate() != null ? mtRecordResponse.getRecoveryDate().toString().replace("T", " ") : "未设置";
|
|
|
+ String workDate = mtRecordResponse.getWorkDate() != null ? mtRecordResponse.getWorkDate().toString().replace("T", " ") : "未设置";
|
|
|
writer.setColumnWidth(1, 25);
|
|
|
writer.setColumnWidth(3, 25);
|
|
|
writer.setColumnWidth(4, 25);
|
|
@@ -994,35 +1006,37 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
|
writer.merge(2, 2, 0, 1, "注册代码:" + mtRecordResponse.getRegistrationCode(), false);
|
|
|
writer.merge(2, 2, 2, 3, "电梯位置:" + mtRecordResponse.getDevicePosition(), false);
|
|
|
writer.merge(2, 2, 4, 5, "保养类型:" + mtRecordResponse.getType(), false);
|
|
|
- writer.merge(3, 3, 0, 1, "保养时间:" + mtRecordResponse.getWorkDate().toString().replace("T", " "), false);
|
|
|
+ writer.merge(3, 3, 0, 1, "保养时间:" + workDate, false);
|
|
|
writer.merge(3, 3, 2, 3, "项目编号:" + mtRecordResponse.getProjectCode(), false);
|
|
|
writer.merge(3, 3, 4, 5, "项目名称:" + mtRecordResponse.getProjectName(), false);
|
|
|
writer.merge(4, 4, 0, 1, "计划保养时间:" + mtRecordResponse.getPlanDate(), false);
|
|
|
- writer.merge(4, 4, 2, 3, "停梯时间:" + mtRecordResponse.getStopDate().toString().replace("T", " "), false);
|
|
|
- writer.merge(4, 4, 4, 5, "恢梯时间:" + mtRecordResponse.getRecoveryDate().toString().replace("T", " "), false);
|
|
|
+ writer.merge(4, 4, 2, 3, "停梯时间:" + stopDate, false);
|
|
|
+ writer.merge(4, 4, 4, 5, "恢梯时间:" + recoveryDate, false);
|
|
|
writer.writeCellValue(0, 5, "保养时长");
|
|
|
- writer.merge(5, 5, 1, 5, mtRecordResponse.getRepairDuration(), false);
|
|
|
+ writer.merge(5, 5, 1, 5, mtRecordResponse.getRepairDuration() != null ? mtRecordResponse.getRepairDuration() : "", false);
|
|
|
writer.writeCellValue(0, 6, "序号");
|
|
|
writer.merge(6, 6, 1, 2, "维保项目", false);
|
|
|
writer.merge(6, 6, 3, 4, "维保基本要求", false);
|
|
|
writer.writeCellValue(5, 6, "结果");
|
|
|
Collection<MaintenanceOption> mtOptions = mtRecordResponse.getMtOptions();
|
|
|
int i = 0;
|
|
|
- for (MaintenanceOption mtOption : mtOptions) {
|
|
|
- i++;
|
|
|
- writer.writeCellValue(0, 6 + i, i);
|
|
|
- writer.merge(6 + i, 6 + i, 1, 2, mtOption.getItem(), false);
|
|
|
- writer.merge(6 + i, 6 + i, 3, 4, mtOption.getContent(), false);
|
|
|
- String maintenance = "√";
|
|
|
- switch (mtOption.getOpt()) {
|
|
|
- case 0:
|
|
|
- maintenance = "/";
|
|
|
- break;
|
|
|
- case 2:
|
|
|
- maintenance = "X";
|
|
|
- break;
|
|
|
+ if (mtOptions != null) {
|
|
|
+ for (MaintenanceOption mtOption : mtOptions) {
|
|
|
+ i++;
|
|
|
+ writer.writeCellValue(0, 6 + i, i);
|
|
|
+ writer.merge(6 + i, 6 + i, 1, 2, mtOption.getItem(), false);
|
|
|
+ writer.merge(6 + i, 6 + i, 3, 4, mtOption.getContent(), false);
|
|
|
+ String maintenance = "√";
|
|
|
+ switch (mtOption.getOpt()) {
|
|
|
+ case 0:
|
|
|
+ maintenance = "/";
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ maintenance = "X";
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ writer.writeCellValue(5, 6 + i, maintenance);
|
|
|
}
|
|
|
- writer.writeCellValue(5, 6 + i, maintenance);
|
|
|
}
|
|
|
writer.writeCellValue(0, 7 + i, "保养建议");
|
|
|
writer.merge(7 + i, 7 + i, 1, 2, mtRecordResponse.getMaintenanceAdvice() != null ? mtRecordResponse.getMaintenanceAdvice() : "", false);
|