Commit c4dfce55 authored by lisong's avatar lisong

修改bug

parent ddbff2fb
......@@ -54,6 +54,12 @@ public class AlertCalledMobDto {
@ApiModelProperty(value = "结束时间")
String endTime;
@ApiModelProperty(value = "总人数")
String totalPeople;
@ApiModelProperty(value = "总水量")
String totalWater;
@ApiModelProperty(value = "总泡沫")
String totalFoam;
}
......@@ -54,6 +54,9 @@ public class PowerTransferCompanyResources extends BaseEntity {
@ApiModelProperty(value = "任务备注")
private String remarks;
@ApiModelProperty(value = "车辆到场时间")
private String arrivalTime;
@ApiModelProperty(value = "任务状态")
@TableField(exist = false)
private String statusName;
......
......@@ -138,7 +138,8 @@
b.company_name companyName,
c.resources_name carName,
c.resources_num carNum,
c.resources_id id
c.resources_id id,
c.arrival_time arrivalTime
FROM
jc_power_transfer a
LEFT JOIN jc_power_transfer_company b ON a.sequence_nbr = b.power_transfer_id
......@@ -155,7 +156,8 @@
b.company_name companyName,
c.resources_name carName,
c.resources_num carNum,
c.resources_id id
c.resources_id id,
c.arrival_time arrivalTime
FROM
jc_power_transfer a
LEFT JOIN jc_power_transfer_company b ON a.sequence_nbr = b.power_transfer_id
......
......@@ -52,6 +52,12 @@
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.amosframework.boot</groupId>
<artifactId>amos-boot-module-command-biz</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
<repositories>
......
......@@ -7,6 +7,7 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
......@@ -29,6 +30,8 @@ import java.util.function.Consumer;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import com.yeejoin.amos.boot.module.command.api.dto.FrontlineLiaisonDto;
import com.yeejoin.amos.boot.module.command.biz.service.impl.FrontlineLiaisonServiceImpl;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xwpf.usermodel.XWPFTable;
......@@ -44,6 +47,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import org.typroject.tyboot.component.emq.EmqKeeper;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
......@@ -129,6 +133,7 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.rule.RuleTrigger;
import com.yeejoin.amos.component.rule.config.RuleConfig;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
/**
......@@ -205,6 +210,10 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
@Autowired
private RuleTrigger ruleTrigger;
@Autowired
private FrontlineLiaisonServiceImpl frontlineLiaisonServiceImpl;
@Value("${mqtt.topic.command.alert.noticeJa}")
private String topicJa;
......@@ -840,6 +849,9 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
List<Map<String, Object>> other = alertSubmittedMapper.getOther(alertCalled.getSequenceNbr());
LinkedList<AlertCalledPowerInfoDto> list = new LinkedList<>();
BigDecimal totalWater = new BigDecimal("0");
BigDecimal totalFoam = new BigDecimal("0");
BigDecimal totalPeople = new BigDecimal("0");
for(int i = 0; i <first.size(); i++) {
AlertCalledPowerInfoDto dto = new AlertCalledPowerInfoDto();
if(i == 0) {
......@@ -852,9 +864,45 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
report.setToTime((DateUtils.dateFormat(date,DateUtils.HOUR_PATTERN)));
report.setArriveTime((DateUtils.dateFormat(date,DateUtils.HOUR_PATTERN)));
// report.setArriveTime((DateUtils.dateFormat(date,DateUtils.HOUR_PATTERN)));
//
// dto.setArriveTime((DateUtils.dateFormat(date,DateUtils.HOUR_PATTERN)));
// list.add(dto);
// 人数
if (!ObjectUtils.isEmpty(dto.getPersonNum())){
totalPeople = totalPeople.add(new BigDecimal(dto.getPersonNum()));
}
if (!ObjectUtils.isEmpty(first.get(i).get("arrivalTime"))){
dto.setArriveTime(first.get(i).get("arrivalTime").toString());
if (!ObjectUtils.isEmpty(report.getArriveTime())){
Date parseOld = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(report.getArriveTime());
Date parseNew = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(first.get(i).get("arrivalTime").toString());
if (parseNew.getTime() < parseOld.getTime()){
report.setArriveTime(first.get(i).get("arrivalTime").toString());
}
}else {
report.setArriveTime(first.get(i).get("arrivalTime").toString());
}
}
dto.setArriveTime((DateUtils.dateFormat(date,DateUtils.HOUR_PATTERN)));
// 查询车辆资源
ArrayList<Long> longs = new ArrayList<>();
if (!ObjectUtils.isEmpty(first.get(i).get("id"))){
longs.add(Long.valueOf(first.get(i).get("id").toString()));
ResponseModel<Map<String, Object>> carPropertyByCarIds = equipFeignClient.getCarPropertyByCarIds(longs);
if (!ObjectUtils.isEmpty(carPropertyByCarIds.getResult().get("waterNum"))){
dto.setWater(String.valueOf(carPropertyByCarIds.getResult().get("waterNum")));
totalWater = totalWater.add(new BigDecimal(String.valueOf(carPropertyByCarIds.getResult().get("waterNum"))));
}else {
dto.setWater("0");
}
if (!ObjectUtils.isEmpty(carPropertyByCarIds.getResult().get("foamNum"))){
dto.setFoam(String.valueOf(carPropertyByCarIds.getResult().get("foamNum")));
totalFoam = totalFoam.add(new BigDecimal(String.valueOf(carPropertyByCarIds.getResult().get("foamNum"))));
}else {
dto.setFoam("0");
}
}
list.add(dto);
}
......@@ -862,30 +910,87 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
AlertCalledPowerInfoDto dto = new AlertCalledPowerInfoDto();
handleFunc(dto,other.get(i));
LocalDateTime dateTime = (LocalDateTime)other.get(i).get("recDate");
Date date = Date.from(dateTime.toInstant(ZoneOffset.of("+8")));
// LocalDateTime dateTime = (LocalDateTime)other.get(i).get("recDate");
// Date date = Date.from(dateTime.toInstant(ZoneOffset.of("+8")));
//
// dto.setArriveTime((DateUtils.dateFormat(date,DateUtils.HOUR_PATTERN)));
// list.add(dto);
if (!ObjectUtils.isEmpty(dto.getPersonNum())){
totalPeople = totalPeople.add(new BigDecimal(dto.getPersonNum()));
}
if (!ObjectUtils.isEmpty(other.get(i).get("arrivalTime"))){
dto.setArriveTime(other.get(i).get("arrivalTime").toString());
if (!ObjectUtils.isEmpty(report.getArriveTime())){
Date parseOld = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(report.getArriveTime());
Date parseNew = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(other.get(i).get("arrivalTime").toString());
if (parseNew.getTime() < parseOld.getTime()){
report.setArriveTime(other.get(i).get("arrivalTime").toString());
}
}else {
report.setArriveTime(other.get(i).get("arrivalTime").toString());
}
}
dto.setArriveTime((DateUtils.dateFormat(date,DateUtils.HOUR_PATTERN)));
// 查询车辆资源
ArrayList<Long> longs = new ArrayList<>();
if (!ObjectUtils.isEmpty(other.get(i).get("id"))){
longs.add(Long.valueOf(other.get(i).get("id").toString()));
ResponseModel<Map<String, Object>> carPropertyByCarIds = equipFeignClient.getCarPropertyByCarIds(longs);
if (!ObjectUtils.isEmpty(carPropertyByCarIds.getResult().get("waterNum"))){
dto.setWater(String.valueOf(carPropertyByCarIds.getResult().get("waterNum")));
totalWater = totalWater.add(new BigDecimal(String.valueOf(carPropertyByCarIds.getResult().get("waterNum"))));
}else {
dto.setWater("0");
}
if (!ObjectUtils.isEmpty(carPropertyByCarIds.getResult().get("foamNum"))){
dto.setFoam(String.valueOf(carPropertyByCarIds.getResult().get("foamNum")));
totalFoam = totalFoam.add(new BigDecimal(String.valueOf(carPropertyByCarIds.getResult().get("foamNum"))));
}else {
dto.setFoam("0");
}
}
list.add(dto);
}
// 查询应急指挥辅屏值班人员
List<Map<String, Object>> mapList = iDutyPersonService.listOnDutyPerson();
// 查询前线指挥信息
List<FrontlineLiaisonDto> frontlineLiaisonDtos = frontlineLiaisonServiceImpl.queryForFrontlineLiaisonList(alertCalled.getSequenceNbr());
List<AlertCallCommandDto> list1 = new ArrayList<>();
mapList.forEach(e->{
AlertCallCommandDto dto = new AlertCallCommandDto();
dto.setName(e.get("userName").toString());
dto.setDuty(e.get("postTypeName").toString());
list1.add(dto);
});
if (mapList.size() == 0) {
if (!CollectionUtils.isEmpty(frontlineLiaisonDtos)){
for (FrontlineLiaisonDto frontlineLiaisonDto : frontlineLiaisonDtos) {
AlertCallCommandDto commandDto = new AlertCallCommandDto();
commandDto.setDuty(frontlineLiaisonDto.getJobTitle());
commandDto.setName(frontlineLiaisonDto.getName());
list1.add(commandDto);
}
}else {
AlertCallCommandDto commandDto = new AlertCallCommandDto();
commandDto.setName("");
commandDto.setDuty("");
list1.add(commandDto);
}
// // 查询应急指挥辅屏值班人员
// List<Map<String, Object>> mapList = iDutyPersonService.listOnDutyPerson();
// List<AlertCallCommandDto> list1 = new ArrayList<>();
// mapList.forEach(e->{
// AlertCallCommandDto dto = new AlertCallCommandDto();
// dto.setName(e.get("userName").toString());
// dto.setDuty(e.get("postTypeName").toString());
// list1.add(dto);
// });
//
// if (mapList.size() == 0) {
// AlertCallCommandDto commandDto = new AlertCallCommandDto();
// commandDto.setName("");
// commandDto.setDuty("");
// list1.add(commandDto);
// }
report.setTotalWater(String.valueOf(totalWater));
report.setTotalFoam(String.valueOf(totalFoam));
report.setTotalPeople(String.valueOf(totalPeople));
report.setAlertCallCommandDtoList(list1);
report.setAlertCalledPowerInfoDtoList(list);
......@@ -1049,7 +1154,7 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
List<RowRenderData> checkDangerList = Lists.newArrayList();
reportDto.forEach(foreachWithIndex((report, index) -> {
RowRenderData rowRenderData = RowRenderData.build(String.valueOf(reportDto.size() - index),
report.getStation(), report.getArriveTime(), report.getCarName(),report.getPersonNum(),report.getDisatchNum(),report.getDryPowder(),report.getFoam(),report.getOther());
report.getStation(), report.getArriveTime(), report.getCarName(),report.getPersonNum(),report.getWater(),report.getFoam(),report.getDryPowder(),report.getOther(),report.getDisatchNum());
checkDangerList.add(rowRenderData);
}));
generateTableData(table, checkDangerList);
......@@ -1102,9 +1207,9 @@ public class AlertSubmittedServiceImpl extends BaseService<AlertSubmittedDto, Al
public static void generateTableData(XWPFTable table, List<RowRenderData> dangerList) {
String firstSize ="";
if (!ValidationUtil.isEmpty(dangerList)) {
firstSize = dangerList.get(0).getCellDatas().get(5).getRenderData().getText();
firstSize = dangerList.get(0).getCellDatas().get(9).getRenderData().getText();
int fSizs = Integer.parseInt(firstSize);
dangerList.get(0).getCellDatas().get(5).getRenderData().setText("");
dangerList.get(0).getCellDatas().get(9).getRenderData().setText("");
// 表格渲染和列表数据下标相反,需要翻转一下列表
List<RowRenderData> reverseList = Lists.reverse(dangerList);
......
......@@ -15,7 +15,9 @@ import org.springframework.transaction.annotation.Transactional;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
......@@ -76,6 +78,10 @@ public class PowerTransferCompanyResourcesServiceImpl extends BaseService<PowerT
// 更新所有车辆状态为执勤
equipFeignClient.updateCarStatus(carStatusInfoDtoList);
} else {
if (FireCarStatusEnum.到场.getCode().equals(code)){
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
powerTransferCompanyResources.setArrivalTime(format.format(new Date()));
}
powerTransferCompanyResources.setCarStatus(code);
powerTransferCompanyResources.setRemarks(remarks);
powerTransferCompanyResourcesMapper.updateById(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