| | |
| | | private Integer status; |
| | | @Excel(name = "*建设场所", width = 24, readConverterExp = "0=其他,1=居民区,2=公共机构,3=企事业单位,4=写字楼,5=工业园区,6=交通枢纽,7=大型文体设施,8=城市绿地,9=大型建筑配建停车场,10=路边停车位,11=城际高速服务区,12=风景区,13=公交场站,14=加油加气站,15=出租车") |
| | | private Integer constructionSite; |
| | | @Excel(name = "高速路服务区号", width = 22) |
| | | private String serAreaCode; |
| | | @Excel(name = "*是否有储能设施", width = 22, readConverterExp = "0=无,1=有") |
| | | private Integer isEnergyStorage; |
| | | @Excel(name = "*变压器功率", width = 18) |
| | | private BigDecimal transformerPower; |
| | | @Excel(name = "*是否参与会员折扣", width = 22, readConverterExp = "0=否,1=是") |
| | | private Integer memberDiscountFlag; |
| | | @Excel(name = "*引流平台推送", width = 22, readConverterExp = "0=否,1=是") |
| | | private Integer isOpenSynchronization; |
| | | @Excel(name = "站点环境图", width = 40, prompt = "填写图片地址,多个地址使用英文逗号分隔") |
| | | private String imgUrl; |
| | | @Excel(name = "*所在区域", width = 20, prompt = "填写区县行政区划代码,如510903") |
| | | private String areaCode; |
| | | @Excel(name = "*详细地址", width = 35) |
| | |
| | | private String lon; |
| | | @Excel(name = "*纬度", width = 18) |
| | | private String lat; |
| | | @Excel(name = "*充电站国家代码", width = 20) |
| | | @Excel(name = "充电站国家代码", width = 20) |
| | | private String countryCode; |
| | | @Excel(name = "*站点电话", width = 22) |
| | | private String phone; |
| | |
| | | private String servicePhone; |
| | | @Excel(name = "站点引导", width = 30) |
| | | private String guide; |
| | | @Excel(name = "运营时间", width = 30) |
| | | @Excel(name = "*运营时间", width = 30) |
| | | private String startServiceTime; |
| | | @Excel(name = "站内提供服务", width = 30) |
| | | private String serviceDescription; |
| | |
| | | private String vehicleDescription; |
| | | @Excel(name = "*车位数量", width = 15) |
| | | private Integer parkingSpace; |
| | | @Excel(name = "*充电电费描述", width = 35) |
| | | @Excel(name = "充电电费率描述", width = 35) |
| | | private String rateDescription; |
| | | @Excel(name = "超时占位费描述", width = 35) |
| | | private String spaceChargeExplain; |
| | |
| | | private String parkFee; |
| | | @Excel(name = "服务车型描述", width = 30) |
| | | private String swapMatchCars; |
| | | @Excel(name = "支付方式", width = 18, readConverterExp = "1=刷卡,2=线上,3=现金") |
| | | @Excel(name = "*支付方式", width = 18, readConverterExp = "1=刷卡,2=线上,3=现金") |
| | | private Integer payment; |
| | | @Excel(name = "是否支持预约", width = 20, readConverterExp = "1=支持,2=不支持") |
| | | @Excel(name = "*是否支持预约", width = 20, readConverterExp = "1=支持,2=不支持") |
| | | private Integer supportOrder; |
| | | @Excel(name = "*电费类型", width = 22, readConverterExp = "0=其他用电,1=商业用电,2=普通工业用电,3=大工业用电") |
| | | private Integer electricityType; |
| | |
| | | private Integer videoMonitor; |
| | | @Excel(name = "周边配套设施", width = 30) |
| | | private String supportingFacilities; |
| | | @Excel(name = "是否有小票机", width = 20, readConverterExp = "0=无,1=有") |
| | | @Excel(name = "*是否有小票机", width = 20, readConverterExp = "0=无,1=有") |
| | | private Integer printerFlag; |
| | | @Excel(name = "是否有道闸", width = 18, readConverterExp = "0=无,1=有") |
| | | @Excel(name = "*是否有道闸", width = 18, readConverterExp = "0=无,1=有") |
| | | private Integer barrierFlag; |
| | | @Excel(name = "是否有地锁", width = 18, readConverterExp = "0=无,1=有") |
| | | @Excel(name = "*是否有地锁", width = 18, readConverterExp = "0=无,1=有") |
| | | private Integer parkingLockFlag; |
| | | @Excel(name = "*设备所属方名称", width = 28) |
| | | private String equipmentOwnerName; |
| | |
| | | if (row.getBusinessCategory() == null) errors.add("经营类别不能为空"); |
| | | if (row.getStatus() == null) errors.add("站点状态不能为空"); |
| | | if (row.getConstructionSite() == null) errors.add("建设场所不能为空"); |
| | | if (row.getIsEnergyStorage() == null) errors.add("是否有储能设施不能为空"); |
| | | if (row.getTransformerPower() == null) errors.add("变压器功率不能为空"); |
| | | if (row.getMemberDiscountFlag() == null) errors.add("是否参与会员折扣不能为空"); |
| | | if (row.getIsOpenSynchronization() == null) errors.add("引流平台推送不能为空"); |
| | | if (StringUtils.isEmpty(row.getAreaCode()) || !regionByCode.containsKey(row.getAreaCode().trim())) { |
| | | errors.add("所在区域行政区划代码不存在"); |
| | | } else { |
| | |
| | | if (StringUtils.isEmpty(row.getAddress())) errors.add("详细地址不能为空"); |
| | | if (StringUtils.isEmpty(row.getLon())) errors.add("经度不能为空"); |
| | | if (StringUtils.isEmpty(row.getLat())) errors.add("纬度不能为空"); |
| | | if (StringUtils.isEmpty(row.getCountryCode())) errors.add("充电站国家代码不能为空"); |
| | | if (StringUtils.isEmpty(row.getPhone())) errors.add("站点电话不能为空"); |
| | | if (StringUtils.isEmpty(row.getServicePhone())) errors.add("服务电话不能为空"); |
| | | if (StringUtils.isEmpty(row.getStartServiceTime())) errors.add("运营时间不能为空"); |
| | | if (row.getParkingSpace() == null) errors.add("车位数量不能为空"); |
| | | if (StringUtils.isEmpty(row.getRateDescription())) errors.add("充电电费描述不能为空"); |
| | | if (row.getSort() == null) errors.add("排序不能为空"); |
| | | if (row.getStationClassification() == null) errors.add("电站分类不能为空"); |
| | | if (row.getRoundTheClock() == null) errors.add("7*24小时营业不能为空"); |
| | | if (row.getParkType() == null) errors.add("停车费类型不能为空"); |
| | | if (row.getPayment() == null) errors.add("支付方式不能为空"); |
| | | if (row.getSupportOrder() == null) errors.add("是否支持预约不能为空"); |
| | | if (row.getElectricityType() == null) errors.add("电费类型不能为空"); |
| | | if (row.getBusinessExpandType() == null) errors.add("报装类型不能为空或填写不正确,请填写独立报装或非独立报装"); |
| | | if (row.getCapacity() == null) errors.add("报装电源容量不能为空"); |
| | |
| | | if (row.getPeriodFee() == null) errors.add("是否峰谷分时不能为空"); |
| | | if (StringUtils.isEmpty(row.getOfficialRunTime())) errors.add("正式投运时间不能为空"); |
| | | if (row.getVideoMonitor() == null) errors.add("视频监控配套情况不能为空"); |
| | | if (row.getPrinterFlag() == null) errors.add("是否有小票机不能为空"); |
| | | if (row.getBarrierFlag() == null) errors.add("是否有道闸不能为空"); |
| | | if (row.getParkingLockFlag() == null) errors.add("是否有地锁不能为空"); |
| | | if (StringUtils.isEmpty(row.getEquipmentOwnerName())) errors.add("设备所属方名称不能为空"); |
| | | if (StringUtils.isEmpty(row.getResidentNo())) errors.add("供电局用户编号不能为空"); |
| | | if (row.getSupplyType() == null) errors.add("供电类型不能为空"); |
| | |
| | | if (StringUtils.isNotEmpty(row.getEstablishmentTime())) { |
| | | site.setEstablishmentTime(java.time.LocalDateTime.parse(row.getEstablishmentTime().trim(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); |
| | | } |
| | | site.setImgUrl(""); |
| | | return site; |
| | | } |
| | | |
| | |
| | | .collect(Collectors.toList()); |
| | | assertEquals(Arrays.asList( |
| | | "*归属合作商/服务商", "场地方", "*站点编号", "*站点名称", "*站点类型", "*经营类别", |
| | | "*站点状态", "*建设场所", "*变压器功率", "*是否参与会员折扣", "*所在区域", "*详细地址", |
| | | "*经度", "*纬度", "*充电站国家代码", "*站点电话", "*服务电话", "站点引导", "运营时间", |
| | | "站内提供服务", "车型描述", "*车位数量", "*充电电费描述", "超时占位费描述", "计费模板", |
| | | "*站点状态", "*建设场所", "高速路服务区号", "*是否有储能设施", "*变压器功率", "*是否参与会员折扣", |
| | | "*引流平台推送", "站点环境图", "*所在区域", "*详细地址", "*经度", "*纬度", "充电站国家代码", |
| | | "*站点电话", "*服务电话", "站点引导", "*运营时间", "站内提供服务", "车型描述", "*车位数量", |
| | | "充电电费率描述", "超时占位费描述", "计费模板", |
| | | "建站时间", "*排序", "备注", "*电站分类", "通用类型", "充换电站所在县以下行政区划代码", |
| | | "*7*24小时营业", "*停车费类型", "停车费描述", "服务车型描述", "支付方式", "是否支持预约", |
| | | "*7*24小时营业", "*停车费类型", "停车费描述", "服务车型描述", "*支付方式", "*是否支持预约", |
| | | "*电费类型", "*报装类型", "*报装电源容量", "*站点额定总功率", "*是否峰谷分时", "*正式投运时间", |
| | | "充换电站方位", "充换电站建设面积", "充换电站人工值守", "*视频监控配套情况", "周边配套设施", |
| | | "是否有小票机", "是否有道闸", "是否有地锁", "*设备所属方名称", "*供电局用户编号", "*供电类型", |
| | | "*是否有小票机", "*是否有道闸", "*是否有地锁", "*设备所属方名称", "*供电局用户编号", "*供电类型", |
| | | "*表号", "*外电功率", "*服务费描述", "*充电站全省唯一备案号" |
| | | ), actual); |
| | | } |
| | |
| | | void exportRowContainsNewSiteFieldsAndNames() { |
| | | Site site = new Site(); |
| | | site.setCode("SITE001"); |
| | | site.setSerAreaCode("G42-001"); |
| | | site.setIsEnergyStorage(1); |
| | | site.setTransformerPower(new BigDecimal("630.00")); |
| | | site.setMemberDiscountFlag(1); |
| | | site.setIsOpenSynchronization(0); |
| | | site.setImgUrl("https://example.com/site.png"); |
| | | site.setDistrictsCode("510903"); |
| | | |
| | | SiteExcelDTO row = SiteExcelDTO.from(site, "合作商A", "场地方B", "计费模板C"); |
| | | |
| | | assertEquals("SITE001", row.getCode()); |
| | | assertEquals("G42-001", row.getSerAreaCode()); |
| | | assertEquals(1, row.getIsEnergyStorage()); |
| | | assertEquals(new BigDecimal("630.00"), row.getTransformerPower()); |
| | | assertEquals(1, row.getMemberDiscountFlag()); |
| | | assertEquals(0, row.getIsOpenSynchronization()); |
| | | assertEquals("https://example.com/site.png", row.getImgUrl()); |
| | | assertEquals("510903", row.getAreaCode()); |
| | | assertEquals("合作商A", row.getPartnerName()); |
| | | assertEquals("场地方B", row.getVenuePartnerName()); |