qushaowei
2023-11-18 9d3675b12829de9ec46c210c5c8c460705206dbc
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/InspectionOrderController.java
@@ -40,6 +40,7 @@
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.unit.DataUnit;
import org.springframework.web.bind.annotation.*;
@@ -76,6 +77,10 @@
    @Autowired
    private IEquipmentReportRepairService equipmentReportRepairService;
    @Autowired
    @Lazy
    private IdentityService sysIdentityService;
//    @Autowired
//    private IUploadRelaService uploadRelaService;
@@ -125,24 +130,6 @@
          record.put("inspectionCycles",inspectionCycles);
          List<Map<String, Object>> inspectionOrderDetails = inspectionOrderService.getInspectionOrderDetailByOrderId(id);
//          for (Map<String, Object> inspectionOrderDetail : inspectionOrderDetails) {
//             //获取订单明细示意图
////             List<SysUploadRela> sysUploadRelas = uploadRelaService.lambdaQuery().eq(SysUploadRela::getBusId, (String)inspectionOrderDetail.get("inspectionStandardDetailId")).eq(SysUploadRela::getDelFlag, 0).list();
//             List<SysUploadRela> sysUploadRelas = sysBaseApi.listByBusIdAndBusType ((String)inspectionOrderDetail.get("inspectionStandardDetailId"),null);
//             if(sysUploadRelas.size()>0){
////                List<SysUploadRela> uploadRelas = uploadRelaService.listByBusIdAndBusType((String)inspectionOrderDetail.get("inspectionStandardDetailId"), "daily_inspection_standard_photo");
//                List<SysUploadRela> uploadRelas = sysBaseApi.listByBusIdAndBusType ((String)inspectionOrderDetail.get("inspectionStandardDetailId"),"daily_inspection_standard_photo");
//                SysUpload upload = new SysUpload();
//                if (CollectionUtils.isNotEmpty(uploadRelas)) {
////                   upload = uploadService.getById(uploadRelas.get(0).getUploadId());
//                   upload = sysBaseApi.getUploadById(uploadRelas.get(0).getUploadId());
//                }
//                inspectionOrderDetail.put("upload",upload);
//             }else{
//                SysUpload upload = new SysUpload();
//                inspectionOrderDetail.put("upload",upload);
//             }
//          }
          record.put("inspectionOrderDetails",inspectionOrderDetails);
