Commit 1db29ada authored by changhong's avatar changhong

派遣单主页面数据获取接口及 派遣任务单模板生成代码

parent e8480d6c
package com.yeejoin.amos.boot.module.tzs.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 派遣单更新DTO
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="DispatchPaperUpdateDto", description="派遣单更新DTO")
public class DispatchPaperUpdateDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "派遣单Id")
private Long pageId;
@ApiModelProperty(value = "派遣任务单Id")
private Long taskId;
@ApiModelProperty(value = "派遣单位Id")
private Long orgId;
@ApiModelProperty(value = "派遣单位类型code")
private String orgTypeCode;
@ApiModelProperty(value = "派遣单位社会信用代码")
private String orgCreditCode;
@ApiModelProperty(value = "派遣时间")
private Date dispatchTime;
public DispatchPaperUpdateDto() {
}
}
...@@ -194,4 +194,10 @@ public class ElevatorDto extends BaseDto { ...@@ -194,4 +194,10 @@ public class ElevatorDto extends BaseDto {
@ApiModelProperty(value = "原始表id(来自历史数据库)") @ApiModelProperty(value = "原始表id(来自历史数据库)")
private String originalId; private String originalId;
@ApiModelProperty(value = "经度")
private String longitude;
@ApiModelProperty(value = "纬度")
private String latitude;
} }
...@@ -66,4 +66,13 @@ public class RescueStationDto extends BaseDto { ...@@ -66,4 +66,13 @@ public class RescueStationDto extends BaseDto {
@ApiModelProperty(value = "经纬度") @ApiModelProperty(value = "经纬度")
private String longitudeLatitude; private String longitudeLatitude;
@ApiModelProperty(value = "经度")
private String longitude;
@ApiModelProperty(value = "纬度")
private String latitude;
@ApiModelProperty(value = "距离")
private String distance;
} }
...@@ -195,4 +195,9 @@ public class Elevator extends BaseEntity { ...@@ -195,4 +195,9 @@ public class Elevator extends BaseEntity {
@ApiModelProperty(value = "原始表id(来自历史数据库)") @ApiModelProperty(value = "原始表id(来自历史数据库)")
private String originalId; private String originalId;
@ApiModelProperty(value = "经度")
private String longitude;
@ApiModelProperty(value = "纬度")
private String latitude;
} }
...@@ -73,4 +73,10 @@ public class RescueStation extends BaseEntity { ...@@ -73,4 +73,10 @@ public class RescueStation extends BaseEntity {
@ApiModelProperty(value = "经纬度") @ApiModelProperty(value = "经纬度")
private String longitudeLatitude; private String longitudeLatitude;
@ApiModelProperty(value = "经度")
private String longitude;
@ApiModelProperty(value = "纬度")
private String latitude;
} }
package com.yeejoin.amos.boot.module.tzs.api.mapper; package com.yeejoin.amos.boot.module.tzs.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.tzs.api.dto.RescueStationDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation; import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation;
import java.util.List;
/** /**
* Mapper 接口 * Mapper 接口
* *
...@@ -10,5 +13,12 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation; ...@@ -10,5 +13,12 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation;
* @date 2021-06-01 * @date 2021-06-01
*/ */
public interface RescueStationMapper extends BaseMapper<RescueStation> { public interface RescueStationMapper extends BaseMapper<RescueStation> {
/**
* 根据经纬度和距离反馈救援机构列表
* @param lat
* @param lon
* @param distance 单位为千米
* @return
*/
List<RescueStationDto> getListByLatLonDistance(String lat, String lon, Integer distance);
} }
...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.tzs.api.service; ...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.tzs.api.service;
import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper; import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
/** /**
* 派遣单接口类 * 派遣单接口类
...@@ -16,10 +17,11 @@ public interface IDispatchPaperService { ...@@ -16,10 +17,11 @@ public interface IDispatchPaperService {
Object selectDispatchPaperDtoByAlertId(Long alertId); Object selectDispatchPaperDtoByAlertId(Long alertId);
/** /**
* 根据警情id 及 警情类别 创建 派遣单 * 根据警情id 及 警情类别 派遣人 创建 派遣单
* @param alertId * @param alertId
* @param alertCode * @param alertCode
* @param sendUser
* @return * @return
*/ */
DispatchPaper createDispatchPaper(Long alertId, String alertCode); DispatchPaper createDispatchPaper(Long alertId, String alertCode, AgencyUserModel sendUser);
} }
...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.tzs.api.service; ...@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.tzs.api.service;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto; import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
/** /**
* 派遣任务接口类 * 派遣任务接口类
...@@ -12,7 +13,7 @@ import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto; ...@@ -12,7 +13,7 @@ import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto;
public interface IDispatchTaskService { public interface IDispatchTaskService {
Boolean createDispatchTask(DispatchTaskDto dispatchTaskDto); Boolean createDispatchTask(DispatchTaskDto dispatchTaskDto, AgencyUserModel sendUser);
DispatchTaskDto getTaskInfo(String orgTypeCode, Long alertId); DispatchTaskDto getTaskInfo(String orgTypeCode, Long alertId);
} }
...@@ -10,5 +10,10 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator; ...@@ -10,5 +10,10 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator;
* @date 2021-06-01 * @date 2021-06-01
*/ */
public interface IElevatorService extends IService<Elevator> { public interface IElevatorService extends IService<Elevator> {
/**
* 根据警情返回电梯信息
* @param alertId
* @return
*/
Elevator selectByAlertId(Long alertId);
} }
package com.yeejoin.amos.boot.module.tzs.api.service; package com.yeejoin.amos.boot.module.tzs.api.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.yeejoin.amos.boot.module.tzs.api.dto.RescueStationDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation; import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation;
import java.util.List;
/** /**
* 服务类 * 服务类
* *
...@@ -11,4 +14,13 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation; ...@@ -11,4 +14,13 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation;
*/ */
public interface IRescueStationService extends IService<RescueStation> { public interface IRescueStationService extends IService<RescueStation> {
/**
* 根据经纬度和距离反馈救援机构列表
* @param lat
* @param lon
* @param distance 单位为千米
* @return
*/
List<RescueStationDto> getListByLatLonDistance(String lat, String lon, Integer distance);
} }
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.tzs.api.mapper.RescueStationMapper"> <mapper namespace="com.yeejoin.amos.boot.module.tzs.api.mapper.RescueStationMapper">
<select id="getListByLatLonDistance" resultType="com.yeejoin.amos.boot.module.tzs.api.dto.RescueStationDto">
select * from (
select tcb_rescue_station.sequence_nbr,
tcb_rescue_station.name,
tcb_rescue_station.address,
tcb_rescue_station.rescue_leader_id,
tcb_rescue_station.rescue_leader,
tcb_rescue_station.rescue_leader_phone,
(
ACOS(
SIN(
(#{lat} * 3.1415) / 180
) * SIN(
(
tcb_rescue_station.latitude * PI()
) / 180
) + COS(
(#{lat} * 3.1415) / 180
) * COS(
(
tcb_rescue_station.latitude * PI()
) / 180
) * COS(
(#{lon} * 3.1415) / 180 - (
tcb_rescue_station.longitude * PI()
) / 180
)
) * 6371
) AS distance
from tcb_rescue_station
) t
where t.distance
<![CDATA[ <= ]]>
#{distance}
</select>
</mapper> </mapper>
...@@ -44,7 +44,7 @@ public class AircraftServiceImpl extends BaseService<AircraftDto, Aircraft, Airc ...@@ -44,7 +44,7 @@ public class AircraftServiceImpl extends BaseService<AircraftDto, Aircraft, Airc
@Autowired @Autowired
AircraftMapper aircraftMapper; AircraftMapper aircraftMapper;
/** /**
* <pre> * <pre>
* 保存 * 保存
......
package com.yeejoin.amos.boot.module.tzs.biz.controller; package com.yeejoin.amos.boot.module.tzs.biz.controller;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.tzs.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchTask;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -17,6 +23,8 @@ import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto; ...@@ -17,6 +23,8 @@ import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchTaskDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation; import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import static org.typroject.tyboot.core.foundation.context.RequestContext.getToken;
/** /**
* 派遣任务 * 派遣任务
* *
...@@ -31,18 +39,8 @@ public class DispatchTaskController extends BaseController { ...@@ -31,18 +39,8 @@ public class DispatchTaskController extends BaseController {
@Autowired @Autowired
DispatchTaskServiceImpl dispatchTaskServiceImpl; DispatchTaskServiceImpl dispatchTaskServiceImpl;
/** @Autowired
* 新增派遣任务 RedisUtils redisUtils;
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增派遣任务", notes = "新增派遣任务")
public ResponseModel<Boolean> save(@RequestBody DispatchTaskDto model) {
Boolean flag = dispatchTaskServiceImpl.createDispatchTask(model);
return ResponseHelper.buildResponse(flag);
}
/** /**
* 根据派遣单位类型和警情id 获取任务模板 * 根据派遣单位类型和警情id 获取任务模板
...@@ -51,13 +49,30 @@ public class DispatchTaskController extends BaseController { ...@@ -51,13 +49,30 @@ public class DispatchTaskController extends BaseController {
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{orgTypeCode}/{alertId}") @GetMapping(value = "/{orgTypeCode}/alert/{alertId}")
@ApiOperation(httpMethod = "GET",value = "根据派遣单位类型和警情id 获取任务信息", notes = "根据派遣单位类型和警情id 获取任务信息") @ApiOperation(httpMethod = "GET",value = "根据派遣单位类型和警情id 获取任务信息", notes = "根据派遣单位类型和警情id 获取任务信息")
public ResponseModel<DispatchTaskDto> selectOne(@PathVariable String orgTypeCode, @PathVariable Long alertId) { public ResponseModel<DispatchTaskDto> selectOne(@PathVariable String orgTypeCode, @PathVariable Long alertId) {
return ResponseHelper.buildResponse(dispatchTaskServiceImpl.getTaskInfo(orgTypeCode,alertId)); return ResponseHelper.buildResponse(dispatchTaskServiceImpl.getTaskInfo(orgTypeCode,alertId));
} }
/** /**
* 新增派遣任务
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增派遣任务", notes = "新增派遣任务")
public ResponseModel<Boolean> save(@RequestBody DispatchTaskDto model) {
ReginParams reginParams =
JSONObject.parseObject(null != redisUtils.get(buildKey(getToken())) ?
redisUtils.get(buildKey(getToken())).toString() : null, ReginParams.class);
Boolean flag = dispatchTaskServiceImpl.createDispatchTask(model,reginParams.getUserModel());
return ResponseHelper.buildResponse(flag);
}
/**
* 根据sequenceNbr查询 * 根据sequenceNbr查询
* *
* @param sequenceNbr 主键 * @param sequenceNbr 主键
...@@ -71,32 +86,17 @@ public class DispatchTaskController extends BaseController { ...@@ -71,32 +86,17 @@ public class DispatchTaskController extends BaseController {
} }
/** /**
* 列表分页查询 * 根据警情id 查找力量调派信息
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET",value = "派遣任务分页查询", notes = "派遣任务分页查询")
public ResponseModel<Page<DispatchTaskDto>> queryForPage(@RequestParam(value = "current") int current,@RequestParam
(value = "size") int size) {
Page<DispatchTaskDto> page = new Page<DispatchTaskDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(dispatchTaskServiceImpl.queryForDispatchTaskPage(page));
}
/**
* 列表全部数据查询
* *
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "派遣任务列表全部数据查询", notes = "派遣任务列表全部数据查询") @ApiOperation(httpMethod = "GET",value = "根据警情id 查找力量调派信息", notes = "根据警情id 查找力量调派信息")
@GetMapping(value = "/list") @GetMapping(value = "/list/alert/{alertId}")
public ResponseModel<List<DispatchTaskDto>> selectForList() { public ResponseModel<List<DispatchTask>> selectForListByAlertId(@PathVariable Long alertId) {
return ResponseHelper.buildResponse(dispatchTaskServiceImpl.queryForDispatchTaskList()); QueryWrapper<DispatchTask> queryWrapper = new QueryWrapper<DispatchTask>();
queryWrapper.eq("alert_id", alertId);
List<DispatchTask> list = dispatchTaskServiceImpl.list(queryWrapper);
return ResponseHelper.buildResponse(list);
} }
} }
...@@ -5,10 +5,16 @@ import com.baomidou.mybatisplus.core.metadata.IPage; ...@@ -5,10 +5,16 @@ 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.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils; import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledDto;
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.entity.MaintenanceUnit;
import com.yeejoin.amos.boot.module.tzs.api.entity.UseUnit;
import com.yeejoin.amos.boot.module.tzs.api.service.IMaintenanceUnitService; import com.yeejoin.amos.boot.module.tzs.api.service.IMaintenanceUnitService;
import com.yeejoin.amos.boot.module.tzs.api.vo.MaintenanceUnitNameVo; import com.yeejoin.amos.boot.module.tzs.api.vo.MaintenanceUnitNameVo;
import com.yeejoin.amos.boot.module.tzs.api.vo.MaintenanceUnitVo; import com.yeejoin.amos.boot.module.tzs.api.vo.MaintenanceUnitVo;
import com.yeejoin.amos.boot.module.tzs.api.vo.UseUnitVo;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.AlertCalledServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.ElevatorServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils; import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -18,7 +24,9 @@ import org.slf4j.LoggerFactory; ...@@ -18,7 +24,9 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
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.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;
...@@ -40,6 +48,9 @@ public class MaintenanceUnitController extends BaseController { ...@@ -40,6 +48,9 @@ public class MaintenanceUnitController extends BaseController {
@Autowired @Autowired
IMaintenanceUnitService iMaintenanceUnitService; IMaintenanceUnitService iMaintenanceUnitService;
@Autowired
ElevatorServiceImpl elevatorServiceImpl;
/** /**
* 新增维保单位 * 新增维保单位
* *
...@@ -221,5 +232,27 @@ public class MaintenanceUnitController extends BaseController { ...@@ -221,5 +232,27 @@ public class MaintenanceUnitController extends BaseController {
MaintenanceUnitNameVo.class); MaintenanceUnitNameVo.class);
return ResponseHelper.buildResponse(maintenanceUnitVoIPage); return ResponseHelper.buildResponse(maintenanceUnitVoIPage);
} }
/**
* 根据警情id 查找设备维保单位信息
* @param alertId
* @return
*/
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/alert/{alertId}", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "根据警情id 查找设备维保单位信息", notes = "根据警情id 查找设备维保单位信息")
public ResponseModel<MaintenanceUnitVo> selectByAlertId(@PathVariable Long alertId) {
// 获取根据警情获取电梯信息
Elevator elevator = elevatorServiceImpl.selectByAlertId(alertId);
if (ValidationUtil.isEmpty(elevator))
throw new BadRequest("设备未找到");
// 根据设备使用单位id 获取使用单位信息
MaintenanceUnit maintenanceUnit = iMaintenanceUnitService.getById(elevator.getMaintainUnitId());
if (ValidationUtil.isEmpty(maintenanceUnit))
throw new BadRequest("维保单位未找到");
MaintenanceUnitVo maintenanceUnitVo = BeanDtoVoUtils.convert(maintenanceUnit, MaintenanceUnitVo.class);
return ResponseHelper.buildResponse(maintenanceUnitVo);
}
} }
package com.yeejoin.amos.boot.module.tzs.biz.controller; package com.yeejoin.amos.boot.module.tzs.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.ApiOperation; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List; import com.yeejoin.amos.boot.module.tzs.api.dto.RepairConsultDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.RepairConsult;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.RepairConsultServiceImpl; import com.yeejoin.amos.boot.module.tzs.biz.service.impl.RepairConsultServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
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.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*; import java.util.List;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.tzs.api.dto.RepairConsultDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/** /**
* 警情填报业务数据项 * 警情填报业务数据项
...@@ -103,14 +112,17 @@ public class RepairConsultController extends BaseController { ...@@ -103,14 +112,17 @@ public class RepairConsultController extends BaseController {
} }
/** /**
* 列表全部数据查询 * 根据警情id 查找处置过程日志
* *
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "警情填报业务数据项列表全部数据查询", notes = "警情填报业务数据项列表全部数据查询") @ApiOperation(httpMethod = "GET",value = "根据警情id 查找处置过程日志", notes = "根据警情id 查找处置过程日志")
@GetMapping(value = "/list") @GetMapping(value = "/list/alert/{alertId}")
public ResponseModel<List<RepairConsultDto>> selectForList() { public ResponseModel<List<RepairConsult>> selectForListByAlertId(@PathVariable Long alertId) {
return ResponseHelper.buildResponse(repairConsultServiceImpl.queryForRepairConsultList()); QueryWrapper<RepairConsult> queryWrapper = new QueryWrapper<RepairConsult>();
queryWrapper.eq("parent_id", alertId).orderByDesc("rec_date");
List<RepairConsult> list = repairConsultServiceImpl.list(queryWrapper);
return ResponseHelper.buildResponse(list);
} }
} }
...@@ -6,9 +6,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -6,9 +6,11 @@ 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.biz.common.utils.NameUtils; import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.module.tzs.api.dto.RescueStationDto; import com.yeejoin.amos.boot.module.tzs.api.dto.RescueStationDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator;
import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation; import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation;
import com.yeejoin.amos.boot.module.tzs.api.service.IRescueStationService; import com.yeejoin.amos.boot.module.tzs.api.service.IRescueStationService;
import com.yeejoin.amos.boot.module.tzs.api.vo.RescueStationVo; import com.yeejoin.amos.boot.module.tzs.api.vo.RescueStationVo;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.ElevatorServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils; import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -43,6 +45,9 @@ public class RescueStationController extends BaseController { ...@@ -43,6 +45,9 @@ public class RescueStationController extends BaseController {
@Autowired @Autowired
IRescueStationService iRescueStationService; IRescueStationService iRescueStationService;
@Autowired
ElevatorServiceImpl elevatorServiceImpl;
/** /**
* 新增救援站 * 新增救援站
* *
...@@ -213,5 +218,25 @@ public class RescueStationController extends BaseController { ...@@ -213,5 +218,25 @@ public class RescueStationController extends BaseController {
IPage<RescueStationVo> rescueStationVoIPage = BeanDtoVoUtils.iPageVoStream(page, RescueStationVo.class); IPage<RescueStationVo> rescueStationVoIPage = BeanDtoVoUtils.iPageVoStream(page, RescueStationVo.class);
return ResponseHelper.buildResponse(rescueStationVoIPage); return ResponseHelper.buildResponse(rescueStationVoIPage);
} }
/**
* 根据警情id和距离返回救援机构信息
* @param alertId
* @param distance
* @return
*/
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/alert/{alertId}/distance/{distance}", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "根据警情id和距离返回救援机构信息", notes = "根据警情id和距离返回救援机构信息")
public ResponseModel<Object> selectByAlertIdDistance(@PathVariable Long alertId, @PathVariable Integer distance) {
// 获取根据警情获取电梯信息
Elevator elevator = elevatorServiceImpl.selectByAlertId(alertId);
String longitude = elevator.getLongitude();
String latitude = elevator.getLatitude();
// 根据经纬度和距离返回救援机构信息
return ResponseHelper.buildResponse(iRescueStationService.getListByLatLonDistance(latitude,longitude,distance));
}
} }
...@@ -6,10 +6,14 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -6,10 +6,14 @@ 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.biz.common.feign.AmosFeignService; import com.yeejoin.amos.boot.biz.common.feign.AmosFeignService;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils; import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledDto;
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.entity.UseUnit;
import com.yeejoin.amos.boot.module.tzs.api.service.EquipFeignService; import com.yeejoin.amos.boot.module.tzs.api.service.EquipFeignService;
import com.yeejoin.amos.boot.module.tzs.api.service.IUseUnitService; import com.yeejoin.amos.boot.module.tzs.api.service.IUseUnitService;
import com.yeejoin.amos.boot.module.tzs.api.vo.UseUnitVo; import com.yeejoin.amos.boot.module.tzs.api.vo.UseUnitVo;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.AlertCalledServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.service.impl.ElevatorServiceImpl;
import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils; import com.yeejoin.amos.boot.module.tzs.biz.utils.BeanDtoVoUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -19,7 +23,9 @@ import org.slf4j.LoggerFactory; ...@@ -19,7 +23,9 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
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.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;
...@@ -47,6 +53,9 @@ public class UseUnitController extends BaseController { ...@@ -47,6 +53,9 @@ public class UseUnitController extends BaseController {
@Autowired @Autowired
AmosFeignService amosFeignService; AmosFeignService amosFeignService;
@Autowired
ElevatorServiceImpl elevatorServiceImpl;
/** /**
* 新增使用单位 * 新增使用单位
* *
...@@ -185,5 +194,26 @@ public class UseUnitController extends BaseController { ...@@ -185,5 +194,26 @@ public class UseUnitController extends BaseController {
page = iUseUnitService.page(pageBean, useUnitQueryWrapper); page = iUseUnitService.page(pageBean, useUnitQueryWrapper);
return ResponseHelper.buildResponse(page); return ResponseHelper.buildResponse(page);
} }
/**
* 根据警情id 查找设备使用单位信息
* @param alertId
* @return
*/
@TycloudOperation(needAuth = false, ApiLevel = UserType.AGENCY)
@RequestMapping(value = "/alert/{alertId}", method = RequestMethod.GET)
@ApiOperation(httpMethod = "GET", value = "根据警情id 查找设备使用单位信息", notes = "根据警情id 查找设备使用单位信息")
public ResponseModel<UseUnitVo> selectByAlertId(@PathVariable Long alertId) {
// 获取根据警情获取电梯信息
Elevator elevator = elevatorServiceImpl.selectByAlertId(alertId);
// 根据设备使用单位id 获取使用单位信息
UseUnit useUnit = iUseUnitService.getById(elevator.getUseUnitId());
if (ValidationUtil.isEmpty(useUnit))
throw new BadRequest("使用单位未找到");
UseUnitVo useUnitVo = BeanDtoVoUtils.convert(useUnit, UseUnitVo.class);
return ResponseHelper.buildResponse(useUnitVo);
}
} }
package com.yeejoin.amos.boot.module.tzs.biz.controller; package com.yeejoin.amos.boot.module.tzs.biz.controller;
import org.springframework.web.bind.annotation.RequestMapping; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.ApiOperation; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RestController;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import java.util.List; 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.biz.service.impl.VoiceRecordFileServiceImpl; import com.yeejoin.amos.boot.module.tzs.biz.service.impl.VoiceRecordFileServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
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.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import org.springframework.beans.factory.annotation.Autowired;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.*; import java.util.List;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.tzs.api.dto.VoiceRecordFileDto;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
/** /**
* 通话记录附件 * 通话记录附件
...@@ -103,14 +112,17 @@ public class VoiceRecordFileController extends BaseController { ...@@ -103,14 +112,17 @@ public class VoiceRecordFileController extends BaseController {
} }
/** /**
* 列表全部数据查询 * 根据警情id 查找通话记录信息
* *
* @return * @return
*/ */
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET",value = "通话记录附件列表全部数据查询", notes = "通话记录附件列表全部数据查询") @ApiOperation(httpMethod = "GET",value = "根据警情id 查找通话记录信息", notes = "根据警情id 查找通话记录信息")
@GetMapping(value = "/list") @GetMapping(value = "/list/alert/{alertId}")
public ResponseModel<List<VoiceRecordFileDto>> selectForList() { public ResponseModel<List<VoiceRecordFile>> selectForListByAlertId(@PathVariable Long alertId) {
return ResponseHelper.buildResponse(voiceRecordFileServiceImpl.queryForVoiceRecordFileList()); QueryWrapper<VoiceRecordFile> queryWrapper = new QueryWrapper<VoiceRecordFile>();
queryWrapper.eq("alert_id", alertId).orderByDesc("rec_date");
List<VoiceRecordFile> list = voiceRecordFileServiceImpl.list(queryWrapper);
return ResponseHelper.buildResponse(list);
} }
} }
package com.yeejoin.amos.boot.module.tzs.biz.service.impl; package com.yeejoin.amos.boot.module.tzs.biz.service.impl;
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.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertFormInitDto; import com.yeejoin.amos.boot.module.tzs.api.dto.AlertFormInitDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperDto; import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperDto;
import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto; import com.yeejoin.amos.boot.module.tzs.api.dto.DispatchPaperFormDto;
...@@ -10,6 +13,7 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper; ...@@ -10,6 +13,7 @@ import com.yeejoin.amos.boot.module.tzs.api.entity.DispatchPaper;
import com.yeejoin.amos.boot.module.tzs.api.enums.DispatchPaperEnums; import com.yeejoin.amos.boot.module.tzs.api.enums.DispatchPaperEnums;
import com.yeejoin.amos.boot.module.tzs.api.mapper.DispatchPaperMapper; import com.yeejoin.amos.boot.module.tzs.api.mapper.DispatchPaperMapper;
import com.yeejoin.amos.boot.module.tzs.api.service.IDispatchPaperService; import com.yeejoin.amos.boot.module.tzs.api.service.IDispatchPaperService;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
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 org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -19,6 +23,8 @@ import java.util.ArrayList; ...@@ -19,6 +23,8 @@ import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import static org.typroject.tyboot.core.foundation.context.RequestContext.getToken;
/** /**
* 派遣单服务实现类 * 派遣单服务实现类
* *
...@@ -104,7 +110,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa ...@@ -104,7 +110,7 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
} }
@Override @Override
public DispatchPaper createDispatchPaper(Long alertId, String alertCode) { public DispatchPaper createDispatchPaper(Long alertId, String alertCode, AgencyUserModel sendUser) {
// 创建基本信息 // 创建基本信息
DispatchPaper dispatchPaper = new DispatchPaper(); DispatchPaper dispatchPaper = new DispatchPaper();
...@@ -113,6 +119,17 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa ...@@ -113,6 +119,17 @@ public class DispatchPaperServiceImpl extends BaseService<DispatchPaperDto,Dispa
dispatchPaper.setDispatchTime(new Date()); dispatchPaper.setDispatchTime(new Date());
dispatchPaper.setIsDelete(false); dispatchPaper.setIsDelete(false);
// 完成状态 派遣状态 派遣人
DispatchPaperEnums finishStatus = DispatchPaperEnums.getEnum("notFinish");
dispatchPaper.setPaperStatus(finishStatus.getValue());
dispatchPaper.setPaperStatusCode(finishStatus.getCode());
DispatchPaperEnums dispatchStatus = DispatchPaperEnums.getEnum("receivedAlert");
dispatchPaper.setProcessStatus(dispatchStatus.getValue());
dispatchPaper.setProcessStatusCode(dispatchStatus.getCode());
dispatchPaper.setSendUserId(sendUser.getUserId());
dispatchPaper.setSendUserName(sendUser.getUserName());
this.save(dispatchPaper); this.save(dispatchPaper);
......
package com.yeejoin.amos.boot.module.tzs.biz.service.impl; package com.yeejoin.amos.boot.module.tzs.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yeejoin.amos.boot.module.tzs.api.dto.AlertCalledDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator; import com.yeejoin.amos.boot.module.tzs.api.entity.Elevator;
import com.yeejoin.amos.boot.module.tzs.api.mapper.ElevatorMapper; import com.yeejoin.amos.boot.module.tzs.api.mapper.ElevatorMapper;
import com.yeejoin.amos.boot.module.tzs.api.service.IElevatorService; import com.yeejoin.amos.boot.module.tzs.api.service.IElevatorService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
/** /**
* 服务实现类 * 服务实现类
...@@ -15,4 +20,26 @@ import org.springframework.stereotype.Service; ...@@ -15,4 +20,26 @@ import org.springframework.stereotype.Service;
@Service @Service
public class ElevatorServiceImpl extends ServiceImpl<ElevatorMapper, Elevator> implements IElevatorService { public class ElevatorServiceImpl extends ServiceImpl<ElevatorMapper, Elevator> implements IElevatorService {
@Autowired
AlertCalledServiceImpl alertCalledServiceImpl;
@Override
public Elevator selectByAlertId(Long alertId) {
AlertCalledDto alertCalledDto = alertCalledServiceImpl.queryBySeq(alertId);
if (ValidationUtil.isEmpty(alertCalledDto)
|| ValidationUtil.isEmpty(alertCalledDto.getDeviceId()))
throw new BadRequest("警情不存在或者设备编码不存在");
// 设备类型 和 编码 确定设备的使用单位或者维保单位
String equipmentClassificationCode = alertCalledDto.getEquipmentClassificationCode();
String deviceId = alertCalledDto.getDeviceId();
// 目前只有电梯类型
QueryWrapper<Elevator> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("rescue_code", deviceId);
Elevator elevator = this.getOne(queryWrapper);
if (ValidationUtil.isEmpty(elevator))
throw new BadRequest("设备未找到");
return elevator;
}
} }
package com.yeejoin.amos.boot.module.tzs.biz.service.impl; package com.yeejoin.amos.boot.module.tzs.biz.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yeejoin.amos.boot.module.tzs.api.dto.RescueStationDto;
import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation; import com.yeejoin.amos.boot.module.tzs.api.entity.RescueStation;
import com.yeejoin.amos.boot.module.tzs.api.mapper.RescueStationMapper; import com.yeejoin.amos.boot.module.tzs.api.mapper.RescueStationMapper;
import com.yeejoin.amos.boot.module.tzs.api.service.IRescueStationService; import com.yeejoin.amos.boot.module.tzs.api.service.IRescueStationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* 服务实现类 * 服务实现类
* *
...@@ -15,4 +19,11 @@ import org.springframework.stereotype.Service; ...@@ -15,4 +19,11 @@ import org.springframework.stereotype.Service;
@Service @Service
public class RescueStationServiceImpl extends ServiceImpl<RescueStationMapper, RescueStation> implements IRescueStationService { public class RescueStationServiceImpl extends ServiceImpl<RescueStationMapper, RescueStation> implements IRescueStationService {
@Autowired
RescueStationMapper rescueStationMapper;
@Override
public List<RescueStationDto> getListByLatLonDistance(String lat, String lon, Integer distance) {
return rescueStationMapper.getListByLatLonDistance(lat,lon,distance);
}
} }
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