许鹏程
2025-05-29 1ae0b0d88f6818e13e322597f6d4065e4effd8bf
src/main/java/com/product/mobile/device/controller/DeviceManagerController.java
@@ -9,14 +9,22 @@
import com.product.core.exception.BaseException;
import com.product.core.spring.context.SpringMVCContextHolder;
import com.product.device.config.DeviceCode;
import com.product.device.service.DeviceMainenanceService;
import com.product.device.config.DeviceConst;
import com.product.device.inspection.service.CommonInspectionService;
import com.product.device.inspection.service.DeviceInspectionConfigService;
import com.product.device.maintenance.service.DeviceMainenanceService;
import com.product.device.maintenance.service.DeviceMaintenancePlanService;
import com.product.device.maintenance.service.DeviceMaintenanceRecordService;
import com.product.device.service.DeviceManagerService;
import com.product.device.service.ide.IDeviceMainenanceService;
import com.product.device.service.idel.IDeviceInspectionService;
import com.product.device.service.idel.IDeviceMaintenanceRecordService;
import com.product.device.service.idel.IDeviceRepairFaultService;
import com.product.mobile.core.config.MobileCoreCode;
import com.product.mobile.core.config.MobileCoreConst;
import com.product.module.sys.entity.SystemUser;
import com.product.module.sys.version.ApiVersion;
import com.product.task.device.service.DeviceManagerTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -25,6 +33,7 @@
import java.io.IOException;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
/**
@@ -35,14 +44,26 @@
@RestController
@RequestMapping("/api/mobile/device")
public class DeviceManagerController extends AbstractBaseController {
   @Autowired
    DeviceMaintenancePlanService deviceMaintenancePlanService;
    @Autowired
    DeviceManagerTaskService deviceManagerTaskService;
    @Autowired
    DeviceManagerService  deviceManagerService;
    @Autowired
    DeviceMainenanceService deviceMainenanceService;
    @Autowired
    CommonInspectionService commonInspectionService;
    @Autowired
    DeviceMaintenanceRecordService deviceMaintenanceRecordService;
    @Autowired
    DeviceInspectionConfigService deviceInspectionConfigService;
    @Resource
    IDeviceRepairFaultService deviceRepairFaultService;;
    /**
     * 任务列表
     *
@@ -70,7 +91,7 @@
                SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
                return this.error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
            }
            String result=OK_List(deviceManagerTaskService.getsPersionNewTask(curUser));
            String result=OK_List(deviceManagerTaskService.getPersionNewTask(curUser));
            System.out.println(result);
            return result;
        } catch (BaseException e) {
@@ -78,10 +99,10 @@
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.GET_NAV_BAR_CONFIG_LIST_FAIL);
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 设备信息
     *
@@ -102,11 +123,13 @@
                SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
                return this.error(MobileCoreCode.SYSTEM_FORM_NODATA);
            }
            if (StringUtils.isEmpty(fse.getString("uuid")) && StringUtils.isEmpty(fse.getString("asset_code"))  ) {
            System.out.println(fse.getString("device_number"));
            if (StringUtils.isEmpty(fse.getString("uuid"))) {
                SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_ACQUIRE_PARAM_FAIL.getValue(), MobileCoreCode.SYSTEM_ACQUIRE_PARAM_FAIL.getText());
                return this.error(MobileCoreCode.SYSTEM_ACQUIRE_PARAM_FAIL);
            }
            String result=OK_List(deviceManagerService.findDeviceAndSub(fse.getString("uuid"),fse.getString("asset_code")));
            System.out.println(222222);
            String result=result_List_OK(deviceManagerService.findDeviceAndSub(fse.getString("uuid"),fse.getString("device_number")));
            System.out.println(result);
            return result;
        } catch (BaseException e) {
@@ -114,7 +137,7 @@
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.GET_NAV_BAR_CONFIG_LIST_FAIL);
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
@@ -126,7 +149,7 @@
    @RequestMapping(value = "/failure/create/{version}", method = RequestMethod.POST)
   @ApiVersion(1)
    public String createFailure(HttpServletRequest request) throws IOException {
        try {
             FieldSetEntity fse = null;
             Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
@@ -138,20 +161,21 @@
                 SpringMVCContextHolder.getSystemLogger().error(DeviceCode.SYSTEM_FORM_NODATA);
                 return this.error(DeviceCode.SYSTEM_FORM_NODATA);
             }
             if (StringUtils.isEmpty(fse.getString("uuid")) && StringUtils.isEmpty(fse.getString("asset_code"))  ) {
                SpringMVCContextHolder.getSystemLogger().error(DeviceCode.SYSTEM_FORM_NODATA);
                 return this.error(DeviceCode.SYSTEM_FORM_NODATA);
             }
             IDeviceMainenanceService service = (IDeviceMainenanceService) getProxyInstance(deviceMainenanceService);
             String uuid=service.saveDeviceFailure(fse);
//             if (StringUtils.isEmpty(fse.getString("uuid")) && StringUtils.isEmpty(fse.getString("device_number"))  ) {
//                SpringMVCContextHolder.getSystemLogger().error(DeviceCode.SYSTEM_FORM_NODATA);
//                 return this.error(DeviceCode.SYSTEM_FORM_NODATA);
//             }
             IDeviceRepairFaultService service = (IDeviceRepairFaultService) getProxyInstance(deviceRepairFaultService);
//             fse.remove("uuid");
             String uuid=service.deviceFaultReview(fse);
             System.out.println(uuid);
             return !StringUtils.isEmpty(uuid)? this.OK_Add(uuid):this.error(new BaseException(DeviceCode.DEVICE_CREATE_FAILURE_ERROR));
             return !StringUtils.isEmpty(uuid)? this.OK_Add(uuid):this.error(new BaseException(DeviceCode.DEVICE_MAINTENANCE_CONTENT_DEL_FAIL));
         } catch (BaseException e) {
             e.printStackTrace();
             return error(e);
         } catch (Exception e) {
             e.printStackTrace();
             return error(DeviceCode.DEVICE_CREATE_INSPECTION_ERROR);
             return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
         }
    }
    /**
@@ -163,7 +187,7 @@
    @RequestMapping(value = "/persion/{version}", method = RequestMethod.POST)
   @ApiVersion(1)
    public String devicePersion(HttpServletRequest request) throws IOException {
        try {
             FieldSetEntity fse = null;
             Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
@@ -179,15 +203,15 @@
                SpringMVCContextHolder.getSystemLogger().error(DeviceCode.SYSTEM_FORM_NODATA);
                 return this.error(DeviceCode.SYSTEM_FORM_NODATA);
             }
             DataTableEntity dt=deviceManagerService.findDevicePersion(fse.getString("asset_code"));
             DataTableEntity dt=deviceManagerService.findDevicePersion(fse.getString("device_number"));
             return this.OK_List( dt );
         } catch (BaseException e) {
             e.printStackTrace();
             return error(e);
         } catch (Exception e) {
             e.printStackTrace();
             return error(DeviceCode.DEVICE_CREATE_INSPECTION_ERROR);
             return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
         }
    }
    /**
@@ -199,7 +223,7 @@
    @RequestMapping(value = "/create/maintain/task/{version}", method = RequestMethod.POST)
   @ApiVersion(1)
    public String deviceMainTainTaskPersion(HttpServletRequest request) throws IOException {
        try {
             FieldSetEntity fse = null;
             Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
@@ -211,7 +235,7 @@
                 SpringMVCContextHolder.getSystemLogger().error(DeviceCode.SYSTEM_FORM_NODATA);
                 return this.error(DeviceCode.SYSTEM_FORM_NODATA);
             }
             if (StringUtils.isEmpty(fse.getString("asset_code"))  ) {
             if (StringUtils.isEmpty(fse.getString("device_number"))  ) {
                SpringMVCContextHolder.getSystemLogger().error(DeviceCode.SYSTEM_FORM_NODATA);
                 return this.error(DeviceCode.SYSTEM_FORM_NODATA);
             }
@@ -226,7 +250,350 @@
             return error(e);
         } catch (Exception e) {
             e.printStackTrace();
             return error(DeviceCode.DEVICE_CREATE_INSPECTION_ERROR);
             return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
         }
    }
    /**
     * 设备点检配置
     * @throws IOException
     */
    @RequestMapping(value = "/findDeviceSetting/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findDevcieSetting(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            if (fse.getString(DeviceConst.UUID)==null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            fse=deviceInspectionConfigService.findInspectionSettingForApp(fse);
            if(FieldSetEntity.isEmpty(fse)) {
               return this.error(DeviceCode.COMMON_DATA_ERROR);
            }else {
               return result_List_OK(fse);
            }
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 设备点检记录
     * @throws IOException
     */
    @RequestMapping(value = "/findDeviceInspection/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findDevcInspection(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            if (fse.getString(DeviceConst.DEVICE_NUMBER)==null && fse.getString(DeviceConst.UUID)==null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            String result=result_List_OK(deviceInspectionConfigService.findInspectionSettingForApp(fse));
//            String result=result_OK_List(commonInspectionService.findDeviceSetting(fse.getString(DeviceConst.UUID)));
            return result;
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 设备保养配置
     * @throws IOException
     */
    @RequestMapping(value = "/findDeviceMaintenanceSetting/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findDevcieMaintenancesSetting(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            String result=result_OK_List(deviceMainenanceService.findDeviceMaintenanceSetting(fse.getString(DeviceConst.DEVICE_UUID),fse.getString("type"),fse.getString("plan_uuid")));
            return result;
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 设备点检信息保存
     * @throws IOException
     */
    @RequestMapping(value = "/save-inspection/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String saveDevcieInspection(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            IDeviceInspectionService Service = (IDeviceInspectionService) getProxyInstance(commonInspectionService);
            String uuid=Service.saveInspection(fse);
            if(uuid!=null) {
               return this.OK_Add(uuid);
            }else {
               return error(DeviceCode.DEVICE_CREATE_INSPECTION_ERROR);
            }
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 设备点检信息详情
     * @throws IOException
     */
    @RequestMapping(value = "/find-inspection/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findDevcieInspection(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            IDeviceInspectionService Service = (IDeviceInspectionService) getProxyInstance(commonInspectionService);
            FieldSetEntity record=Service.findInspectionRecord(fse.getUUID());
            if(record!=null) {
               return this.result_List_OK(record);
            }else {
               return error(DeviceCode.COMMON_DATA_ERROR);
            }
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 设备保养信息保存
     * @throws IOException
     */
    @RequestMapping(value = "/save-maintenance/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String saveDevcieMaintenanceController(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            IDeviceMaintenanceRecordService service = (IDeviceMaintenanceRecordService) getProxyInstance(deviceMaintenanceRecordService);
            String uuid=service.saveMaintenanceDevice(fse);
            if(uuid!=null) {
               return this.OK_Add(uuid);
            }else {
               return error(DeviceCode.DEVICE_CREATE_INSPECTION_ERROR);
            }
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 设备保养信息详情
     * @throws IOException
     */
    @RequestMapping(value = "/find-maintenance/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String findDevcieMaintenance(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            IDeviceMaintenanceRecordService service = (IDeviceMaintenanceRecordService) getProxyInstance(deviceMaintenanceRecordService);
//            FieldSetEntity record=service.findMaintenanceRecord(fse.getUUID());
            FieldSetEntity record=service.findMaintenanceRecordForMobile(fse.getUUID());
            if(record!=null) {
               return this.result_List_OK(record);
            }else {
               return error(DeviceCode.COMMON_DATA_ERROR);
            }
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 设备台账
     * @throws IOException
     */
    @RequestMapping(value = "/list/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String listDevcie(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
         // 判断分页参数是否正常
            if (StringUtils.isEmpty(fse.getString(MobileCoreConst.PAGESIZE))
                    || StringUtils.isEmpty(fse.getString(MobileCoreConst.CPAGE))) {
                SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
                return this.error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
            }
            return this.OK_List(deviceManagerService.deviceList(fse.getString("searchKey"),fse.getInteger(MobileCoreConst.PAGESIZE),fse.getInteger(MobileCoreConst.CPAGE)));
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 保养人员领取保养任务
     * @throws IOException
     */
    @RequestMapping(value = "/receive-task/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String receiveTask(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null || fse.getObject("plan_uuid")==null) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
           Object b= deviceMaintenancePlanService.receivePlanTask(fse.getString("plan_uuid"));
           return this.OK();
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
    /**
     * 保养人员开始保养打卡,更新计划任务状态和电梯状态
     *
     * @throws IOException
     */
    @RequestMapping(value = "/status-update/{version}", method = RequestMethod.POST)
    @ApiVersion(1)
    public String statusUpdate(HttpServletRequest request)  {
        try {
            FieldSetEntity fse = null;
            Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA);
            if (bean != null) {
                RequestParameterEntity reqp = (RequestParameterEntity) bean;
                fse = reqp.getFormData();
            }
            if (bean == null || fse == null || (fse.getObject("plan_uuid")==null && fse.getObject("device_uuid")==null)) {
                SpringMVCContextHolder.getSystemLogger().error(String.valueOf(DeviceCode.SYSTEM_FORM_NODATA));
                return this.error(DeviceCode.SYSTEM_FORM_NODATA);
            }
            deviceMaintenancePlanService.statusUpdate(fse.getString("plan_uuid"),fse.getString("device_uuid"),fse.getString("maintenance_type"));
            return this.OK();
        } catch (BaseException e) {
            e.printStackTrace();
            return error(e);
        } catch (Exception e) {
            e.printStackTrace();
            return error(MobileCoreCode.APP_COMMON_ERROR_CODE);
        }
    }
}