@@ -157,7 +144,7 @@
                .eq(InspectionOrderDetail::getDelFlag, 0).list();
          record.put("result","正常:"+passCount.size()+","+"异常:"+failCount.size());
          if("5".equals(status)){
          if("5".equals(status) ){
             record.put("distable",true);
          }else{
             record.put("distable",false);
@@ -390,6 +377,12 @@
    @RequestMapping(value = "/editStatus", method = {RequestMethod.PUT, RequestMethod.POST})
    public Result<String> editStatus(@RequestBody InspectionOrder inspectionOrder) {
       LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
       String status = inspectionOrder.getStatus();
       if("6".equals(status)){
          inspectionOrder.setInspectionOrderUda1(sysUser.getRealname());
          inspectionOrder.setRepairConfirmDate(new Date());
       }
       boolean b = inspectionOrderService.updateById(inspectionOrder);
       if (b) {
          return Result.OK("下发成功!");
@@ -430,16 +423,16 @@
       String status = order.getStatus();
       if ("5".equals(status)) {
          List<InspectionOrderDetail> inspectionOrderDetails = inspectionOrderDetailService.lambdaQuery()
                .eq(InspectionOrderDetail::getInspectionOrderId, id)
                .eq(InspectionOrderDetail::getDelFlag, 0).list();
          ArrayList<String> strings = new ArrayList<>();
          for (InspectionOrderDetail inspectionOrderDetail : inspectionOrderDetails) {
             strings.add(inspectionOrderDetail.getId());
          }
//          List<InspectionOrderDetail> inspectionOrderDetails = inspectionOrderDetailService.lambdaQuery()
//                .eq(InspectionOrderDetail::getInspectionOrderId, id)
//                .eq(InspectionOrderDetail::getDelFlag, 0).list();
//
//          ArrayList<String> strings = new ArrayList<>();
//          for (InspectionOrderDetail inspectionOrderDetail : inspectionOrderDetails) {
//             strings.add(inspectionOrderDetail.getId());
//          }
          List<EquipmentReportRepair> equipmentReportRepairs = equipmentReportRepairService.lambdaQuery()
                .in(EquipmentReportRepair::getSourceId, strings)
                .eq(EquipmentReportRepair::getSourceId, id)
                .eq(EquipmentReportRepair::getDelFlag, 0).list();
          if(equipmentReportRepairs.size()>0){
@@ -466,25 +459,35 @@
    @RequestMapping(value = "/report", method = {RequestMethod.PUT, RequestMethod.POST})
    public Result<String> report(@RequestBody InspectionOrder inspectionOrder) {
//       LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
       LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
//       String userId = sysUser.getId();
//       inspectionOrder.setInspectionUserId(userId);
       List<InspectionOrderDetail> inspectionOrderDetailList = inspectionOrder.getInspectionOrderDetailList();
       boolean flag = false;
       String num = "";
       for (InspectionOrderDetail orderDetail : inspectionOrderDetailList) {
          inspectionOrderDetailService.updateById(orderDetail);
          String treatmentMeasure = orderDetail.getTreatmentMeasure();//1:自行处置   2: 故障报修
          if ("2".equals(treatmentMeasure)) {
             if(flag == true){
                continue;
             }
             EquipmentReportRepair equipmentReportRepair = new EquipmentReportRepair();
             equipmentReportRepair.setNum("RCNum001");
             num = sysIdentityService.getNumByTypeAndLength("EquipmentReportRepair", 4);
             equipmentReportRepair.setNum(num);
             equipmentReportRepair.setStatus("1");
             equipmentReportRepair.setSource("2");
             equipmentReportRepair.setIsCreateOrder(0);
             equipmentReportRepair.setEquipmentId(inspectionOrder.getEquipmentId());
             equipmentReportRepair.setFaultDescription(orderDetail.getAbnormalDesc());
             equipmentReportRepair.setFaultTime(new Date(System.currentTimeMillis()));
             equipmentReportRepair.setIsStop("1");
             equipmentReportRepair.setStatus("1");
             equipmentReportRepair.setSource("2");
             equipmentReportRepair.setSourceId(orderDetail.getId());
             equipmentReportRepair.setSourceId(inspectionOrder.getId());
             equipmentReportRepair.setErrUda1("no");
             equipmentReportRepair.setErrUda2(sysUser.getRealname());
             equipmentReportRepairService.save(equipmentReportRepair);
             flag = true;
          }
       }
       inspectionOrder.setActualEndTime(new Date());
@@ -492,6 +495,26 @@
       if (!b) {
          return Result.error("报工失败!");
       } else {
          if(flag){
             return Result.ok("点检结果异常,已自动生成故障报修单,单号为"+num+"!");
          }else{
             return Result.ok("报工成功!");
          }
       }
    }
    @RequestMapping(value = "/normalReport", method = {RequestMethod.PUT, RequestMethod.POST})
    public Result<String> normalReport(@RequestBody InspectionOrder inspectionOrder) {
       List<InspectionOrderDetail> inspectionOrderDetailList = inspectionOrder.getInspectionOrderDetailList();
       for (InspectionOrderDetail orderDetail : inspectionOrderDetailList) {
          orderDetail.setInspectionProjectResult("1");
          inspectionOrderDetailService.updateById(orderDetail);
       }
       inspectionOrder.setActualEndTime(new Date());
       boolean b = inspectionOrderService.updateById(inspectionOrder);
       if (!b) {
          return Result.error("报工失败!");
       } else {
          return Result.ok("报工成功!");
       }
    }