|
@@ -22,7 +22,6 @@ import cn.com.ty.lift.business.project.dao.entity.Project;
|
|
import cn.com.ty.lift.business.project.dao.entity.ProjectLiftRelevance;
|
|
import cn.com.ty.lift.business.project.dao.entity.ProjectLiftRelevance;
|
|
import cn.com.ty.lift.business.project.service.ProjectLiftRelevanceService;
|
|
import cn.com.ty.lift.business.project.service.ProjectLiftRelevanceService;
|
|
import cn.com.ty.lift.business.project.service.ProjectService;
|
|
import cn.com.ty.lift.business.project.service.ProjectService;
|
|
-import cn.com.ty.lift.common.aliservice.aliyunoss.AliyunOSS;
|
|
|
|
import cn.com.ty.lift.common.constants.CommonEnum;
|
|
import cn.com.ty.lift.common.constants.CommonEnum;
|
|
import cn.com.ty.lift.common.utils.DateUtils;
|
|
import cn.com.ty.lift.common.utils.DateUtils;
|
|
import cn.com.ty.lift.common.utils.MapHelper;
|
|
import cn.com.ty.lift.common.utils.MapHelper;
|
|
@@ -61,6 +60,8 @@ import org.springframework.transaction.annotation.Transactional;
|
|
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
|
|
|
|
|
|
+import javax.servlet.ServletOutputStream;
|
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
import java.io.*;
|
|
import java.io.*;
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
import java.net.HttpURLConnection;
|
|
import java.net.HttpURLConnection;
|
|
@@ -79,6 +80,7 @@ import java.util.stream.Collectors;
|
|
@Service
|
|
@Service
|
|
@Slf4j
|
|
@Slf4j
|
|
@AllArgsConstructor
|
|
@AllArgsConstructor
|
|
|
|
+@SuppressWarnings("all")
|
|
public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMapper, MaintenanceRecord> {
|
|
public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMapper, MaintenanceRecord> {
|
|
|
|
|
|
|
|
|
|
@@ -508,7 +510,7 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
MaintenancePlan plan = maintenancePlanService.getOne(oldRecord.getMtPlanId());
|
|
MaintenancePlan plan = maintenancePlanService.getOne(oldRecord.getMtPlanId());
|
|
if (ObjectUtil.isEmpty(plan)) {
|
|
if (ObjectUtil.isEmpty(plan)) {
|
|
rollback();
|
|
rollback();
|
|
- log.info("维保计划ID为:{}",oldRecord.getMtPlanId());
|
|
|
|
|
|
+ log.info("维保计划ID为:{}", oldRecord.getMtPlanId());
|
|
return RestResponse.fail("未找到对应的维保计划!");
|
|
return RestResponse.fail("未找到对应的维保计划!");
|
|
}
|
|
}
|
|
plan.setStatus(Integer.parseInt(CommonEnum.MaintenancePlanStatus.COMPLETE.getCode()));
|
|
plan.setStatus(Integer.parseInt(CommonEnum.MaintenancePlanStatus.COMPLETE.getCode()));
|
|
@@ -951,7 +953,7 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
return baseMapper.pageByLift(request.getPage(), request);
|
|
return baseMapper.pageByLift(request.getPage(), request);
|
|
}
|
|
}
|
|
|
|
|
|
- public String export(MtRecordRequest mtRecordRequest) {
|
|
|
|
|
|
+ public void export(MtRecordRequest mtRecordRequest, HttpServletResponse response) throws Exception {
|
|
Map<String, String> headerAlias = new LinkedHashMap<>();
|
|
Map<String, String> headerAlias = new LinkedHashMap<>();
|
|
headerAlias.put("projectName", "项目名称");
|
|
headerAlias.put("projectName", "项目名称");
|
|
headerAlias.put("useCompanyCode", "梯号");
|
|
headerAlias.put("useCompanyCode", "梯号");
|
|
@@ -1035,19 +1037,27 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
}
|
|
}
|
|
}
|
|
}
|
|
//生成保养单
|
|
//生成保养单
|
|
- String maintenanceExcelDir = imgDir + "保养单.xlsx";
|
|
|
|
|
|
+ String maintenanceExcelDir = imgDir + "保养单.xls";
|
|
log.info("生成保养单: {}", maintenanceExcelDir);
|
|
log.info("生成保养单: {}", maintenanceExcelDir);
|
|
excelWriter(mtRecordResponse, maintenanceExcelDir);
|
|
excelWriter(mtRecordResponse, maintenanceExcelDir);
|
|
}
|
|
}
|
|
//压缩文件夹
|
|
//压缩文件夹
|
|
log.info("生成zipFile路径: {}", zip);
|
|
log.info("生成zipFile路径: {}", zip);
|
|
ZipUtil.zip(dir, zip);
|
|
ZipUtil.zip(dir, zip);
|
|
- //上传文件到阿里云,并返回路径给前端
|
|
|
|
- String url = AliyunOSS.me().putObject("maintenance/export/zip/" + generateCode + ".zip", readInputStream(new FileInputStream(new File(zip))));
|
|
|
|
- return url.replace("-internal", "");
|
|
|
|
- } catch (Exception e) {
|
|
|
|
- log.error("生成保养文件失败", e);
|
|
|
|
- throw Validate.validateException("生成保养文件失败");
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ response.setContentType("application/zip");
|
|
|
|
+ ServletOutputStream out = response.getOutputStream();
|
|
|
|
+ FileInputStream in = new FileInputStream(new File(zip));
|
|
|
|
+ byte[] buffer = new byte[1024];
|
|
|
|
+ int len;
|
|
|
|
+ while ((len = in.read(buffer)) != -1) {
|
|
|
|
+ out.write(buffer, 0, len);
|
|
|
|
+ }
|
|
|
|
+ out.flush();
|
|
|
|
+ in.close();
|
|
|
|
+ out.close();
|
|
|
|
+
|
|
} finally {
|
|
} finally {
|
|
FileUtil.del(zipFile);
|
|
FileUtil.del(zipFile);
|
|
FileUtil.del(baseDir);
|
|
FileUtil.del(baseDir);
|
|
@@ -1201,7 +1211,8 @@ public class MaintenanceRecordService extends ServiceImpl<MaintenanceRecordMappe
|
|
writer.merge(12 + i, 18 + i, 3, 3, "客户签名", false);
|
|
writer.merge(12 + i, 18 + i, 3, 3, "客户签名", false);
|
|
writer.merge(12 + i, 18 + i, 4, 5, "", false);
|
|
writer.merge(12 + i, 18 + i, 4, 5, "", false);
|
|
signImg(mtRecordResponse, wb, writer, 12 + i);
|
|
signImg(mtRecordResponse, wb, writer, 12 + i);
|
|
- writer.flush(new FileOutputStream(new File(maintenanceExcelDir)), true).close();
|
|
|
|
|
|
+ writer.flush(new FileOutputStream(new File(maintenanceExcelDir)), true);
|
|
|
|
+ writer.close();
|
|
}
|
|
}
|
|
|
|
|
|
private void signImg(MtRecordResponse mtRecordResponse, HSSFWorkbook wb, ExcelWriter writer, int row) {
|
|
private void signImg(MtRecordResponse mtRecordResponse, HSSFWorkbook wb, ExcelWriter writer, int row) {
|