| | |
| | | import com.trafficaudit.common.util.RegionUtil; |
| | | import com.trafficaudit.dataimport.entity.CityTaxiMonthly; |
| | | import com.trafficaudit.dataimport.entity.WycOrderMonthly; |
| | | import com.trafficaudit.dataimport.entity.WycTotalMonthly; |
| | | import com.trafficaudit.dataimport.mapper.CityTaxiMonthlyMapper; |
| | | import com.trafficaudit.dataimport.mapper.WycOrderMonthlyMapper; |
| | | import com.trafficaudit.dataimport.mapper.WycTotalMonthlyMapper; |
| | | import org.apache.poi.ss.usermodel.Cell; |
| | | import org.apache.poi.ss.usermodel.CellType; |
| | | import org.apache.poi.ss.usermodel.DataFormatter; |
| | |
| | | private CityTaxiMonthlyMapper cityTaxiMapper; |
| | | @Resource |
| | | private WycOrderMonthlyMapper wycOrderMapper; |
| | | @Resource |
| | | private WycTotalMonthlyMapper wycTotalMapper; |
| | | @Value("${city-passenger.template-dir:docs/城市客运}") |
| | | private String templateDir; |
| | | |
| | |
| | | if (sum <= 0) return null; |
| | | double orderSum = sum; |
| | | if (row.getOrderSum() != null && row.getOrderSum() > 0) orderSum = row.getOrderSum(); |
| | | double pinK = row.getPinK() == null ? 0.0 : row.getPinK(); |
| | | double pinCK = row.getPinCK() == null ? 0.0 : row.getPinCK(); |
| | | double pinZ = row.getPinZ() == null ? 0.0 : row.getPinZ(); |
| | | double pinCZ = row.getPinCZ() == null ? 0.0 : row.getPinCZ(); |
| | | boolean pinFix = false; |
| | | // pin 兜底:订单表 pin 列为空/为 0 时回落 wyc_total_monthly(pin 专表) |
| | | if (pinK <= 0 || pinCK <= 0 || pinZ <= 0 || pinCZ <= 0) { |
| | | WycTotalMonthly tot = wycTotalMapper.selectOne(new LambdaQueryWrapper<WycTotalMonthly>() |
| | | .eq(WycTotalMonthly::getReportPeriod, period).last("LIMIT 1")); |
| | | if (tot != null) { |
| | | if (pinK <= 0 && tot.getPinK() != null && tot.getPinK() > 0) { pinK = tot.getPinK(); pinFix = true; } |
| | | if (pinCK <= 0 && tot.getPinCK() != null && tot.getPinCK() > 0) { pinCK = tot.getPinCK(); pinFix = true; } |
| | | if (pinZ <= 0 && tot.getPinZ() != null && tot.getPinZ() > 0) { pinZ = tot.getPinZ(); pinFix = true; } |
| | | if (pinCZ <= 0 && tot.getPinCZ() != null && tot.getPinCZ() > 0) { pinCZ = tot.getPinCZ(); pinFix = true; } |
| | | } |
| | | } |
| | | Map<String, Object> map = new LinkedHashMap<>(); |
| | | map.put("pinK", row.getPinK() == null ? 0.0 : row.getPinK()); |
| | | map.put("pinCK", row.getPinCK() == null ? 0.0 : row.getPinCK()); |
| | | map.put("pinZ", row.getPinZ() == null ? 0.0 : row.getPinZ()); |
| | | map.put("pinCZ", row.getPinCZ() == null ? 0.0 : row.getPinCZ()); |
| | | map.put("pinK", pinK); |
| | | map.put("pinCK", pinCK); |
| | | map.put("pinZ", pinZ); |
| | | map.put("pinCZ", pinCZ); |
| | | map.put("orders", orders); |
| | | map.put("orderSum", orderSum); |
| | | map.put("source", "db"); |
| | | map.put("source", pinFix ? "db+wyc_total" : "db"); |
| | | return map; |
| | | } |
| | | private File findInput() throws Exception { |