Commit 8a960622 authored by kongfm's avatar kongfm

Merge remote-tracking branch 'origin/developer' into developer

# Conflicts: # amos-boot-module/amos-boot-module-biz/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/service/impl/DispatchPaperServiceImpl.java # amos-boot-module/amos-boot-module-biz/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/service/impl/RepairConsultServiceImpl.java
parents 951f94ce be235edf
package com.yeejoin.amos.boot.biz.common.constants;
/**
* @Description: 业务通用常量类
* @Author: DELL
* @Date: 2021/5/26
*/
public interface BizConstant {
/**
* 经度
*/
public final static String LONGITUDE = "longitude";
/**
* 纬度
*/
public final static String LATITUDE = "latitude";
/**
* 地址
*/
public final static String ADDRESS = "address";
}
...@@ -11,11 +11,11 @@ import org.springframework.web.bind.annotation.RequestParam; ...@@ -11,11 +11,11 @@ import org.springframework.web.bind.annotation.RequestParam;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
@FeignClient(name = "AMOS-API-WORKFLOW", path = "workflow", configuration = { CommonMultipartSupportConfig.class }) @FeignClient(name = "AMOS-API-WORKFLOW-CJHENHAO", path = "workflow", configuration = { CommonMultipartSupportConfig.class })
public interface WorkflowFeignService { public interface WorkflowFeignService {
/** /**
* 发起流程 * 发起流程
* *
* @param params * @param params
* @return * @return
*/ */
...@@ -24,7 +24,7 @@ public interface WorkflowFeignService { ...@@ -24,7 +24,7 @@ public interface WorkflowFeignService {
/** /**
* 完成任务 * 完成任务
* *
* @param taskID * @param taskID
* @param variable * @param variable
* @return * @return
...@@ -36,7 +36,7 @@ public interface WorkflowFeignService { ...@@ -36,7 +36,7 @@ public interface WorkflowFeignService {
/** /**
* 查询当前流程下所有的可执行任务 * 查询当前流程下所有的可执行任务
* *
* @param processInstanceId * @param processInstanceId
* @return * @return
*/ */
...@@ -45,13 +45,13 @@ public interface WorkflowFeignService { ...@@ -45,13 +45,13 @@ public interface WorkflowFeignService {
/** /**
* 查询当前任务的执行用户组 * 查询当前任务的执行用户组
* *
* @param processInstanceId * @param processInstanceId
* @return * @return
*/ */
@RequestMapping(value = "/task/getTaskGroupName/{taskId}", method = RequestMethod.GET) @RequestMapping(value = "/task/getTaskGroupName/{taskId}", method = RequestMethod.GET)
JSONObject getTaskGroupName(@PathVariable("taskId") String taskId); JSONObject getTaskGroupName(@PathVariable("taskId") String taskId);
/** /**
* 我的待办 * 我的待办
* @param processDefinitionKey * @param processDefinitionKey
...@@ -74,7 +74,7 @@ public interface WorkflowFeignService { ...@@ -74,7 +74,7 @@ public interface WorkflowFeignService {
* @param processInstanceId * @param processInstanceId
* @return * @return
*/ */
@RequestMapping(value = "/activitiHistory/tasks/{processInstanceId}", method = RequestMethod.GET) @RequestMapping(value = "/activitiHistory/historyTask/{processInstanceId}", method = RequestMethod.GET)
JSONObject queryTasksByProcessInstanceId(@PathVariable("processInstanceId") String processInstanceId); JSONObject queryHistoryTasksByProcessInstanceId(@PathVariable("processInstanceId") String processInstanceId);
} }
...@@ -21,6 +21,8 @@ public class FailureDetailsDto extends BaseDto { ...@@ -21,6 +21,8 @@ public class FailureDetailsDto extends BaseDto {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "当前状态名")
private String currentStatusName;
@ApiModelProperty(value = "当前状态") @ApiModelProperty(value = "当前状态")
private Integer currentStatus; private Integer currentStatus;
......
...@@ -17,7 +17,9 @@ public enum OrderByEnum { ...@@ -17,7 +17,9 @@ public enum OrderByEnum {
PLAN_TASK_NUM_ASC("计划维保设施数正序", "3", "taskPlanNum asc"), PLAN_TASK_NUM_ASC("计划维保设施数正序", "3", "taskPlanNum asc"),
PLAN_TASK_NUM_DESC("计划维保设施数倒序", "4", "taskPlanNum desc"), PLAN_TASK_NUM_DESC("计划维保设施数倒序", "4", "taskPlanNum desc"),
FINISH_NUM_DESC("完成数倒序", "5", "finishNum desc"), FINISH_NUM_DESC("完成数倒序", "5", "finishNum desc"),
FINISH_NUM_ASC("完成数正序", "6", "finishNum asc"); FINISH_NUM_ASC("完成数正序", "6", "finishNum asc"),
DATE_DESC("维保记录时间倒序", "7", "checkDate desc"),
DATE_ASC("维保记录时间正序", "8", "checkDate asc");
/** /**
* 名字 * 名字
......
...@@ -7,7 +7,7 @@ import java.util.Map; ...@@ -7,7 +7,7 @@ import java.util.Map;
public enum PlanTaskFinishStatusEnum { public enum PlanTaskFinishStatusEnum {
NOTSTARTED("未开始",0), NOTSTARTED("未开始",0),
UNDERWAY("待执行",1), UNDERWAY("处理中",1),
FINISHED("已结束",2), FINISHED("已结束",2),
OVERTIME("已超时",3); OVERTIME("已超时",3);
......
package com.yeejoin.amos.maintenance.dao.entity;
import lombok.Data;
import org.hibernate.annotations.Where;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import java.util.Date;
/**
* @author keyong
* @title: LatentDanger
* <pre>
* @description: 隐患表
* </pre>
* @date 2021/1/26 14:03
*/
@Entity
@Table(name = "p_latent_danger")
@NamedQuery(name = "LatentDanger.findAll", query = "SELECT c FROM LatentDanger c")
@Where(clause = "deleted=0") //表示未删除的数据
@Data
public class LatentDanger extends BasicEntity {
private static final long serialVersionUID = 1L;
/**
* 业务唯一标识
*/
@Column(name = "business_key")
private String businessKey;
/**
* 公司组织机构
*/
@Column(name = "org_code")
private String orgCode;
/**
* 隐患名称
*/
@Column(name = "danger_name")
private String dangerName;
@Column(name = "instance_id")
private String instanceId;
@Column(name = "current_flow_record_id")
private Long currentFlowRecordId;
/**
* 隐患等级(1:一般隐患;2:重大隐患;0:安全问题)
*/
@Column(name = "danger_level")
private Integer dangerLevel;
/**
* 隐患地点
*/
@Column(name = "danger_position")
private String dangerPosition;
/**
* 隐患类型(1:普通隐患;2:巡检隐患)
*/
@Column(name = "danger_type")
private Integer dangerType;
/**
* 备注
*/
@Column(name = "remark")
private String remark;
/**
* 整改类型(1:常规整改;2:安措计划;3:延期整改)
*/
@Column(name = "reform_type")
private Integer reformType;
/**
* 限制时间
*/
@Column(name = "reform_limit_date")
private Date reformLimitDate;
@Column(name = "overtime_state")
private Integer overtimeState;
@Column(name = "reform_json")
private String reformJson;
/**
* 隐患状态(1:待评审;2:待治理;3:安措计划中;4:逾期未治理;5:待验证;6:治理完毕;7:已撤销)
*/
@Column(name = "danger_state")
private Integer dangerState;
/**
* 发现人
*/
@Column(name = "discoverer_user_id")
private String discovererUserId;
@Column(name = "discoverer_department_id")
private String discovererDepartmentId;
@Column(name = "photo_urls")
private String photoUrls;
/**
* 是否删除(0:否;1:是)
*/
@Column(name = "deleted")
private Integer deleted;
/**
* 记录修改时间
*/
@Column(name = "update_date")
private Date updateDate;
/**
* 延期治理时间
*/
@Column(name = "delay_limit_date")
private Date delayLimitDate;
/**
* 问题描述
*/
@Column(name = "problem_description")
private String problemDescription;
/**
* 原因分析
*/
@Column(name = "reason_analysis")
private String reasonAnalysis;
/**
* 举一反三
*/
@Column(name = "infer_other_things")
private String inferOtherThings;
/**
* 检查记录创建的隐患检查项对应id
*/
@Column(name = "check_input_id")
private Long checkInputId;
}
package com.yeejoin.amos.maintenance.dao.entity;
import lombok.Data;
import org.hibernate.annotations.Where;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import java.util.Date;
/**
* @author keyong
* @title: LatentDangerFlowRecord
* <pre>
* @description: 隐患工作流记录表
* </pre>
* @date 2021/1/26 14:18
*/
@Entity
@Table(name = "p_latent_danger_flow_record")
@NamedQuery(name = "LatentDangerFlowRecord.findAll", query = "SELECT c FROM LatentDangerFlowRecord c")
@Where(clause = "deleted=0") //表示未删除的数据
@Data
public class LatentDangerFlowRecord extends BasicEntity {
private static final long serialVersionUID = 1L;
@Column(name = "danger_id")
private Long dangerId;
@Column(name = "action_flag")
private String actionFlag;
@Column(name = "flow_task_name")
private String flowTaskName;
@Column(name = "flow_task_user_ids")
private String flowTaskUserIds;
@Column(name = "flow_task_id")
private String flowTaskId;
@Column(name = "excute_state")
private Integer excuteState;
@Column(name = "excute_user_id")
private String excuteUserId;
@Column(name = "excute_result")
private String excuteResult;
@Column(name = "remark")
private String remark;
@Column(name = "flow_json")
private String flowJson;
/**
* 是否删除(0:否;1:是)
*/
@Column(name = "deleted")
private Integer deleted;
/**
* 记录修改时间
*/
@Column(name = "update_date")
private Date updateDate;
@Column(name = "excute_department_id")
private String excuteDepartmentId;
}
package com.yeejoin.amos.maintenance.dao.entity;
import lombok.Data;
import org.hibernate.annotations.Where;
import org.springframework.data.annotation.Transient;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import java.util.Date;
/**
* @author keyong
* @title: LatentDangerPatrol
* <pre>
* @description: 隐患巡检关系表
* </pre>
* @date 2021/1/26 14:51
*/
@Entity
@Table(name = "p_latent_danger_patrol")
@NamedQuery(name = "LatentDangerPatrol.findAll", query = "SELECT c FROM LatentDangerPatrol c")
@Where(clause = "deleted=0") //表示未删除的数据
@Data
public class LatentDangerPatrol extends BasicEntity {
private static final long serialVersionUID = 1L;
@Column(name = "latent_danger_id")
private Long latentDangerId;
@Column(name = "point_classify_id")
private Long pointClassifyId;
@Column(name = "check_id")
private Long checkId;
@Column(name = "item_id")
private Long itemId;
@Column(name = "point_id")
private Long pointId;
@Column(name = "route_id")
private Long routeId;
@Column(name = "risk_factor_flow_id")
private String riskFactorFlowId;
@Column(name = "route_point_item_id")
private Long routePointItemId;
/**
* 是否删除(0:否;1:是)
*/
@Column(name = "deleted")
private Integer deleted;
/**
* 检查类型-交大字段,只是前段显示用
*/
@Transient private String checkType;
/**
* 记录修改时间
*/
@Column(name = "update_date")
private Date updateDate;
}
package com.yeejoin.amos.maintenance.dao.entity;
import lombok.Data;
import org.hibernate.annotations.Where;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
/**
* @author keyong
* @title: LatentDangerPhoto
* <pre>
* @description: 隐患图片
* </pre>
* @date 2021/1/26 14:50
*/
@Entity
@Table(name = "p_latent_danger_photo")
@NamedQuery(name = "LatentDangerPhoto.findAll", query = "SELECT c FROM LatentDangerPhoto c")
@Where(clause = "deleted=0") //表示未删除的数据
@Data
public class LatentDangerPhoto extends BasicEntity {
private static final long serialVersionUID = 1L;
@Column(name = "biz_code")
private String bizCode;
@Column(name = "url")
private String url;
@Column(name = "biz_id")
private Long bizId;
@Column(name = "deleted")
private String deleted;
@Column(name = "update_date")
private String updateDate;
}
...@@ -70,7 +70,7 @@ public class DispatchConsultFeedbackDto extends BaseDto { ...@@ -70,7 +70,7 @@ public class DispatchConsultFeedbackDto extends BaseDto {
private String errorResult; private String errorResult;
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "备注")
private String remark; private String Remark;
@ApiModelProperty(value = "维保反馈结果") @ApiModelProperty(value = "维保反馈结果")
private String mainFeedbackResult; private String mainFeedbackResult;
......
...@@ -73,7 +73,7 @@ public class DispatchRepairFeedbackDto extends BaseDto { ...@@ -73,7 +73,7 @@ public class DispatchRepairFeedbackDto extends BaseDto {
private String errorResult; private String errorResult;
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "备注")
private String remark; private String Remark;
@ApiModelProperty(value = "回访时间") @ApiModelProperty(value = "回访时间")
private Date feedbackTime; private Date feedbackTime;
......
...@@ -67,7 +67,7 @@ public class DispatchSaveFeedbackDto extends BaseDto { ...@@ -67,7 +67,7 @@ public class DispatchSaveFeedbackDto extends BaseDto {
private String errorResult; private String errorResult;
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "备注")
private String fixRemark; private String Remark;
@ApiModelProperty(value = "回访时间") @ApiModelProperty(value = "回访时间")
private Date feedbackTime; private Date feedbackTime;
......
package com.yeejoin.amos.boot.module.common.biz.constats;
import java.util.HashMap;
import java.util.Map;
public class Constants {
public static final Map<Integer,String> currentStatusNameMap = new HashMap<>();
static {
currentStatusNameMap.put(0,"待审核");
currentStatusNameMap.put(1,"待提交");
currentStatusNameMap.put(2,"待维修");
currentStatusNameMap.put(3,"待验收");
currentStatusNameMap.put(4,"已拒绝");
currentStatusNameMap.put(5,"已完结");
}
}
package com.yeejoin.amos.boot.module.common.biz.controller; package com.yeejoin.amos.boot.module.common.biz.controller;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.module.common.api.dto.FailureStatusCountDto; import com.yeejoin.amos.boot.module.common.api.dto.FailureStatusCountDto;
import com.yeejoin.amos.boot.module.common.biz.constats.Constants;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
...@@ -20,21 +22,15 @@ import org.springframework.web.bind.annotation.RequestBody; ...@@ -20,21 +22,15 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.FailureDetailsDto; import com.yeejoin.amos.boot.module.common.api.dto.FailureDetailsDto;
import com.yeejoin.amos.boot.module.common.api.entity.FailureDetails; import com.yeejoin.amos.boot.module.common.api.entity.FailureDetails;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FailureDetailsServiceImpl; import com.yeejoin.amos.boot.module.common.biz.service.impl.FailureDetailsServiceImpl;
/*import com.yeejoin.amos.patrol.business.util.CommonResponse;
import com.yeejoin.amos.patrol.business.util.CommonResponseUtil;*/
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -70,8 +66,9 @@ public class FailureDetailsController extends BaseController { ...@@ -70,8 +66,9 @@ public class FailureDetailsController extends BaseController {
result = failureDetailsServiceImpl.savemodel(model,getSelectedOrgInfo()); result = failureDetailsServiceImpl.savemodel(model,getSelectedOrgInfo());
return ResponseHelper.buildResponse(result); return ResponseHelper.buildResponse(result);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace();
// TODO Auto-generated catch block // TODO Auto-generated catch block
return ResponseHelper.buildResponse("erro"); return ResponseHelper.buildResponse("error");
} }
} }
...@@ -113,7 +110,8 @@ public class FailureDetailsController extends BaseController { ...@@ -113,7 +110,8 @@ public class FailureDetailsController extends BaseController {
@GetMapping(value = "/{sequenceNbr}") @GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个") @ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<FailureDetailsDto> selectOne(@PathVariable Long sequenceNbr) { public ResponseModel<FailureDetailsDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(failureDetailsServiceImpl.queryBySeq(sequenceNbr));
return ResponseHelper.buildResponse(failureDetailsServiceImpl.queryForOne(sequenceNbr));
} }
/** /**
...@@ -126,13 +124,28 @@ public class FailureDetailsController extends BaseController { ...@@ -126,13 +124,28 @@ public class FailureDetailsController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page") @GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "分页查询", notes = "分页查询") @ApiOperation(httpMethod = "GET",value = "分页查询", notes = "分页查询")
public ResponseModel<IPage<FailureDetails>> queryForPage(@RequestParam(value = "current") int current, @RequestParam public ResponseModel<IPage<FailureDetailsDto>> queryForPage(@RequestParam(value = "current") int current, @RequestParam
(value = "size") int size, @RequestParam Integer type) { (value = "size") int size, @RequestParam Integer type) {
Page<FailureDetails> page = new Page<FailureDetails>(); Page<FailureDetails> page = new Page<FailureDetails>();
page.setCurrent(current); page.setCurrent(current);
page.setSize(size); page.setSize(size);
final AgencyUserModel userInfo = getUserInfo(); final AgencyUserModel userInfo = getUserInfo();
return ResponseHelper.buildResponse(failureDetailsServiceImpl.queryForFailureDetailsPage(page,userInfo,type)); IPage<FailureDetailsDto> failureDetailDTOsIPage = new Page<>();
IPage<FailureDetails> failureDetailsIPage = failureDetailsServiceImpl.queryForFailureDetailsPage(page, userInfo, type);
BeanUtils.copyProperties(failureDetailsIPage,FailureDetailsDto.class);
List<FailureDetails> records = failureDetailsIPage.getRecords();
List<FailureDetailsDto> failureDetailsDtoList = new ArrayList<>();
records.forEach(failureDetails -> {
FailureDetailsDto failureDetailsDto = new FailureDetailsDto();
BeanUtils.copyProperties(failureDetails,failureDetailsDto);
failureDetailsDto.setCurrentStatusName(
Constants.currentStatusNameMap.get(failureDetails.getCurrentStatus()));
failureDetailsDtoList.add(failureDetailsDto);
});
failureDetailDTOsIPage.setRecords(failureDetailsDtoList);
return ResponseHelper.buildResponse(failureDetailDTOsIPage);
} }
/** /**
......
...@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONArray; ...@@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.constants.BizConstant;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.EnumsUtils; import com.yeejoin.amos.boot.biz.common.utils.EnumsUtils;
import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceCraneDto; import com.yeejoin.amos.boot.module.common.api.dto.WaterResourceCraneDto;
...@@ -91,19 +92,11 @@ public class WaterResourceController extends BaseController { ...@@ -91,19 +92,11 @@ public class WaterResourceController extends BaseController {
model.setRealityImg(JSONArray.toJSONString(model.getRealityImgList())); model.setRealityImg(JSONArray.toJSONString(model.getRealityImgList()));
model.setOrientationImg(JSONArray.toJSONString(model.getOrientationImgList())); model.setOrientationImg(JSONArray.toJSONString(model.getOrientationImgList()));
if(model.getAddress()!=null){ if(model.getAddress()!=null){
String[] data= model.getAddress().split("@address@"); JSONObject address = WaterResourceServiceImpl.getLongLatFromAddress(model.getAddress());
model.setAddress(data[0]); model.setAddress(address.getString(BizConstant.ADDRESS));
if(data[1]!=null&&!"".equals(data[1])){ model.setLongitude(Double.valueOf(address.getString(BizConstant.LONGITUDE)));
JSONObject jSONObject = JSON.parseObject(data[1]); model.setLatitude(Double.valueOf(address.getString(BizConstant.LATITUDE)));
if(jSONObject.getString("longitude")!=null&&!"".equals(jSONObject.getString("longitude"))) {
model.setLongitude(Double.valueOf(jSONObject.getString("longitude")));
}
if(jSONObject.getString("longitude")!=null&&!"".equals(jSONObject.getString("longitude"))) {
model.setLatitude(Double.valueOf(jSONObject.getString("latitude")));
}
}
} }
if (!StringUtils.isEmpty(resourceType)) { if (!StringUtils.isEmpty(resourceType)) {
...@@ -174,21 +167,13 @@ public class WaterResourceController extends BaseController { ...@@ -174,21 +167,13 @@ public class WaterResourceController extends BaseController {
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新") @ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新")
public ResponseModel<WaterResourceDto> updateBySequenceNbrWaterResource(@RequestBody WaterResourceDto model, public ResponseModel<WaterResourceDto> updateBySequenceNbrWaterResource(@RequestBody WaterResourceDto model,
@PathVariable(value = "sequenceNbr") Long sequenceNbr) { @PathVariable(value = "sequenceNbr") Long sequenceNbr) {
if (StringUtils.isNotEmpty(model.getAddress())) {
JSONObject address = WaterResourceServiceImpl.getLongLatFromAddress(model.getAddress());
if(model.getAddress()!=null){ model.setAddress(address.getString(BizConstant.ADDRESS));
String[] data= model.getAddress().split("@address@"); model.setLongitude(Double.valueOf(address.getString(BizConstant.LONGITUDE)));
model.setAddress(data[0]); model.setLatitude(Double.valueOf(address.getString(BizConstant.LATITUDE)));
if(data[1]!=null&&!"".equals(data[1])){ }
JSONObject jSONObject = JSON.parseObject(data[1]);
if(jSONObject.getString("longitude")!=null&&!"".equals(jSONObject.getString("longitude"))) {
model.setLongitude(Double.valueOf(jSONObject.getString("longitude")));
}
if(jSONObject.getString("longitude")!=null&&!"".equals(jSONObject.getString("longitude"))) {
model.setLatitude(Double.valueOf(jSONObject.getString("latitude")));
}
}
}
// 更新基本信息 // 更新基本信息
model.setSequenceNbr(sequenceNbr); model.setSequenceNbr(sequenceNbr);
model.setRealityImg(JSONArray.toJSONString(model.getRealityImgList())); model.setRealityImg(JSONArray.toJSONString(model.getRealityImgList()));
......
...@@ -62,6 +62,7 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur ...@@ -62,6 +62,7 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
this.createWithModel(model); this.createWithModel(model);
return model; return model;
}*/ }*/
Integer auditResult = model.getAuditResult(); Integer auditResult = model.getAuditResult();
//根据审核的结果进行业务操作 //根据审核的结果进行业务操作
if (auditResult.equals(AuditResultEnum.AGREE.getCode())) { if (auditResult.equals(AuditResultEnum.AGREE.getCode())) {
...@@ -97,6 +98,10 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur ...@@ -97,6 +98,10 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
condition = AuditResultEnum.AGREE.getName(); condition = AuditResultEnum.AGREE.getName();
repairlog(faultId,processAuditor,processTime,processDepartment,condition); repairlog(faultId,processAuditor,processTime,processDepartment,condition);
} }
if (status.equals(AuditResultEnum.SEND_BACK)) {
condition = AuditResultEnum.SEND_BACK.getName();
repairlog(faultId,processAuditor,processTime,processDepartment,condition);
}
condition = AuditResultEnum.REFUSE.getName(); condition = AuditResultEnum.REFUSE.getName();
failureDetailsService.excuteTask(failureDetailsDto.getProcessId(), userInfo, condition); failureDetailsService.excuteTask(failureDetailsDto.getProcessId(), userInfo, condition);
......
package com.yeejoin.amos.boot.module.common.biz.service.impl; package com.yeejoin.amos.boot.module.common.biz.service.impl;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.*;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.module.common.api.dto.FailureStatusCountDto; import com.yeejoin.amos.boot.module.common.api.dto.FailureStatusCountDto;
import com.yeejoin.amos.boot.module.common.api.entity.SourceFile;
import com.yeejoin.amos.boot.module.common.biz.constats.Constants;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -24,12 +21,13 @@ import com.alibaba.fastjson.JSONArray; ...@@ -24,12 +21,13 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.workflow.feign.WorkflowFeignService; import com.yeejoin.amos.boot.biz.common.workflow.feign.WorkflowFeignService;
import com.yeejoin.amos.boot.module.common.api.dto.FailureAuditDto;
import com.yeejoin.amos.boot.module.common.api.dto.FailureDetailsDto; import com.yeejoin.amos.boot.module.common.api.dto.FailureDetailsDto;
import com.yeejoin.amos.boot.module.common.api.dto.FailureRepairlogDto; import com.yeejoin.amos.boot.module.common.api.dto.FailureRepairlogDto;
import com.yeejoin.amos.boot.module.common.api.dto.FailureStatusCountDto;
import com.yeejoin.amos.boot.module.common.api.entity.FailureDetails; import com.yeejoin.amos.boot.module.common.api.entity.FailureDetails;
import com.yeejoin.amos.boot.module.common.api.entity.FailureRepairlog; import com.yeejoin.amos.boot.module.common.api.entity.FailureRepairlog;
import com.yeejoin.amos.boot.module.common.api.enums.FailureStatuEnum; import com.yeejoin.amos.boot.module.common.api.enums.FailureStatuEnum;
...@@ -71,6 +69,7 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa ...@@ -71,6 +69,7 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
IFailureRepairlogService failureRepairlog; IFailureRepairlogService failureRepairlog;
public static String EMERGENCY_COMMAND = "应急指挥科"; public static String EMERGENCY_COMMAND = "应急指挥科";
public static String[] PROCESS_NAME = {"提交维修单","审核","维修","验收"};
private final Logger logger = LoggerFactory.getLogger(FailureDetailsServiceImpl.class); private final Logger logger = LoggerFactory.getLogger(FailureDetailsServiceImpl.class);
...@@ -130,6 +129,8 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa ...@@ -130,6 +129,8 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
QueryWrapper<FailureDetails> wrapper = new QueryWrapper<>(); QueryWrapper<FailureDetails> wrapper = new QueryWrapper<>();
wrapper.eq("submission_pid",submissionPid); wrapper.eq("submission_pid",submissionPid);
wrapper.lt("current_status",FailureStatuEnum.REFUSE.getCode()); wrapper.lt("current_status",FailureStatuEnum.REFUSE.getCode());
wrapper.lt("current_status",FailureStatuEnum.FINISH.getCode());
wrapper.lt("current_status",FailureStatuEnum.WAITING_AUDIT.getCode());
wrapper.orderByDesc("submission_time"); wrapper.orderByDesc("submission_time");
IPage<FailureDetails> failureDetailsPage = new Page<>(page.getCurrent(), page.getSize()); IPage<FailureDetails> failureDetailsPage = new Page<>(page.getCurrent(), page.getSize());
return baseMapper.selectPage(failureDetailsPage, wrapper); return baseMapper.selectPage(failureDetailsPage, wrapper);
...@@ -146,6 +147,19 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa ...@@ -146,6 +147,19 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
/** /**
* 根据状态查询 * 根据状态查询
*/ */
public FailureDetailsDto queryForOne(Long sequenceNbr){
FailureDetailsDto failureDetailsDto = this.queryBySeq(sequenceNbr);
failureDetailsDto.setCurrentStatusName(
Constants.currentStatusNameMap.get(failureDetailsDto.getCurrentStatus()));
List<SourceFile> sourceFiles = sourceFileServiceImpl.findBySourceId(sequenceNbr);
failureDetailsDto.setAttachment(sourceFiles);
return failureDetailsDto ;
}
/**
* 根据状态查询
*/
public List<FailureDetails> queryForFailureStatus(Long currentStatus) { public List<FailureDetails> queryForFailureStatus(Long currentStatus) {
String status = new String(); String status = new String();
List<FailureStatuEnum> list = new ArrayList<>(); List<FailureStatuEnum> list = new ArrayList<>();
...@@ -189,12 +203,11 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa ...@@ -189,12 +203,11 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
List<FailureStatusCountDto> list = new ArrayList<>(); List<FailureStatusCountDto> list = new ArrayList<>();
// String[] statusName = new String[]{"待审核", "待提交", "待维修", "待验收", "已拒绝", "已完结"}; // String[] statusName = new String[]{"待审核", "待提交", "待维修", "待验收", "已拒绝", "已完结"};
List<String> statusName = new ArrayList<>(); List<String> statusName = new ArrayList<>();
statusName.add("待审核"); Collections.addAll(statusName, FailureStatuEnum.WAITING_AUDIT.getName(),
statusName.add("待提交"); FailureStatuEnum.WAITING_SUBMIT.getName(),
statusName.add("待维修"); FailureStatuEnum.WAITING_MAINTAIN.getName(),
statusName.add("待验收"); FailureStatuEnum.WAITING_ACCEPTANCE.getName(),
statusName.add("已拒绝"); FailureStatuEnum.REFUSE.getName());
statusName.add("已完结");
for (int i = 0; i < failureDetailsDtos.size(); i++) { for (int i = 0; i < failureDetailsDtos.size(); i++) {
if (failureDetailsDtos.get(i).getCurrentStatus().equals(FailureStatuEnum.WAITING_AUDIT.getCode())){ if (failureDetailsDtos.get(i).getCurrentStatus().equals(FailureStatuEnum.WAITING_AUDIT.getCode())){
...@@ -290,9 +303,15 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa ...@@ -290,9 +303,15 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
return false; return false;
// return CommonResponseUtil.failure("添加失败"); // return CommonResponseUtil.failure("添加失败");
} }
if (ObjectUtils.isNotEmpty(model)) { try{
excuteTask(instance.getString("id"), userInfo, null); if (ObjectUtils.isNotEmpty(model)) {
excuteTask(instance.getString("id"), userInfo, null);
}
}catch (Exception e){
e.printStackTrace();
return false;
} }
return true; return true;
} }
...@@ -461,7 +480,7 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa ...@@ -461,7 +480,7 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
JSONObject object= workflowFeignService.queryHistoryTaskListByProcessId(processId); JSONObject object= workflowFeignService.queryHistoryTaskListByProcessId(processId);
JSONArray datArray=null; JSONArray datArray=null;
if(ObjectUtils.isNotEmpty(object)) { if(ObjectUtils.isNotEmpty(object)) {
datArray=object.getJSONArray("data"); datArray=object.getJSONArray("rows");
} }
List<Object> list = new ArrayList<Object>(); List<Object> list = new ArrayList<Object>();
if(datArray!=null) { if(datArray!=null) {
...@@ -500,19 +519,19 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa ...@@ -500,19 +519,19 @@ public class FailureDetailsServiceImpl extends BaseService<FailureDetailsDto, Fa
Map<String, Object> map = this.checkExcuteTaskAuthMap(sequenceNbr, userInfo); Map<String, Object> map = this.checkExcuteTaskAuthMap(sequenceNbr, userInfo);
if(Boolean.parseBoolean(map.get("checkFlag").toString())) { if(Boolean.parseBoolean(map.get("checkFlag").toString())) {
String buttonValueString = map.get("name").toString(); String buttonValueString = map.get("name").toString();
if(buttonValueString.contains("提交保修单")) { if(buttonValueString.contains(PROCESS_NAME[1])) { //提交维修单
flag=1; flag=1;
}else if(buttonValueString.contains("审核")) { }else if(buttonValueString.contains(PROCESS_NAME[2])) { //审核
flag=2; flag=2;
}else if(buttonValueString.contains("维修")) { }else if(buttonValueString.contains(PROCESS_NAME[3])) {//维修
flag=3; flag=3;
}else if(buttonValueString.contains("验收")) { }else if(buttonValueString.contains(PROCESS_NAME[4])) {//验收
flag=4; flag=4;
} }
} }
FailureDetails details = this.baseMapper.selectById(sequenceNbr); FailureDetails details = this.baseMapper.selectById(sequenceNbr);
JSONObject object = workflowFeignService.queryTasksByProcessInstanceId(details.getProcessId()); JSONObject object= workflowFeignService.queryHistoryTasksByProcessInstanceId(details.getProcessId());
JSONArray array = object.getJSONArray("data"); JSONArray array= object.getJSONArray("rows");
for (Object historyDetail : array) { for (Object historyDetail : array) {
JSONObject historyDetailJson= JSONObject.parseObject(JSONObject.toJSONString(historyDetail)); JSONObject historyDetailJson= JSONObject.parseObject(JSONObject.toJSONString(historyDetail));
if("rejected".equals(historyDetailJson.getString("activityId"))) { if("rejected".equals(historyDetailJson.getString("activityId"))) {
......
...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; ...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.constants.BizConstant;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary; import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl; import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
...@@ -26,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -26,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.utils.Bean; import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.annotation.Condition; import org.typroject.tyboot.core.rdbms.annotation.Condition;
import org.typroject.tyboot.core.rdbms.annotation.Operator; import org.typroject.tyboot.core.rdbms.annotation.Operator;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
...@@ -124,17 +126,10 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU ...@@ -124,17 +126,10 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU
public LinkageUnitDto saveModel(LinkageUnitDto linkageUnitDto) { public LinkageUnitDto saveModel(LinkageUnitDto linkageUnitDto) {
if (linkageUnitDto.getAddress() != null) { if (linkageUnitDto.getAddress() != null) {
String[] data = linkageUnitDto.getAddress().split("@address@"); JSONObject address = WaterResourceServiceImpl.getLongLatFromAddress(linkageUnitDto.getAddress());
linkageUnitDto.setAddress(data[0]); linkageUnitDto.setAddress(address.getString(BizConstant.ADDRESS));
if (data[1] != null && !"".equals(data[1])) { linkageUnitDto.setLongitude(Double.valueOf(address.getString(BizConstant.LONGITUDE)));
JSONObject jSONObject = JSON.parseObject(data[1]); linkageUnitDto.setLatitude(Double.valueOf(address.getString(BizConstant.LATITUDE)));
if (jSONObject.getString("longitude") != null && !"".equals(jSONObject.getString("longitude"))) {
linkageUnitDto.setLongitude(Double.valueOf(jSONObject.getString("longitude")));
}
if (jSONObject.getString("longitude") != null && !"".equals(jSONObject.getString("longitude"))) {
linkageUnitDto.setLatitude(Double.valueOf(jSONObject.getString("latitude")));
}
}
} }
// 1.保存行数据 // 1.保存行数据
String groupCode = this.getGroupCode(); String groupCode = this.getGroupCode();
...@@ -178,8 +173,10 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU ...@@ -178,8 +173,10 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU
.list(new LambdaQueryWrapper<DynamicFormColumn>().eq(DynamicFormColumn::getGroupCode, groupCode)); .list(new LambdaQueryWrapper<DynamicFormColumn>().eq(DynamicFormColumn::getGroupCode, groupCode));
Map<String, Object> fieldCodes = Bean.listToMap(columns, "fieldCode", "queryStrategy", DynamicFormColumn.class); Map<String, Object> fieldCodes = Bean.listToMap(columns, "fieldCode", "queryStrategy", DynamicFormColumn.class);
LinkageUnitDto linkageUnitDto = linkageUnitMapper.selectOne(false, fieldCodes, groupCode, sequenceNbr); LinkageUnitDto linkageUnitDto = linkageUnitMapper.selectOne(false, fieldCodes, groupCode, sequenceNbr);
List<SourceFile> sourceFiles = sourceFileServiceImpl.findBySourceId(linkageUnitDto.getSequenceNbr()); if (!ValidationUtil.isEmpty(linkageUnitDto)) {
linkageUnitDto.setImage(sourceFiles); List<SourceFile> sourceFiles = sourceFileServiceImpl.findBySourceId(linkageUnitDto.getSequenceNbr());
linkageUnitDto.setImage(sourceFiles);
}
return linkageUnitDto; return linkageUnitDto;
} }
...@@ -204,17 +201,10 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU ...@@ -204,17 +201,10 @@ public class LinkageUnitServiceImpl extends BaseService<LinkageUnitDto, LinkageU
public LinkageUnitDto updateById(LinkageUnitDto linkageUnitDto) { public LinkageUnitDto updateById(LinkageUnitDto linkageUnitDto) {
if (linkageUnitDto.getAddress() != null) { if (linkageUnitDto.getAddress() != null) {
String[] data = linkageUnitDto.getAddress().split("@address@"); JSONObject address = WaterResourceServiceImpl.getLongLatFromAddress(linkageUnitDto.getAddress());
linkageUnitDto.setAddress(data[0]); linkageUnitDto.setAddress(address.getString(BizConstant.ADDRESS));
if (data[1] != null && !"".equals(data[1])) { linkageUnitDto.setLongitude(Double.valueOf(address.getString(BizConstant.LONGITUDE)));
JSONObject jSONObject = JSON.parseObject(data[1]); linkageUnitDto.setLatitude(Double.valueOf(address.getString(BizConstant.LATITUDE)));
if (jSONObject.getString("longitude") != null && !"".equals(jSONObject.getString("longitude"))) {
linkageUnitDto.setLongitude(Double.valueOf(jSONObject.getString("longitude")));
}
if (jSONObject.getString("longitude") != null && !"".equals(jSONObject.getString("longitude"))) {
linkageUnitDto.setLatitude(Double.valueOf(jSONObject.getString("latitude")));
}
}
} }
// 修改基本信息 // 修改基本信息
updateWithModel(linkageUnitDto); updateWithModel(linkageUnitDto);
......
...@@ -6,7 +6,10 @@ import java.util.Optional; ...@@ -6,7 +6,10 @@ import java.util.Optional;
import javax.annotation.Resource; import javax.annotation.Resource;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.biz.common.constants.BizConstant;
import com.yeejoin.amos.boot.biz.common.utils.MenuFrom; import com.yeejoin.amos.boot.biz.common.utils.MenuFrom;
import com.yeejoin.amos.boot.module.common.api.dto.*; import com.yeejoin.amos.boot.module.common.api.dto.*;
import com.yeejoin.amos.boot.module.common.api.entity.*; import com.yeejoin.amos.boot.module.common.api.entity.*;
...@@ -235,4 +238,31 @@ public class WaterResourceServiceImpl extends BaseService<WaterResourceDto, Wate ...@@ -235,4 +238,31 @@ public class WaterResourceServiceImpl extends BaseService<WaterResourceDto, Wate
public List<WaterResourceTypeDto> getWaterResourceTypeList(Boolean isDelete) { public List<WaterResourceTypeDto> getWaterResourceTypeList(Boolean isDelete) {
return waterResourceMapper.getWaterResourceTypeList(isDelete); return waterResourceMapper.getWaterResourceTypeList(isDelete);
} }
public static JSONObject getLongLatFromAddress(String address) {
JSONObject result = new JSONObject();
result.put(BizConstant.ADDRESS, "");
result.put(BizConstant.LONGITUDE, "0");
result.put(BizConstant.LATITUDE, "0");
if (StringUtils.isNotEmpty(address)) {
String[] addressData = address.split("@address@");
if (addressData.length > 1) {
result.put(BizConstant.ADDRESS, addressData[0]);
JSONObject langLatObj = JSON.parseObject(addressData[1]);
if (StringUtils.isNotEmpty(langLatObj.getString(BizConstant.LONGITUDE))) {
result.put(BizConstant.LONGITUDE, langLatObj.getString(BizConstant.LONGITUDE));
} else {
result.put(BizConstant.LONGITUDE, "0");
}
if (StringUtils.isNotEmpty(langLatObj.getString(BizConstant.LATITUDE))) {
result.put(BizConstant.LATITUDE, langLatObj.getString(BizConstant.LATITUDE));
} else {
result.put(BizConstant.LATITUDE, "0");
}
} else {
result.put(BizConstant.ADDRESS, addressData[0]);
}
}
return result;
}
} }
...@@ -178,7 +178,6 @@ public class CommonController extends AbstractBaseController { ...@@ -178,7 +178,6 @@ public class CommonController extends AbstractBaseController {
return CommonResponseUtil.success(users); return CommonResponseUtil.success(users);
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "查询公司下的风险模型(厂区、区域、风险点)") @ApiOperation(value = "查询公司下的风险模型(厂区、区域、风险点)")
@GetMapping(value = "/riskSource/list/{orgCode}",produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @GetMapping(value = "/riskSource/list/{orgCode}",produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public CommonResponse getRiskSourceList(@PathVariable String orgCode){ public CommonResponse getRiskSourceList(@PathVariable String orgCode){
......
...@@ -10,11 +10,13 @@ import com.yeejoin.amos.maintenance.business.service.intfc.ICheckService; ...@@ -10,11 +10,13 @@ import com.yeejoin.amos.maintenance.business.service.intfc.ICheckService;
import com.yeejoin.amos.maintenance.business.util.*; import com.yeejoin.amos.maintenance.business.util.*;
import com.yeejoin.amos.maintenance.business.vo.CheckAnalysisVo; import com.yeejoin.amos.maintenance.business.vo.CheckAnalysisVo;
import com.yeejoin.amos.maintenance.business.vo.CheckInfoVo; import com.yeejoin.amos.maintenance.business.vo.CheckInfoVo;
import com.yeejoin.amos.maintenance.common.enums.OrderByEnum;
import com.yeejoin.amos.maintenance.core.async.AsyncTask; import com.yeejoin.amos.maintenance.core.async.AsyncTask;
import com.yeejoin.amos.maintenance.core.common.request.CommonPageable; import com.yeejoin.amos.maintenance.core.common.request.CommonPageable;
import com.yeejoin.amos.maintenance.core.common.request.CommonRequest; import com.yeejoin.amos.maintenance.core.common.request.CommonRequest;
import com.yeejoin.amos.maintenance.core.common.response.AppPointCheckRespone; import com.yeejoin.amos.maintenance.core.common.response.AppPointCheckRespone;
import com.yeejoin.amos.maintenance.core.common.response.GraphInitDataResponse; import com.yeejoin.amos.maintenance.core.common.response.GraphInitDataResponse;
import com.yeejoin.amos.maintenance.core.framework.PersonIdentify;
import com.yeejoin.amos.maintenance.core.util.StringUtil; import com.yeejoin.amos.maintenance.core.util.StringUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -29,6 +31,7 @@ import org.springframework.data.domain.Page; ...@@ -29,6 +31,7 @@ import org.springframework.data.domain.Page;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
...@@ -196,10 +199,7 @@ public class CheckController extends AbstractBaseController { ...@@ -196,10 +199,7 @@ public class CheckController extends AbstractBaseController {
public CommonResponse saveCheckRecord( public CommonResponse saveCheckRecord(
@ApiParam(value = "检查信息") @RequestBody() CheckRecordParam requestParam) { @ApiParam(value = "检查信息") @RequestBody() CheckRecordParam requestParam) {
try { try {
ReginParams reginParams = getSelectedOrgInfo(); CheckDto checkDto = checkService.saveCheckRecord(requestParam, getSelectedOrgInfo());
String orgCode = getOrgCode(reginParams);
requestParam.setOrgCode(orgCode);
CheckDto checkDto = checkService.saveCheckRecord(requestParam, reginParams);
return CommonResponseUtil.success(checkDto); return CommonResponseUtil.success(checkDto);
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
...@@ -480,4 +480,46 @@ public class CheckController extends AbstractBaseController { ...@@ -480,4 +480,46 @@ public class CheckController extends AbstractBaseController {
@ApiParam(value = "源ids,逗号分隔", required = true) @PathVariable String... relationId) { @ApiParam(value = "源ids,逗号分隔", required = true) @PathVariable String... relationId) {
return CommonResponseUtil.success(checkService.obtainLastCheckRecord(relationId)); return CommonResponseUtil.success(checkService.obtainLastCheckRecord(relationId));
} }
@PersonIdentify(isNeedIdentity = true)
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "维保记录分页查询", notes = "维保记录分页查询")
@GetMapping(value = "/page")
public CommonResponse getCheckRecord(
@ApiParam(value = "查询范围") @RequestParam(value = "userId", required = false) String userId,
@ApiParam(value = "时间范围") @RequestParam(value = "timeType", required = false) String timeType,
@ApiParam(value = "维保结果") @RequestParam(value = "result", required = false) String result,
@ApiParam(value = "排序规则") @RequestParam(value = "orderRule", required = false) String orderRule,
@ApiParam(value = "开始时间") @RequestParam(value = "beginTime", required = false) String beginTime,
@ApiParam(value = "结束时间") @RequestParam(value = "endTime", required = false) String endTime,
@ApiParam(value = "维保人员") @RequestParam(value = "personId", required = false) String person,
@ApiParam(value = "业主单位") @RequestParam(value = "teamId", required = false) String teamId,
@ApiParam(value = "当前页") @RequestParam(value = "pageNumber") int pageNumber,
@ApiParam(value = "页大小") @RequestParam(value = "pageSize") int pageSize) throws Exception{
HashMap<String, Object> params = new HashMap<>();
ReginParams reginParams = getSelectedOrgInfo();
String loginOrgCode = getOrgCode(reginParams);
Map<String, Object> authMap = Bean.BeantoMap(reginParams.getPersonIdentity());
params.putAll(authMap);
params.put("userId", userId);
params.put("timeType", timeType);
params.put("result", result);
params.put("orderRule", OrderByEnum.getEumByCode(orderRule).getOderBy());
params.put("beginTime", beginTime);
params.put("endTime", endTime);
params.put("person", person);
params.put("teamId", teamId);
params.put("orgCode", loginOrgCode);
CommonPageable pageable = new CommonPageable(pageNumber, pageSize);
return CommonResponseUtil.success(checkService.getCheckPage(params, pageable));
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "维保记录详情", notes = "维保记录详情")
@GetMapping(value = "/detail/{id}")
public CommonResponse getCheckDetail(
@ApiParam(value = "记录Id") @PathVariable(value = "id") String id) throws Exception{
return CommonResponseUtil.success(checkService.getCheckDetail(id));
}
} }
...@@ -46,7 +46,6 @@ public class PlanTaskController extends AbstractBaseController { ...@@ -46,7 +46,6 @@ public class PlanTaskController extends AbstractBaseController {
/** /**
* 计划执行查询 * 计划执行查询
*
* @param queryRequests * @param queryRequests
* @param commonPageable * @param commonPageable
* @return * @return
...@@ -186,6 +185,27 @@ public class PlanTaskController extends AbstractBaseController { ...@@ -186,6 +185,27 @@ public class PlanTaskController extends AbstractBaseController {
} }
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "维保设施分页列表-mobile", notes = "维保设施分页列表-mobile")
@RequestMapping(value = "/point/{planTaskId}/list", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
public CommonResponse qryPlanTaskById(
@ApiParam(value = "巡检计划任务ID", required = true) @PathVariable Long planTaskId,
@ApiParam(value = "建筑id", required = true) @RequestParam(value = "buildingId", required = false) String buildingId,
@ApiParam(value = "维保状态", required = true) @RequestParam(value = "isFinish", required = false) String isFinish,
@ApiParam(value = "消防系统id", required = true) @RequestParam(value = "systemId", required = false) String systemId,
@ApiParam(value = "设备编号", required = true) @RequestParam(value = "pointNo", required = false) String pointNo,
@ApiParam(value = "设备名称", required = true) @RequestParam(value = "pointName", required = false) String pointName
) {
Map<String, Object> param = new HashMap<>();
param.put("planTaskId", planTaskId);
param.put("buildingId", buildingId);
param.put("isFinish", isFinish);
param.put("systemId", systemId);
param.put("pointNo", pointNo);
param.put("pointName", pointName);
return CommonResponseUtil.success(planTaskService.getPlanTaskPoints(param));
}
/** /**
* 查询任务列表 * 查询任务列表
* *
...@@ -221,30 +241,8 @@ public class PlanTaskController extends AbstractBaseController { ...@@ -221,30 +241,8 @@ public class PlanTaskController extends AbstractBaseController {
return CommonResponseUtil.success(planTaskService.getPlanTasks(params, pageable)); return CommonResponseUtil.success(planTaskService.getPlanTasks(params, pageable));
} }
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "维保设施分页列表-mobile", notes = "维保设施分页列表-mobile")
@RequestMapping(value = "/point/{planTaskId}/list", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
public CommonResponse qryPlanTaskById(
@ApiParam(value = "巡检计划任务ID", required = true) @PathVariable Long planTaskId,
@ApiParam(value = "建筑id") @RequestParam(value = "buildingId", required = false) String buildingId,
@ApiParam(value = "维保状态") @RequestParam(value = "isFinish", required = false) String isFinish,
@ApiParam(value = "消防系统id") @RequestParam(value = "systemId", required = false) String systemId,
@ApiParam(value = "设备编号") @RequestParam(value = "pointNo", required = false) String pointNo,
@ApiParam(value = "设备名称") @RequestParam(value = "pointName", required = false) String pointName
) {
Map<String, Object> param = new HashMap<>();
param.put("planTaskId", planTaskId);
param.put("buildingId", buildingId);
param.put("isFinish", isFinish);
param.put("systemId", systemId);
param.put("pointNo", pointNo);
param.put("pointName", pointName);
return CommonResponseUtil.success(planTaskService.getPlanTaskPoints(param));
}
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(value = "查询维保设施,检查内容详情-mobile") @ApiOperation(value = "查询维保设施,检查内容详情")
@GetMapping(value = "/task-point-detail") @GetMapping(value = "/task-point-detail")
public CommonResponse planTaskPointDetail( public CommonResponse planTaskPointDetail(
@RequestParam(value = "routePointId") String routePointId, @RequestParam(value = "routePointId") String routePointId,
......
...@@ -277,4 +277,10 @@ public interface CheckMapper extends BaseMapper { ...@@ -277,4 +277,10 @@ public interface CheckMapper extends BaseMapper {
//Map<String, String> queryUserInfoByIds(@Param(value = "userIds") String userIds); //Map<String, String> queryUserInfoByIds(@Param(value = "userIds") String userIds);
long getCheckCount(HashMap<String, Object> params);
List<HashMap<String, Object>> getChecks(HashMap<String, Object> params);
Map<String, Object> getCheckDetail(@Param(value = "id") String id);
} }
package com.yeejoin.amos.maintenance.business.dao.mapper;
import com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerFlowRecordBo;
import com.yeejoin.amos.maintenance.business.vo.DangerTimeAxisVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
public interface LatentDangerFlowRecordMapper extends BaseMapper {
Integer save(LatentDangerFlowRecordBo latentDangerFlowRecordBo);
LatentDangerFlowRecordBo getByDangerIdAndActionFlag(@Param("dangerId") Long dangerId, @Param("actionFlag") String actionFlag);
LatentDangerFlowRecordBo getByDangerIdAndCreate(@Param("dangerId") Long dangerId);
LatentDangerFlowRecordBo getById(Long id);
List<LatentDangerFlowRecordBo> listPassByDangerId(Long dangerId);
Integer update(LatentDangerFlowRecordBo latentDangerFlowRecordBo);
LatentDangerFlowRecordBo getNewestRecordByDangerId(Long dangerId);
List<LatentDangerFlowRecordBo> listNewestRecordByDangerIds(List<Long> dangerIds);
List<LatentDangerFlowRecordBo> listByDangerId(Long dangerId);
void deleteByLatentDangerIds(List<Long> dangerIds);
List<DangerTimeAxisVo> listExecuteLog(Map<String, Object> map);
LatentDangerFlowRecordBo getByIdOderByDate(Long dangerId);
}
package com.yeejoin.amos.maintenance.business.dao.mapper;
import com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerBo;
import com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerNoticeBo;
import com.yeejoin.amos.maintenance.business.param.LatentDangerListParam;
import com.yeejoin.amos.maintenance.business.param.PageParam;
import com.yeejoin.amos.maintenance.core.common.response.DangerListResponse;
import org.apache.ibatis.annotations.Param;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public interface LatentDangerMapper extends BaseMapper {
Integer save(LatentDangerBo latentDangerBo);
List<LatentDangerBo> listByMap(Map<String, Object> map);
Long countByMap(Map<String, Object> map);
LatentDangerBo getById(Long id);
Integer update(LatentDangerBo latentDangerBo);
LatentDangerBo getByInstanceId(String instanceId);
List<LatentDangerBo> listOfOvertime();
Integer countNotFinishByFlowId(String flowId);
List<LatentDangerBo> listNotFinishByPointId(HashMap<String, Object> params);
Long countByFlowUserIds(String userId);
Long countNotFinishByTypeAndDeptId(@Param("type") Integer type, @Param("departmentId") String departmentId);
String getNotFinishIdsByTypeAndDeptId(@Param("type") Integer type, @Param("departmentId") String departmentId);
void deleteByIds(List<Long> dangerIds);
/**
* 查询治理期限即将到期的隐患
*
* @return
*/
List<LatentDangerNoticeBo> listNeedNoticeDanger();
/**
* 根据隐患id获取评审信息
*
* @param dangerId
* @return
*/
List<HashMap<String, Object>> getReViewInfo(Long dangerId);
List<DangerListResponse> dangerListByMap(PageParam pageParam);
Long countDangerListByMap(PageParam pageParam);
List<LatentDangerBo> getByBathBusinessKeys(@Param("businessKeys") List<String> businessKeys, @Param("latentDangerListParam") LatentDangerListParam latentDangerListParam);
int countByBathBusinessKeys(@Param("businessKeys") List<String> businessKeys, @Param("latentDangerListParam") LatentDangerListParam latentDangerListParam);
int countByStatus(@Param("businessKeys") List<String> businessKeys);
void updateCheckInputDangerState(@Param("id") Long id, @Param("code") int code);
LatentDangerBo getbyBusinessKey(@Param("businessKey") String businessKey);
}
package com.yeejoin.amos.maintenance.business.dao.mapper;
import com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerPatrolBo;
import java.util.List;
import java.util.Map;
public interface LatentDangerPatrolMapper extends BaseMapper {
Integer save(LatentDangerPatrolBo latentDangerPatrolBo);
LatentDangerPatrolBo getByDangerId(Long dangerId);
List<LatentDangerPatrolBo> listByMap(Map<String, Object> map);
List<LatentDangerPatrolBo> listByPointId(Long pointId);
List<LatentDangerPatrolBo> queryByPointClassifyIds(List<String> pointClassifyIds);
void deleteByLatentDangerIds(List<Long> latentDangerIds);
}
package com.yeejoin.amos.maintenance.business.dao.mapper;
import com.yeejoin.amos.maintenance.business.entity.mybatis.RiskJudgmentFillRecordBo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 风险研判填写记录表
*/
public interface RiskJudgmentFillRecordMapper {
Integer save(RiskJudgmentFillRecordBo riskJudgmentFillRecordBo);
Integer update(RiskJudgmentFillRecordBo riskJudgmentFillRecordBo);
Integer saveBatch(List<RiskJudgmentFillRecordBo> recordList);
void saveBatchWithStatus (List<RiskJudgmentFillRecordBo> recordList);
Integer updateBatch(List<RiskJudgmentFillRecordBo> recordList);
List<RiskJudgmentFillRecordBo> listFillRecordData(@Param("taskId") Long taskId, @Param("type") Integer itemType, @Param("level") Integer itemLevel, @Param("itemParentId") Long itemId);
Long countNotFinishRecordByTaskId(Long taskId);
void updateInputResultAndselectResult(Map<String, Object> map);
}
package com.yeejoin.amos.maintenance.business.dao.mapper;
import com.yeejoin.amos.maintenance.business.entity.mybatis.RiskJudgmentItemBo;
import java.util.List;
/**
* 风险研判项表
*/
public interface RiskJudgmentItemMapper {
Integer save(RiskJudgmentItemBo riskJudgmentItemBo);
Integer update(RiskJudgmentItemBo riskJudgmentItemBo);
List<RiskJudgmentItemBo> listAllItemByDepartmentCode(String departmentCode);
RiskJudgmentItemBo findByItemId(Long itemId);
}
package com.yeejoin.amos.maintenance.business.dao.mapper;
import com.yeejoin.amos.maintenance.business.entity.mybatis.RiskJudgmentTaskBo;
import org.apache.ibatis.annotations.Param;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 风险研判任务表
*/
public interface RiskJudgmentTaskMapper {
Integer save(RiskJudgmentTaskBo riskJudgmentTaskBo);
Integer update(RiskJudgmentTaskBo riskJudgmentTaskBo);
Integer updateBatch(List<RiskJudgmentTaskBo> list);
List<RiskJudgmentTaskBo> listByDateAndStatus(@Param("date") String date, @Param("status") Integer status);
List<RiskJudgmentTaskBo> listByMap(Map<String, Object> map);
Long countByMap(Map<String, Object> map);
RiskJudgmentTaskBo getById(Long id);
Long countByFlowUserIds(String userId);
RiskJudgmentTaskBo getByInstanceIdAndTaskDefinitionKey(@Param("instanceId") String instanceId, @Param("taskDefinitionKey") String taskDefinitionKey);
void updatetTaskStatusByInstanceId(HashMap<String, Object> map);
}
package com.yeejoin.amos.maintenance.business.entity.mybatis;
import lombok.Data;
@Data
public class LatentDangerFlowRecordBoExtend {
private String executeDepartmentName = "";
private String executeUserName;
private String executeTime;
private Integer dangerOvertimeState;
private Integer dangerState;
}
package com.yeejoin.amos.maintenance.business.entity.mybatis;
import lombok.Data;
@Data
public class LatentDangerPatrolBoExtend {
private String itemName;
private String itemBasis;
private String pointName;
private String pointLevel;
private String pointNo;
private String planName;
private String planType;
private String routeName;
private String itemRemark;
private String checkTime;
private String checkUserId;
private String classifyName;
private String pointDepartMentId;
private String classifyOriginalId;
private String pointOriginalId;
private String itemOriginalId;
private Integer executeRate;
private String checkDepartmentId;
}
package com.yeejoin.amos.maintenance.business.entity.mybatis;
import com.yeejoin.amos.maintenance.business.entity.mybatis.extend.RiskJudgmentFillRecordExtend;
import lombok.Data;
import java.util.Date;
/**
* 风险研判填写记录表
*/
@Data
public class RiskJudgmentFillRecordBo extends RiskJudgmentFillRecordExtend {
/**
* 主键自增
*/
private Long id;
/**
* 风险研判任务编号
*/
private Long taskId;
/**
* 风险研判项编号
*/
private Long itemId;
/**
* 选择结果
*/
private String selectResult;
/**
* 填写结果
*/
private String inputResult;
/**
* 备注结果
*/
private String remarkResult;
/**
* 拍照结果
*/
private String photoResult;
private Integer itemFinish;
private String orgCode;
/**
* 是否删除(0:否;1:是)
*/
private Integer deleted;
/**
* 记录创建时间
*/
private Date createDate;
/**
* 记录修改时间
*/
private Date updateDate;
/**
* 排序-0开始
*/
private Integer orderNum;
/**
* 危险作业/其他隐患风险id(逗号分隔)(一般风险、低风险不保存)
*/
private String extraIds;
}
package com.yeejoin.amos.maintenance.business.entity.mybatis;
import lombok.Data;
import java.util.Date;
/**
* 风险研判项表
*/
@Data
public class RiskJudgmentItemBo {
/**
* 主键自增
*/
private Long id;
/**
* 唯一标识
*/
private String itemFlag;
/**
* 风险研判项级别
*/
private Integer itemLevel;
/**
* 风险研判项类型(1:风险研判表;2:风险研判采集表)
*/
private Integer itemType;
/**
* 节点名称
*/
private String itemName;
/**
* 父节点编号
*/
private Long itemParentId;
private Integer itemCanCopy;
/**
* 选项名称
*/
private String selectName;
/**
* 选项是否需要(0:否;1:是)
*/
private Integer selectIsNeed;
/**
* 选项是否必选(0:否;1:是)
*/
private Integer selectIsRequired;
/**
* 选项json[{"id":1,"name":"否"}]
*/
private String selectJson;
/**
* 输入项名称
*/
private String inputName;
private Integer inputType;
private Integer inputCanEdit;
/**
* 输入是否需要(0:否;1:是)
*/
private Integer inputIsNeed;
/**
* 输入项是否必填(0:否;1:是)
*/
private Integer inputIsRequired;
/**
* 备注是否需要(0:否;1:是)
*/
private Integer remarkIsNeed;
/**
* 备注是否必填(0:否;1:是)
*/
private Integer remarkIsRequired;
/**
* 拍照是否需要(0:否;1:是)
*/
private Integer photoIsNeed;
/**
* 拍照是否必填(0:否;1:是)
*/
private Integer photoIsRequired;
private String orgCode;
/**
* 是否删除(0:否;1:是)
*/
private Integer deleted;
/**
* 记录创建时间
*/
private Date createDate;
/**
* 记录修改时间
*/
private Date updateDate;
/**
* 排序-0开始
*/
private Integer orderNum;
/**
* 部门code
*/
private String deptCode;
}
package com.yeejoin.amos.maintenance.business.entity.mybatis;
import lombok.Data;
import java.util.Date;
/**
* 风险研判任务表
*/
@Data
public class RiskJudgmentTaskBo {
/**
* 主键自增
*/
private Long id;
/**
* 风险研判名称
*/
private String taskName;
/**
* 部门编号
*/
private String departmentId;
/**
* 状态(0:未开始;1:进行中;2:已超时;3:已提交)
*/
private Integer taskStatus;
/**
* 风险研判日期(今天8:00-明天8:00)
*/
private Date taskDate;
/**
* 提交时间
*/
private Date taskCommitDate;
private String currentFlowTaskId;
private String taskDefinitionKey;
/**
* 可执行用户(多个逗号隔开)
*/
private String flowUserIds;
/**
* 业务唯一标识
*/
private String businessKey;
/**
* 工作流实例编号
*/
private String flowInstanceId;
private String orgCode;
/**
* 是否删除(0:否;1:是)
*/
private Integer deleted;
/**
* 记录创建时间
*/
private Date createDate;
/**
* 记录修改时间
*/
private Date updateDate;
}
package com.yeejoin.amos.maintenance.business.entity.mybatis.extend;
import lombok.Data;
import java.util.Date;
/**
* 隐患表
*/
@Data
public class LatentDangerBo {
/**
* 主键自增
*/
private Long id;
/**
* 业务唯一标识
*/
private String businessKey;
/**
* 公司组织机构
*/
private String orgCode;
/**
* 隐患名称
*/
private String dangerName;
private String instanceId;
private Long currentFlowRecordId;
/**
* 隐患等级(1:一般隐患;2:重大隐患;0:安全问题)
*/
private Integer dangerLevel;
/**
* 隐患地点
*/
private String dangerPosition;
/**
* 隐患类型(1:普通隐患;2:巡检隐患)
*/
private Integer dangerType;
/**
* 备注
*/
private String remark;
/**
* 整改类型(1:常规整改;2:安措计划;3:延期整改)
*/
private Integer reformType;
/**
* 限制时间
*/
private Date reformLimitDate;
private Integer overtimeState;
private String reformJson;
/**
* 隐患状态(1:待评审;2:待治理;3:安措计划中;4:逾期未治理;5:待验证;6:治理完毕;7:已撤销)
*/
private Integer dangerState;
/**
* 发现人
*/
private String discovererUserId;
private String discovererDepartmentId;
private String photoUrls;
/**
* 是否删除(0:否;1:是)
*/
private Integer deleted;
/**
* 记录创建时间
*/
private Date createDate;
/**
* 记录修改时间
*/
private Date updateDate;
/**
* 延期治理时间
*/
private Date delayLimitDate;
/**
* 问题描述
*/
private String problemDescription;
/**
* 原因分析
*/
private String reasonAnalysis;
/**
* 举一反三
*/
private String inferOtherThings;
/**
* 检查记录创建的隐患检查项对应id
*/
private Long checkInputId;
/**
* 建筑id
*/
private Long structureId;
/**
* 建筑名称
*/
private String structureName;
private String instanceKey;
}
package com.yeejoin.amos.maintenance.business.entity.mybatis.extend;
import com.yeejoin.amos.maintenance.business.entity.mybatis.LatentDangerFlowRecordBoExtend;
import lombok.Data;
import java.util.Date;
@Data
public class LatentDangerFlowRecordBo extends LatentDangerFlowRecordBoExtend {
private Long id;
private Long dangerId;
private String actionFlag;
private String flowTaskName;
private String flowTaskUserIds;
private String flowTaskId;
private Integer excuteState;
private String excuteUserId;
private String excuteResult;
private String remark;
private String flowJson;
/**
* 是否删除(0:否;1:是)
*/
private Integer deleted;
/**
* 记录创建时间
*/
private Date createDate;
/**
* 记录修改时间
*/
private Date updateDate;
private String excuteDepartmentId;
}
package com.yeejoin.amos.maintenance.business.entity.mybatis.extend;
import java.util.Date;
public class LatentDangerNoticeBo {
/**
* 隐患id
*/
private Long dangerId;
private String orgCode;
/**
* 隐患状态
*/
private Integer dangerState;
/**
* 隐患名称
*/
private String dangerName;
/**
* 治理期限
*/
private Date reformLimitDate;
/**
* 消息接收人(隐患治理人)
*/
private String receiverIds;
private String instanceId;
public String getInstanceId() {
return instanceId;
}
public void setInstanceId(String instanceId) {
this.instanceId = instanceId;
}
public Long getDangerId() {
return dangerId;
}
public void setDangerId(Long dangerId) {
this.dangerId = dangerId;
}
public String getOrgCode() {
return orgCode;
}
public void setOrgCode(String orgCode) {
this.orgCode = orgCode;
}
public Integer getDangerState() {
return dangerState;
}
public void setDangerState(Integer dangerState) {
this.dangerState = dangerState;
}
public String getDangerName() {
return dangerName;
}
public void setDangerName(String dangerName) {
this.dangerName = dangerName;
}
public Date getReformLimitDate() {
return reformLimitDate;
}
public void setReformLimitDate(Date reformLimitDate) {
this.reformLimitDate = reformLimitDate;
}
public String getReceiverIds() {
return receiverIds;
}
public void setReceiverIds(String receiverIds) {
this.receiverIds = receiverIds;
}
}
package com.yeejoin.amos.maintenance.business.entity.mybatis.extend;
import com.yeejoin.amos.maintenance.business.entity.mybatis.LatentDangerPatrolBoExtend;
import lombok.Data;
import java.util.Date;
/**
* 隐患巡检关系表
*/
@Data
public class LatentDangerPatrolBo extends LatentDangerPatrolBoExtend {
private Long id;
private Long latentDangerId;
private Long pointClassifyId;
private Long checkId;
private Long itemId;
private Long pointId;
private Long routeId;
private String riskFactorFlowId;
private Long routePointItemId;
/**
* 是否删除(0:否;1:是)
*/
private Integer deleted;
/**
* 检查类型-交大字段,只是前段显示用
*/
private String checkType;
/**
* 记录创建时间
*/
private Date createDate;
/**
* 记录修改时间
*/
private Date updateDate;
}
...@@ -10,8 +10,10 @@ import java.util.List; ...@@ -10,8 +10,10 @@ import java.util.List;
*/ */
@Data @Data
public class CheckInputParam { public class CheckInputParam {
private Long inputItemId; private long inputItemId;
private String inputValue; private String inputValue;
private String selectName;
private boolean isCheck;
private String remark; private String remark;
private Long routePointItemId; private Long routePointItemId;
private List<CheckShotDto> checkInputShot; private List<CheckShotDto> checkInputShot;
......
...@@ -13,27 +13,37 @@ import java.util.List; ...@@ -13,27 +13,37 @@ import java.util.List;
@ApiModel(value = "任务提交") @ApiModel(value = "任务提交")
public class CheckRecordParam { public class CheckRecordParam {
@ApiModelProperty(value = "任务id", required = true) @ApiModelProperty(value = "任务id",required = true)
private Long planTaskId; private Long planTaskId;
@ApiModelProperty(value = "点id", required = true) @ApiModelProperty(value = "点id",required = true)
private Long pointId; private Long pointId;
@ApiModelProperty(value = "任务id") @ApiModelProperty(value = "点名称")
private String orgCode; private String pointName;
@ApiModelProperty(value = "备注") @ApiModelProperty(value = "检查记录id")
private String remark; private Long checkId;
@ApiModelProperty(value = "维保日期,非必输") @ApiModelProperty(value = "执行人id")
private String checkTime; private String userId;
@ApiModelProperty(value = "路线id,非必输") @ApiModelProperty(value = "任务id")
private Long routeId; private String orgCode;
/** @ApiModelProperty(value = "备注")
* 检查项 private String remark;
*/
@ApiModelProperty(value = "检查项", required = true)
private List<CheckInputParam> checkItems; @ApiModelProperty(value = "路线id")
private Long routeId;
@ApiModelProperty(value = "检查时间")
private String checkTime;
/**
* 检查项
*/
@ApiModelProperty(value = "检查项",required = true)
private List<CheckInputParam> checkItems;
} }
package com.yeejoin.amos.maintenance.business.param;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
@Data
public class LatentDangerExcuteParam {
private Long flowRecordId;
private String taskId;
private Integer excuteType;
private String remark;
private String nextCanActionUser;
private String reformLimitDate;
private JSONObject flowJson;
private String delayLimitDate;
/**
* 隐患id
*/
private Long dangerId;
/**
* 延期治理是否需要公司审核
*/
private Integer needCompanyVerify;
/**
* 原因分析
*/
private String reasonAnalysis;
/**
* 举一反三
*/
private String inferOtherThings;
/**
*问题描述
*/
private String problemDescription;
private Integer dangerLevel;
}
package com.yeejoin.amos.maintenance.business.param;
import com.yeejoin.amos.maintenance.core.common.request.CommonPageable;
import lombok.Data;
/**
* @author keyong
* @title: LatentDangerListParam
* <pre>
* @description: TODO
* </pre>
* @date 2021/1/26 14:49
*/
@Data
public class LatentDangerListParam extends CommonPageable {
/**
* 0:全部;1:我的
*/
private Integer belongType;
/**
* 0:全部;1:待评审;2:待治理;3:安措计划中;4:待验证;5:治理完毕;6:已撤销;7:延期治理中;8:延期治理待车间部门审核;9:延期治理待公司审核
*/
private Integer dangerState;
/**
* 是否已处理(1:是;2:否)
*/
private Boolean isHandle;
/**
* -1:全部;1:一般隐患;2:重大隐患;0:安全问题
*/
private Integer dangerLevel;
private String dangerName;
private String userId;
}
package com.yeejoin.amos.maintenance.business.param;
import lombok.Data;
/**
* @author keyong
* @title: LatentDangerNormalParam
* <pre>
* @description: 隐患
* </pre>
* @date 2021/1/26 14:46
*/
@Data
public class LatentDangerNormalParam {
/**
* 隐患名称
*/
private String dangerName;
/**
* 隐患等级(1:一般隐患;2:重大隐患;3:安全问题)
*/
private Integer dangerLevel;
/**
* 隐患地点
*/
private String dangerPosition;
/**
* 备注
*/
private String remark;
/**
* 拍照路径集合(多个逗号分开)
*/
private String photoUrls;
/**
* 建筑id
*/
private Long structureId;
/**
* 建筑名称
*/
private String structureName;
}
package com.yeejoin.amos.maintenance.business.param;
import lombok.Data;
/**
* @author keyong
* @title: LatentDangerPatrolItemParam
* <pre>
* @description: TODO
* </pre>
* @date 2021/1/26 14:48
*/
@Data
public class LatentDangerPatrolItemParam {
private Long itemId;
/**
* 隐患等级(1:一般隐患;2:重大隐患;0:安全问题)
*/
private Integer dangerLevel;
private Long routePointItemId;
/**
* 问题描述
*/
private String remark;
/**
* p_check_input 主键id
*/
private Long checkInputId;
/**
* 建筑id
*/
private Long structureId;
/**
* 建筑名称
*/
private String structureName;
private String instanceKey;
/*
* 隐患名称
* */
private String name;
private String limitDate;
}
package com.yeejoin.amos.maintenance.business.param;
import lombok.Data;
import java.util.List;
/**
* @author keyong
* @title: LatentDangerPatrolParam
* <pre>
* @description: TODO
* </pre>
* @date 2021/1/26 14:47
*/
@Data
public class LatentDangerPatrolParam {
private List<LatentDangerPatrolItemParam> itemList;
private Long checkId;
}
...@@ -3,86 +3,145 @@ package com.yeejoin.amos.maintenance.business.service.impl; ...@@ -3,86 +3,145 @@ package com.yeejoin.amos.maintenance.business.service.impl;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.maintenance.business.dao.mapper.LatentDangerMapper;
import com.yeejoin.amos.maintenance.business.dao.mapper.PlanTaskMapper; import com.yeejoin.amos.maintenance.business.dao.mapper.PlanTaskMapper;
import com.yeejoin.amos.maintenance.business.dao.mapper.RiskJudgmentTaskMapper;
import com.yeejoin.amos.maintenance.business.dao.repository.AppVersionDao; import com.yeejoin.amos.maintenance.business.dao.repository.AppVersionDao;
import com.yeejoin.amos.maintenance.business.dao.repository.IMsgSubscribeDao; import com.yeejoin.amos.maintenance.business.dao.repository.IMsgSubscribeDao;
import com.yeejoin.amos.maintenance.business.param.UserMsgInitParam;
import com.yeejoin.amos.maintenance.business.service.intfc.IAppService; import com.yeejoin.amos.maintenance.business.service.intfc.IAppService;
import com.yeejoin.amos.maintenance.business.service.intfc.IMsgSubscribeService; import com.yeejoin.amos.maintenance.business.service.intfc.IMsgSubscribeService;
import com.yeejoin.amos.maintenance.common.enums.MsgSubscribeTypeEnum; import com.yeejoin.amos.maintenance.common.remote.RemoteWorkFlowService;
import com.yeejoin.amos.maintenance.common.enums.YesOrNoEnum; import com.yeejoin.amos.maintenance.common.enums.YesOrNoEnum;
import com.yeejoin.amos.maintenance.dao.entity.AppVersion;
import com.yeejoin.amos.maintenance.dao.entity.MsgSubscribe;
import org.assertj.core.util.Lists; import org.assertj.core.util.Lists;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.yeejoin.amos.maintenance.business.param.UserMsgInitParam;
import com.yeejoin.amos.maintenance.common.enums.MsgSubscribeTypeEnum;
import com.yeejoin.amos.maintenance.dao.entity.AppVersion;
import com.yeejoin.amos.maintenance.dao.entity.MsgSubscribe;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@Service("iAppService") @Service("iAppService")
public class AppServiceImpl implements IAppService { public class AppServiceImpl implements IAppService {
@Autowired @Autowired
private IMsgSubscribeDao msgSubscribeDao; private IMsgSubscribeDao msgSubscribeDao;
@Autowired @Autowired
private AppVersionDao appVersionDao; private AppVersionDao appVersionDao;
@Autowired @Autowired
private IMsgSubscribeService msgSubscribeService; private RemoteWorkFlowService remoteWorkFlowService;
@Autowired private IMsgSubscribeService msgSubscribeService;
@Autowired
private LatentDangerMapper latentDangerMapper;
@Autowired @Autowired
private PlanTaskMapper planTaskMapper; private PlanTaskMapper planTaskMapper;
@Autowired
private RiskJudgmentTaskMapper riskJudgmentTaskMapper;
@Override
public AppVersion queryAppLastVersion() {
// TODO Auto-generated method stub
return appVersionDao.findLastVersion();
}
@Override
public AppVersion queryAppLastVersion() {
// TODO Auto-generated method stub
return appVersionDao.findLastVersion();
}
/**
* 新增用户时初始化消息订阅(p_msg_subscribe)表
*
* @param userDTO
*/
@Override
public List<MsgSubscribe> saveUserMsgInit(UserMsgInitParam userInitParam) {
Long count = msgSubscribeDao.countByUserId(userInitParam.getUserId());
if (count > 0) { // 已存在用户订阅,直接返回
return msgSubscribeService.queryMsgSubscribes(userInitParam.getUserId());
}
List<MsgSubscribe> msgConfigs = new ArrayList<MsgSubscribe>();
for (MsgSubscribeTypeEnum type : MsgSubscribeTypeEnum.values()) {
MsgSubscribe msgSub = new MsgSubscribe();
msgSub.setOrgCode(userInitParam.getOrgCode());
msgSub.setUserId(userInitParam.getUserId());
if (type.equals(MsgSubscribeTypeEnum.PLANBEGIN)
|| type.equals(MsgSubscribeTypeEnum.PLANWARN)
|| type.equals(MsgSubscribeTypeEnum.PLANEND)) {
msgSub.setAttribute1("False");
msgSub.setAttribute2(10 + "");
} else if (type.equals(MsgSubscribeTypeEnum.CHECKTYPE)
|| type.equals(MsgSubscribeTypeEnum.CHECKEMAIL)) {
msgSub.setAttribute1("error");
}
msgSub.setMsgType(type.getName());
msgSubscribeDao.saveAndFlush(msgSub);
msgConfigs.add(msgSub);
} /**
return msgConfigs; * 新增用户时初始化消息订阅(p_msg_subscribe)表
} *
* @param userDTO
*/
@Override
public List<MsgSubscribe> saveUserMsgInit(UserMsgInitParam userInitParam) {
Long count = msgSubscribeDao.countByUserId(userInitParam.getUserId());
if (count > 0) { // 已存在用户订阅,直接返回
return msgSubscribeService.queryMsgSubscribes(userInitParam.getUserId());
}
List<MsgSubscribe> msgConfigs = new ArrayList<MsgSubscribe>();
for (MsgSubscribeTypeEnum type : MsgSubscribeTypeEnum.values()) {
MsgSubscribe msgSub = new MsgSubscribe();
msgSub.setOrgCode(userInitParam.getOrgCode());
msgSub.setUserId(userInitParam.getUserId());
if (type.equals(MsgSubscribeTypeEnum.PLANBEGIN)
|| type.equals(MsgSubscribeTypeEnum.PLANWARN)
|| type.equals(MsgSubscribeTypeEnum.PLANEND)) {
msgSub.setAttribute1("False");
msgSub.setAttribute2(10 + "");
} else if (type.equals(MsgSubscribeTypeEnum.CHECKTYPE)
|| type.equals(MsgSubscribeTypeEnum.CHECKEMAIL)) {
msgSub.setAttribute1("error");
}
/**else if (type.equals(MsgSubscribeTypeEnum.ROUTE) && !userInitParam.getInit()) {
// TODO 查询该用户下的路线
String roleTypeName = userInitParam.getRoleTypeName();
String orgCode = userInitParam.getOrgCode();
Specification<Route> spec = new Specification<Route>() {// 构建查询条件
@Override
public Predicate toPredicate(Root<Route> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
List<Predicate> predicate = new ArrayList<>();
if (!ObjectUtils.isEmpty(roleTypeName)) {
if (XJConstant.ROLE_NAME_ADMIN.equals(roleTypeName)
|| XJConstant.ROLE_NAME_SUPERADMIN.equals(roleTypeName)) {
predicate.add(cb.like(root.get("orgCode").as(String.class), orgCode + "%"));
} else if (XJConstant.ROLE_NAME_DEPTADMIN.equals(roleTypeName)) {
String orgCode_ = orgCode;
if (orgCode.indexOf("-") != -1) {
orgCode_ = orgCode.substring(0, orgCode.indexOf("-"));
}
predicate.add(cb.like(root.get("orgCode").as(String.class), orgCode_ + "%"));
} else {
predicate.add(cb.equal(root.get("orgCode").as(String.class), orgCode));
}
}
Predicate[] pre = new Predicate[predicate.size()];
return query.where(predicate.toArray(pre)).getRestriction();
}
};
List<Route> routeList = iRouteDao.findAll(spec);
List<Long> routeIdList = new ArrayList<>();
for (Route route : routeList) {
routeIdList.add(route.getId());
}
String routeIds = StringUtils.join(routeIdList.toArray(), ",");
msgSub.setAttribute1(routeIds);
}*/
msgSub.setMsgType(type.getName());
msgSubscribeDao.saveAndFlush(msgSub);
msgConfigs.add(msgSub);
}
return msgConfigs;
}
@Override @Override
public List<String> getHaveToDoList(String userId) { public List<String> getHaveToDoList(String userId) {
int taskCount = planTaskMapper.getCurrentPlanTaskCount(userId); int taskCount = planTaskMapper.getCurrentPlanTaskCount(userId);
List<String> havetoDoList = Lists.newArrayList(); List<String> havetoDoList = Lists.newArrayList();
if (taskCount > 0) { if (taskCount > 0) {
havetoDoList.add("planPatrol"); havetoDoList.add("planPatrol");
} }
JSONObject respBody = remoteWorkFlowService.pageTask(userId,Integer.parseInt(YesOrNoEnum.YES.getCode()));
JSONArray taskJsonList = respBody.getJSONArray("data");
List<JSONObject> taskList = JSONObject.parseArray(taskJsonList.toJSONString(), JSONObject.class);
List<String> bussinessKeys = new ArrayList<>();
for (JSONObject json : taskList) {
bussinessKeys.add(json.getString("businessKey"));
}
Integer dangerCount = latentDangerMapper.countByStatus(bussinessKeys);
if(dangerCount > 0){
havetoDoList.add("waitHandle");
}
return havetoDoList; return havetoDoList;
} }
} }
\ No newline at end of file
...@@ -35,6 +35,7 @@ import com.yeejoin.amos.maintenance.common.enums.CheckStatusEnum; ...@@ -35,6 +35,7 @@ import com.yeejoin.amos.maintenance.common.enums.CheckStatusEnum;
import com.yeejoin.amos.maintenance.common.enums.PlanTaskFinishStatusEnum; import com.yeejoin.amos.maintenance.common.enums.PlanTaskFinishStatusEnum;
import com.yeejoin.amos.maintenance.common.enums.PointLevelEnum; import com.yeejoin.amos.maintenance.common.enums.PointLevelEnum;
import com.yeejoin.amos.maintenance.common.enums.PointStatusEnum; import com.yeejoin.amos.maintenance.common.enums.PointStatusEnum;
import com.yeejoin.amos.maintenance.core.common.request.CommonPageable;
import com.yeejoin.amos.maintenance.core.common.response.*; import com.yeejoin.amos.maintenance.core.common.response.*;
import com.yeejoin.amos.maintenance.core.util.DateUtil; import com.yeejoin.amos.maintenance.core.util.DateUtil;
import com.yeejoin.amos.maintenance.core.util.StringUtil; import com.yeejoin.amos.maintenance.core.util.StringUtil;
...@@ -138,10 +139,11 @@ public class CheckServiceImpl implements ICheckService { ...@@ -138,10 +139,11 @@ public class CheckServiceImpl implements ICheckService {
check.setPlanTaskId(recordParam.getPlanTaskId()); check.setPlanTaskId(recordParam.getPlanTaskId());
check.setPlanId(planTask.getPlanId()); check.setPlanId(planTask.getPlanId());
check.setPlanName(detail.get("planName").toString()); check.setPlanName(detail.get("planName").toString());
check.setPointName(point.getName()); check.setPointName(detail.get("pointName").toString());
check.setPointId(point.getId()); recordParam.setPointName(detail.get("pointName").toString());
check.setPointId(recordParam.getPointId());
check.setRemark(recordParam.getRemark()); check.setRemark(recordParam.getRemark());
check.setCheckTime(new Date()); check.setCheckTime(DateUtil.getLongDate(recordParam.getCheckTime()));
check.setUploadTime(new Date()); check.setUploadTime(new Date());
check.setOrgCode(recordParam.getOrgCode()); check.setOrgCode(recordParam.getOrgCode());
check.setUserId(mtUserSeq); check.setUserId(mtUserSeq);
...@@ -157,12 +159,10 @@ public class CheckServiceImpl implements ICheckService { ...@@ -157,12 +159,10 @@ public class CheckServiceImpl implements ICheckService {
CheckInput checkInput = new CheckInput(); CheckInput checkInput = new CheckInput();
checkInput.setCreateDate(new Date()); checkInput.setCreateDate(new Date());
checkInput.setOrgCode(recordParam.getOrgCode()); checkInput.setOrgCode(recordParam.getOrgCode());
checkInput.setInputId(inputItem.getId()); checkInput.setInputId(Long.valueOf(item.getInputItemId() + ""));
checkInput.setInputName(inputItem.getName()); checkInput.setInputName(inputItem.getName());
checkInput.setInputValue(item.getInputValue());
checkInput.setOrderNo(inputItem.getOrderNo()); checkInput.setOrderNo(inputItem.getOrderNo());
checkInput.setRemark(item.getRemark()); checkInput.setRemark(item.getRemark());
checkInput.setRoutePointItemId(item.getRoutePointItemId());
//1.校验结果 //1.校验结果
if (XJConstant.INPUT_ITEM_SELECT.equals(inputItem.getItemType())) { if (XJConstant.INPUT_ITEM_SELECT.equals(inputItem.getItemType())) {
paraseSelect(checkInput, inputItem.getDataJson(), item, inputItem.getIsScore()); paraseSelect(checkInput, inputItem.getDataJson(), item, inputItem.getIsScore());
...@@ -177,13 +177,15 @@ public class CheckServiceImpl implements ICheckService { ...@@ -177,13 +177,15 @@ public class CheckServiceImpl implements ICheckService {
Map<String, Object> unCheckMap = Maps.newHashMap(); Map<String, Object> unCheckMap = Maps.newHashMap();
unCheckMap.put("itemId", item.getInputItemId()); unCheckMap.put("itemId", item.getInputItemId());
unCheckMap.put("routeId", check.getRouteId()); unCheckMap.put("routeId", check.getRouteId());
unCheckMap.put("pointId", point.getId()); unCheckMap.put("pointId", recordParam.getPointId());
unCheckMap.put("name", inputItem.getName()); unCheckMap.put("name", inputItem.getName());
unCheckMap.put("inputValue", item.getInputValue()); unCheckMap.put("inputValue", item.getInputValue());
unqualifiedCheckItemList.add(unCheckMap); unqualifiedCheckItemList.add(unCheckMap);
} else { } else {
checkInput.setIsOk(CheckStatusEnum.QUALIFIED.getCode()); checkInput.setIsOk(CheckStatusEnum.QUALIFIED.getCode());
} }
checkInput.setRoutePointItemId(item.getRoutePointItemId());
checkInput.setInputValue(item.getInputValue());
score += checkInput.getScore(); score += checkInput.getScore();
for (CheckShotDto shotDto : item.getCheckInputShot()) { for (CheckShotDto shotDto : item.getCheckInputShot()) {
CheckShot img = new CheckShot(); CheckShot img = new CheckShot();
...@@ -217,7 +219,7 @@ public class CheckServiceImpl implements ICheckService { ...@@ -217,7 +219,7 @@ public class CheckServiceImpl implements ICheckService {
Check finalCheck = check; Check finalCheck = check;
//4.检查项入库 //4.检查项入库
checkItemList.forEach(checkInput -> checkInput.setCheckId(finalCheck.getId())); checkItemList.forEach(checkInput -> checkInput.setCheckId(finalCheck.getId()));
if (!checkItemList.isEmpty()) { if(!checkItemList.isEmpty()){
checkInputDao.saveAll(checkItemList); checkInputDao.saveAll(checkItemList);
} }
List<CheckShot> allShot = new ArrayList<>(); List<CheckShot> allShot = new ArrayList<>();
...@@ -244,7 +246,7 @@ public class CheckServiceImpl implements ICheckService { ...@@ -244,7 +246,7 @@ public class CheckServiceImpl implements ICheckService {
private void checkCanFinishTask(String mtUserSeq, PlanTask planTask, Long pointId) throws Exception { private void checkCanFinishTask(String mtUserSeq, PlanTask planTask, Long pointId) throws Exception {
int status; int status;
int count = checkService.checkHasRecord(planTask.getId(), pointId); int count = checkService.checkHasRecord(planTask.getId(), pointId);
if (count > 0) { if(count > 0){
throw new RuntimeException("任务已执行,不能重复执行"); throw new RuntimeException("任务已执行,不能重复执行");
} }
if (!ToolUtils.transBeanList(planTask.getUserId()).contains(mtUserSeq)) { if (!ToolUtils.transBeanList(planTask.getUserId()).contains(mtUserSeq)) {
...@@ -1029,6 +1031,31 @@ public class CheckServiceImpl implements ICheckService { ...@@ -1029,6 +1031,31 @@ public class CheckServiceImpl implements ICheckService {
} }
@Override @Override
public Page<HashMap<String, Object>> getCheckPage(HashMap<String, Object> params, CommonPageable page) {
List<HashMap<String, Object>> content = Lists.newArrayList();
long total = checkMapper.getCheckCount(params);
if (total == 0) {
return new PageImpl<>(content, page, total);
}
params.put("offset", page.getOffset());
params.put("pageSize", page.getPageSize());
content = checkMapper.getChecks(params);
if (0 < content.size()) {
for(HashMap<String, Object> map : content) {
if (map.containsKey("isOk")) {
map.put("status", CheckStatusEnum.getEnum(String.valueOf(map.get("isOk"))).getName());
}
}
}
return new PageImpl<>(content, page, total);
}
@Override
public Map<String, Object> getCheckDetail(String id) {
return checkMapper.getCheckDetail(id);
}
@Override
public List<HashMap<String, Object>> getEquipInputByCheckId(CheckDetailInputPageParam param) { public List<HashMap<String, Object>> getEquipInputByCheckId(CheckDetailInputPageParam param) {
// 如果不传巡检ID,则获取最新一条巡检点对应的巡检记录ID // 如果不传巡检ID,则获取最新一条巡检点对应的巡检记录ID
if (param.getCheckID() == -1) { if (param.getCheckID() == -1) {
......
...@@ -24,7 +24,6 @@ import com.yeejoin.amos.maintenance.business.util.Toke; ...@@ -24,7 +24,6 @@ import com.yeejoin.amos.maintenance.business.util.Toke;
import com.yeejoin.amos.maintenance.business.vo.CalDateVo; import com.yeejoin.amos.maintenance.business.vo.CalDateVo;
import com.yeejoin.amos.maintenance.business.vo.LeavePlanTaskVo; import com.yeejoin.amos.maintenance.business.vo.LeavePlanTaskVo;
import com.yeejoin.amos.maintenance.business.vo.PlanTaskVo; import com.yeejoin.amos.maintenance.business.vo.PlanTaskVo;
import com.yeejoin.amos.maintenance.common.enums.PlanTaskFinishStatusEnum;
import com.yeejoin.amos.maintenance.core.common.request.CommonPageable; import com.yeejoin.amos.maintenance.core.common.request.CommonPageable;
import com.yeejoin.amos.maintenance.core.common.response.AppCheckInputRespone; import com.yeejoin.amos.maintenance.core.common.response.AppCheckInputRespone;
import com.yeejoin.amos.maintenance.core.common.response.AppPointCheckRespone; import com.yeejoin.amos.maintenance.core.common.response.AppPointCheckRespone;
...@@ -570,10 +569,6 @@ public class PlanTaskServiceImpl implements IPlanTaskService { ...@@ -570,10 +569,6 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
params.put("offset", pageParam.getOffset()); params.put("offset", pageParam.getOffset());
params.put("pageSize", pageParam.getPageSize()); params.put("pageSize", pageParam.getPageSize());
content = planTaskMapper.getPlanTasks(params); content = planTaskMapper.getPlanTasks(params);
content.forEach(r->{
String finishStatusDesc = PlanTaskFinishStatusEnum.getName(Integer.parseInt(r.get("finishStatus").toString()));
r.put("finishStatusDesc",finishStatusDesc);
});
return new PageImpl<>(content, pageParam, total); return new PageImpl<>(content, pageParam, total);
} }
......
package com.yeejoin.amos.maintenance.business.service.intfc; package com.yeejoin.amos.maintenance.business.service.intfc;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import org.springframework.data.domain.Page;
import org.springframework.transaction.annotation.Transactional;
import com.yeejoin.amos.boot.biz.common.bo.DepartmentBo;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.maintenance.business.dto.CheckDto; import com.yeejoin.amos.maintenance.business.dto.CheckDto;
import com.yeejoin.amos.maintenance.business.dto.CheckRecordDto; import com.yeejoin.amos.maintenance.business.dto.CheckRecordDto;
import com.yeejoin.amos.maintenance.business.entity.mybatis.CheckDetailBo; import com.yeejoin.amos.maintenance.business.entity.mybatis.*;
import com.yeejoin.amos.maintenance.business.entity.mybatis.CheckInfoBo; import com.yeejoin.amos.maintenance.business.param.*;
import com.yeejoin.amos.maintenance.business.entity.mybatis.CheckInputBo;
import com.yeejoin.amos.maintenance.business.entity.mybatis.CheckTraListBo;
import com.yeejoin.amos.maintenance.business.entity.mybatis.CheckUserBo;
import com.yeejoin.amos.maintenance.business.entity.mybatis.PlanRoutePointBo;
import com.yeejoin.amos.maintenance.business.param.CheckInfoListPageParam;
import com.yeejoin.amos.maintenance.business.param.CheckInfoPageParam;
import com.yeejoin.amos.maintenance.business.param.CheckPtListPageParam;
import com.yeejoin.amos.maintenance.business.param.CheckRecordParam;
import com.yeejoin.amos.maintenance.business.param.CheckStatisticalParam;
import com.yeejoin.amos.maintenance.business.util.CheckDetailInputPageParam; import com.yeejoin.amos.maintenance.business.util.CheckDetailInputPageParam;
import com.yeejoin.amos.maintenance.business.util.Toke;
import com.yeejoin.amos.maintenance.business.vo.CheckAnalysisVo; import com.yeejoin.amos.maintenance.business.vo.CheckAnalysisVo;
import com.yeejoin.amos.maintenance.business.vo.CheckInfoVo; import com.yeejoin.amos.maintenance.business.vo.CheckInfoVo;
import com.yeejoin.amos.maintenance.core.common.request.CommonPageable;
import com.yeejoin.amos.maintenance.core.common.response.AppPointCheckRespone; import com.yeejoin.amos.maintenance.core.common.response.AppPointCheckRespone;
import com.yeejoin.amos.maintenance.core.common.response.CommonPage; import com.yeejoin.amos.maintenance.core.common.response.CommonPage;
import com.yeejoin.amos.maintenance.core.common.response.GraphInitDataResponse; import com.yeejoin.amos.maintenance.core.common.response.GraphInitDataResponse;
import com.yeejoin.amos.maintenance.core.common.response.QueryCriteriaRespone; import com.yeejoin.amos.maintenance.core.common.response.QueryCriteriaRespone;
import com.yeejoin.amos.maintenance.dao.entity.CheckShot;
import com.yeejoin.amos.maintenance.exception.YeeException; import com.yeejoin.amos.maintenance.exception.YeeException;
import org.springframework.data.domain.Page;
import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public interface ICheckService { public interface ICheckService {
/** /**
...@@ -269,6 +256,9 @@ public interface ICheckService { ...@@ -269,6 +256,9 @@ public interface ICheckService {
*/ */
Map<String,CheckRecordDto> obtainLastCheckRecord(String[] relationId); Map<String,CheckRecordDto> obtainLastCheckRecord(String[] relationId);
Page<HashMap<String, Object>> getCheckPage(HashMap<String, Object> map, CommonPageable pageable);
Map<String, Object> getCheckDetail(String id);
/** /**
* 校验是否已经填写过 * 校验是否已经填写过
* @param planTaskId * @param planTaskId
......
package com.yeejoin.amos.maintenance.business.service.intfc;
import java.util.List;
import org.springframework.data.domain.Page;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.biz.common.bo.RoleBo;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.maintenance.business.dto.DangerExecuteSubmitDto;
import com.yeejoin.amos.maintenance.business.param.LatentDangerExcuteParam;
import com.yeejoin.amos.maintenance.business.param.LatentDangerListParam;
import com.yeejoin.amos.maintenance.business.param.LatentDangerNormalParam;
import com.yeejoin.amos.maintenance.business.param.LatentDangerPatrolParam;
import com.yeejoin.amos.maintenance.business.param.PageParam;
import com.yeejoin.amos.maintenance.business.util.CommonResponse;
import com.yeejoin.amos.maintenance.business.vo.DangerTimeAxisVo;
import com.yeejoin.amos.maintenance.core.common.response.DangerListResponse;
/**
* @author keyong
* @title: ILatentDangerService
* <pre>
* @description: TODO
* </pre>
* @date 2021/1/26 14:44
*/
public interface ILatentDangerService {
CommonResponse saveNormal(LatentDangerNormalParam latentDangerParam, String userId, String userRealName,
String departmentId, String departmentName, String companyId, String orgCode, RoleBo role);
CommonResponse savePatrol(LatentDangerPatrolParam latentDangerPatrolParam, String userId, String userRealName,
String departmentId, String departmentName, String companyId, String orgCode, RoleBo role);
CommonResponse list(String toke, String product, String appKey, LatentDangerListParam latentDangerListParam, AgencyUserModel user, String loginOrgCode, String deptId);
DangerExecuteSubmitDto execute(LatentDangerExcuteParam latentDangerExcuteParam, String userId,
String userRealName, String departmentId, String departmentName, RoleBo role);
CommonResponse detail(String id, String userId,boolean isFinish);
CommonResponse getByInstanceId(String instanceId);
DangerExecuteSubmitDto excuteCallBack(String instanceId, Integer actionType, String remark, String token, String userId,
String userRealName, String departmentId, String departmentName);
void updateDangerStateOfOvertime();
CommonResponse listFlowRecord(String token, String product, String appKey, Long id);
void sendLatentDangerExcuteResult(DangerExecuteSubmitDto executeSubmitDto);
void freshRiskJudgmentLangerCount(LatentDangerExcuteParam latentDangerExcuteParam);
/**
* 获取隐患等级字典值
*
* @return
*/
Object getDangerLevel(String token, String product, String appKey, String dictCode);
/**
* 根据等级字符串获取等级字典对象
*
* @param dangerLevelStr 等级("1","2","0")
* @return
*/
JSONObject getDangerLevelJsonObject(String dangerLevelStr, String token, String product, String appKey, String dictCode);
/**
* 根据隐患id获取评审信息
*
* @param dangerId
* @return
*/
JSONObject getReviewInfo(Long dangerId);
Page<DangerListResponse> listDanger(PageParam pageParam);
List<DangerListResponse> export(PageParam pageParam);
List<DangerTimeAxisVo> queryExecuteLog(Integer dateTime);
}
...@@ -15,8 +15,11 @@ public class CheckParamUtil { ...@@ -15,8 +15,11 @@ public class CheckParamUtil {
String operator = daoCriteria.getOperator(); String operator = daoCriteria.getOperator();
String name = daoCriteria.getPropertyName(); String name = daoCriteria.getPropertyName();
if("checkTime".equals(name)){ if("checkTime".equals(name)){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");
param.setCheckTime(daoCriterias.get(i).getValue().toString()); param.setCheckTime(daoCriterias.get(i).getValue().toString());
} else if("routeId".equals(name)){ }else if("userId".equals(name)){
param.setUserId(daoCriterias.get(i).getValue().toString());
}else if("routeId".equals(name)){
param.setRouteId(Long.valueOf(daoCriterias.get(i).getValue().toString())); param.setRouteId(Long.valueOf(daoCriterias.get(i).getValue().toString()));
}else if("orgCode".equals(name) && operator.equals(QueryOperatorEnum.EQUAL.getName())){ }else if("orgCode".equals(name) && operator.equals(QueryOperatorEnum.EQUAL.getName())){
param.setOrgCode(daoCriterias.get(i).getValue().toString()+"%"); param.setOrgCode(daoCriterias.get(i).getValue().toString()+"%");
......
package com.yeejoin.amos.maintenance.business.vo;
import lombok.Data;
import java.util.List;
@Data
public class LatentDangerDetailRiskVo {
private String pointName;
private String pointNo;
private String belongDepartmentName;
private String pointLevel;
private List<String> basis;
/**
* 计划名称
*/
private String planName;
/**
* 检查时间
*/
private String checkTime;
/**
* 检查人
*/
private String checkUser;
}
package com.yeejoin.amos.maintenance.business.vo;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerFlowRecordBo;
import lombok.Data;
import java.util.List;
@Data
public class LatentDangerDetailVo {
private Long dangerId;
private String dangerName;
private Integer level;
private String levelDesc;
private String remark;
private String position;
private String reformTypeDesc;
private String reformLimitDate;
private JSONObject reformJson;
private Long currentFlowRecordId;
private Integer dangerState;
private Integer dangerType;
private String dangerStateDesc;
private Boolean currentUserCanExcute;
private List<String> photoUrls;
private LatentDangerDetailRiskVo riskInfo;
private JSONObject reviewInfo;
private JSONObject reformInfo;
private JSONObject recheckInfo;
private List<LatentDangerFlowRecordBo> records;
private String delayLimitDate;
private String problemDescription;
private String reasonAnalysis;
private String inferOtherThings;
private String taskId;
}
package com.yeejoin.amos.maintenance.business.vo;
import lombok.Data;
@Data
public class LatentDangerListVo {
private Long dangerId;
private String dangerName;
private String discovererUserName;
private Integer level;
private String levelDesc;
private String limitDesc;
private Integer state;
private String stateDesc;
private Integer overtimeState;
private String taskId;
}
package com.yeejoin.amos.maintenance.common.remote;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Maps;
import com.yeejoin.amos.maintenance.business.util.HttpUtil;
import com.yeejoin.amos.maintenance.business.constants.XJConstant;
import com.yeejoin.amos.maintenance.common.enums.RiskFactorWorkFlowActionTypeEnum;
import com.yeejoin.amos.maintenance.common.enums.WorkFlowRiskFactorUriEnum;
import com.yeejoin.amos.maintenance.core.common.request.CheckResultPushSpcRequest;
import com.yeejoin.amos.maintenance.core.common.request.LatentDangerResultPushSpcRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import java.util.Map;
@Service("remoteSpcService")
public class RemoteSpcService {
private final Logger logger = LoggerFactory.getLogger(RemoteSpcService.class);
@Value("${params.spc.address}")
private String address;
private static final String success = "SUCCESS";
private String buildUrl(String address, WorkFlowRiskFactorUriEnum workFlowRiskFactorUriEnum, Map<String, String> map) {
String uri = workFlowRiskFactorUriEnum.getUri();
String params = workFlowRiskFactorUriEnum.getParams();
if (!StringUtils.isEmpty(params) && map != null) {
String[] paramsArr = params.split(",");
for (String param : paramsArr) {
uri = uri.replace("{" + param + "}", map.get(param));
}
}
return address + uri;
}
private JSONObject handleResult(String resultStr) {
if (resultStr == null) {
return null;
}
JSONObject json = JSON.parseObject(resultStr);
if (success.equals(json.getString("result"))) {
return json;
}
return null;
}
public JSONObject wakeUpOrRestartRiskFactorFlow(String instanceId, WorkFlowRiskFactorUriEnum factorUriEnum, String token, RiskFactorWorkFlowActionTypeEnum actionType) {
String url = buildUrl(address, factorUriEnum, null);
JSONObject body = new JSONObject();
body.put("instanceId", instanceId);
body.put("actionType", actionType.getActionType());
Map<String, String> headerMap = Maps.newHashMap();
headerMap.put(XJConstant.TOKEN_KEY, token);
String resultStr = HttpUtil.sendHttpPostJsonWithHeader(url, body.toJSONString(), headerMap);
return handleResult(resultStr);
}
public JSONObject pushSpcCheckResult(CheckResultPushSpcRequest checkResultPushSpcRequest) {
String url = buildUrl(address, WorkFlowRiskFactorUriEnum.检查结果推送, null);
String stringJson = JSONObject.toJSONString(checkResultPushSpcRequest);
String resultStr = HttpUtil.sendHttpPostJson(url, stringJson);
return handleResult(resultStr);
}
public JSONObject pushLatentDangerExcuteResult(LatentDangerResultPushSpcRequest latentDangerResultPushSpcRequest) {
String url = buildUrl(address, WorkFlowRiskFactorUriEnum.隐患治理结果推送, null);
String stringJson = JSONObject.toJSONString(latentDangerResultPushSpcRequest);
String resultStr = HttpUtil.sendHttpPostJson(url, stringJson);
logger.info("\r\n请求路径=======================>" + url + "\r\n请求参数=======================>" + stringJson + "\r\n返回参数=======================>" + resultStr);
return handleResult(resultStr);
}
public JSONObject queryPagetree() {
String url = buildUrl(address, WorkFlowRiskFactorUriEnum.等级查询, null);
String resultStr = HttpUtil.sendHttpPostJson(url, null);
return handleResult(resultStr);
}
}
package com.yeejoin.amos.maintenance.schedule;
import com.yeejoin.amos.maintenance.business.service.intfc.ILatentDangerService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
/**
* 隐患定时任务
*/
@Configuration("latentDanerScheduled")
@EnableScheduling
public class LatentDanerScheduled {
@Autowired
private ILatentDangerService iLatentDangerService;
/**
* 每1分钟执行一次:查询逾期的隐患,修改状态
*/
// @Scheduled(cron = "0 0/1 * * * ?")
public void updateDangerStateOfOvertime() {
iLatentDangerService.updateDangerStateOfOvertime();
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.tzs.biz.controller; package com.yeejoin.amos.boot.module.tzs.biz.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledFormDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.VoiceRecordFileDto; import com.yeejoin.amos.boot.module.tzs.api.dto.VoiceRecordFileDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.VoiceRecordFile; import com.yeejoin.amos.boot.module.tzs.api.entity.VoiceRecordFile;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.AlertCalledServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.VoiceRecordFileServiceImpl; import com.yeejoin.amos.boot.module.tzs.biz.service.impl.VoiceRecordFileServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper; import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.Calendar; import javax.servlet.http.HttpServletRequest;
import java.util.List; import java.util.List;
import java.util.UUID;
/** /**
* 通话记录附件 * 通话记录附件
...@@ -41,9 +40,6 @@ public class VoiceRecordFileController extends BaseController { ...@@ -41,9 +40,6 @@ public class VoiceRecordFileController extends BaseController {
@Autowired @Autowired
VoiceRecordFileServiceImpl voiceRecordFileServiceImpl; VoiceRecordFileServiceImpl voiceRecordFileServiceImpl;
@Autowired
AlertCalledServiceImpl iAlertCalledService;
/** /**
* 新增通话记录附件 * 新增通话记录附件
* *
...@@ -53,26 +49,8 @@ public class VoiceRecordFileController extends BaseController { ...@@ -53,26 +49,8 @@ public class VoiceRecordFileController extends BaseController {
@PostMapping(value = "/save") @PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增通话记录附件", notes = "新增通话记录附件") @ApiOperation(httpMethod = "POST", value = "新增通话记录附件", notes = "新增通话记录附件")
public ResponseModel<VoiceRecordFileDto> save(@RequestBody VoiceRecordFileDto model) { public ResponseModel<VoiceRecordFileDto> save(@RequestBody VoiceRecordFileDto model) {
if (ValidationUtil.isEmpty(model.getAlertId()) model = voiceRecordFileServiceImpl.createWithModel(model);
|| ValidationUtil.isEmpty(model.getTel())){ return ResponseHelper.buildResponse(model);
throw new BadRequest("参数校验失败.");
}
Calendar startTime = Calendar.getInstance();
Calendar endTime = Calendar.getInstance();
endTime.add(Calendar.MINUTE, 6);
model.setTelStartTime(startTime.getTime());
model.setTelEndTime(endTime.getTime());
model.setFilePath(UUID.randomUUID().toString().replace("-",""));
model.setFileType("");
model.setSourceId(-1l);
AlertCalledFormDto alertDto = iAlertCalledService.selectAlertCalledByIdNoCache(model.getAlertId());
if(alertDto == null || alertDto.getAlertCalledDto() == null) {
throw new BadRequest("未找到相关警情");
}
model.setAlertStage(alertDto.getAlertCalledDto().getAlertStage());
model.setAlertStageCode(alertDto.getAlertCalledDto().getAlertStageCode());
model = voiceRecordFileServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
} }
/** /**
......
...@@ -25,6 +25,12 @@ spring.redis.timeout=1000 ...@@ -25,6 +25,12 @@ spring.redis.timeout=1000
jobs.cron = 0 0/1 22-23 * * ? jobs.cron = 0 0/1 22-23 * * ?
#jpush 推送配置项 #jpush 推送配置项
params.isPush = false params.isPush = false
params.work.flow.normalProcessDefinitionKey=normalHazardManagement
params.work.flow.processDefinitionKey=hazardManagement
params.work.flow.address=http://172.16.10.80:30040
params.spc.address=http://172.16.3.89:9001
#websocket #websocket
params.remoteWebsocketUrl=http://39.100.241.164:8080/ params.remoteWebsocketUrl=http://39.100.241.164:8080/
#websocket send message url #websocket send message url
...@@ -39,9 +45,9 @@ linux.img.path = / ...@@ -39,9 +45,9 @@ linux.img.path = /
## emqx ## emqx
emqx.clean-session=true emqx.clean-session=true
emqx.client-id=${spring.application.name}-${random.int[1024,65536]}-1 emqx.client-id=${spring.application.name}-${random.int[1024,65536]}-1
emqx.broker=tcp://172.16.11.33:1883 emqx.broker=tcp://172.16.10.85:1883
emqx.user-name=admin emqx.user-name=super
emqx.password=public emqx.password=a123456
emqx.max-inflight=1000 emqx.max-inflight=1000
file.url=http://39.98.45.134:9000/ file.url=http://39.98.45.134:9000/
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.maintenance.business.dao.mapper.LatentDangerPatrolMapper">
<insert id="save" keyColumn="id" keyProperty="id"
parameterType="com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerPatrolBo"
useGeneratedKeys="true">
insert into p_latent_danger_patrol
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="latentDangerId != null">
latent_danger_id,
</if>
<if test="pointClassifyId != null">
point_classify_id,
</if>
<!-- <if test="riskFactorFlowId != null">-->
<!-- risk_factor_flow_id,-->
<!-- </if>-->
<if test="checkId != null">
check_id,
</if>
<if test="itemId != null">
item_id,
</if>
<if test="pointId != null">
point_id,
</if>
<if test="routeId != null">
route_id,
</if>
<if test="routePointItemId != null">
route_point_item_id,
</if>
<if test="deleted != null">
deleted,
</if>
<if test="createDate != null">
create_date,
</if>
<if test="updateDate != null">
update_date,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="latentDangerId != null">
#{latentDangerId},
</if>
<if test="pointClassifyId != null">
#{pointClassifyId},
</if>
<!-- <if test="riskFactorFlowId != null">-->
<!-- #{riskFactorFlowId},-->
<!-- </if>-->
<if test="checkId != null">
#{checkId},
</if>
<if test="itemId != null">
#{itemId},
</if>
<if test="pointId != null">
#{pointId},
</if>
<if test="routeId != null">
#{routeId},
</if>
<if test="routePointItemId != null">
#{routePointItemId},
</if>
<if test="deleted != null">
#{deleted},
</if>
<if test="createDate != null">
#{createDate},
</if>
<if test="updateDate != null">
#{updateDate},
</if>
</trim>
</insert>
<update id="update" parameterType="com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerPatrolBo">
update p_latent_danger_patrol
<set>
<if test="latentDangerId != null">
latent_danger_id = #{latentDangerId},
</if>
<if test="pointClassifyId != null">
point_classify_id = #{pointClassifyId},
</if>
<if test="checkId != null">
check_id = #{checkId},
</if>
<if test="riskFactorFlowId != null">
risk_factor_flow_id = #{riskFactorFlowId},
</if>
<if test="itemId != null">
item_id = #{itemId},
</if>
<if test="pointId != null">
point_id = #{pointId},
</if>
<if test="routeId != null">
route_id = #{routeId},
</if>
<if test="routePointItemId != null">
route_point_item_id = #{routePointItemId},
</if>
<if test="deleted != null">
deleted = #{deleted},
</if>
<if test="createDate != null">
create_date = #{createDate},
</if>
<if test="updateDate != null">
update_date = #{updateDate},
</if>
</set>
where id = #{id}
</update>
<delete id="deleteByLatentDangerIds">
update p_latent_danger_patrol set deleted = 1 where latent_danger_id in
<foreach collection="list" index="index" item="latentDangerId" open="(" separator="," close=")">
#{latentDangerId}
</foreach>
</delete>
<select id="getByDangerId" resultType="com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerPatrolBo">
select
a.*,
b.name as itemName,
b.original_id as itemOriginalId,
b.basis_json as itemBasis,
b.remark as itemRemark,
c.name as pointName,
c.point_no as pointNo,
c.level as pointLevel,
c.charge_dept_id as pointDepartMentId,
c.original_id as pointOriginalId,
d.name as routeName,
e.check_time as checkTime,
e.user_id as checkUserId,
e.dep_id as checkDepartmentId,
f.name as planName,
f.plan_type as planType,
f.execute_rate as executeRate,
g.original_id as classifyOriginalId,
g.name as classifyName
from
p_latent_danger_patrol as a
left join
p_input_item as b on a.item_id = b.id
left join
p_point as c on a.point_id = c.id
left join
p_route as d on a.route_id = d.id
left join
p_check as e on a.check_id = e.id
left join
p_plan as f on e.plan_id = f.id
left join
p_point_classify as g on a.point_classify_id = g.id
where
a.deleted = 0
and
a.latent_danger_id = #{dangerId}
</select>
<select id="listByMap" resultType="com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerPatrolBo">
select
a.*
from
p_latent_danger_patrol as a
left join
p_latent_danger as b
<where>
<if test="pointId != null">
and a.point_id = #{pointId}
</if>
<if test="itemId != null">
and a.item_id = #{itemId}
</if>
<if test="pointClassifyId != null">
and a.point_classify_id = #{pointClassifyId}
</if>
<if test="dangerType != null">
and b.danger_type = #{dangerType}
</if>
</where>
</select>
<select id="listByPointId" resultType="com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerPatrolBo">
select
*
from
p_latent_danger_patrol
where
point_id = #{pointId}
</select>
<select id="queryByPointClassifyIds"
resultType="com.yeejoin.amos.maintenance.business.entity.mybatis.extend.LatentDangerPatrolBo">
select * from p_latent_danger_patrol where point_classify_id in
<foreach collection="list" index="index" item="pointClassifyId" open="(" separator="," close=")">
#{pointClassifyId}
</foreach>
</select>
</mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.maintenance.business.dao.mapper.RiskJudgmentItemMapper">
<insert id="save" keyColumn="id" keyProperty="id"
parameterType="com.yeejoin.amos.maintenance.business.entity.mybatis.RiskJudgmentItemBo"
useGeneratedKeys="true">
insert into spc_risk_judgment_item
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="itemFlag != null">
item_flag,
</if>
<if test="itemLevel != null">
item_level,
</if>
<if test="itemType != null">
item_type,
</if>
<if test="itemName != null">
item_name,
</if>
<if test="itemParentId != null">
item_parent_id,
</if>
<if test="itemCanCopy != null">
item_can_copy,
</if>
<if test="selectName != null">
select_name,
</if>
<if test="selectIsNeed != null">
select_is_need,
</if>
<if test="selectIsRequired != null">
select_is_required,
</if>
<if test="selectJson != null">
select_json,
</if>
<if test="inputName != null">
input_name,
</if>
<if test="inputType != null">
input_type,
</if>
<if test="inputCanEdit != null">
input_can_edit,
</if>
<if test="inputIsNeed != null">
input_is_need,
</if>
<if test="inputIsRequired != null">
input_is_required,
</if>
<if test="remarkIsNeed != null">
remark_is_need,
</if>
<if test="remarkIsRequired != null">
remark_is_required,
</if>
<if test="photoIsNeed != null">
photo_is_need,
</if>
<if test="photoIsRequired != null">
photo_is_required,
</if>
<if test="deleted != null">
deleted,
</if>
<if test="createDate != null">
create_date,
</if>
<if test="updateDate != null">
update_date,
</if>
<if test="orgCode != null">
org_code,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="itemFlag != null">
#{itemFlag},
</if>
<if test="itemLevel != null">
#{itemLevel},
</if>
<if test="itemType != null">
#{itemType},
</if>
<if test="itemName != null">
#{itemName},
</if>
<if test="itemParentId != null">
#{itemParentId},
</if>
<if test="itemCanCopy != null">
#{itemCanCopy},
</if>
<if test="selectName != null">
#{selectName},
</if>
<if test="selectIsNeed != null">
#{selectIsNeed},
</if>
<if test="selectIsRequired != null">
#{selectIsRequired},
</if>
<if test="selectJson != null">
#{selectJson},
</if>
<if test="inputName != null">
#{inputName},
</if>
<if test="inputType != null">
#{inputType},
</if>
<if test="inputCanEdit != null">
#{inputCanEdit},
</if>
<if test="inputIsNeed != null">
#{inputIsNeed},
</if>
<if test="inputIsRequired != null">
#{inputIsRequired},
</if>
<if test="remarkIsNeed != null">
#{remarkIsNeed},
</if>
<if test="remarkIsRequired != null">
#{remarkIsRequired},
</if>
<if test="photoIsNeed != null">
#{photoIsNeed},
</if>
<if test="photoIsRequired != null">
#{photoIsRequired},
</if>
<if test="deleted != null">
#{deleted},
</if>
<if test="createDate != null">
#{createDate},
</if>
<if test="updateDate != null">
#{updateDate},
</if>
<if test="orgCode != null">
#{orgCode},
</if>
</trim>
</insert>
<update id="update" parameterType="com.yeejoin.amos.maintenance.business.entity.mybatis.RiskJudgmentItemBo">
update spc_risk_judgment_item
<set>
<if test="itemFlag != null">
item_flag = #{itemFlag},
</if>
<if test="itemLevel != null">
item_level = #{itemLevel},
</if>
<if test="itemType != null">
item_type = #{itemType},
</if>
<if test="itemName != null">
item_name = #{itemName},
</if>
<if test="itemParentId != null">
item_parent_id = #{itemParentId},
</if>
<if test="itemCanCopy != null">
item_can_copy = #{itemCanCopy},
</if>
<if test="selectName != null">
select_name = #{selectName},
</if>
<if test="selectIsNeed != null">
select_is_need = #{selectIsNeed},
</if>
<if test="selectIsRequired != null">
select_is_required = #{selectIsRequired},
</if>
<if test="selectJson != null">
select_json = #{selectJson},
</if>
<if test="inputName != null">
input_name = #{inputName},
</if>
<if test="inputTye != null">
input_type = #{inputTye},
</if>
<if test="inputCanEdit != null">
input_can_edit = #{inputCanEdit},
</if>
<if test="inputIsNeed != null">
input_is_need = #{inputIsNeed},
</if>
<if test="inputIsRequired != null">
input_is_required = #{inputIsRequired},
</if>
<if test="remarkIsNeed != null">
remark_is_need = #{remarkIsNeed},
</if>
<if test="remarkIsRequired != null">
remark_is_required = #{remarkIsRequired},
</if>
<if test="photoIsNeed != null">
photo_is_need = #{photoIsNeed},
</if>
<if test="photoIsRequired != null">
photo_is_required = #{photoIsRequired},
</if>
<if test="deleted != null">
deleted = #{deleted},
</if>
<if test="createDate != null">
create_date = #{createDate},
</if>
<if test="updateDate != null">
update_date = #{updateDate},
</if>
<if test="orgCode != null">
org_code = #{orgCode},
</if>
</set>
where id = #{id}
</update>
<select id="listAllItemByDepartmentCode" resultType="com.yeejoin.amos.maintenance.business.entity.mybatis.RiskJudgmentItemBo">
select
*
from
spc_risk_judgment_item
where
deleted = 0
and
department_code = #{departmentCode}
</select>
<select id="findByItemId" resultType="com.yeejoin.amos.maintenance.business.entity.mybatis.RiskJudgmentItemBo">
select * from spc_risk_judgment_item where id = #{itemId}
</select>
</mapper>
\ No newline at end of file
...@@ -108,6 +108,9 @@ ...@@ -108,6 +108,9 @@
LEFT JOIN `p_point` `b` ON `a`.`point_id` = `b`.`id` LEFT JOIN `p_point` `b` ON `a`.`point_id` = `b`.`id`
LEFT JOIN `p_route` `d` ON `a`.`route_id` = `d`.`id` LEFT JOIN `p_route` `d` ON `a`.`route_id` = `d`.`id`
LEFT JOIN `p_plan` `e` ON `a`.`plan_id` = `e`.`id` LEFT JOIN `p_plan` `e` ON `a`.`plan_id` = `e`.`id`
<if test="dangerId != null and dangerId != ''">
LEFT JOIN ( SELECT check_id, GROUP_CONCAT( latent_danger_id ) dangerIds FROM p_latent_danger_patrol GROUP BY check_id ) t ON t.check_id = a.id
</if>
<trim prefix="WHERE" prefixOverrides="AND "> <trim prefix="WHERE" prefixOverrides="AND ">
<if test="beginDate!=null and endDate!=null">and a.check_time BETWEEN #{beginDate} and #{endDate}</if> <if test="beginDate!=null and endDate!=null">and a.check_time BETWEEN #{beginDate} and #{endDate}</if>
<!-- <if test="endDate!=null"> and #{endDate} <![CDATA[>=]]> a.check_time </if> --> <!-- <if test="endDate!=null"> and #{endDate} <![CDATA[>=]]> a.check_time </if> -->
...@@ -1890,4 +1893,162 @@ ...@@ -1890,4 +1893,162 @@
d.date d.date
</select> </select>
<select id="getChecks" resultType="Map">
SELECT * FROM (
SELECT
pc.id checkId,
pc.user_id userId,
pc.is_ok isOk,
pp.owner_id ownerId,
date_format(
pc.check_time,
'%Y-%m-%d %H:%i:%s'
) checkDate,
pp.id pointId,
pp.equipment_id equipmentId,
pp.equipment_name equipmentName,
pp.belong_system_id systemId,
pp.belong_system_name systemName,
pp.address address,
CONCAT(pp.address, pp.building_name) buildingName
FROM p_check pc
LEFT JOIN p_point pp ON pp.id = pc.point_id
) a
<include refid="mobile-check-record-where" />
limit #{offset},#{pageSize}
</select>
<sql id="mobile-check-record-where">
<where>
<if test="userId != null and userId > 0 "> and find_in_set(#{userId},a.userId)>0</if>
<if test="timeType != null and timeType != '' and timeType == '1' ">
<include refid="mobile-check-time-today"></include>
</if>
<if test="timeType != null and timeType != '' and timeType == '2' ">
<include refid="mobile-check-time-tomorrow"></include>
</if>
<if test="timeType != null and timeType != '' and timeType == '3' ">
<include refid="mobile-check-time-week"></include>
</if>
<if test="timeType != null and timeType != '' and timeType == '4' ">
<include refid="mobile-check-time-last-week"></include>
</if>
<if test="timeType != null and timeType != '' and timeType == '5' ">
<include refid="mobile-check-time-month"></include>
</if>
<if test="timeType != null and timeType != '' and timeType == '5' ">
<include refid="mobile-check-time-last-month"></include>
</if>
<if test="finishStatus != null"> and a.finishStatus = #{finishStatus}</if>
<if test="beginTime != null and beginTime != '' and endTime != null and endTime != '' ">
AND (
(
a.beginTime <![CDATA[>=]]> #{beginTime}
AND a.endTime <![CDATA[<=]]> #{endTime}
)
OR (
a.beginTime <![CDATA[<=]]> #{endTime}
AND a.endTime <![CDATA[>=]]> #{endTime}
)
OR (
a.beginTime <![CDATA[<=]]> #{beginTime}
AND a.endTime <![CDATA[>]]> #{beginTime}
)
OR (
a.beginTime <![CDATA[<=]]> #{beginTime}
AND a.endTime <![CDATA[>=]]> #{endTime}
)
)
</if>
<choose>
<when test="identityType==1">
And (a.orgCode LIKE CONCAT( #{orgCode}, '-%' ) or a.orgCode= #{orgCode} )
<if test="companyId != null"> and a.ownerId = #{teamId}</if>
</when>
<when test="identityType==2">
And a.ownerId = #{teamId}
</when>
</choose>
</where>
<if test="orderRule != null and orderRule != ''"> order by ${orderRule} </if>
</sql>
<sql id="mobile-check-time-today">
and to_days(a.checkDate)= to_days(now())
</sql>
<sql id="mobile-check-time-tomorrow">
and to_days(now())-to_days(a.checkDate) <![CDATA[<=]]> 1
</sql>
<sql id="mobile-check-time-week">
and YEARWEEK(date_format(a.checkDate, '%Y-%m-%d')) = YEARWEEK(now())
</sql>
<sql id="mobile-check-time-last-week">
and YEARWEEK(date_format(a.checkDate, '%Y-%m-%d')) = YEARWEEK(now())-1
</sql>
<sql id="mobile-check-time-month">
and date_format(a.checkDate,'%Y-%m')=date_format(now(),'%Y-%m')
</sql>
<sql id="mobile-check-time-last-month">
and date_format(a.checkDate,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m')
</sql>
<select id="getCheckCount" resultType="long">
SELECT COUNT(1) checkCount
FROM (
SELECT
pc.id checkId,
pc.user_id userId,
pc.is_ok isOk,
pp.owner_id ownerId,
date_format(
pc.check_time,
'%Y-%m-%d %H:%i:%s'
) checkDate,
pp.id pointId,
pp.equipment_id equipmentId,
pp.equipment_name equipmentName,
pp.belong_system_id systemId,
pp.belong_system_name systemName,
pp.address address,
CONCAT(pp.address, pp.building_name) buildingName
FROM p_check pc
LEFT JOIN p_point pp ON pp.id = pc.point_id
) a
<include refid="mobile-check-record-where" />
</select>
<select id="getCheckDetail" resultType="Map">
SELECT
pc.id checkId,
pc.is_ok isOk,
date_format(
pc.check_time,
'%Y-%m-%d %H:%i:%s'
) maintenanceDate,
pp.id pointId,
pp.equipment_id equipmentId,
pp.owner_name ownerName,
pp.equipment_name equipmentName,
pp.belong_system_id systemId,
pp.belong_system_name systemName,
CONCAT(pp.address, pp.building_name) address,
CONCAT(date_format(
ppl.plan_begin,
'%Y-%m-%d %H:%i:%s'
), '-', date_format(
ppl.plan_end,
'%Y-%m-%d %H:%i:%s'
)) planDate,
ppl.name planName,
pp.plan_type planType,
ppt.user_name planUser,
pii.name itemName
FROM p_check pc
LEFT JOIN p_point pp ON pp.id = pc.point_id
LEFT JOIN p_plan ppl ON ppl.id = pc.plan_id
LEFT JOIN p_check_input pci ON pci.check_id = pc.id
LEFT JOIN p_input_item pii ON pii.id = pci.input_id
LEFT JOIN p_plan_task ppt ON ppt.id = pc.plan_task_id
WHERE
pc.id = #{id}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -178,6 +178,7 @@ ...@@ -178,6 +178,7 @@
pt.id planTaskId, pt.id planTaskId,
pt.org_code orgCode, pt.org_code orgCode,
p.name taskName, p.name taskName,
pt.status,
pt.user_id userId, pt.user_id userId,
date_format( date_format(
pt.begin_time, pt.begin_time,
...@@ -338,11 +339,9 @@ ...@@ -338,11 +339,9 @@
<select id="getPlanTaskPoints" resultType="Map"> <select id="getPlanTaskPoints" resultType="Map">
SELECT SELECT
ptd.id, ptd.id,
p.id as pointId,
p.name, p.name,
p.point_no pointNo, p.point_no pointNo,
concat_ws('',p.building_name,p.address) as position, concat_ws(' ',p.building_name,p.address) as position,
p.belong_system_id as belongSystemId,
p.belong_system_name as belongSystemName, p.belong_system_name as belongSystemName,
ptd.status, ptd.status,
ptd.is_finish as isFinish, ptd.is_finish as isFinish,
......
...@@ -8,11 +8,7 @@ ...@@ -8,11 +8,7 @@
<select id="findPlanTaskByTaskIdAndPointId" resultType="Map"> <select id="findPlanTaskByTaskIdAndPointId" resultType="Map">
SELECT SELECT
p.name planName, p.name planName, pt.begin_time beginTime, pt.end_time endTime, pp.name pointName, pp.point_no pointNo, ptd.id planTaskDetailId, pt.route_id routeId, pr.name routeName
pp.name pointName,
ptd.id planTaskDetailId,
pt.route_id routeId,
pr.name routeName
FROM FROM
p_plan_task pt p_plan_task pt
LEFT JOIN p_plan p ON pt.plan_id = p.id LEFT JOIN p_plan p ON pt.plan_id = p.id
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment