瀏覽代碼

优化巡检功能

java110 3 年之前
父節點
當前提交
d563dc63bb

+ 27 - 8
service-community/src/main/java/com/java110/community/cmd/inspectionTask/ListInspectionTaskCmd.java

@@ -21,10 +21,15 @@ import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
 import com.java110.dto.inspectionPlan.InspectionTaskDto;
+import com.java110.intf.community.IInspectionTaskInnerServiceSMO;
 import com.java110.intf.community.IInspectionTaskV1InnerServiceSMO;
 import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
+import com.java110.vo.api.inspectionTask.ApiInspectionTaskDataVo;
+import com.java110.vo.api.inspectionTask.ApiInspectionTaskVo;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -45,16 +50,17 @@ import java.util.List;
  * 温馨提示:如果您对此文件进行修改 请不要删除原有作者及注释信息,请补充您的 修改的原因以及联系邮箱如下
  * // modify by 张三 at 2021-09-12 第10行在某种场景下存在某种bug 需要修复,注释10至20行 加入 20行至30行
  */
-@Java110Cmd(serviceCode = "inspectionTask.listInspectionTask")
+@Java110Cmd(serviceCode = "inspectionTask.listInspectionTasks")
 public class ListInspectionTaskCmd extends Cmd {
 
     private static Logger logger = LoggerFactory.getLogger(ListInspectionTaskCmd.class);
     @Autowired
-    private IInspectionTaskV1InnerServiceSMO inspectionTaskV1InnerServiceSMOImpl;
+    private IInspectionTaskInnerServiceSMO inspectionTaskInnerServiceSMOImpl;
 
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         super.validatePageInfo(reqJson);
+        Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含小区信息");
     }
 
     @Override
@@ -62,20 +68,33 @@ public class ListInspectionTaskCmd extends Cmd {
 
         InspectionTaskDto inspectionTaskDto = BeanConvertUtil.covertBean(reqJson, InspectionTaskDto.class);
 
-        int count = inspectionTaskV1InnerServiceSMOImpl.queryInspectionTasksCount(inspectionTaskDto);
+        if (reqJson.containsKey("moreState") && reqJson.getString("moreState").contains(",")) {
+            inspectionTaskDto.setStates(reqJson.getString("moreState").split(","));
+        }
+
+        //查询当天巡检任务标识
+        if (!StringUtil.isEmpty(reqJson.getString("isToday"))) {
+            inspectionTaskDto.setDayTask(reqJson.getString("isToday"));
+        }
+        int count = inspectionTaskInnerServiceSMOImpl.queryInspectionTasksCount(inspectionTaskDto);
 
-        List<InspectionTaskDto> inspectionTaskDtos = null;
+        List<ApiInspectionTaskDataVo> inspectionTasks = null;
 
         if (count > 0) {
-            inspectionTaskDtos = inspectionTaskV1InnerServiceSMOImpl.queryInspectionTasks(inspectionTaskDto);
+            inspectionTasks = BeanConvertUtil.covertBeanList(inspectionTaskInnerServiceSMOImpl.queryInspectionTasks(inspectionTaskDto), ApiInspectionTaskDataVo.class);
         } else {
-            inspectionTaskDtos = new ArrayList<>();
+            inspectionTasks = new ArrayList<>();
         }
 
-        ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, inspectionTaskDtos);
+        ApiInspectionTaskVo apiInspectionTaskVo = new ApiInspectionTaskVo();
 
-        ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
+        apiInspectionTaskVo.setTotal(count);
+        apiInspectionTaskVo.setRecords((int) Math.ceil((double) count / (double) reqJson.getInteger("row")));
+        apiInspectionTaskVo.setInspectionTasks(inspectionTasks);
+
+        ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiInspectionTaskVo), HttpStatus.OK);
 
         cmdDataFlowContext.setResponseEntity(responseEntity);
+
     }
 }

+ 39 - 1
service-community/src/main/java/com/java110/community/cmd/inspectionTask/SaveInspectionTaskCmd.java

@@ -1,4 +1,42 @@
 package com.java110.community.cmd.inspectionTask;
 
