|
@@ -11,10 +11,12 @@ import com.usky.common.core.exception.BusinessException;
|
|
|
import com.usky.common.mybatis.core.AbstractCrudService;
|
|
|
import com.usky.common.security.utils.SecurityUtils;
|
|
|
import com.usky.fire.domain.DemFileLabel;
|
|
|
+import com.usky.fire.domain.DemFireLabelAttribute;
|
|
|
import com.usky.fire.domain.DemFireStatistics;
|
|
|
import com.usky.fire.domain.DemFireStatisticsAttach;
|
|
|
import com.usky.fire.mapper.DemFireStatisticsMapper;
|
|
|
import com.usky.fire.service.DemFileLabelService;
|
|
|
+import com.usky.fire.service.DemFireLabelAttributeService;
|
|
|
import com.usky.fire.service.DemFireStatisticsAttachService;
|
|
|
import com.usky.fire.service.DemFireStatisticsService;
|
|
|
import com.usky.fire.service.util.OnlineMethod;
|
|
@@ -47,18 +49,53 @@ public class DemFireStatisticsServiceImpl extends AbstractCrudService<DemFireSta
|
|
|
@Autowired
|
|
|
private DemFileLabelService demFileLabelService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private DemFireLabelAttributeService demFireLabelAttributeService;
|
|
|
+
|
|
|
@Override
|
|
|
- public CommonPage<Object> fireAccidentStatistic(String fireNumber, Integer labelId, Integer classifyId, Integer id, Integer pageNum, Integer pageSize) {
|
|
|
+ public CommonPage<Object> fireAccidentStatistic(String fireNumber, Integer labelId, Integer typeId, Integer id, Integer pageNum, Integer pageSize) {
|
|
|
+ Integer type1 = 0;
|
|
|
+ Integer type2 = 0;
|
|
|
+ Integer type3 = 0;
|
|
|
+ Integer type4 = 0;
|
|
|
+ Integer type5 = 0;
|
|
|
+ if (labelId != null && labelId != 0) {
|
|
|
+ LambdaQueryWrapper<DemFireLabelAttribute> queryWrapper1 = Wrappers.lambdaQuery();
|
|
|
+ queryWrapper1.eq(DemFireLabelAttribute::getLabelId, labelId);
|
|
|
+ List<DemFireLabelAttribute> list1 = demFireLabelAttributeService.list(queryWrapper1);
|
|
|
+ if (list1.size() > 0) {
|
|
|
+ switch (list1.get(0).getAttribute()) {
|
|
|
+ case "typeId1":
|
|
|
+ type1 = typeId;
|
|
|
+ break;
|
|
|
+ case "typeId2":
|
|
|
+ type2 = typeId;
|
|
|
+ break;
|
|
|
+ case "typeId3":
|
|
|
+ type3 = typeId;
|
|
|
+ break;
|
|
|
+ case "typeId4":
|
|
|
+ type4 = typeId;
|
|
|
+ break;
|
|
|
+ case "typeId5":
|
|
|
+ type5 = typeId;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
IPage<DemFireStatistics> page = new Page<>(pageNum, pageSize);
|
|
|
LambdaQueryWrapper<DemFireStatistics> queryWrapper = Wrappers.lambdaQuery();
|
|
|
queryWrapper.select(DemFireStatistics::getBurnedArea, DemFireStatistics::getDirectPropertyLoss, DemFireStatistics::getVictimNumber,
|
|
|
DemFireStatistics::getInjuredNumber, DemFireStatistics::getDeathToll, DemFireStatistics::getFileCase, DemFireStatistics::getFireGrade,
|
|
|
DemFireStatistics::getSubordinateDetachment, DemFireStatistics::getAdministrativeDivision, DemFireStatistics::getFireNumber,
|
|
|
- DemFireStatistics::getFireAddress, DemFireStatistics::getFireTime, DemFireStatistics::getId, DemFireStatistics::getLabelId,
|
|
|
- DemFireStatistics::getClassifyId)
|
|
|
+ DemFireStatistics::getFireAddress, DemFireStatistics::getFireTime, DemFireStatistics::getId, DemFireStatistics::getTypeId1,
|
|
|
+ DemFireStatistics::getTypeId2, DemFireStatistics::getTypeId3, DemFireStatistics::getTypeId4, DemFireStatistics::getTypeId5)
|
|
|
.like(StringUtils.isNotBlank(fireNumber), DemFireStatistics::getFireNumber, fireNumber)
|
|
|
- .eq(labelId != null && labelId != 0, DemFireStatistics::getLabelId, labelId)
|
|
|
- .eq(classifyId != null & classifyId != 0, DemFireStatistics::getClassifyId, classifyId)
|
|
|
+ .eq(type1 != null && type1 != 0, DemFireStatistics::getTypeId1, type1)
|
|
|
+ .eq(type2 != null && type2 != 0, DemFireStatistics::getTypeId2, type2)
|
|
|
+ .eq(type3 != null && type3 != 0, DemFireStatistics::getTypeId3, type3)
|
|
|
+ .eq(type4 != null && type4 != 0, DemFireStatistics::getTypeId5, type4)
|
|
|
+ .eq(type5 != null && type5 != 0, DemFireStatistics::getTypeId5, type5)
|
|
|
.eq(id != null & id != 0, DemFireStatistics::getId, id)
|
|
|
.orderByDesc(DemFireStatistics::getId);
|
|
|
page = this.page(page, queryWrapper);
|
|
@@ -68,17 +105,13 @@ public class DemFireStatisticsServiceImpl extends AbstractCrudService<DemFireSta
|
|
|
List<Integer> labelIdList = new ArrayList<>();
|
|
|
for (int i = 0; i < page.getTotal(); i++) {
|
|
|
fireNumberList.add(page.getRecords().get(i).getFireNumber());
|
|
|
- labelIdList.add(page.getRecords().get(i).getLabelId());
|
|
|
}
|
|
|
List<DemFireStatisticsAttach> demFireStatisticsAttaches = new ArrayList<>();
|
|
|
if (CollectionUtils.isNotEmpty(fireNumberList)) {
|
|
|
demFireStatisticsAttaches = demFireStatisticsAttachService.fireAccidentStatistic(fireNumberList);
|
|
|
}
|
|
|
|
|
|
- List<DemFileLabel> demFileLabels = new ArrayList<>();
|
|
|
- if (CollectionUtils.isNotEmpty(labelIdList)) {
|
|
|
- demFileLabels = demFileLabelService.demFileLabelList(null, null, labelIdList);
|
|
|
- }
|
|
|
+ List<DemFileLabel> demFileLabels = demFileLabelService.demFileLabelList(null, null, null);
|
|
|
for (int i = 0; i < page.getTotal(); i++) {
|
|
|
Map<String, Object> map = new HashMap<>();
|
|
|
map.put("id", page.getRecords().get(i).getId());
|
|
@@ -94,8 +127,16 @@ public class DemFireStatisticsServiceImpl extends AbstractCrudService<DemFireSta
|
|
|
map.put("fireNumber", page.getRecords().get(i).getFireNumber());
|
|
|
map.put("fireAddress", page.getRecords().get(i).getFireAddress());
|
|
|
map.put("fireTime", page.getRecords().get(i).getFireTime());
|
|
|
- map.put("labelId", page.getRecords().get(i).getLabelId());
|
|
|
- map.put("classifyId", page.getRecords().get(i).getClassifyId());
|
|
|
+ map.put("typeId1", page.getRecords().get(i).getTypeId1());
|
|
|
+ map.put("typeId2", page.getRecords().get(i).getTypeId2());
|
|
|
+ map.put("typeId3", page.getRecords().get(i).getTypeId3());
|
|
|
+ map.put("typeId4", page.getRecords().get(i).getTypeId4());
|
|
|
+ map.put("typeId5", page.getRecords().get(i).getTypeId5());
|
|
|
+ map.put("typeName1", null);
|
|
|
+ map.put("typeName2", null);
|
|
|
+ map.put("typeName3", null);
|
|
|
+ map.put("typeName4", null);
|
|
|
+ map.put("typeName5", null);
|
|
|
map.put("zid", null);
|
|
|
map.put("fireCauseType1", null);
|
|
|
map.put("fireSiteType1", null);
|
|
@@ -108,8 +149,20 @@ public class DemFireStatisticsServiceImpl extends AbstractCrudService<DemFireSta
|
|
|
}
|
|
|
}
|
|
|
for (int j = 0; j < demFileLabels.size(); j++) {
|
|
|
- if (page.getRecords().get(i).getLabelId() == demFileLabels.get(j).getId()) {
|
|
|
- map.put("labelName", demFileLabels.get(j).getLabelName());
|
|
|
+ if (page.getRecords().get(i).getTypeId1() == demFileLabels.get(j).getId()) {
|
|
|
+ map.put("typeName1", demFileLabels.get(j).getLabelName());
|
|
|
+ }
|
|
|
+ if (page.getRecords().get(i).getTypeId2() == demFileLabels.get(j).getId()) {
|
|
|
+ map.put("typeName2", demFileLabels.get(j).getLabelName());
|
|
|
+ }
|
|
|
+ if (page.getRecords().get(i).getTypeId3() == demFileLabels.get(j).getId()) {
|
|
|
+ map.put("typeName3", demFileLabels.get(j).getLabelName());
|
|
|
+ }
|
|
|
+ if (page.getRecords().get(i).getTypeId4() == demFileLabels.get(j).getId()) {
|
|
|
+ map.put("typeName4", demFileLabels.get(j).getLabelName());
|
|
|
+ }
|
|
|
+ if (page.getRecords().get(i).getTypeId4() == demFileLabels.get(j).getId()) {
|
|
|
+ map.put("typeName5", demFileLabels.get(j).getLabelName());
|
|
|
}
|
|
|
}
|
|
|
list.add(map);
|
|
@@ -126,7 +179,28 @@ public class DemFireStatisticsServiceImpl extends AbstractCrudService<DemFireSta
|
|
|
if (count > 0) {
|
|
|
throw new BusinessException("标签名不可重复");
|
|
|
}
|
|
|
+ LambdaQueryWrapper<DemFireLabelAttribute> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+ List<DemFireLabelAttribute> list = demFireLabelAttributeService.list(queryWrapper);
|
|
|
+ String typeAttribute = "typeId1";
|
|
|
+ if (list.size() > 1) {
|
|
|
+ List<String> typeIdList1 = new ArrayList<>();
|
|
|
+ typeIdList1.add("typeId1");
|
|
|
+ typeIdList1.add("typeId2");
|
|
|
+ typeIdList1.add("typeId3");
|
|
|
+ typeIdList1.add("typeId4");
|
|
|
+ typeIdList1.add("typeId5");
|
|
|
+ List<String> typeIdList2 = new ArrayList<>();
|
|
|
+ for (int i = 0; i < list.size(); i++) {
|
|
|
+ typeIdList2.add(list.get(i).getAttribute());
|
|
|
+ }
|
|
|
+ List<String> typeIdList = OnlineMethod.subList2(typeIdList1, typeIdList2);
|
|
|
+ typeAttribute = typeIdList.get(0);
|
|
|
+ }
|
|
|
demFileLabelService.addDemFileLabel(demFileLabel);
|
|
|
+ DemFireLabelAttribute demFireLabelAttribute = new DemFireLabelAttribute();
|
|
|
+ demFireLabelAttribute.setLabelId(demFileLabel.getId());
|
|
|
+ demFireLabelAttribute.setAttribute(typeAttribute);
|
|
|
+ demFireLabelAttributeService.save(demFireLabelAttribute);
|
|
|
} else {
|
|
|
int count = demFileLabelService.demFileLabelCount(0, demFileLabel.getLabelName(), demFileLabel.getId());
|
|
|
if (count > 0) {
|
|
@@ -229,11 +303,29 @@ public class DemFireStatisticsServiceImpl extends AbstractCrudService<DemFireSta
|
|
|
@Transactional
|
|
|
@Override
|
|
|
public void bindingLabel(ParameterVo parameterVo) {
|
|
|
+ LambdaQueryWrapper<DemFireLabelAttribute> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+ queryWrapper.eq(DemFireLabelAttribute::getLabelId, parameterVo.getLabelId());
|
|
|
+ List<DemFireLabelAttribute> list = demFireLabelAttributeService.list(queryWrapper);
|
|
|
for (int i = 0; i < parameterVo.getIdList().size(); i++) {
|
|
|
DemFireStatistics demFireStatistics = new DemFireStatistics();
|
|
|
demFireStatistics.setId(parameterVo.getIdList().get(i));
|
|
|
- demFireStatistics.setLabelId(parameterVo.getLabelId());
|
|
|
- demFireStatistics.setClassifyId(parameterVo.getClassifyId());
|
|
|
+ switch (list.get(0).getAttribute()) {
|
|
|
+ case "typeId1":
|
|
|
+ demFireStatistics.setTypeId1(parameterVo.getTypeId());
|
|
|
+ break;
|
|
|
+ case "typeId2":
|
|
|
+ demFireStatistics.setTypeId2(parameterVo.getTypeId());
|
|
|
+ break;
|
|
|
+ case "typeId3":
|
|
|
+ demFireStatistics.setTypeId3(parameterVo.getTypeId());
|
|
|
+ break;
|
|
|
+ case "typeId4":
|
|
|
+ demFireStatistics.setTypeId4(parameterVo.getTypeId());
|
|
|
+ break;
|
|
|
+ case "typeId5":
|
|
|
+ demFireStatistics.setTypeId5(parameterVo.getTypeId());
|
|
|
+ break;
|
|
|
+ }
|
|
|
this.updateById(demFireStatistics);
|
|
|
}
|
|
|
}
|
|
@@ -249,11 +341,14 @@ public class DemFireStatisticsServiceImpl extends AbstractCrudService<DemFireSta
|
|
|
demFireStatistics.setBurnedArea(demFireStatisticsVo.getBurnedArea());
|
|
|
demFireStatistics.setAdministrativeDivision(demFireStatisticsVo.getAdministrativeDivision());
|
|
|
demFireStatistics.setFillTime(demFireStatisticsVo.getFireTime());
|
|
|
- demFireStatistics.setClassifyId(demFireStatisticsVo.getClassifyId());
|
|
|
demFireStatistics.setDeathToll(demFireStatisticsVo.getDeathToll());
|
|
|
demFireStatistics.setFileCase(demFireStatisticsVo.getFileCase());
|
|
|
demFireStatistics.setDirectPropertyLoss(demFireStatisticsVo.getDirectPropertyLoss());
|
|
|
- demFireStatistics.setLabelId(demFireStatisticsVo.getLabelId());
|
|
|
+ demFireStatistics.setTypeId1(demFireStatisticsVo.getTypeId1());
|
|
|
+ demFireStatistics.setTypeId2(demFireStatisticsVo.getTypeId2());
|
|
|
+ demFireStatistics.setTypeId3(demFireStatisticsVo.getTypeId3());
|
|
|
+ demFireStatistics.setTypeId4(demFireStatisticsVo.getTypeId4());
|
|
|
+ demFireStatistics.setTypeId5(demFireStatisticsVo.getTypeId5());
|
|
|
demFireStatistics.setInjuredNumber(demFireStatisticsVo.getInjuredNumber());
|
|
|
demFireStatistics.setSubordinateDetachment(demFireStatisticsVo.getSubordinateDetachment());
|
|
|
demFireStatistics.setVictimNumber(demFireStatisticsVo.getVictimNumber());
|