Commit 2d32c02b authored by 赵啸非's avatar 赵啸非

添加统计子站点

parent 4ec085b1
......@@ -7,8 +7,6 @@ import com.mortals.framework.model.OrderCol;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.module.access.service.AccessService;
import com.mortals.xhx.module.access.service.AccessStatLogService;
import com.mortals.xhx.module.ph.model.PhQueueEntity;
import com.mortals.xhx.module.ph.model.PhQueueQuery;
import com.mortals.xhx.module.ph.model.PhQueueStatQuery;
......@@ -64,16 +62,26 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
// log.info("更新站点排队统计数据,站点ID:{},站点名称:{},日期:{},排队数量:{}", entity.getSiteId(), entity.getSiteName(), currentDate, phQueueEntities.size());
updateSitePhCount(entity, phQueueEntities);
List<PhQueueStatEntity> saveOrUpdateList=new ArrayList<>();
//部门
updateSiteSectionNamePhCount(currentDate, entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities = updateSiteSectionNamePhCount(currentDate, entity, phQueueEntities);
//大厅
updateSiteHallPhCount(currentDate, entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities1 = updateSiteHallPhCount(currentDate, entity, phQueueEntities);
//业务
updateSiteBussinessPhCount(currentDate, entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities2 = updateSiteBussinessPhCount(currentDate, entity, phQueueEntities);
//窗口
updateSiteWindowPhCount(currentDate, entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities3 = updateSiteWindowPhCount(currentDate, entity, phQueueEntities);
//组合条件更新
updateSiteConditionPhCount(entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities4 = updateSiteConditionPhCount(entity, phQueueEntities);
saveOrUpdateList.addAll(phQueueStatEntities);
saveOrUpdateList.addAll(phQueueStatEntities1);
saveOrUpdateList.addAll(phQueueStatEntities2);
saveOrUpdateList.addAll(phQueueStatEntities3);
saveOrUpdateList.addAll(phQueueStatEntities4);
saveUpdatePhStatList(saveOrUpdateList);
return Rest.ok();
}
......@@ -92,7 +100,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
}
}
private void updateSiteSectionNamePhCount(String currentDate, PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateSiteSectionNamePhCount(String currentDate, PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
Map<String, List<PhQueueEntity>> collect = phQueueEntities.parallelStream().collect(Collectors.groupingBy(x -> x.getSectionName()));
......@@ -109,11 +117,13 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
return phQueueStatEntity;
}).filter(f -> f != null).collect(Collectors.toList());
saveUpdatePjStatList(saveAndUpdatelist);
//saveUpdatePhStatList(saveAndUpdatelist);
return saveAndUpdatelist;
}
private void updateSiteHallPhCount(String currentDate, PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateSiteHallPhCount(String currentDate, PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
Map<String, List<PhQueueEntity>> collect = phQueueEntities.parallelStream().collect(Collectors.groupingBy(x -> x.getHallName()));
List<PhQueueStatEntity> saveAndUpdatelist = collect.entrySet().parallelStream().map(item -> {
......@@ -128,11 +138,12 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity.setHallName(hallName);
return phQueueStatEntity;
}).filter(f -> f != null).collect(Collectors.toList());
saveUpdatePjStatList(saveAndUpdatelist);
//saveUpdatePhStatList(saveAndUpdatelist);
return saveAndUpdatelist;
}
private void updateSiteBussinessPhCount(String currentDate, PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateSiteBussinessPhCount(String currentDate, PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
Map<String, List<PhQueueEntity>> collect = phQueueEntities.parallelStream().collect(Collectors.groupingBy(x -> x.getBusiness()));
List<PhQueueStatEntity> saveAndUpdatelist = collect.entrySet().parallelStream().map(item -> {
String bussiness = item.getKey();
......@@ -146,10 +157,11 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity.setBusiness(bussiness);
return phQueueStatEntity;
}).filter(f -> f != null).collect(Collectors.toList());
saveUpdatePjStatList(saveAndUpdatelist);
//saveUpdatePhStatList(saveAndUpdatelist);
return saveAndUpdatelist;
}
private void updateSiteWindowPhCount(String currentDate, PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateSiteWindowPhCount(String currentDate, PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
Map<String, List<PhQueueEntity>> collect = phQueueEntities.parallelStream().collect(Collectors.groupingBy(x -> x.getWindowFromnum()));
List<PhQueueStatEntity> saveAndUpdatelist = collect.entrySet().parallelStream().map(item -> {
......@@ -164,7 +176,8 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity.setWindowFromnum(window);
return phQueueStatEntity;
}).filter(f -> f != null).collect(Collectors.toList());
saveUpdatePjStatList(saveAndUpdatelist);
// saveUpdatePhStatList(saveAndUpdatelist);
return saveAndUpdatelist;
}
......@@ -196,23 +209,33 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
}
private void updateSiteConditionPhCount(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateSiteConditionPhCount(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
List<PhQueueStatEntity> phQueueStatEntities = new ArrayList<>();
//业务+部门 busniess+sectionName
updateBusinessAndSectionName(entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities1 = updateBusinessAndSectionName(entity, phQueueEntities);
//业务+窗口 busniess+WindowFromnum
updateBusinessAndWindowFromnum(entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities2 = updateBusinessAndWindowFromnum(entity, phQueueEntities);
//部门+窗口 sectionName+WindowFromnum
updateSectionNameAndWindowFromnum(entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities3 = updateSectionNameAndWindowFromnum(entity, phQueueEntities);
//业务+部门+窗口 busniess+sectionName+WindowFromnum
updateBusinessAndSectionNameAndWindow(entity, phQueueEntities);
List<PhQueueStatEntity> phQueueStatEntities4 = updateBusinessAndSectionNameAndWindow(entity, phQueueEntities);
phQueueStatEntities.addAll(phQueueStatEntities1);
phQueueStatEntities.addAll(phQueueStatEntities2);
phQueueStatEntities.addAll(phQueueStatEntities3);
phQueueStatEntities.addAll(phQueueStatEntities4);
return phQueueStatEntities;
}
private void updateBusinessAndSectionName(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateBusinessAndSectionName(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
Map<String, List<PhQueueEntity>> businessAndSectionCollect = phQueueEntities.parallelStream()
.collect(Collectors.groupingBy(x -> x.getBusiness() + "&" + x.getSectionName()));
List<PhQueueStatEntity> saveAndUpdatelist = businessAndSectionCollect.entrySet().parallelStream().map(item -> {
......@@ -230,11 +253,12 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity.setSectionName(split[1]);
return phQueueStatEntity;
}).filter(f -> f != null).collect(Collectors.toList());
saveUpdatePjStatList(saveAndUpdatelist);
//saveUpdatePhStatList(saveAndUpdatelist);
return saveAndUpdatelist;
}
private void updateBusinessAndWindowFromnum(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateBusinessAndWindowFromnum(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
Map<String, List<PhQueueEntity>> businessAndSectionCollect = phQueueEntities.parallelStream()
.collect(Collectors.groupingBy(x -> x.getBusiness() + "&" + x.getWindowFromnum()));
List<PhQueueStatEntity> saveAndUpdatelist = businessAndSectionCollect.entrySet().parallelStream().map(item -> {
......@@ -251,11 +275,12 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity.setWindowFromnum(split[1]);
return phQueueStatEntity;
}).filter(f -> f != null).collect(Collectors.toList());
saveUpdatePjStatList(saveAndUpdatelist);
// saveUpdatePhStatList(saveAndUpdatelist);
return saveAndUpdatelist;
}
private void updateSectionNameAndWindowFromnum(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateSectionNameAndWindowFromnum(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
Map<String, List<PhQueueEntity>> businessAndSectionCollect = phQueueEntities.parallelStream()
.collect(Collectors.groupingBy(x -> x.getSectionName() + "&" + x.getWindowFromnum()));
List<PhQueueStatEntity> saveAndUpdatelist = businessAndSectionCollect.entrySet().parallelStream().map(item -> {
......@@ -272,10 +297,12 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity.setWindowFromnum(split[1]);
return phQueueStatEntity;
}).filter(f -> f != null).collect(Collectors.toList());
saveUpdatePjStatList(saveAndUpdatelist);
//saveUpdatePhStatList(saveAndUpdatelist);
return saveAndUpdatelist;
}
private void updateBusinessAndSectionNameAndWindow(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
private List<PhQueueStatEntity> updateBusinessAndSectionNameAndWindow(PhQueueStatEntity entity, List<PhQueueEntity> phQueueEntities) {
Map<String, List<PhQueueEntity>> businessAndSectionCollect = phQueueEntities.parallelStream()
.collect(Collectors.groupingBy(x -> x.getBusiness() + "&" + x.getSectionName() + "&" + x.getWindowFromnum()));
List<PhQueueStatEntity> saveAndUpdatelist = businessAndSectionCollect.entrySet().parallelStream().map(item -> {
......@@ -295,7 +322,9 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
phQueueStatEntity.setWindowFromnum(split[2]);
return phQueueStatEntity;
}).filter(f -> f != null).collect(Collectors.toList());
saveUpdatePjStatList(saveAndUpdatelist);
// saveUpdatePhStatList(saveAndUpdatelist);
return saveAndUpdatelist;
}
private PhQueueStatQuery getPhQueueStatQuery(PhQueueStatEntity entity) {
......@@ -335,7 +364,7 @@ public class PhQueueStatServiceImpl extends AbstractCRUDServiceImpl<PhQueueStatD
}
private void saveUpdatePjStatList(List<PhQueueStatEntity> saveAndUpdatelist) {
private void saveUpdatePhStatList(List<PhQueueStatEntity> saveAndUpdatelist) {
if (!ObjectUtils.isEmpty(saveAndUpdatelist)) {
Map<Boolean, List<PhQueueStatEntity>> saveUpdateCollect = saveAndUpdatelist.parallelStream().collect(Collectors.partitioningBy(i -> i.newEntity()));
......
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