Commit 9e463132 authored by tianbo's avatar tianbo

Merge branch 'developer' of http://172.16.10.76/moa/amos-boot-biz into developer

# Conflicts: # amos-boot-module/amos-boot-module-api/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/vo/MaintenanceUnitVo.java # amos-boot-module/amos-boot-module-api/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/vo/RescueStationVo.java # amos-boot-module/amos-boot-module-api/amos-boot-module-tzs-api/src/main/java/com/yeejoin/amos/boot/module/tzs/api/vo/UseUnitVo.java # amos-boot-module/amos-boot-module-biz/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/controller/ElevatorController.java # amos-boot-module/amos-boot-module-biz/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/controller/MaintenanceUnitController.java # amos-boot-module/amos-boot-module-biz/amos-boot-module-tzs-biz/src/main/java/com/yeejoin/amos/boot/module/tzs/biz/controller/UseUnitController.java
parents 4589984b c99c1738
......@@ -10,15 +10,58 @@ import java.io.Serializable;
* @author Dell
* **/
public class ReginParams implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
private CompanyBo company;
private RoleBo role;
private DepartmentBo department;
//用户基本信息
private AgencyUserModel userModel;
private PersonIdentity personIdentity;
public static class PersonIdentity {
private String identityType;
private String personName;
private String companyId;
public PersonIdentity(String identityType,String personName,String companyId){
this.identityType = identityType;
this.personName = personName;
this.companyId = companyId;
}
public String getIdentityType() {
return identityType;
}
public void setIdentityType(String identityType) {
this.identityType = identityType;
}
public String getPersonName() {
return personName;
}
public void setPersonName(String personName) {
this.personName = personName;
}
public String getCompanyId() {
return companyId;
}
public void setCompanyId(String companyId) {
this.companyId = companyId;
}
}
public PersonIdentity getPersonIdentity() {
return personIdentity;
}
public void setPersonIdentity(PersonIdentity personIdentity) {
this.personIdentity = personIdentity;
}
@Deprecated
private String token;
......@@ -53,10 +96,12 @@ public class ReginParams implements Serializable {
public void setUserModel(AgencyUserModel userModel) {
this.userModel = userModel;
}
@Deprecated
public String getToken() {
return token;
}
@Deprecated
public void setToken(String token) {
this.token = token;
......
package com.yeejoin.amos.boot.biz.common.workflow.enums;
public enum WorkFlowUriEnum {
启动流程("启动流程", "/workflow/task/startTask", ""),
流程详情("流程详情", "/workflow/task/{taskId}", "taskId"),
合并启动流程("合并启动流程", "/workflow/task/startProcess", ""),
所有已执行任务详情("所有已执行任务详情","/workflow/activitiHistory/task/detail/{taskId}","taskId"),
流程任务("流程任务", "/workflow/task?processInstanceId={processInstanceId}", "processInstanceId"),
我的代办("我的代办", "/workflow/task/all-list?processDefinitionKey={processDefinitionKey}", "processDefinitionKey"),
我的代办有ID("我的代办有ID", "/workflow/task/all-list?processDefinitionKey={processDefinitionKey}&userId={userId}", "processDefinitionKey,userId"),
已执行任务("已执行任务", "/workflow/activitiHistory/all-historytasks?processDefinitionKey={processDefinitionKey}", "processDefinitionKey"),
已执行任务有ID("已执行任务有ID", "/workflow/activitiHistory/all-historytasks?processDefinitionKey={processDefinitionKey}&userId={userId}", "processDefinitionKey,userId"),
启动免登录流程("启动免登录流程", "/processes/{appKey}", "appKey"),
当前节点("当前节点", "/wf/taskstodo?processInstanceId={processInstanceId}", "processInstanceId"),
执行流程("执行流程", "/workflow/task/pickupAndCompleteTask/{taskId}", "taskId"),
终止流程("终止流程", "/wf/processes/{processInstanceId}?deleteReason={deleteReason}", "processInstanceId,deleteReason"),
当前子节点("当前子节点", "/wf/processes/{processInstanceId}/tasks?taskDefinitionKey={taskDefinitionKey}", "processInstanceId,taskDefinitionKey"),
工作流流水("工作流流水","/wf/processes/{processInstanceId}/tasks", "processInstanceId"),
子节点信息("子节点信息","/workflow/task/list/all/{instanceId}", "instanceId"),
所有已执行任务集合("所有已执行任务集合","/workflow/activitiHistory/tasks/{processInstanceId}", "processInstanceId");
private String desc;
private String uri;
private String params;
WorkFlowUriEnum(String desc, String uri, String params) {
this.desc = desc;
this.uri = uri;
this.params = params;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public String getUri() {
return uri;
}
public void setUri(String uri) {
this.uri = uri;
}
public String getParams() {
return params;
}
public void setParams(String params) {
this.params = params;
}
}
package com.yeejoin.amos.boot.biz.common.workflow.enums;
/**
* 是否枚举
* @author WJK
*
*/
public enum YesOrNoEnum {
NO("否","0"),
YES("是","1" );
/**
* 名称,描述
*/
private String name;
/**
* 编码
*/
private String code;
private YesOrNoEnum(String name, String code){
this.name = name;
this.code = code;
}
public static YesOrNoEnum getEnum(String code) {
YesOrNoEnum jPushTypeEnum = null;
for(YesOrNoEnum type: YesOrNoEnum.values()) {
if (type.getCode().equals(code)) {
jPushTypeEnum = type;
break;
}
}
return jPushTypeEnum;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
}
......@@ -26,6 +26,9 @@ public class FailureAuditDto extends BaseDto {
@ApiModelProperty(value = "审核部门")
private String auditDepartment;
@ApiModelProperty(value = "审核部门")
private Long auditDepartmentId;
@ApiModelProperty(value = "审核时间")
private Date auditTime;
......@@ -38,4 +41,9 @@ public class FailureAuditDto extends BaseDto {
@ApiModelProperty(value = "设备故障报修单id")
private Long faultId;
@ApiModelProperty(value = "审核结果条件判断,0同意,1拒绝,2驳回")
private String condition;
}
......@@ -52,4 +52,7 @@ public class FailureMaintainDto extends BaseDto {
@ApiModelProperty(value = "附件")
private List<SourceFile> attachment;
@ApiModelProperty(value = "审核结果条件判断,0同意,1拒绝,2驳回")
private String condition;
}
......@@ -35,6 +35,9 @@ public class FailureAudit extends BaseEntity {
@TableField("audit_department")
private String auditDepartment;
@TableField("audit_department_id")
private Long auditDepartmentId;
/**
* 审核时间
*/
......@@ -53,4 +56,6 @@ public class FailureAudit extends BaseEntity {
@TableField("fault_id")
private Long faultId;
}
package com.yeejoin.amos.boot.module.common.api.service;
import com.yeejoin.amos.boot.module.common.api.entity.FailureAudit;
/**
* 接口类
......@@ -8,5 +9,5 @@ package com.yeejoin.amos.boot.module.common.api.service;
* @date 2021-08-04
*/
public interface IFailureAuditService {
public FailureAudit findByFaultId(Long faultId) ;
}
package com.yeejoin.amos.maintenance.common.enums;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author DELL
* 维保任务排序
*/
public enum OrderByEnum {
/**
* 维保任务排序
*/
TIME_DESC("时间倒序", "1", "beginTime desc"),
TIME_ASC("时间正序", "2", "beginTime asc"),
PLAN_TASK_NUM_ASC("计划维保设施数正序", "3", "taskPlanNum asc"),
PLAN_TASK_NUM_DESC("计划维保设施数倒序", "4", "taskPlanNum desc"),
FINISH_NUM_DESC("完成数倒序", "5", "finishNum desc"),
FINISH_NUM_ASC("完成数正序", "6", "finishNum asc");
/**
* 名字
*/
private String name;
/**
* 编号
*/
private String code;
/**
* 条件
*/
private String oderBy;
public String getOderBy() {
return oderBy;
}
public void setOderBy(String oderBy) {
this.oderBy = oderBy;
}
OrderByEnum(String name, String code, String oderBy) {
this.code = code;
this.name = name;
this.oderBy = oderBy;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public static List<Map<String, Object>> getEnumList() {
return Arrays.stream(OrderByEnum.values()).map(e -> {
Map<String, Object> map = new HashMap<>();
map.put(e.getCode(), e.getName());
return map;
}).collect(Collectors.toList());
}
public static OrderByEnum getEumByCode(String code) throws Exception {
Optional<OrderByEnum> op = Arrays.stream(OrderByEnum.values()).filter(e->e.getCode().equals(code)).findFirst();
return op.orElseThrow(()->new Exception("非法的条件"));
}
}
package com.yeejoin.amos.boot.module.tzs.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* @author kfm
* @date 2021/8/10.
*/
@Data
@Accessors(chain = true)
@ApiModel(value = "DutyPersonDto", description = "负责人DTO")
public class DutyPersonDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "人员id")
private String userId;
@ApiModelProperty(value = "人员职务")
private String deptName;
@ApiModelProperty(value = "人员名称")
private String userName;
@ApiModelProperty(value = "人员电话")
private String phone;
@ApiModelProperty(value = "照片")
private String image;
@ApiModelProperty(value = "人员状态")
private String status;
}
package com.yeejoin.amos.boot.module.tzs.api.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author fengwang
* @date 2021-08-10.
*/
@Data
@ApiModel(value="ElevatorNewDto", description="电梯对象集合")
public class ElevatorNewDto {
@ApiModelProperty(value = "电梯基本信息")
ElevatorDto elevatorDto;
}
......@@ -8,6 +8,8 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.List;
/**
* @author tb
* @date 2021-06-01
......@@ -20,7 +22,6 @@ import lombok.experimental.Accessors;
public class MaintenanceUnitDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "统一社会信用代码")
private String socialCreditCode;
......@@ -93,4 +94,6 @@ public class MaintenanceUnitDto extends BaseDto {
@ApiModelProperty(value = "原始表id(来自历史数据库)")
private String originalId;
@ApiModelProperty(value = "人员信息")
List<DutyPersonDto> dutyPersonList;
}
......@@ -8,6 +8,8 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.List;
/**
* @author tb
* @date 2021-06-01
......@@ -20,7 +22,6 @@ import lombok.experimental.Accessors;
public class RescueStationDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "应急救援机构名称")
private String name;
......@@ -75,4 +76,6 @@ public class RescueStationDto extends BaseDto {
@ApiModelProperty(value = "距离")
private String distance;
@ApiModelProperty(value = "人员信息")
List<DutyPersonDto> dutyPersonList;
}
......@@ -8,6 +8,8 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.util.List;
/**
* @author tb
* @date 2021-06-01
......@@ -20,7 +22,6 @@ import lombok.experimental.Accessors;
public class UseUnitDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "统一社会信用代码")
private String socialCreditCode;
......@@ -72,4 +73,6 @@ public class UseUnitDto extends BaseDto {
@ApiModelProperty(value = "原始表id(来自历史数据库)")
private String originalId;
@ApiModelProperty(value = "人员信息")
List<DutyPersonDto> dutyPersonList;
}
......@@ -8,33 +8,36 @@ package com.yeejoin.amos.boot.module.tzs.api.enums;
public enum AlertStageEnums {
//报警类型
JQCB("297","警情初报"),
JQGB("298","警情归并"),
//报警类型BJLX
JQCB("958","JQCB","警情初报"),
JQGB("959","JQGB","警情归并"),
//警情类型
//警情类型JQLX
KRJY("247","困人救援"),
GZWX("248", "故障维修"),
TSZX("249", "投诉咨询"),
KRJY("960","KRJY","困人救援"),
GZWX("961","GZWX", "故障维修"),
TSZX("962","TSZX", "投诉咨询"),
// 来源类型
DHBJ("233","电话报警"),
// 警情阶段
JJ("JJQK-247","接警"),
PQ("241","派遣"),
DD("242","抵达"),
HF("243","回访"),
WX("244","维修"),
FK("245","反馈");
// 来源类型JQLYLX
DHBJ("963","233","电话报警"),
// 警情阶段 JQJD
JJ("964","JJ","接警"),
PQ("965","PQ","派遣"),
DD("966","DD","抵达"),
JC("967","JC","救出"),
JYHF("968","JYHF","救援回访"),
WXFK("969","WXFK","维修反馈"),
BXFK("970","BXFK","报修反馈"),
TSRFK("971","TSRFK","投诉人反馈");
private String id;
private String code;
private String value;
AlertStageEnums(String code, String value) {
AlertStageEnums(String id, String code, String value) {
this.id = id;
this.code=code;
this.value=value;
}
......@@ -51,5 +54,36 @@ public enum AlertStageEnums {
this.value = value;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public static AlertStageEnums getEnumById(String id)
{
for (AlertStageEnums status : AlertStageEnums.values())
{
if (status.getId().equals(id))
{
return status;
}
}
return null;
}
public static AlertStageEnums getEnumByCode(String code)
{
for (AlertStageEnums status : AlertStageEnums.values())
{
if (status.getCode().equals(code))
{
return status;
}
}
return null;
}
}
package com.yeejoin.amos.boot.module.tzs.api.service;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledFormDto;
/**
* 警情接警填报记录接口类
*
......@@ -15,4 +17,11 @@ public interface IAlertCalledService {
*
* **/
Object selectAlertCalledById( Long id);
/**
*
* 根据警情返回信息,不读取缓存
*
* **/
AlertCalledFormDto selectAlertCalledByIdNoCache(Long id);
}
......@@ -9,4 +9,13 @@ package com.yeejoin.amos.boot.module.tzs.api.service;
*/
public interface IRepairConsultService {
/**
* 根据警情id 和类型记录处置过程
* @param alertId
* @param type
* @param taskId
* @return
*/
Boolean saveRepairConsultByAlertIdType(Long alertId, String type, Long taskId);
}
......@@ -86,4 +86,7 @@ public class FailureAuditController extends BaseController {
public ResponseModel<List<FailureAuditDto>> selectForList() {
return ResponseHelper.buildResponse(failureAuditServiceImpl.queryForFailureAuditList());
}
}
package com.yeejoin.amos.boot.module.common.biz.controller;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
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.PathVariable;
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.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
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.entity.FailureDetails;
import com.yeejoin.amos.boot.module.common.biz.service.impl.FailureDetailsServiceImpl;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
/*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.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
*
......@@ -44,29 +53,29 @@ public class FailureDetailsController extends BaseController {
*
* @return
*/
/*
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public CommonResponse save(@RequestBody FailureDetailsDto model) {
*/
/* model = failureDetailsServiceImpl.savemodel(model);
return ResponseHelper.buildResponse(model);*//*
CommonResponse commonResponse = new CommonResponse();
try {
AgencyUserModel user = getUserInfo();
if (ObjectUtils.isEmpty(user)) {
return CommonResponseUtil.failure("用户session过期");
public ResponseModel<Object> save(@RequestBody FailureDetailsDto model) {
Object result = failureDetailsServiceImpl.savemodel(model,getSelectedOrgInfo());
return ResponseHelper.buildResponse(result);
// CommonResponse commonResponse = new CommonResponse();
// try {
// AgencyUserModel user = getUserInfo();
// if (ObjectUtils.isEmpty(user)) {
// return CommonResponseUtil.failure("用户session过期");
// }
// return failureDetailsServiceImpl.savemodel(model);
// } catch (Exception e) {
// logger.error("", e.getMessage());
// return CommonResponseUtil.failure("系统繁忙,请稍后再试");
// }
}
return failureDetailsServiceImpl.savemodel(model);
} catch (Exception e) {
logger.error("", e.getMessage());
return CommonResponseUtil.failure("系统繁忙,请稍后再试");
}
}
*/
/**
* 根据sequenceNbr更新
......
......@@ -118,5 +118,18 @@ public class FailureMaintainController extends BaseController {
return ResponseHelper.buildResponse(failureMaintainServiceImpl.queryForFailureMaintainList());
}
/**
* 查询历史流程审核信息记录
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "设备故障报修单详情-报修日志", notes = "设备故障报修单详情-报修日志")
@GetMapping(value = "/getProcessHistory/{sequenceNbr}")
public ResponseModel<List<Object>> getProcessHistory(@PathVariable Long sequenceNbr ) {
if(sequenceNbr==null) {
return ResponseHelper.buildResponse(null);
}
return ResponseHelper.buildResponse(failureMaintainServiceImpl.getProcessHistoryList(sequenceNbr));
}
}
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.FailureAuditDto;
import com.yeejoin.amos.boot.module.common.api.dto.FailureDetailsDto;
......@@ -9,13 +17,6 @@ import com.yeejoin.amos.boot.module.common.api.enums.FailureStatuEnum;
import com.yeejoin.amos.boot.module.common.api.mapper.FailureAuditMapper;
import com.yeejoin.amos.boot.module.common.api.service.IFailureAuditService;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService;
/**
* 服务实现类
*
......@@ -23,11 +24,13 @@ import org.typroject.tyboot.core.rdbms.service.BaseService;
* @date 2021-08-04
*/
@Service
public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, FailureAudit, FailureAuditMapper> implements IFailureAuditService {
public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, FailureAudit, FailureAuditMapper>
implements IFailureAuditService {
@Autowired
FailureDetailsServiceImpl failureDetailsService;
/* @Autowired
RemoteWorkFlowService remoteWorkFlowService;*/
// @Autowired
// RemoteWorkFlowService remoteWorkFlowService;
/**
* 分页查询
......@@ -54,9 +57,9 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
Integer auditResult = model.getAuditResult();
if (auditResult.equals(AuditResultEnum.AGREE.getCode())) {
updateStatus(model, FailureStatuEnum.WAITING_MAINTAIN.getCode());
} else if (auditResult.equals( AuditResultEnum.REFUSE.getCode())) {
} else if (auditResult.equals(AuditResultEnum.REFUSE.getCode())) {
updateStatus(model, FailureStatuEnum.REFUSE.getCode());
}else if (auditResult.equals(AuditResultEnum.SEND_BACK.getCode())){
} else if (auditResult.equals(AuditResultEnum.SEND_BACK.getCode())) {
updateStatus(model, FailureStatuEnum.WAITING_SUBMIT.getCode());
}
return model;
......@@ -72,4 +75,13 @@ public class FailureAuditServiceImpl extends BaseService<FailureAuditDto, Failur
return failureDetailsService.updateWithModel(failureDetailsDto);
}
public FailureAudit findByFaultId(Long faultId) {
LambdaQueryWrapper<FailureAudit> wrapper = new LambdaQueryWrapper<FailureAudit>();
wrapper.eq(FailureAudit::getIsDelete, false);
wrapper.eq(FailureAudit::getFaultId, faultId);
wrapper.orderByAsc(FailureAudit::getAuditTime);
wrapper.last("LIMIT 1");
return this.baseMapper.selectOne(wrapper);
}
}
\ No newline at end of file
......@@ -73,4 +73,13 @@ public class FailureMaintainServiceImpl extends BaseService<FailureMaintainDto,F
}
return failureMaintainDto;
}
/**
* 查询当前故障报修单的流程的审批历史节点
* @param sequenceNbr
* @return
*/
public List<Object> getProcessHistoryList(Long sequenceNbr) {
// TODO Auto-generated method stub
return null;
}
}
\ No newline at end of file
package com.yeejoin.amos.maintenance.business.controller;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
......@@ -32,14 +8,11 @@ import com.yeejoin.amos.maintenance.business.param.PlanTaskPageParam;
import com.yeejoin.amos.maintenance.business.service.intfc.IPlanTaskService;
import com.yeejoin.amos.maintenance.business.service.intfc.IPointService;
import com.yeejoin.amos.maintenance.business.service.intfc.IRouteService;
import com.yeejoin.amos.maintenance.business.util.CommonResponse;
import com.yeejoin.amos.maintenance.business.util.CommonResponseUtil;
import com.yeejoin.amos.maintenance.business.util.FileHelper;
import com.yeejoin.amos.maintenance.business.util.PlanTaskPageParamUtil;
import com.yeejoin.amos.maintenance.business.util.Toke;
import com.yeejoin.amos.maintenance.business.util.*;
import com.yeejoin.amos.maintenance.business.vo.CodeOrderVo;
import com.yeejoin.amos.maintenance.business.vo.PlanTaskVo;
import com.yeejoin.amos.maintenance.business.vo.PointInputItemVo;
import com.yeejoin.amos.maintenance.common.enums.OrderByEnum;
import com.yeejoin.amos.maintenance.common.enums.PlanTaskDetailStatusEnum;
import com.yeejoin.amos.maintenance.common.enums.PlanTaskFinishStatusEnum;
import com.yeejoin.amos.maintenance.common.enums.TaskIsOrderEnum;
......@@ -51,10 +24,21 @@ import com.yeejoin.amos.maintenance.dao.entity.Point;
import com.yeejoin.amos.maintenance.dao.entity.PointClassify;
import com.yeejoin.amos.maintenance.exception.YeeException;
import com.yeejoin.amos.maintenance.feign.RemoteSecurityService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.utils.Bean;
import javax.servlet.http.HttpServletResponse;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
@RestController
@RequestMapping(value = "/api/planTask")
......@@ -73,6 +57,7 @@ public class PlanTaskController extends AbstractBaseController {
@Autowired
private RemoteSecurityService remoteSecurityService;
private String loginOrgCode;
/**
* 计划执行查询
......@@ -483,54 +468,39 @@ public class PlanTaskController extends AbstractBaseController {
/**
* 查询任务列表
*
* @param queryRequests
* @param
* @return
*/
@Permission
@ApiOperation(value = "根据用户条件查询所有计划任务(<font color='blue'>手机app</font>)", notes = "根据用户条件查询所有计划任务(<font color='blue'>手机app</font>)")
@RequestMapping(value = "/queryPlanTask", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
@Permission(isPersonIdentity = true)
@ApiOperation(value = "维保任务查询-mobile", notes = "根据用户条件查询所有计划任务")
@RequestMapping(value = "/queryPlanTask", produces = "application/json;charset=UTF-8", method = RequestMethod.GET)
public CommonResponse qryLoginUserPlanTask(
@ApiParam(value = "查询条件", required = false) @RequestBody(required = false) List<CommonRequest> queryRequests,
@ApiParam(value = "分页参数", required = false, defaultValue = "current=0&pageSize=10或pageNumber0&pageSize=10") CommonPageable pageable) {
@ApiParam(value = "人员") @RequestParam(value = "userId", required = false) Long userId,
@ApiParam(value = "开始日期") @RequestParam(value = "startTime") String startTime,
@ApiParam(value = "结束日期") @RequestParam(value = "endTime") String endTime,
@ApiParam(value = "维保状态") @RequestParam(value = "finishStatus", required = false) Integer finishStatus,
@ApiParam(value = "排序条件") @RequestParam(value = "orderBy") String orderBy,
@ApiParam(value = "业主单位") @RequestParam(value = "companyId", required = false) String companyId,
@ApiParam(value = "当前页") @RequestParam(value = "pageNumber") int current,
@ApiParam(value = "页大小") @RequestParam(value = "pageSize") int size) throws Exception {
HashMap<String, Object> params = new HashMap<String, Object>();
ReginParams reginParams = getSelectedOrgInfo();
String loginOrgCode = getLoginOrgCode(reginParams);
params = PlanTaskPageParamUtil.fillPlanTask(queryRequests, params);
Map<String, Object> authMap = Bean.BeantoMap(reginParams.getPersonIdentity());
params.putAll(authMap);
params.put("companyId", companyId);
params.put("orgCode", loginOrgCode);
params.put("pageSize", pageable.getPageSize());
params.put("offset", pageable.getPageNumber() * pageable.getPageSize());
if (ObjectUtils.isEmpty(params.get("orderBy"))) {
params.put("orderBy", "beginTime desc");
}
if (params.get("orderBy").toString().contains("taskPlanNum")) {
params.put("orderBy", params.get("orderBy") + ",beginTime asc");
}
params.put("userId", userId);
params.put("startTime", startTime);
params.put("endTime", endTime);
params.put("finishStatus", finishStatus);
params.put("orderBy", OrderByEnum.getEumByCode(orderBy).getOderBy());
CommonPageable pageable = new CommonPageable(current, size);
try {
Page page = planTaskService.getPlanTasks(getToken(), getProduct(), getAppKey(), params);
List<Map<String, Object>> li = page.getContent();
List<Map<String, Object>> li1 = new ArrayList<>();
if (li != null && li.size() > 0) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
for (Map<String, Object> msg : li) {
String[] userIds = msg.get("userId").toString().split(",");
for (String userId : userIds) {
msg.put("userId", userId);
}
if (msg.get("checkDate") != null)
msg.put("checkDate", sdf.format(sdf.parse(msg.get("checkDate").toString())));
li1.add(msg);
}
}
Page<Map<String, Object>> pd = new PageImpl<>(li1, page.getPageable(), page.getTotalElements());
return CommonResponseUtil.success(pd);
return CommonResponseUtil.success(planTaskService.getPlanTasks(params, pageable));
} catch (Exception e) {
e.printStackTrace();
return CommonResponseUtil.failure(e.getMessage());
}
}
......
......@@ -566,51 +566,15 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
}
@Override
public Page<HashMap<String, Object>> getPlanTasks(String toke, String product, String appKey, HashMap<String, Object> params) {
CommonPageable pageParam = new CommonPageable();
public Page<HashMap<String, Object>> getPlanTasks(HashMap<String, Object> params, CommonPageable pageParam) {
List<HashMap<String, Object>> content = Lists.newArrayList();
long total = planTaskMapper.getPlanTasksCount(params);
if (total == 0) {
return new PageImpl<>(content, pageParam, total);
}
content = planTaskMapper.getPlanTasks(params);
if (!CollectionUtils.isEmpty(content)) {
Set<String> userIds = Sets.newHashSet();
content.forEach(e -> {
String userId = e.get("userId").toString();
if (StringUtil.isNotEmpty(userId)) {
userIds.add(userId);
}
});
List<AgencyUserModel> userModelList = remoteSecurityService.listUserByUserIds(toke, product, appKey, Joiner.on(",").join(userIds));
Map<String, String> userModelMap = userModelList.stream().collect(Collectors.toMap(AgencyUserModel::getUserId, AgencyUserModel::getRealName, (k1, k2) -> k2));
List<String> userNames = new ArrayList<>();
content.forEach(e -> {
userNames.clear();
List<String> userIds1 = Arrays.asList(e.get("userId").toString().split(","));
for (String userId : userIds1) {
userNames.add(userModelMap.get(userId));
}
userNames.remove(null);
if (userNames != null && userNames.size() > 0) {
e.put("executiveName", Joiner.on(",").join(userNames));
} else {
e.put("executiveName", " ");
}
/*e.put("beginTime",new Date().getTime());
e.put("endTime",new Date().getTime());*/
});
return new PageImpl<>(content, pageParam, total);
}
return null;
}
@Override
public Map queryPlanTaskById(Long planTaskId) {
......
......@@ -9,6 +9,7 @@ import com.yeejoin.amos.maintenance.business.entity.mybatis.CheckChkExListBo;
import com.yeejoin.amos.maintenance.business.vo.CodeOrderVo;
import com.yeejoin.amos.maintenance.business.vo.LeavePlanTaskVo;
import com.yeejoin.amos.maintenance.business.vo.PlanTaskVo;
import com.yeejoin.amos.maintenance.core.common.request.CommonPageable;
import org.springframework.data.domain.Page;
import com.yeejoin.amos.maintenance.business.param.CheckPtListPageParam;
......@@ -76,9 +77,10 @@ public interface IPlanTaskService {
/**
* 天剑查询假话任务信息
* @param params
* @param page
* @return
*/
Page<HashMap<String, Object>> getPlanTasks(String toke,String product,String appKey,HashMap<String, Object> params);
Page<HashMap<String, Object>> getPlanTasks(HashMap<String, Object> params, CommonPageable page);
/**
* 根据计划任务Id获取计划任务信息
......
......@@ -59,7 +59,7 @@ public class PlanTaskPageParamUtil {
for(int i=0;i<queryRequests.size();i++){
String name = queryRequests.get(i).getName();
String type = queryRequests.get(i).getType();
if(type!=null && type!=""){
if(type!=null && !"".equals(type)){
if (!QueryOperatorEnum.ORDER_BY.getName().equals(type)) {
params.put(name, queryRequests.get(i).getValue());
} else if (QueryOperatorEnum.ORDER_BY.getName().equals(type)) {
......
......@@ -6,9 +6,22 @@ import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* @author DELL
*/
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Permission {
/**
* value
* @return
*/
String value() default "";
/**
* 是否进行人员校验
* @return
*/
boolean isPersonIdentity() default false;
}
package com.yeejoin.amos.maintenance.core.framework;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
......@@ -37,6 +17,24 @@ import com.yeejoin.amos.feign.privilege.model.DepartmentModel;
import com.yeejoin.amos.feign.privilege.model.RoleModel;
import com.yeejoin.amos.maintenance.exception.PermissionException;
import com.yeejoin.amos.maintenance.feign.RemoteSecurityService;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;
@Aspect
@Component
......@@ -50,65 +48,59 @@ public class PermissionAspect {
@Autowired
private RemoteSecurityService remoteSecurityService;
// 前置通知,在方法执行之前
@Before(value = "@annotation(com.yeejoin.amos.maintenance.core.framework.Permission)")
public void PermissionCheck(JoinPoint joinPoint) throws PermissionException {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder
.getRequestAttributes()).getRequest();
@Before(value = "@annotation(Permission) && @annotation(permission)")
public void PermissionCheck(JoinPoint joinPoint, Permission permission) throws PermissionException {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
logger.info("======开始权限校验======");
// 用户token
String token = request.getHeader("token");
token = ObjectUtils.isEmpty(token) ? request.getHeader("X-Access-Token") : token;
String product = request.getHeader("product");
String appKey = request.getHeader("appKey");
logger.info("用户token:" + token);
RequestContext.setToken(token);
RequestContext.setProduct(product);
RequestContext.setAppKey(appKey);
if (!TokenOperation.refresh(token)) {
throw new PermissionException("登录信息失效,请重新登录");
}
if (joinPoint.getSignature().getName().equals("saveCurCompany")) {
return;
}
FeignClientResult feignClientResult;
AgencyUserModel userModel=null;
AgencyUserModel userModel = null;
try {
feignClientResult = Privilege.agencyUserClient.getme();
userModel = (AgencyUserModel) feignClientResult.getResult();
} catch (InnerInvokException e) {
e.printStackTrace();
throw new PermissionException("用户信息校验失败");
}
String userId = null;
ReginParams regionParam = new ReginParams();
if(userModel != null){
userId = userModel.getUserId();
Map<Long, List<RoleModel>> orgRoles = userModel.getOrgRoles();
List<RoleModel> roleModels = null;
if(!ObjectUtils.isEmpty(orgRoles)) {
for (Map.Entry<Long, List<RoleModel>> entry : orgRoles.entrySet()) {
roleModels = entry.getValue();
break;
if (userModel == null) {
throw new PermissionException("用户信息校验失败");
}
String name = "";
String companyId = "";
String type = "";
if (permission.isPersonIdentity()) {
//调用jcs,进行人员身份判断,是维保公司人员还是业主单位人员
JSONObject result = new JSONObject();
name = result.get("name").toString();
companyId = result.get("companyId").toString();
type = result.get("type").toString();
}
ReginParams regionParam = new ReginParams();
String userId = userModel.getUserId();
Map<Long, List<RoleModel>> orgRoles = userModel.getOrgRoles();
ReginParams reginParams = JSON.parseObject(redisTemplate.opsForValue().get(buildKey(userModel.getUserId(), token)), ReginParams.class);
if(reginParams == null && userModel.getCompanys().size() > 0){
if (reginParams == null && userModel.getCompanys().size() > 0) {
CompanyModel companyModel = userModel.getCompanys().get(0);
List<DepartmentModel> deptList = remoteSecurityService.getDepartmentTreeByCompanyId(token, product, appKey, companyModel.getSequenceNbr().toString());
if(deptList.size() > 0){
regionParam.setPersonIdentity(new ReginParams.PersonIdentity(type, name, companyId));
if (deptList.size() > 0) {
CompanyBo companyBo = convertCompanyModelToBo(companyModel);
DepartmentBo departmentBo = convertDepartmentModelToBo(deptList.get(0));
regionParam.setCompany(companyBo);
regionParam.setDepartment(departmentBo);
if(!ObjectUtils.isEmpty(roleModels)){
regionParam.setRole(convertRoleModelToBo(roleModels.get(0)));
if (!ObjectUtils.isEmpty(orgRoles) && !orgRoles.get(departmentBo.getSequenceNbr()).isEmpty()) {
regionParam.setRole(convertRoleModelToBo(orgRoles.get(departmentBo.getSequenceNbr()).get(0)));
}
}else{
if(!ObjectUtils.isEmpty(userModel.getOrgRoles()) && !ObjectUtils.isEmpty(companyModel) && userModel.getOrgRoles().get(companyModel.getSequenceNbr()).size() > 0){
} else {
if (!ObjectUtils.isEmpty(userModel.getOrgRoles()) && !ObjectUtils.isEmpty(companyModel) && userModel.getOrgRoles().get(companyModel.getSequenceNbr()).size() > 0) {
RoleModel role = userModel.getOrgRoles().get(companyModel.getSequenceNbr()).get(0);
RoleBo roleBo = new RoleBo();
BeanUtils.copyProperties(role, roleBo);
......@@ -118,12 +110,11 @@ public class PermissionAspect {
redisTemplate.opsForValue().set(buildKey(userId, token), JSONObject.toJSONString(regionParam));
}
}
}
private DepartmentBo convertDepartmentModelToBo(DepartmentModel departmentModel){
private DepartmentBo convertDepartmentModelToBo(DepartmentModel departmentModel) {
DepartmentBo departmentBo = new DepartmentBo();
if(departmentModel != null) {
if (departmentModel != null) {
departmentBo.setCompanySeq(departmentModel.getCompanySeq());
departmentBo.setDepartmentDesc(departmentModel.getDepartmentDesc());
departmentBo.setDepartmentName(departmentModel.getDepartmentName());
......@@ -139,13 +130,13 @@ public class PermissionAspect {
/**
* Model 转 Bo
*/
private CompanyBo convertCompanyModelToBo(CompanyModel companyModel){
private CompanyBo convertCompanyModelToBo(CompanyModel companyModel) {
CompanyBo companyBo = new CompanyBo();
if(companyModel != null) {
if (companyModel != null) {
companyBo.setAddress(companyModel.getAddress());
companyBo.setCompanyName(companyModel.getCompanyName());
companyBo.setCompanyOrgCode(Integer.parseInt(companyModel.getCompanyOrgCode().toString()));
companyBo.setCompanyOrgCode(companyModel.getCompanyOrgCode());
companyBo.setEmail(companyModel.getEmail());
companyBo.setLandlinePhone(companyModel.getLandlinePhone());
companyBo.setLongitude(companyModel.getLongitude());
......@@ -160,7 +151,7 @@ public class PermissionAspect {
private RoleBo convertRoleModelToBo(RoleModel roleModel) {
RoleBo roleBo = new RoleBo();
if(roleModel != null){
if (roleModel != null) {
roleBo.setRoleName(roleModel.getRoleName());
roleBo.setRoleType(roleModel.getRoleType());
roleBo.setSequenceNbr(roleModel.getSequenceNbr());
......@@ -168,7 +159,13 @@ public class PermissionAspect {
return roleBo;
}
//redi缓存选择的用户信息
/**
* redis缓存选择的用户信息
*
* @param userId userId
* @param token token
* @return String
*/
private String buildKey(String userId, String token) {
return "region_" + userId + "_" + token;
......
......@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.module.tzs.api.dto.ElevatorDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.ElevatorNewDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator;
import com.yeejoin.amos.boot.module.tzs.api.service.IElevatorService;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.ElevatorServiceImpl;
......@@ -159,14 +160,14 @@ public class ElevatorController extends BaseController {
/**
* 相似电梯模糊查询
*
* @param elevatorDto 查询参数
* @param elevatorNewDto 查询参数
* @return 返回结果
*/
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/page/similar", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "相似电梯模糊查询", notes = "相似电梯模糊查询")
public ResponseModel<List<ElevatorDto>> similar(com.yeejoin.amos.boot.module.tzs.api.dto.ElevatorDto elevatorDto) {
Elevator elevator = BeanDtoVoUtils.convert(elevatorDto, Elevator.class);
@RequestMapping(value = "/page/similar", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "相似电梯模糊查询", notes = "相似电梯模糊查询")
public ResponseModel<List<ElevatorDto>> similar(@RequestBody ElevatorNewDto elevatorNewDto) {
Elevator elevator = BeanDtoVoUtils.convert(elevatorNewDto.getElevatorDto(), Elevator.class);
QueryWrapper<Elevator> elevatorQueryWrapper = new QueryWrapper<>();
Class<? extends Elevator> aClass = elevator.getClass();
Arrays.stream(aClass.getDeclaredFields()).forEach(field -> {
......
......@@ -10,6 +10,7 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator;
import com.yeejoin.amos.boot.module.tzs.api.entity.MaintenanceUnit;
import com.yeejoin.amos.boot.module.tzs.api.service.IMaintenanceUnitService;
import com.yeejoin.amos.boot.module.tzs.api.dto.MaintenanceUnitNameDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DutyPersonDto;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.ElevatorServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils;
import io.swagger.annotations.Api;
......@@ -26,7 +27,9 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
......@@ -248,8 +251,23 @@ public class MaintenanceUnitController extends BaseController {
if (ValidationUtil.isEmpty(maintenanceUnit)) {
throw new BadRequest("维保单位未找到");
}
MaintenanceUnitDto maintenanceUnitDto = BeanDtoVoUtils.convert(maintenanceUnit, MaintenanceUnitDto.class);
return ResponseHelper.buildResponse(maintenanceUnitDto);
MaintenanceUnitDto maintenanceUnitVo = BeanDtoVoUtils.convert(maintenanceUnit, MaintenanceUnitDto.class);
List<DutyPersonDto> dutyPersonList = new ArrayList<DutyPersonDto>();
DutyPersonDto principal = new DutyPersonDto();
principal.setDeptName("主要负责人1");
principal.setPhone(maintenanceUnitVo.getPrincipalFirstPhone());
principal.setUserId(maintenanceUnitVo.getPrincipalFirstId()+"");
principal.setUserName(maintenanceUnitVo.getPrincipalFirst());
dutyPersonList.add(principal);
DutyPersonDto manager = new DutyPersonDto();
manager.setDeptName("主要负责人2");
manager.setPhone(maintenanceUnitVo.getPrincipalSecondPhone());
manager.setUserId(maintenanceUnitVo.getPrincipalSecondId()+"");
manager.setUserName(maintenanceUnitVo.getPrincipalSecond());
dutyPersonList.add(manager);
maintenanceUnitVo.setDutyPersonList(dutyPersonList);
return ResponseHelper.buildResponse(maintenanceUnitVo);
}
}
......
......@@ -33,7 +33,7 @@ import java.util.List;
* @date 2021-08-03
*/
@RestController
@Api(tags = "警情填报业务数据项Api")
@Api(tags = "处置过程Api")
@RequestMapping(value = "/tzs/repair-consult")
public class RepairConsultController extends BaseController {
......@@ -54,64 +54,6 @@ public class RepairConsultController extends BaseController {
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新警情填报业务数据项", notes = "根据sequenceNbr更新警情填报业务数据项")
public ResponseModel<RepairConsultDto> updateBySequenceNbrRepairConsult(@RequestBody RepairConsultDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(repairConsultServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除警情填报业务数据项", notes = "根据sequenceNbr删除警情填报业务数据项")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(repairConsultServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个警情填报业务数据项", notes = "根据sequenceNbr查询单个警情填报业务数据项")
public ResponseModel<RepairConsultDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(repairConsultServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "警情填报业务数据项分页查询", notes = "警情填报业务数据项分页查询")
public ResponseModel<Page<RepairConsultDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<RepairConsultDto> page = new Page<RepairConsultDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(repairConsultServiceImpl.queryForRepairConsultPage(page));
}
/**
* 根据警情id 查找处置过程日志
*
* @return
......
......@@ -11,6 +11,7 @@ import com.yeejoin.amos.boot.module.tzs.api.dto.UseUnitDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator;
import com.yeejoin.amos.boot.module.tzs.api.entity.UseUnit;
import com.yeejoin.amos.boot.module.tzs.api.service.IUseUnitService;
import com.yeejoin.amos.boot.module.tzs.api.dto.DutyPersonDto;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.ElevatorServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils;
import io.swagger.annotations.Api;
......@@ -31,7 +32,9 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
//import com.yeejoin.amos.boot.module.tzs.api.service.EquipFeignService;
......@@ -215,8 +218,22 @@ public class UseUnitController extends BaseController {
if (ValidationUtil.isEmpty(useUnit)) {
throw new BadRequest("使用单位未找到");
}
UseUnitDto useUnitDto = BeanDtoVoUtils.convert(useUnit, UseUnitDto.class);
return ResponseHelper.buildResponse(useUnitDto);
UseUnitDto useUnitVo = BeanDtoVoUtils.convert(useUnit, UseUnitDto.class);
List<DutyPersonDto> dutyPersonList = new ArrayList<DutyPersonDto>();
DutyPersonDto principal = new DutyPersonDto();
principal.setDeptName("主要负责人");
principal.setPhone(useUnitVo.getPrincipalPhone());
principal.setUserId(useUnitVo.getPrincipalId()+"");
principal.setUserName(useUnitVo.getPrincipal());
dutyPersonList.add(principal);
DutyPersonDto manager = new DutyPersonDto();
manager.setDeptName("电梯安全管理员");
manager.setPhone(useUnitVo.getManagerPhone());
manager.setUserId(useUnitVo.getManagerId()+"");
manager.setUserName(useUnitVo.getManager());
dutyPersonList.add(manager);
useUnitVo.setDutyPersonList(dutyPersonList);
return ResponseHelper.buildResponse(useUnitVo);
}
}
......@@ -54,64 +54,6 @@ public class VoiceRecordFileController extends BaseController {
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新通话记录附件", notes = "根据sequenceNbr更新通话记录附件")
public ResponseModel<VoiceRecordFileDto> updateBySequenceNbrVoiceRecordFile(@RequestBody VoiceRecordFileDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(voiceRecordFileServiceImpl.updateWithModel(model));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除通话记录附件", notes = "根据sequenceNbr删除通话记录附件")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(voiceRecordFileServiceImpl.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个通话记录附件", notes = "根据sequenceNbr查询单个通话记录附件")
public ResponseModel<VoiceRecordFileDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(voiceRecordFileServiceImpl.queryBySeq(sequenceNbr));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "通话记录附件分页查询", notes = "通话记录附件分页查询")
public ResponseModel<Page<VoiceRecordFileDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<VoiceRecordFileDto> page = new Page<VoiceRecordFileDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(voiceRecordFileServiceImpl.queryForVoiceRecordFilePage(page));
}
/**
* 根据警情id 查找通话记录信息
*
* @return
......
......@@ -18,6 +18,7 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.Template;
import com.yeejoin.amos.boot.module.tzs.api.enums.AlertStageEnums;
import com.yeejoin.amos.boot.module.tzs.api.mapper.AlertCalledMapper;
import com.yeejoin.amos.boot.module.tzs.api.service.IAlertCalledService;
import com.yeejoin.amos.boot.module.tzs.biz.utils.AlertBeanDtoVoUtils;
import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
......@@ -113,6 +114,40 @@ public class AlertCalledServiceImpl extends BaseService<AlertCalledDto,AlertCall
}
}
@Override
public AlertCalledFormDto selectAlertCalledByIdNoCache(Long id) {
// 警情基本信息
AlertCalled alertCalled = this.getById(id);
QueryWrapper<AlertFormValue> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("alert_called_id", id);
// 警情动态表单数据
List<AlertFormValue> list = iAlertFormValueService.list(queryWrapper);
List<FormValue> formValue = new ArrayList<FormValue>();
if(list!=null&&list.size()>0) {
for (AlertFormValue alertFormValue : list) {
FormValue value = new FormValue(alertFormValue.getFieldCode(), alertFormValue.getFieldName(), "text", alertFormValue.getFieldValue(),alertFormValue.getBlock());
formValue.add(value);
}
}
AlertCalledDto alertCalledDto = BeanDtoVoUtils.convert(alertCalled,AlertCalledDto.class);
QueryWrapper<Elevator> elevatorQueryWrapper = new QueryWrapper<>();
elevatorQueryWrapper.eq("rescue_code", alertCalled.getDeviceId());
elevatorQueryWrapper.eq("register_code", alertCalled.getRegistrationCode());
Elevator elevator = iElevatorService.getOne(elevatorQueryWrapper);
if(null != elevator) {
alertCalledDto.setAddress(elevator.getAddress());
alertCalledDto.setProvince(elevator.getProvince());
alertCalledDto.setCity(elevator.getCity());
alertCalledDto.setDistrict(elevator.getDistrict());
alertCalledDto.setUseStatus(elevator.getUseStatus());
alertCalledDto.setUseSiteCategory(elevator.getUseSiteCategory());
alertCalledDto.setUseUnit(elevator.getUseUnit());
alertCalledDto.setRegionCode(elevator.getRegionCode());
}
AlertCalledFormDto alertCalledFormVo = new AlertCalledFormDto(alertCalledDto, formValue);
return alertCalledFormVo;
}
/**
*
......
......@@ -204,7 +204,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
public DispatchSaveFeedbackDto getDispatchSaveFeedbackDtoByAlertId(Long alertId) {
DispatchSaveFeedbackDto dispatchSaveFeedbackDto = new DispatchSaveFeedbackDto();
dispatchSaveFeedbackDto.setAlertId(alertId);
AlertCalledFormDto alertCalledFormVo = (AlertCalledFormDto) alertCalledServiceImpl.selectAlertCalledById(alertId);
AlertCalledFormDto alertCalledFormVo = alertCalledServiceImpl.selectAlertCalledByIdNoCache(alertId);
// 警情信息
AlertCalledDto alertCalledDto = alertCalledFormVo.getAlertCalledDto();
dispatchSaveFeedbackDto.setEmergency(alertCalledDto.getEmergencyPerson());
......@@ -353,9 +353,9 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
dispatchPaper.setRemark(dispatchSaveFeedbackDto.getRemark());
dispatchPaper.setFeedbackTime(dispatchSaveFeedbackDto.getFeedbackTime());
// 保存动态表单数据
iAlertFormValueService.saveBatch(dynamicFormAlert);
iAlertFormValueService.updateBatchById(dynamicFormAlert);
// 保存派遣表
flag = this.save(dispatchPaper);
flag = this.updateById(dispatchPaper);
return flag;
}
......@@ -363,7 +363,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
public DispatchRepairFeedbackDto getDispatchRepairFeedbackDtoByAlertId(Long alertId) {
DispatchRepairFeedbackDto dispatchRepairFeedbackDto = new DispatchRepairFeedbackDto();
dispatchRepairFeedbackDto.setAlertId(alertId);
AlertCalledFormDto alertCalledFormVo = (AlertCalledFormDto) alertCalledServiceImpl.selectAlertCalledById(alertId);
AlertCalledFormDto alertCalledFormVo = alertCalledServiceImpl.selectAlertCalledByIdNoCache(alertId);
// 警情信息
AlertCalledDto alertCalledDto = alertCalledFormVo.getAlertCalledDto();
dispatchRepairFeedbackDto.setEmergency(alertCalledDto.getEmergencyPerson());
......@@ -543,9 +543,9 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
dispatchPaper.setRemark(dispatchRepairFeedbackDto.getRemark());
dispatchPaper.setFeedbackTime(dispatchRepairFeedbackDto.getFeedbackTime());
// 保存动态表单数据
iAlertFormValueService.saveBatch(dynamicFormAlert);
iAlertFormValueService.updateBatchById(dynamicFormAlert);
// 保存派遣表
flag = this.save(dispatchPaper);
flag = this.updateById(dispatchPaper);
return flag;
}
......@@ -553,7 +553,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
public DispatchConsultFeedbackDto getDispatchConsultFeedbackDtoByAlertId(Long alertId) {
DispatchConsultFeedbackDto dispatchConsultFeedbackDto = new DispatchConsultFeedbackDto();
dispatchConsultFeedbackDto.setAlertId(alertId);
AlertCalledFormDto alertCalledFormVo = (AlertCalledFormDto) alertCalledServiceImpl.selectAlertCalledById(alertId);
AlertCalledFormDto alertCalledFormVo = alertCalledServiceImpl.selectAlertCalledByIdNoCache(alertId);
// 警情信息
AlertCalledDto alertCalledDto = alertCalledFormVo.getAlertCalledDto();
dispatchConsultFeedbackDto.setEmergency(alertCalledDto.getEmergencyPerson());
......@@ -720,9 +720,9 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
dispatchPaper.setFeedbackUname(dispatchConsultFeedbackDto.getFeedbackUname());
dispatchPaper.setRemark(dispatchConsultFeedbackDto.getRemark());
// 保存动态表单数据
iAlertFormValueService.saveBatch(dynamicFormAlert);
iAlertFormValueService.updateBatchById(dynamicFormAlert);
// 保存派遣表
flag = this.save(dispatchPaper);
flag = this.updateById(dispatchPaper);
return flag;
}
......
......@@ -190,7 +190,7 @@ public class ESAlertCalledService {
}
//警情类型一致
BoolQueryBuilder qb4 = QueryBuilders.boolQuery()
.must(QueryBuilders.termQuery("alertTypeCode.keyword", alertCalled.getAlarmTypeCode()));
.must(QueryBuilders.termQuery("alarmTypeCode.keyword", alertCalled.getAlarmTypeCode()));
boolMust.should(qb4);
//使用单位名称一致
if (!ValidationUtil.isEmpty(alertCalled.getUseUnit()))
......
......@@ -38,3 +38,10 @@ spring.data.mongodb.uri=mongodb://172.16.3.41:27017/command_db
file.url=http://39.98.45.134:9000/
video.url=https://11.11.16.4:443/
params.work.flow.normalProcessDefinitionKey=normalHazardManagement
params.work.flow.processDefinitionKey=hazardManagement
params.work.flow.address=http://172.16.3.4:30040
#params.work.flow.address=http://172.16.10.80:30040
params.spc.address=http://172.16.3.89:9001
failure.work.flow.processDefinitionKey=malfunction_repair
\ No newline at end of file
......@@ -179,14 +179,13 @@
a.beginTime,
a.endTime,
a.checkDate,
a.finshNum,
a.finishNum,
a.taskPlanNum,
a.finishStatus,
a.batchNo,
a.userId executiveName,
a.userName,
a.userDept
<!-- (SELECT GROUP_CONCAT(`name`) FROM s_user where find_in_set(id,a.userId)>0 ORDER BY `id`) AS executiveName -->
FROM
(
SELECT
......@@ -213,7 +212,6 @@
pt.id batchNo,
pt.route_id,
pt.point_num taskPlanNum,
pt.finish_num finshNum,
pt.user_name userName,
pt.user_dept userDept
FROM
......@@ -222,20 +220,10 @@
) a
<where>
<if test="userId != null and userId > 0 "> and find_in_set(#{userId},a.userId)>0</if>
<if test="routeId != null and userId > 0 "> and a.route_id = #{routeId} </if>
<if test="checkDate != null and checkDate != '' "> and a.beginTime <![CDATA[<=]]> #{checkDate} and a.endTime <![CDATA[>=]]> #{checkDate} </if>
<if test="finishStatus != null"> and a.finishStatus = #{finishStatus}</if>
<if test="orgCode != null and orgCode !=''" >
and (a.OrgCode LIKE CONCAT( #{orgCode}, '-%' ) or a.OrgCode= #{orgCode} )
</if>
<choose>
<when test="departmentId != null and departmentId != 0 ">and a.userDept like concat('%', #{departmentId}, '%')</when>
<!-- <when test="departmentId == -1 and ids != null">and a.userId in-->
<!-- <foreach item="item" collection="ids" separator="," open="(" close=")" index="index">-->
<!-- #{item}-->
<!-- </foreach>-->
<!-- </when>-->
</choose>
<if test="startTime != null and startTime != '' and endTime != null and endTime != '' ">
AND (
......@@ -256,36 +244,6 @@
AND a.endTime <![CDATA[>=]]> #{endTime}
)
)
</if>
<if test="query != null and query != '' ">
<if test="queryType != null and queryType != 'executiveName' and queryType != 'plan' ">
AND EXISTS (
SELECT
1
FROM
p_point pp
LEFT JOIN p_route_point rp ON rp.point_id = pp.id
LEFT JOIN p_route r ON r.id = rp.route_id
where a.route_id = r.id
<if test="queryType == null or queryType == '' or queryType == 'all' ">
AND CONCAT(pp.name, ',',r.name, ',', pp.point_no,a.taskName, ',', a.batchNo) LIKE concat('%', #{query}, '%')
</if>
<if test="queryType != null and queryType == 'route' ">
AND r.name LIKE concat('%', #{query}, '%')
</if>
<if test="queryType != null and queryType == 'point' ">
AND CONCAT(pp.name, ',', pp.point_no) LIKE concat('%', #{query}, '%')
</if>
)
</if>
<if test="queryType != null and queryType == 'executiveName' ">
AND a.userName LIKE concat('%', #{query}, '%')
</if>
<if test="queryType != null and queryType == 'plan' ">
AND CONCAT(a.taskName, ',', a.batchNo) LIKE concat('%', #{query}, '%')
</if>
</if>
</where>
<if test="orderBy != null and orderBy != '' "> order by ${orderBy} </if>
......@@ -299,50 +257,17 @@
FROM
(
SELECT
pt.id planTaskId,
pt.org_code OrgCode,
p. NAME taskName,
pt. STATUS,
pt.user_id userId,
date_format(
pt.begin_time,
'%Y-%m-%d %H:%i:%s'
) beginTime,
date_format(
pt.end_time,
'%Y-%m-%d %H:%i:%s'
) endTime,
date_format( pt.check_date, '%Y-%m-%d %H:%i:%s' ) checkDate,
pt.finish_num finishNum,
pt.finish_status finishStatus,
pt.id batchNo,
pt.route_id,
pt.point_num taskPlanNum,
pt.finish_num finshNum,
pt.user_name userName,
pt.user_dept userDept
pt.id
FROM
p_plan_task pt
INNER JOIN p_plan p ON pt.plan_id = p.id
) a
<where>
<if test="userId != null and userId > 0 "> and find_in_set(#{userId},a.userId)>0 </if>
<if test="routeId != null and userId > 0 "> and a.route_id = #{routeId} </if>
<if test="checkDate != null and checkDate != '' "> and a.beginTime <![CDATA[<=]]> #{checkDate} and a.endTime <![CDATA[>=]]> #{checkDate} </if>
<if test="finishStatus != null"> and a.finishStatus = #{finishStatus}</if>
<if test="orgCode != null and orgCode !=''" >
and (a.OrgCode LIKE CONCAT( #{orgCode}, '-%' ) or a.OrgCode= #{orgCode} )
</if>
<choose>
<when test="departmentId != null and departmentId!= 0 ">and a.userDept like concat('%', #{departmentId}, '%') </when>
<!-- <when test="departmentId == -1 and ids != null">and a.userId in-->
<!-- <foreach item="item" collection="ids" separator="," open="(" close=")" index="index">-->
<!-- #{item}-->
<!-- </foreach>-->
<!-- </when>-->
</choose>
<if test="startTime != null and startTime != '' and endTime != null and endTime != '' ">
AND (
(
......@@ -362,43 +287,9 @@
AND a.endTime <![CDATA[>=]]> #{endTime}
)
)
</if>
<if test="query != null and query != '' ">
<if test="queryType != null and queryType != 'executiveName' and queryType != 'plan' ">
AND EXISTS (
SELECT
1
FROM
p_point pp
LEFT JOIN p_route_point rp ON rp.point_id = pp.id
LEFT JOIN p_route r ON r.id = rp.route_id
where a.route_id = r.id
<if test="queryType == null or queryType == '' or queryType == 'all' ">
AND CONCAT(pp.name, ',',r.name, ',', pp.point_no,a.taskName, ',', a.batchNo) LIKE concat('%', #{query}, '%')
</if>
<if test="queryType != null and queryType == 'route' ">
AND r.name LIKE concat('%', #{query}, '%')
</if>
<if test="queryType != null and queryType == 'point' ">
AND CONCAT(pp.name, ',', pp.point_no) LIKE concat('%', #{query}, '%')
</if>
)
</if>
<if test="queryType != null and queryType == 'executiveName' ">
AND a.userName LIKE concat('%', #{query}, '%')
</if>
<if test="queryType != null and queryType == 'plan' ">
AND CONCAT(a.taskName, ',', a.batchNo) LIKE concat('%', #{query}, '%')
</if>
</if>
</where>
</select>
<select id="queryPlanTaskById" resultType="Map">
SELECT
a.planTaskId,
......
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