Commit 73083f2c authored by tangwei's avatar tangwei

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

parents 0af6975c 31a910eb
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.client; package com.yeejoin.amos.boot.module.jcs.api.feign;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jcs.api.dto.EquipSpecificDto; import com.yeejoin.amos.boot.module.jcs.api.dto.EquipSpecificDto;
......
package com.yeejoin.amos.boot.module.jcs.api.client; package com.yeejoin.amos.boot.module.jcs.api.feign;
import feign.codec.Encoder; import feign.codec.Encoder;
import feign.form.spring.SpringFormEncoder; import feign.form.spring.SpringFormEncoder;
......
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();
}
...@@ -22,4 +22,8 @@ public interface IPowerTransferService extends IService<PowerTransfer> { ...@@ -22,4 +22,8 @@ public interface IPowerTransferService extends IService<PowerTransfer> {
List<PowerTransferCompanyVo> getLastPowerTransferCompany(Long alertCalledId); List<PowerTransferCompanyVo> getLastPowerTransferCompany(Long alertCalledId);
/**
* 获取力量调派资源树
*/
void getPowerTree();
} }
...@@ -22,6 +22,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseHelper; ...@@ -22,6 +22,7 @@ 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 javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.HEAD;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.util.*; import java.util.*;
...@@ -117,7 +118,6 @@ public class AlertSubmittedController extends BaseController { ...@@ -117,7 +118,6 @@ public class AlertSubmittedController extends BaseController {
@RequestMapping(value = "/scheduling/list", method = RequestMethod.POST) @RequestMapping(value = "/scheduling/list", method = RequestMethod.POST)
@ApiOperation(httpMethod = "POST", value = "根据警情id查询融合调度列表", notes = "根据警情id查询融合调度列表") @ApiOperation(httpMethod = "POST", value = "根据警情id查询融合调度列表", notes = "根据警情id查询融合调度列表")
public ResponseModel<SchedulingReportingVo> listSchedulingByParam(@RequestBody AlertSubmittedDto queryParam) { public ResponseModel<SchedulingReportingVo> listSchedulingByParam(@RequestBody AlertSubmittedDto queryParam) {
queryParam.setSubmissionMethodCode(SubmissionMethodEnum.SMS.getCode());
return ResponseHelper.buildResponse(alertSubmittedService.listSchedulingByParam(queryParam)); return ResponseHelper.buildResponse(alertSubmittedService.listSchedulingByParam(queryParam));
} }
...@@ -126,9 +126,8 @@ public class AlertSubmittedController extends BaseController { ...@@ -126,9 +126,8 @@ public class AlertSubmittedController extends BaseController {
@ApiOperation(httpMethod = "POST", value = "根据警情id查询警情报送列表", notes = "根据警情id查询警情报送列表") @ApiOperation(httpMethod = "POST", value = "根据警情id查询警情报送列表", notes = "根据警情id查询警情报送列表")
public ResponseModel<SchedulingReportingVo> listReportingByParam(@RequestBody AlertSubmittedDto queryParam) { public ResponseModel<SchedulingReportingVo> listReportingByParam(@RequestBody AlertSubmittedDto queryParam) {
queryParam.setSubmissionMethodCode(SubmissionMethodEnum.SMS.getCode()); queryParam.setSubmissionMethodCode(SubmissionMethodEnum.PHONE.getCode());
return ResponseHelper.buildResponse(alertSubmittedService.listReportingByParam(queryParam)); return ResponseHelper.buildResponse(alertSubmittedService.listReportingByParam(queryParam));
} }
/** /**
......
...@@ -175,5 +175,13 @@ public class PowerTransferController extends BaseController { ...@@ -175,5 +175,13 @@ public class PowerTransferController extends BaseController {
boolean save = powerTransferService.createPowerTransfer(powerTransferDto); boolean save = powerTransferService.createPowerTransfer(powerTransferDto);
return ResponseHelper.buildResponse(save); 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,18 @@ import com.yeejoin.amos.boot.module.jcs.api.service.IAlertSubmittedObjectService ...@@ -14,12 +14,18 @@ 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.service.IAlertSubmittedService;
import com.yeejoin.amos.boot.module.jcs.api.vo.*; import com.yeejoin.amos.boot.module.jcs.api.vo.*;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
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.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.util.List;
import java.util.Map;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
/** /**
* 警情报送记录 服务实现类 * 警情报送记录 服务实现类
...@@ -48,7 +54,17 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto,Ale ...@@ -48,7 +54,17 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto,Ale
SchedulingReportingVo schedulingReportingVo = new SchedulingReportingVo(); SchedulingReportingVo schedulingReportingVo = new SchedulingReportingVo();
List<AlertSubmittedExtVo> alertSubmittedExtVoList = this.baseMapper.listSchedulingByParam(queryParam); List<AlertSubmittedExtVo> alertSubmittedExtVoList = this.baseMapper.listSchedulingByParam(queryParam);
schedulingReportingVo.setSchedulingReportingList(alertSubmittedExtVoList); 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); schedulingReportingVo.setExtraInfo(extraInfo);
return schedulingReportingVo; return schedulingReportingVo;
} }
...@@ -58,7 +74,9 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto,Ale ...@@ -58,7 +74,9 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto,Ale
SchedulingReportingVo schedulingReportingVo = new SchedulingReportingVo(); SchedulingReportingVo schedulingReportingVo = new SchedulingReportingVo();
List<AlertSubmittedExtVo> alertSubmittedExtVoList = this.baseMapper.listReportingByParam(queryParam); List<AlertSubmittedExtVo> alertSubmittedExtVoList = this.baseMapper.listReportingByParam(queryParam);
schedulingReportingVo.setSchedulingReportingList(alertSubmittedExtVoList); schedulingReportingVo.setSchedulingReportingList(alertSubmittedExtVoList);
String extraInfo = "已报送" + alertSubmittedExtVoList.size() + "条"; // TODO 填充短信报送内容
String extraInfo = String.format("已报送%d条", alertSubmittedExtVoList.size());
schedulingReportingVo.setExtraInfo(extraInfo); schedulingReportingVo.setExtraInfo(extraInfo);
return schedulingReportingVo; return schedulingReportingVo;
} }
......
...@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.jcs.biz.service.impl; ...@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.jcs.api.client.EquipFeignClient; import com.yeejoin.amos.boot.module.jcs.api.feign.EquipFeignClient;
import com.yeejoin.amos.boot.module.jcs.api.dto.EquipSpecificDto; import com.yeejoin.amos.boot.module.jcs.api.dto.EquipSpecificDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.EquipmentOnCarDto; import com.yeejoin.amos.boot.module.jcs.api.dto.EquipmentOnCarDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.FirefightersJacketDto; import com.yeejoin.amos.boot.module.jcs.api.dto.FirefightersJacketDto;
......
package com.yeejoin.amos.boot.module.jcs.biz.service.impl; package com.yeejoin.amos.boot.module.jcs.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.PowerTransferCompanyDto;
import com.yeejoin.amos.boot.module.jcs.api.dto.PowerTransferCompanyResourcesDto; 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.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.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.PowerTransferCompanyResourcesVo;
import com.yeejoin.amos.boot.module.jcs.api.vo.PowerTransferCompanyVo; import com.yeejoin.amos.boot.module.jcs.api.vo.PowerTransferCompanyVo;
import com.yeejoin.amos.boot.module.jcs.api.vo.PowerTransferVo; import com.yeejoin.amos.boot.module.jcs.api.vo.PowerTransferVo;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
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;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.rdbms.service.BaseService; import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors;
/** /**
* 力量调派 服务实现类 * 力量调派 服务实现类
...@@ -46,6 +65,12 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto, Powe ...@@ -46,6 +65,12 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto, Powe
@Autowired @Autowired
AlertFormValueServiceImpl alertFormValueService; AlertFormValueServiceImpl alertFormValueService;
@Autowired
EquipFeignService equipFeignService;
@Autowired
FireTeamServiceImpl fireTeamService;
public PowerTransferVo getPowerTransferList(Long alertCalledId) { public PowerTransferVo getPowerTransferList(Long alertCalledId) {
List<PowerTransferCompanyResourcesVo> powerTransferList = List<PowerTransferCompanyResourcesVo> powerTransferList =
this.baseMapper.getPowerTransferList(alertCalledId); this.baseMapper.getPowerTransferList(alertCalledId);
...@@ -57,7 +82,7 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto, Powe ...@@ -57,7 +82,7 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto, Powe
} }
@Override @Override
@Transactional @Transactional(rollbackFor = Exception.class)
public boolean createPowerTransfer(PowerTransferDto powerTransferDto) { public boolean createPowerTransfer(PowerTransferDto powerTransferDto) {
// 获取调派ID // 获取调派ID
Long alertCalledId = powerTransferDto.getAlertCalledId(); Long alertCalledId = powerTransferDto.getAlertCalledId();
...@@ -89,6 +114,27 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto, Powe ...@@ -89,6 +114,27 @@ public class PowerTransferServiceImpl extends BaseService<PowerTransferDto, Powe
return true; 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) { private List<PowerTransferCompanyResources> DtoEntityBatchConvert(List<PowerTransferCompanyResourcesDto> powerTransferCompanyResourcesDtoList, Long powerTransferCompanySequenceNbr) {
ArrayList<PowerTransferCompanyResources> powerTransferCompanyResourcesList = new ArrayList<>(); ArrayList<PowerTransferCompanyResources> powerTransferCompanyResourcesList = new ArrayList<>();
PowerTransferCompanyResources powerTransferCompanyResources; 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