-public class SaveInspectionTaskCmd {
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.intf.community.IInspectionTaskV1InnerServiceSMO;
+import com.java110.po.inspection.InspectionTaskPo;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+
+@Java110Cmd(serviceCode = "inspectionTask.saveInspectionTask")
+public class SaveInspectionTaskCmd extends Cmd {
+
+    @Autowired
+    private IInspectionTaskV1InnerServiceSMO inspectionTaskV1InnerServiceSMOImpl;
+
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.hasKeyAndValue(reqJson, "inspectionPlanId", "请求报文中未包含inspectionPlanId");
+        Assert.hasKeyAndValue(reqJson, "actInsTime", "请求报文中未包含actInsTime");
+        Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
+        Assert.hasKeyAndValue(reqJson, "actUserId", "请求报文中未包含actUserId");
+        Assert.hasKeyAndValue(reqJson, "actUserName", "请求报文中未包含actUserName");
+        Assert.hasKeyAndValue(reqJson, "signType", "请求报文中未包含signType");
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        reqJson.put("taskId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_taskId));
+        InspectionTaskPo inspectionTaskPo = BeanConvertUtil.covertBean(reqJson, InspectionTaskPo.class);
+        int flag = inspectionTaskV1InnerServiceSMOImpl.saveInspectionTask(inspectionTaskPo);
+        if (flag < 1) {
+            throw new CmdException("删除数据失败");
+        }
+    }
 }

+ 81 - 1
service-community/src/main/java/com/java110/community/cmd/inspectionTask/UpdateInspectionTaskCmd.java

@@ -1,4 +1,84 @@
 package com.java110.community.cmd.inspectionTask;
 
-public class UpdateInspectionTaskCmd {
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.dto.inspectionPlan.InspectionTaskDto;
+import com.java110.intf.common.IFileInnerServiceSMO;
+import com.java110.intf.community.IInspectionTaskInnerServiceSMO;
+import com.java110.intf.community.IInspectionTaskV1InnerServiceSMO;
+import com.java110.po.inspection.InspectionTaskPo;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.DateUtil;
+import com.java110.utils.util.StringUtil;
+import com.java110.vo.ResultVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.ResponseEntity;
+
+import java.util.List;
+
+@Java110Cmd(serviceCode = "inspectionTask.updateInspectionTask")
+public class UpdateInspectionTaskCmd extends Cmd {
+
+    @Autowired
+    private IFileInnerServiceSMO fileInnerServiceSMOImpl;
+
+    @Autowired
+    private IInspectionTaskInnerServiceSMO inspectionTaskInnerServiceSMOImpl;
+
+    @Autowired
+    private IInspectionTaskV1InnerServiceSMO inspectionTaskV1InnerServiceSMOImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.hasKeyAndValue(reqJson, "taskId", "请求报文中未包含taskId");
+        Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
+        Assert.hasKeyAndValue(reqJson, "inspectionPlanId", "请求报文中未包含inspectionPlanId");
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        InspectionTaskDto inspectionTaskDto1 = new InspectionTaskDto();
+        inspectionTaskDto1.setCommunityId(reqJson.getString("communityId"));
+        inspectionTaskDto1.setTaskId(reqJson.getString("taskId"));
+        List<InspectionTaskDto> inspectionTaskDtoList = inspectionTaskInnerServiceSMOImpl.queryInspectionTasks(inspectionTaskDto1);
+        if (inspectionTaskDtoList.size()!= 1) {
+            ResponseEntity<String> responseEntity = ResultVo.createResponseEntity(ResultVo.CODE_BUSINESS_VERIFICATION, "未找到巡检任务信息或找到多条!");
+            context.setResponseEntity(responseEntity);
+            return;
+        }
+
+        InspectionTaskDto inspectionTaskDto = new InspectionTaskDto();
+        inspectionTaskDto.setTaskId(reqJson.getString("taskId"));
+        inspectionTaskDto.setCommunityId(reqJson.getString("communityId"));
+        List<InspectionTaskDto> inspectionTaskDtos = inspectionTaskInnerServiceSMOImpl.queryInspectionTasks(inspectionTaskDto);
+
+        Assert.listOnlyOne(inspectionTaskDtos, "未找到需要修改的巡检任务 或多条数据");
+
+        JSONObject businessInspectionTask = new JSONObject();
+        businessInspectionTask.putAll(BeanConvertUtil.beanCovertMap(inspectionTaskDtos.get(0)));
+
+        InspectionTaskPo inspectionTaskPo = BeanConvertUtil.covertBean(businessInspectionTask, InspectionTaskPo.class);
+        inspectionTaskPo.setActInsTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+        inspectionTaskPo.setActUserId(reqJson.getString("userId"));
+        inspectionTaskPo.setActUserName(reqJson.getString("userName"));
+        inspectionTaskPo.setState(reqJson.getString("state"));
+        if(!StringUtil.isEmpty(reqJson.getString("taskType")) && reqJson.getString("taskType").equals("2000") ){
+//            inspectionTaskPo.setOriginalPlanUserId(inspectionTaskPo.getPlanUserId());
+//            inspectionTaskPo.setOriginalPlanUserName(inspectionTaskPo.getPlanUserName());
+            inspectionTaskPo.setPlanUserId(reqJson.getString("staffId"));
+            inspectionTaskPo.setPlanUserName(reqJson.getString("staffName"));
+            inspectionTaskPo.setTaskType(reqJson.getString("taskType"));
+            inspectionTaskPo.setTransferDesc(reqJson.getString("transferDesc"));
+        }
+
+        int flag = inspectionTaskV1InnerServiceSMOImpl.updateInspectionTask(inspectionTaskPo);
+        if (flag < 1) {
+            throw new CmdException("删除数据失败");
+        }
+    }
 }

+ 82 - 1
service-community/src/main/java/com/java110/community/cmd/inspectionTaskDetail/ListInspectionTaskDetailsCmd.java

@@ -1,4 +1,85 @@
 package com.java110.community.cmd.inspectionTaskDetail;
 
-public class ListInspectionTaskDetailsCmd {
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.dto.file.FileRelDto;
+import com.java110.dto.inspectionPlan.InspectionTaskDetailDto;
+import com.java110.intf.common.IFileRelInnerServiceSMO;
+import com.java110.intf.community.IInspectionTaskDetailInnerServiceSMO;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.vo.api.inspectionTaskDetail.ApiInspectionTaskDetailDataVo;
+import com.java110.vo.api.inspectionTaskDetail.ApiInspectionTaskDetailVo;
+import com.java110.vo.api.junkRequirement.PhotoVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@Java110Cmd(serviceCode = "inspectionTaskDetail.listInspectionTaskDetails")
+public class ListInspectionTaskDetailsCmd extends Cmd {
+
+    @Autowired
+    private IInspectionTaskDetailInnerServiceSMO inspectionTaskDetailInnerServiceSMOImpl;
+    @Autowired
+    private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        super.validatePageInfo(reqJson);
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        InspectionTaskDetailDto inspectionTaskDetailDto = BeanConvertUtil.covertBean(reqJson, InspectionTaskDetailDto.class);
+
+        int count = inspectionTaskDetailInnerServiceSMOImpl.queryInspectionTaskDetailsCount(inspectionTaskDetailDto);
+
+        List<ApiInspectionTaskDetailDataVo> inspectionTaskDetails = null;
+
+        if (count > 0) {
+            inspectionTaskDetails = BeanConvertUtil.covertBeanList(inspectionTaskDetailInnerServiceSMOImpl.queryInspectionTaskDetails(inspectionTaskDetailDto), ApiInspectionTaskDetailDataVo.class);
+            refreshPhotos(inspectionTaskDetails);
+        } else {
+            inspectionTaskDetails = new ArrayList<>();
+        }
+
+        ApiInspectionTaskDetailVo apiInspectionTaskDetailVo = new ApiInspectionTaskDetailVo();
+
+        apiInspectionTaskDetailVo.setTotal(count);
+        apiInspectionTaskDetailVo.setRecords((int) Math.ceil((double) count / (double) reqJson.getInteger("row")));
+        apiInspectionTaskDetailVo.setInspectionTaskDetails(inspectionTaskDetails);
+
+        ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiInspectionTaskDetailVo), HttpStatus.OK);
+
+        context.setResponseEntity(responseEntity);
+
+    }
+
+    private void refreshPhotos(List<ApiInspectionTaskDetailDataVo> inspectionTaskDetails) {
+        List<PhotoVo> photoVos = null;
+        PhotoVo photoVo = null;
+        for (ApiInspectionTaskDetailDataVo inspectionTaskDetail : inspectionTaskDetails) {
+            if(!"20200407".equals(inspectionTaskDetail.getState())){
+                continue;
+            }
+            FileRelDto fileRelDto = new FileRelDto();
+            fileRelDto.setObjId(inspectionTaskDetail.getTaskDetailId());
+            List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
+            photoVos = new ArrayList<>();
+            for (FileRelDto tmpFileRelDto : fileRelDtos) {
+                photoVo = new PhotoVo();
+                photoVo.setUrl("/callComponent/download/getFile/file?fileId=" + tmpFileRelDto.getFileRealName() + "&communityId=" + inspectionTaskDetail.getCommunityId());
+                photoVos.add(photoVo);
+            }
+
+            inspectionTaskDetail.setPhotos(photoVos);
+
+        }
+    }
 }

