|
|
@@ -61,6 +61,7 @@ import java.io.IOException;
|
|
|
import java.time.ZoneId;
|
|
|
import java.util.*;
|
|
|
import java.util.concurrent.atomic.AtomicInteger;
|
|
|
+import java.util.regex.Pattern;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
|
|
|
@@ -312,7 +313,7 @@ public class IotInspectOrderController {
|
|
|
@Operation(summary = "导出巡检工单 Excel")
|
|
|
@PreAuthorize("@ss.hasPermission('rq:iot-inspect-order:export')")
|
|
|
@ApiAccessLog(operateType = EXPORT)
|
|
|
- public void exportIotInspectOrderExcel(@Valid IotInspectOrderPageReqVO pageReqVO,
|
|
|
+ public void exportIotInspectOrderExcel(@Valid IotInspectOrderPageReqVO pageReqVO, @RequestHeader("Lang") String lang,
|
|
|
HttpServletResponse response) throws IOException {
|
|
|
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
|
|
List<IotInspectOrderDO> list = iotInspectOrderService.getIotInspectOrderPage(pageReqVO).getList();
|
|
|
@@ -320,6 +321,16 @@ public class IotInspectOrderController {
|
|
|
List<DeptRespDTO> deptList = deptApi.getDeptList();
|
|
|
List<DictDataDO> pmsDeviceStatus = dictDataService.getDictDataListByDictType("pms_inspect_order_status");
|
|
|
bean.forEach(e -> {
|
|
|
+ if (e.getInspectOrderTitle().contains("~~")){
|
|
|
+ String[] split = e.getInspectOrderTitle().split("~~");
|
|
|
+ if ("zh-CN".equals(lang)) {
|
|
|
+ e.setInspectOrderTitle(split[0]);
|
|
|
+ }else if ("en".equalsIgnoreCase(lang)) {
|
|
|
+ if (split[1]!=null&&StringUtils.isNotBlank(split[1])){
|
|
|
+ e.setInspectOrderTitle(split[1].replaceAll(Pattern.quote("en**"), ""));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
deptList.stream().filter(f -> f.getId().equals(e.getDeptId())).findFirst().ifPresent(f -> e.setDeptName(f.getName()));
|
|
|
pmsDeviceStatus.stream().filter(f -> f.getValue().equals(e.getStatus())).findFirst().ifPresent(f -> e.setStatus(f.getLabel()));
|
|
|
});
|
|
|
@@ -408,7 +419,7 @@ public class IotInspectOrderController {
|
|
|
@Operation(summary = "导出巡检工单巡检异常点 Excel")
|
|
|
@PreAuthorize("@ss.hasPermission('rq:iot-inspect-order-detail:export')")
|
|
|
@ApiAccessLog(operateType = EXPORT)
|
|
|
- public void exportReportExceptionItem(@Valid IotInspectOrderDetailPageReqVO pageReqVO,
|
|
|
+ public void exportReportExceptionItem(@Valid IotInspectOrderDetailPageReqVO pageReqVO,@RequestHeader("Lang") String lang,
|
|
|
HttpServletResponse response) throws IOException {
|
|
|
Set<Long> ids = new HashSet<>();
|
|
|
String companyCode;
|
|
|
@@ -448,7 +459,18 @@ public class IotInspectOrderController {
|
|
|
if (Objects.nonNull(e.getOrderId())) {
|
|
|
IotInspectOrderDO iotInspectOrder = iotInspectOrderService.getIotInspectOrder(e.getOrderId());
|
|
|
if (Objects.nonNull(iotInspectOrder)) {
|
|
|
- e.setOrderName(iotInspectOrder.getInspectOrderTitle());
|
|
|
+ if (iotInspectOrder.getInspectOrderTitle().contains("~~")){
|
|
|
+ String[] split = iotInspectOrder.getInspectOrderTitle().split("~~");
|
|
|
+ if ("zh-CN".equals(lang)) {
|
|
|
+ e.setOrderName(split[0]);
|
|
|
+ }else if ("en".equalsIgnoreCase(lang)) {
|
|
|
+ if (split[1]!=null&&StringUtils.isNotBlank(split[1])){
|
|
|
+ e.setOrderName(split[1].replaceAll(Pattern.quote("en**"), ""));
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ e.setOrderName(iotInspectOrder.getInspectOrderTitle());
|
|
|
+ }
|
|
|
+ }
|
|
|
e.setCharge(iotInspectOrder.getChargeName());
|
|
|
}
|
|
|
}
|
|
|
@@ -480,7 +502,7 @@ public class IotInspectOrderController {
|
|
|
@Operation(summary = "导出巡检工单巡检异常点 Excel")
|
|
|
@PreAuthorize("@ss.hasPermission('rq:iot-inspect-order-detail:export')")
|
|
|
@ApiAccessLog(operateType = EXPORT)
|
|
|
- public void exportReport(@Valid IotInspectOrderPageReqVO pageReqVO,
|
|
|
+ public void exportReport(@Valid IotInspectOrderPageReqVO pageReqVO,@RequestHeader("Lang") String lang,
|
|
|
HttpServletResponse response) throws IOException {
|
|
|
Set<Long> ids;
|
|
|
if (Objects.isNull(pageReqVO.getDeptId())){
|
|
|
@@ -495,6 +517,18 @@ public class IotInspectOrderController {
|
|
|
pageReqVO.setDeptIds(ids);
|
|
|
List<IotInspectOrderRespVO> bean = iotInspectOrderMapper.selectExport(pageReqVO);
|
|
|
List<IotReportInspectOrderRespVO> list = BeanUtils.toBean(bean, IotReportInspectOrderRespVO.class);
|
|
|
+ list.forEach(e ->{
|
|
|
+ if (e.getInspectOrderTitle().contains("~~")){
|
|
|
+ String[] split = e.getInspectOrderTitle().split("~~");
|
|
|
+ if ("zh-CN".equals(lang)) {
|
|
|
+ e.setInspectOrderTitle(split[0]);
|
|
|
+ }else if ("en".equalsIgnoreCase(lang)) {
|
|
|
+ if (split[1]!=null&&StringUtils.isNotBlank(split[1])){
|
|
|
+ e.setInspectOrderTitle(split[1].replaceAll(Pattern.quote("en**"), ""));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
// 导出 Excel
|
|
|
ExcelUtils.write(response, "巡检报表统计.xls", "数据", IotReportInspectOrderRespVO.class, list);
|
|
|
}
|