Commit c3575f6c authored by taabe's avatar taabe

添加消防资源树接口

parent 5ffc2849
package com.yeejoin.amos.boot.module.jcs.api.dto;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 消防车dto
*
* @author tb
*/
@Data
@ApiModel(value="FireCarDto", description="消防车dto")
public class FireCarDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "车辆id")
private String id;
@ApiModelProperty(value = "车辆名称")
private String name;
@ApiModelProperty(value = "所属队伍id")
private String teamId;
@ApiModelProperty(value = "所属队伍名称")
private String teamName;
@ApiModelProperty(value = "车辆牌号")
private String carNum;
@ApiModelProperty(value = "车辆状态code")
private String carState;
@ApiModelProperty(value = "车辆状态描述")
private String carStateDesc;
}
package com.yeejoin.amos.boot.module.jcs.api.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author DELL
*/
@Getter
@AllArgsConstructor
public enum FireCarStatusEnum {
/**
* 执勤、出动
*/
onDuty("onDuty", "1", "执勤"),
out("out", "2", "出动");
private String key;
private String code;
private String name;
}
package com.yeejoin.amos.boot.module.jcs.api.service;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
/**
* 装备服务feign
*
* @author Dell
*/
@FeignClient(name = "AMOS-EQUIPMANAGE", path = "equip")
//@FeignClient(name = "AMOS-AUTOSYS", url = "http://172.16.10.66:8085", path = "fireAutoSys")
public interface EquipFeignService {
/**
* 获取车辆列表
*
* @return
*/
@RequestMapping(value = "/car/list-all", method = RequestMethod.GET)
ResponseModel<Object> getFireCarListAll();
}
......@@ -16,4 +16,9 @@ public interface IPowerTransferService extends IService<PowerTransfer> {
PowerTransferVo getPowerTransferList(Long alertCalledId);
boolean createPowerTransfer(PowerTransferDto powerTransferDto);
/**
* 获取力量调派资源树
*/
void getPowerTree();
}
......@@ -117,7 +117,6 @@ public class AlertSubmittedController extends BaseController {
@RequestMapping(value = "/scheduling/list", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "根据警情id查询融合调度列表", notes = "根据警情id查询融合调度列表")
public ResponseModel<SchedulingReportingVo> listSchedulingByParam(@RequestBody AlertSubmittedDto queryParam) {
queryParam.setSubmissionMethodCode(SubmissionMethodEnum.SMS.getCode());
return ResponseHelper.buildResponse(iAlertSubmittedService.listSchedulingByParam(queryParam));
}
......@@ -125,7 +124,7 @@ public class AlertSubmittedController extends BaseController {
@RequestMapping(value = "/reporting/list", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "根据警情id查询警情报送列表", notes = "根据警情id查询警情报送列表")
public ResponseModel<SchedulingReportingVo> listReportingByParam(@RequestBody AlertSubmittedDto queryParam) {
queryParam.setSubmissionMethodCode(SubmissionMethodEnum.SMS.getCode());
queryParam.setSubmissionMethodCode(SubmissionMethodEnum.PHONE.getCode());
return ResponseHelper.buildResponse(iAlertSubmittedService.listReportingByParam(queryParam));
}
......
......@@ -169,5 +169,13 @@ public class PowerTransferController extends BaseController {
boolean save = iPowerTransferService.createPowerTransfer(powerTransferDto);
return ResponseHelper.buildResponse(save);
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/power/tree")
@ApiOperation(value = "力量调派资源树", notes = "力量调派资源树")
public ResponseModel<Object> getPowerTree() {
iPowerTransferService.getPowerTree();
return ResponseHelper.buildResponse("");
}
}
......@@ -14,12 +14,15 @@ import com.yeejoin.amos.boot.module.jcs.api.service.IAlertSubmittedObjectService
import com.yeejoin.amos.boot.module.jcs.api.service.IAlertSubmittedService;
import com.yeejoin.amos.boot.module.jcs.api.vo.AlertSubmittedExtVo;
import com.yeejoin.amos.boot.module.jcs.api.vo.SchedulingReportingVo;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* 警情报送记录 服务实现类
......@@ -38,7 +41,17 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto,Ale
SchedulingReportingVo schedulingReportingVo = new SchedulingReportingVo();
List<AlertSubmittedExtVo> alertSubmittedExtVoList = this.baseMapper.listSchedulingByParam(queryParam);
schedulingReportingVo.setSchedulingReportingList(alertSubmittedExtVoList);
String extraInfo = "已调度电话" + alertSubmittedExtVoList.size() + "起";
Map<String, List<AlertSubmittedExtVo>> groupMap =
alertSubmittedExtVoList.stream().collect(Collectors.groupingBy(AlertSubmittedExtVo::getSubmissionMethodCode));
int phoneSize = 0;
int smsSize = 0;
if (ObjectUtils.isNotEmpty(groupMap.get(SubmissionMethodEnum.PHONE.getCode()))) {
phoneSize = groupMap.get(SubmissionMethodEnum.PHONE.getCode()).size();
}
if (ObjectUtils.isNotEmpty(groupMap.get(SubmissionMethodEnum.SMS.getCode()))) {
smsSize = groupMap.get(SubmissionMethodEnum.SMS.getCode()).size();
}
String extraInfo = String.format("已调度电话%s起,短信%d批", phoneSize, smsSize);
schedulingReportingVo.setExtraInfo(extraInfo);
return schedulingReportingVo;
}
......@@ -48,7 +61,9 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto,Ale
SchedulingReportingVo schedulingReportingVo = new SchedulingReportingVo();
List<AlertSubmittedExtVo> alertSubmittedExtVoList = this.baseMapper.listReportingByParam(queryParam);
schedulingReportingVo.setSchedulingReportingList(alertSubmittedExtVoList);
String extraInfo = "已报送" + alertSubmittedExtVoList.size() + "条";
// TODO 填充短信报送内容
String extraInfo = String.format("已报送%d条", alertSubmittedExtVoList.size());
schedulingReportingVo.setExtraInfo(extraInfo);
return schedulingReportingVo;
}
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.module.jcs.api.dto.FireCarDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyResourcesDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferDto;
import com.yeejoin.amos.boot.module.jcs.api.entity.*;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertCalled;
import com.yeejoin.amos.boot.module.jcs.api.entity.AlertFormValue;
import com.yeejoin.amos.boot.module.jcs.api.entity.FireTeam;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransfer;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransferCompany;
import com.yeejoin.amos.boot.module.jcs.api.entity.PowerTransferCompanyResources;
import com.yeejoin.amos.boot.module.jcs.api.entity.Template;
import com.yeejoin.amos.boot.module.jcs.api.enums.FireCarStatusEnum;
import com.yeejoin.amos.boot.module.jcs.api.mapper.PowerTransferMapper;
import com.yeejoin.amos.boot.module.jcs.api.service.*;
import com.yeejoin.amos.boot.module.jcs.api.service.EquipFeignService;
import com.yeejoin.amos.boot.module.jcs.api.service.IAlertCalledService;
import com.yeejoin.amos.boot.module.jcs.api.service.IAlertFormValueService;
import com.yeejoin.amos.boot.module.jcs.api.service.IPowerTransferCompanyResourcesService;
import com.yeejoin.amos.boot.module.jcs.api.service.IPowerTransferCompanyService;
import com.yeejoin.amos.boot.module.jcs.api.service.IPowerTransferService;
import com.yeejoin.amos.boot.module.jcs.api.service.ITemplateService;
import com.yeejoin.amos.boot.module.jcs.api.vo.PowerTransferCompanyResourcesVo;
import com.yeejoin.amos.boot.module.jcs.api.vo.PowerTransferVo;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 力量调派 服务实现类
......@@ -49,6 +68,12 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto,Power
@Autowired
IAlertFormValueService iAlertFormValueService;
@Autowired
EquipFeignService equipFeignService;
@Autowired
FireTeamServiceImpl fireTeamService;
public PowerTransferVo getPowerTransferList(Long alertCalledId) {
List<PowerTransferCompanyResourcesVo> powerTransferList =
powerTransferMapper.getPowerTransferList(alertCalledId);
......@@ -60,7 +85,7 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto,Power
}
@Override
@Transactional
@Transactional(rollbackFor = Exception.class)
public boolean createPowerTransfer(PowerTransferDto powerTransferDto) {
// 获取调派ID
Long alertCalledId = powerTransferDto.getAlertCalledId();
......@@ -92,6 +117,27 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto,Power
return true;
}
@Override
public void getPowerTree() {
// 1.调用装备服务接口查询车辆列表
List<FireCarDto> fireCarDtoList = Lists.newArrayList();
ResponseModel<Object> result = equipFeignService.getFireCarListAll();
if (!ObjectUtils.isEmpty(result)) {
List<Map<String, Object>> fireCarListMapList = (List<Map<String, Object>>) result.getResult();
fireCarListMapList.stream().filter(car -> ObjectUtils.isNotEmpty(car.get("teamId"))).forEach(car -> {
FireCarDto fireCarDto = (FireCarDto) Bean.mapToBean(car, FireCarDto.class);
if (FireCarStatusEnum.onDuty.getCode().equals(fireCarDto.getCarState())) {
fireCarDto.setCarStateDesc(FireCarStatusEnum.onDuty.getName());
} else {
fireCarDto.setCarStateDesc(FireCarStatusEnum.out.getName());
}
fireCarDtoList.add(fireCarDto);
});
}
// 2.查询消防队伍列表
List<FireTeam> fullTimeFireBrigadeList = fireTeamService.list(new QueryWrapper<FireTeam>().eq("type_code", ""));
}
private List<PowerTransferCompanyResources> DtoEntityBatchConvert(List<PowerTransferCompanyResourcesDto> powerTransferCompanyResourcesDtoList, Long powerTransferCompanySequenceNbr) {
ArrayList<PowerTransferCompanyResources> powerTransferCompanyResourcesList = new ArrayList<>();
PowerTransferCompanyResources powerTransferCompanyResources;
......
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