+ 39 - 1
service-community/src/main/java/com/java110/community/cmd/inspectionTaskDetail/SaveInspectionTaskDetailCmd.java

@@ -1,4 +1,42 @@
 package com.java110.community.cmd.inspectionTaskDetail;
 
-public class SaveInspectionTaskDetailCmd {
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.intf.community.IInspectionTaskDetailV1InnerServiceSMO;
+import com.java110.po.inspection.InspectionTaskDetailPo;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+
+@Java110Cmd(serviceCode = "inspectionTaskDetail.saveInspectionTaskDetail")
+public class SaveInspectionTaskDetailCmd extends Cmd {
+
+    @Autowired
+    private IInspectionTaskDetailV1InnerServiceSMO inspectionTaskDetailV1InnerServiceSMOImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+
+        Assert.hasKeyAndValue(reqJson, "taskDetailId", "请求报文中未包含taskDetailId");
+        Assert.hasKeyAndValue(reqJson, "taskId", "请求报文中未包含taskId");
+        Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
+        Assert.hasKeyAndValue(reqJson, "inspectionId", "请求报文中未包含inspectionId");
+        Assert.hasKeyAndValue(reqJson, "inspectionName", "请求报文中未包含inspectionName");
+        Assert.hasKeyAndValue(reqJson, "signType", "请求报文中未包含signType");
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        reqJson.put("taskDetailId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_taskDetailId));
+        InspectionTaskDetailPo inspectionTaskPo = BeanConvertUtil.covertBean(reqJson, InspectionTaskDetailPo.class);
+        int flag = inspectionTaskDetailV1InnerServiceSMOImpl.saveInspectionTaskDetail(inspectionTaskPo);
+        if (flag < 1) {
+            throw new CmdException("删除数据失败");
+        }
+    }
 }

+ 264 - 1
service-community/src/main/java/com/java110/community/cmd/inspectionTaskDetail/UpdateInspectionTaskDetailCmd.java

@@ -1,4 +1,267 @@
 package com.java110.community.cmd.inspectionTaskDetail;
 
-public class UpdateInspectionTaskDetailCmd {
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.annotation.Java110Transactional;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.log.LoggerFactory;
+import com.java110.dto.file.FileDto;
+import com.java110.dto.inspectionPlan.InspectionTaskDetailDto;
+import com.java110.dto.inspectionPlan.InspectionTaskDto;
+import com.java110.intf.common.IFileInnerServiceSMO;
+import com.java110.intf.common.IFileRelInnerServiceSMO;
+import com.java110.intf.community.IInspectionTaskDetailInnerServiceSMO;
+import com.java110.intf.community.IInspectionTaskDetailV1InnerServiceSMO;
+import com.java110.intf.community.IInspectionTaskInnerServiceSMO;
+import com.java110.intf.community.IInspectionTaskV1InnerServiceSMO;
+import com.java110.po.file.FileRelPo;
+import com.java110.po.inspection.InspectionTaskDetailPo;
+import com.java110.po.inspection.InspectionTaskPo;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.DateUtil;
+import com.java110.utils.util.StringUtil;
+import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+@Java110Cmd(serviceCode = "inspectionTaskDetail.updateInspectionTaskDetail")
+public class UpdateInspectionTaskDetailCmd extends Cmd {
+    private static Logger logger = LoggerFactory.getLogger(UpdateInspectionTaskDetailCmd.class);
+
+    @Autowired
+    private IFileInnerServiceSMO fileInnerServiceSMOImpl;
+
+    @Autowired
+    private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
+
+    @Autowired
+    private IInspectionTaskInnerServiceSMO inspectionTaskInnerServiceSMOImpl;
+
+    @Autowired
+    private IInspectionTaskDetailInnerServiceSMO inspectionTaskDetailInnerServiceSMOImpl;
+
+    @Autowired
+    private IInspectionTaskDetailV1InnerServiceSMO inspectionTaskDetailV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IInspectionTaskV1InnerServiceSMO inspectionTaskV1InnerServiceSMOImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.hasKeyAndValue(reqJson, "taskDetailId", "请求报文中未包含taskDetailId");
+        Assert.hasKeyAndValue(reqJson, "taskId", "请求报文中未包含taskId");
+        Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId");
+        Assert.hasKeyAndValue(reqJson, "inspectionId", "请求报文中未包含inspectionId");
+        Assert.hasKeyAndValue(reqJson, "photos", "请求报文中未包含照片");
+    }
+
+    @Override
+    @Java110Transactional
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        if (reqJson.containsKey("photos")) {
+            dealPhotos(reqJson);
+        }
+
+        //添加单元信息
+        reqJson.put("state", "20200407");//巡检点完成
+        try {
+            updateInspectionTaskDetail(reqJson);
+        } catch (ParseException e) {
+            logger.error("更新明细失败", e);
+            throw new CmdException(e.getMessage());
+        }
+
+        InspectionTaskDto inspectionTaskDto = new InspectionTaskDto();
+        inspectionTaskDto.setTaskId(reqJson.getString("taskId"));
+        inspectionTaskDto.setCommunityId(reqJson.getString("communityId"));
+        inspectionTaskDto.setState("20200405");
+        List<InspectionTaskDto> inspectionTaskDtos = inspectionTaskInnerServiceSMOImpl.queryInspectionTasks(inspectionTaskDto);
+
+        if (inspectionTaskDtos != null && inspectionTaskDtos.size() > 0) {
+            reqJson.put("state", "20200406");
+            updateInspectionTask(reqJson);
+        }
+
+        InspectionTaskDetailDto inspectionTaskDetailDto = new InspectionTaskDetailDto();
+        inspectionTaskDetailDto.setCommunityId(reqJson.getString("communityId"));
+        inspectionTaskDetailDto.setTaskId(reqJson.getString("taskId"));
+        inspectionTaskDetailDto.setState("20200405");
+        int count = inspectionTaskDetailInnerServiceSMOImpl.queryInspectionTaskDetailsCount(inspectionTaskDetailDto);
+
+        if (count > 0) {//说明还没有巡检完
+            return;
+        }
+        reqJson.put("state", "20200407");//巡检完成
+        updateInspectionTask(reqJson);
+    }
+
+
+    private void dealPhotos(JSONObject reqJson) {
+        JSONArray photos = reqJson.getJSONArray("photos");
+        JSONObject photo = null;
+        for (int photoIndex = 0; photoIndex < photos.size(); photoIndex++) {
+            photo = photos.getJSONObject(photoIndex);
+            FileDto fileDto = new FileDto();
+            fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
+            fileDto.setFileName(fileDto.getFileId());
+            fileDto.setContext(photo.getString("photo"));
+            fileDto.setSuffix("jpeg");
+            fileDto.setCommunityId(reqJson.getString("communityId"));
+            String fileName = fileInnerServiceSMOImpl.saveFile(fileDto);
+            reqJson.put("photoId", fileDto.getFileId());
+            reqJson.put("fileSaveName", fileName);
+
+            addPhoto(reqJson);
+        }
+    }
+
+    /**
+     * 添加物业费用
+     *
+     * @param paramInJson 接口调用放传入入参
+     * @return 订单服务能够接受的报文
+     */
+    public void addPhoto(JSONObject paramInJson) {
+
+        JSONObject businessUnit = new JSONObject();
+        businessUnit.put("fileRelId", "-1");
+        businessUnit.put("relTypeCd", "90000");
+        businessUnit.put("saveWay", "ftp");
+        businessUnit.put("objId", paramInJson.getString("taskDetailId"));
+        businessUnit.put("fileRealName", paramInJson.getString("photoId"));
+        businessUnit.put("fileSaveName", paramInJson.getString("fileSaveName"));
+        FileRelPo fileRelPo = BeanConvertUtil.covertBean(businessUnit, FileRelPo.class);
+        int flag = fileRelInnerServiceSMOImpl.saveFileRel(fileRelPo);
+        if (flag < 1) {
+            throw new CmdException("保存图片失败");
+        }
+    }
+
+    public void updateInspectionTaskDetail(JSONObject paramInJson) throws ParseException {
+        InspectionTaskDetailDto inspectionTaskDetailDto = new InspectionTaskDetailDto();
+        inspectionTaskDetailDto.setTaskDetailId(paramInJson.getString("taskDetailId"));
+        inspectionTaskDetailDto.setCommunityId(paramInJson.getString("communityId"));
+        List<InspectionTaskDetailDto> inspectionTaskDetailDtos = inspectionTaskDetailInnerServiceSMOImpl.queryInspectionTaskDetails(inspectionTaskDetailDto);
+        Assert.listOnlyOne(inspectionTaskDetailDtos, "未找到需要修改的活动 或多条数据");
+        JSONObject businessInspectionTaskDetail = new JSONObject();
+        businessInspectionTaskDetail.putAll(BeanConvertUtil.beanCovertMap(inspectionTaskDetailDtos.get(0)));
+        businessInspectionTaskDetail.putAll(paramInJson);
+        InspectionTaskDetailPo inspectionTaskDetailPoPo = BeanConvertUtil.covertBean(businessInspectionTaskDetail, InspectionTaskDetailPo.class);
+        inspectionTaskDetailPoPo.setInspectionTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+        inspectionTaskDetailPoPo.setActUserId(paramInJson.getString("userId"));
+        inspectionTaskDetailPoPo.setActUserName(paramInJson.getString("userName"));
+        //获取任务id
+        String taskId = paramInJson.getString("taskId");
+        InspectionTaskDto inspectionTaskDto = new InspectionTaskDto();
+        inspectionTaskDto.setTaskId(taskId);
+        List<InspectionTaskDto> inspectionTaskDtos = inspectionTaskInnerServiceSMOImpl.queryInspectionTasks(inspectionTaskDto);
+        Assert.listOnlyOne(inspectionTaskDtos, "查询巡检任务数据错误!");
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        Date date = new Date();
+        SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
+        String currentDate = sdf1.format(date);
+        System.out.println(currentDate);
+
+
+        //获取巡检点的巡检点时间限制
+        String inspectionStartTime = "";
+        String inspectionEndTime = "";
+        long planStartTime;
+        long planFinishTime;
+        String pointStartTime = inspectionTaskDetailDtos.get(0).getPointStartTime();
+        String pointEndTime = inspectionTaskDetailDtos.get(0).getPointEndTime();
+        if (!StringUtil.isEmpty(pointStartTime)) {
+            inspectionStartTime = currentDate + " " + pointStartTime + ":00";
+            Date startTime = format.parse(inspectionStartTime);
+            planStartTime = startTime.getTime();
+        } else {
+            //获取计划巡检开始时间
+            String planInsTime = inspectionTaskDtos.get(0).getPlanInsTime();
+            Date startTime = format.parse(planInsTime);
+            planStartTime = startTime.getTime();
+        }
+        if (!StringUtil.isEmpty(pointEndTime)) {
+            inspectionEndTime = currentDate + " " + pointEndTime + ":00";
+            Date endTime = format.parse(inspectionEndTime);
+            planFinishTime = endTime.getTime();
+        } else {
+            //获取计划巡检结束时间
+            String planEndTime = inspectionTaskDtos.get(0).getPlanEndTime();
+            Date endTime = format.parse(planEndTime);
+            planFinishTime = endTime.getTime();
+        }
+
+        //获取计划巡检开始时间
+//        String planInsTime = inspectionTaskDtos.get(0).getPlanInsTime();
+//        Date startTime = format.parse(planInsTime);
+//        long planStartTime = startTime.getTime();
+//        //获取计划巡检结束时间
+//        String planEndTime = inspectionTaskDtos.get(0).getPlanEndTime();
+//        Date endTime = format.parse(planEndTime);
+//        long planFinishTime = endTime.getTime();
+        //获取巡检点签到时间
+        String inspectionTime = inspectionTaskDetailPoPo.getInspectionTime();
+        Date inspectionDetailTime = format.parse(inspectionTime);
+        long detailTime = inspectionDetailTime.getTime();
+        if (detailTime < planStartTime) {  //如果巡检点签到时间小于巡检计划开始时间,签到状态就是早到
+            inspectionTaskDetailPoPo.setInspectionState("40000");
+        } else if (detailTime > planFinishTime) {  //如果巡检点签到时间大于巡检计划结束时间,签到状态就是迟到
+            inspectionTaskDetailPoPo.setInspectionState("50000");
+        } else {  //如果巡检点签到时间在巡检计划开始时间和巡检计划结束时间之间,签到状态就是正常
+            inspectionTaskDetailPoPo.setInspectionState("60000");
+        }
+
+        int flag = inspectionTaskDetailV1InnerServiceSMOImpl.updateInspectionTaskDetail(inspectionTaskDetailPoPo);
+
+        if (flag < 1) {
+            throw new CmdException("保存明细失败");
+        }
+    }
+
+    /**
+     * 添加活动信息
+     *
+     * @param paramInJson 接口调用放传入入参
+     * @return 订单服务能够接受的报文
+     */
+    public void updateInspectionTask(JSONObject paramInJson) {
+
+        InspectionTaskDto inspectionTaskDto = new InspectionTaskDto();
+        inspectionTaskDto.setTaskId(paramInJson.getString("taskId"));
+        inspectionTaskDto.setCommunityId(paramInJson.getString("communityId"));
+        List<InspectionTaskDto> inspectionTaskDtos = inspectionTaskInnerServiceSMOImpl.queryInspectionTasks(inspectionTaskDto);
+
+        Assert.listOnlyOne(inspectionTaskDtos, "未找到需要修改的巡检任务 或多条数据");
+
+        JSONObject businessInspectionTask = new JSONObject();
+        businessInspectionTask.putAll(BeanConvertUtil.beanCovertMap(inspectionTaskDtos.get(0)));
+
+        InspectionTaskPo inspectionTaskPo = BeanConvertUtil.covertBean(businessInspectionTask, InspectionTaskPo.class);
+        inspectionTaskPo.setActInsTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+        inspectionTaskPo.setActUserId(paramInJson.getString("userId"));
+        inspectionTaskPo.setActUserName(paramInJson.getString("userName"));
+        inspectionTaskPo.setState(paramInJson.getString("state"));
+        if (!StringUtil.isEmpty(paramInJson.getString("taskType")) && paramInJson.getString("taskType").equals("2000")) {
+//            inspectionTaskPo.setOriginalPlanUserId(inspectionTaskPo.getPlanUserId());
+//            inspectionTaskPo.setOriginalPlanUserName(inspectionTaskPo.getPlanUserName());
+            inspectionTaskPo.setPlanUserId(paramInJson.getString("staffId"));
+            inspectionTaskPo.setPlanUserName(paramInJson.getString("staffName"));
+            inspectionTaskPo.setTaskType(paramInJson.getString("taskType"));
+            inspectionTaskPo.setTransferDesc(paramInJson.getString("transferDesc"));
+        }
+        int flag = inspectionTaskV1InnerServiceSMOImpl.updateInspectionTask(inspectionTaskPo);
+        if (flag < 1) {
+            throw new CmdException("修改任务失败");
+        }
+    }
 }