85 lines
2.9 KiB
Java
85 lines
2.9 KiB
Java
|
|
package com.hivekion.statistic.service.impl;
|
|||
|
|
|
|||
|
|
import com.hivekion.baseData.entity.OrgSupplier;
|
|||
|
|
import com.hivekion.baseData.service.OrgSupplierService;
|
|||
|
|
import com.hivekion.scenario.entity.ScenarioResource;
|
|||
|
|
import com.hivekion.scenario.service.ScenarioResourceService;
|
|||
|
|
import com.hivekion.statistic.bean.StatisticBean;
|
|||
|
|
import com.hivekion.statistic.service.StatisticService;
|
|||
|
|
import com.hivekion.supplier.entity.SuppliesDict;
|
|||
|
|
import com.hivekion.supplier.service.SuppliesDictService;
|
|||
|
|
import java.util.List;
|
|||
|
|
import java.util.Map;
|
|||
|
|
import javax.annotation.Resource;
|
|||
|
|
import org.springframework.stereotype.Service;
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* [类的简要说明]
|
|||
|
|
* <p>
|
|||
|
|
* [详细描述,可选]
|
|||
|
|
* <p>
|
|||
|
|
*
|
|||
|
|
* @author LiDongYU
|
|||
|
|
* @since 2025/7/22
|
|||
|
|
*/
|
|||
|
|
@Service
|
|||
|
|
public class StatisticServiceImpl implements StatisticService {
|
|||
|
|
|
|||
|
|
@Resource
|
|||
|
|
private ScenarioResourceService scenarioResourceService;
|
|||
|
|
@Resource
|
|||
|
|
private OrgSupplierService orgSupplierService;
|
|||
|
|
@Resource
|
|||
|
|
private SuppliesDictService suppliesDictService;
|
|||
|
|
|
|||
|
|
@Override
|
|||
|
|
public StatisticBean statistic(String resourceId) {
|
|||
|
|
StatisticBean statisticBean = new StatisticBean();
|
|||
|
|
//获取分队信息
|
|||
|
|
ScenarioResource resourceInstance = scenarioResourceService.getById(resourceId);
|
|||
|
|
if(resourceInstance == null){
|
|||
|
|
return statisticBean;
|
|||
|
|
}
|
|||
|
|
statisticBean.getTeam().setType(resourceInstance.getType());
|
|||
|
|
statisticBean.getTeam().setLat(resourceInstance.getLat());
|
|||
|
|
statisticBean.getTeam().setLng(resourceInstance.getLng());
|
|||
|
|
statisticBean.getTeam().setTeamName(resourceInstance.getResourceName());
|
|||
|
|
//获取物资信息
|
|||
|
|
List<OrgSupplier> suppliers = orgSupplierService.getByOrgId(resourceInstance.getResourceId());
|
|||
|
|
Map<String, SuppliesDict> supplierMap = suppliesDictService.supplierDictMap();
|
|||
|
|
suppliers.forEach(supplier -> {
|
|||
|
|
SuppliesDict dict = supplierMap.get(supplier.getId());
|
|||
|
|
if (dict != null) {
|
|||
|
|
switch (dict.getCode()) {
|
|||
|
|
case "FOOD":
|
|||
|
|
statisticBean.getFood().setTotal(supplier.getAccount());
|
|||
|
|
statisticBean.getFood().setCurrent(supplier.getAccount());
|
|||
|
|
break;
|
|||
|
|
case "WATER":
|
|||
|
|
statisticBean.getWater().setTotal(supplier.getAccount());
|
|||
|
|
statisticBean.getWater().setCurrent(supplier.getAccount());
|
|||
|
|
break;
|
|||
|
|
case "FUEL":
|
|||
|
|
statisticBean.getFuel().setTotal(supplier.getAccount());
|
|||
|
|
statisticBean.getFuel().setCurrent(supplier.getAccount());
|
|||
|
|
break;
|
|||
|
|
case "MEDICAL":
|
|||
|
|
statisticBean.getMedical().setTotal(supplier.getAccount());
|
|||
|
|
statisticBean.getMedical().setCurrent(supplier.getAccount());
|
|||
|
|
break;
|
|||
|
|
|
|||
|
|
case "AMMUNITION":
|
|||
|
|
statisticBean.getAmmunition().setTotal(supplier.getAccount());
|
|||
|
|
statisticBean.getAmmunition().setCurrent(supplier.getAccount());
|
|||
|
|
break;
|
|||
|
|
default:
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
return statisticBean;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|