无关风月
2026-01-26 e53af4d3346584dec0227499acdea6ef407214dd
临时数据
1 文件已重命名
8个文件已修改
248 ■■■■■ 已修改文件
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/OtherFallbackFactory.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/OtherClient.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/mapper/ContentMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/controller/ChargingPileInfoController.java 217 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/controller/NotifyController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/service/impl/ContentServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/util/CodeGenerateUtils.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/RegionController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/factory/OtherFallbackFactory.java
@@ -108,6 +108,11 @@
            }
            @Override
            public R<List<Region>> listAllRegion() {
                return R.fail("远程调用获取所有region失败:"+throwable.getMessage());
            }
            @Override
            public R<List<TSystemConfiguration>> getTSystemConfiguration() {
                return R.fail("远程调用获取配置失败:"+throwable.getMessage());
            }
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/feignClient/OtherClient.java
@@ -76,7 +76,8 @@
    R<List<TEnterpriseUserApplication>> getTnterPrise();
    @GetMapping("/region/getRegionBuyCode/{code}")
    R<Region> getRegionBuyCode(@PathVariable("code") String code);
    @GetMapping("/region/listAllRegion")
    R<List<Region>> listAllRegion();
    @GetMapping("/region/getTSystemConfiguration")
    R<List<TSystemConfiguration>> getTSystemConfiguration();
ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/utils/SecurityUtils.java
@@ -118,8 +118,9 @@
    
    public static void main(String[] args) {
        BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
        String encode = passwordEncoder.encode("0173940ec8314d1671c2ba365d28fcc1");
        String encode = passwordEncoder.encode("e10adc3949ba59abbe56e057f20f883e");
        System.err.println(encode);
        System.err.println(passwordEncoder.matches(encode,"$2a$10$DWPje3LRma6N0haEINuZCOaaaeZ7d.nLxjDefNkoVkAWlQ3U/u23i"));
//        String s = encryptPassword("0173940ec8314d1671c2ba365d28fcc1");
//        System.err.println(s);
//        boolean b = matchesPassword("0173940ec8314d1671c2ba365d28fcc1", "$2a$10$5ViClN9ACi9jM7W9wLqmJ.kgpYhT7da7sWvBDI5j2fXKNrBakUdQS");
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/mapper/ContentMapper.java
File was renamed from ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/dao/ContentMapper.java
@@ -1,4 +1,4 @@
package com.ruoyi.chargingPile.tulaidian.dao;
package com.ruoyi.chargingPile.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/controller/ChargingPileInfoController.java
@@ -4,15 +4,28 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.chargingPile.api.model.Site;
import com.ruoyi.chargingPile.api.model.TChargingGun;
import com.ruoyi.chargingPile.api.model.TChargingPile;
import com.ruoyi.chargingPile.service.ISiteService;
import com.ruoyi.chargingPile.service.TChargingGunService;
import com.ruoyi.chargingPile.service.TChargingPileService;
import com.ruoyi.chargingPile.tulaidian.domain.ConnectorInfo;
import com.ruoyi.chargingPile.tulaidian.domain.EquipmentInfos;
import com.ruoyi.chargingPile.tulaidian.domain.PageInfo;
import com.ruoyi.chargingPile.tulaidian.domain.StationInfos;
import com.ruoyi.chargingPile.tulaidian.util.ChargePileHttpUtil;
import com.ruoyi.chargingPile.tulaidian.util.CodeGenerateUtils;
import com.ruoyi.chargingPile.util.UUIDUtil;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.DateUtils;
import com.ruoyi.other.api.domain.Region;
import com.ruoyi.other.api.feignClient.OtherClient;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import io.swagger.models.auth.In;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.PostMapping;
@@ -20,6 +33,9 @@
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
@@ -30,10 +46,19 @@
 * @Date 2018/7/20 23:39
 */
@RestController
@RequestMapping("/chargingPileInfo")
@RequestMapping("/chargingPileInfo111")
@Slf4j
public class ChargingPileInfoController {
    @Autowired
    private ChargePileHttpUtil chargePileHttpUtil;
    @Autowired
    private ISiteService siteService;
    @Autowired
    private TChargingGunService chargingGunService;
    @Autowired
    private TChargingPileService chargingPileService;
    @Autowired
    private OtherClient otherClient;
    private static final double EARTH_RADIUS = 6371.0; // 地球半径,单位为千米
    /**
@@ -209,9 +234,193 @@
        result.sort(Comparator.comparing(StationInfos::getDistance));
        pageInfo.setTotal(result.size());
        List<StationInfos> testing = testing(result.size(), pageNo, pageSize, result);
//        List<StationInfos> testing = testing(result.size(), pageNo, pageSize, result);
        Map<String, Region> regionMap = otherClient.listAllRegion().getData()
                .stream().collect(Collectors.toMap(Region::getCode, e -> e));
        Map<Integer, Region> regionIdMap = otherClient.listAllRegion().getData()
                .stream().collect(Collectors.toMap(Region::getId, e -> e));
        List<Site> sites = new ArrayList<>();
        List<TChargingPile> piles = new ArrayList<>();
        List<TChargingGun> guns = new ArrayList<>();
        for (StationInfos stationInfos : result) {
            Site site = new Site();
            site.setPartnerId(26);
            Calendar calendar = Calendar.getInstance();
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
            String dateTime = dateFormat.format(calendar.getTime());
            dateTime = dateTime.substring(2);
            String timestampPart = "" + (Math.random() * 10000) * (System.currentTimeMillis() / 10000);
            timestampPart = timestampPart.replace(".", "").replace("E", "");
            timestampPart = timestampPart.substring(0, 4);
            site.setCode(dateTime+timestampPart);
            site.setName(stationInfos.getStationName());
            site.setSiteType(stationInfos.getStationType());
            site.setBusinessCategory(2);
            site.setStatus(1);
            site.setConstructionSite(1);
            site.setImgUrl("");
            Region region = regionMap.get(stationInfos.getAreaCode());
            if (region!=null){
                site.setDistricts(region.getName());
                site.setDistrictsCode(region.getCode());
                Integer parentId = region.getParentId();
                Region parentRegion = regionIdMap.get(parentId);
                if (parentRegion != null) {
                    site.setCity(parentRegion.getName());
                    site.setCityCode(parentRegion.getCode());
                    Region region1 = regionIdMap.get(parentRegion.getParentId());
                    if (region1!=null){
                        site.setProvince(region1.getName());
                        site.setProvinceCode(region1.getCode());
                    }
                }
            }
            site.setLon(stationInfos.getStationLng()+"");
            site.setLat(stationInfos.getStationLat()+"");
            site.setAddress(stationInfos.getAddress());
//            site.setCountryCode();
            site.setPhone(stationInfos.getServiceTel());
            site.setServicePhone(stationInfos.getServiceTel());
            site.setGuide(stationInfos.getSiteGuide());
            site.setStartServiceTime("24小时");
//            site.setEndServiceTime();
//            site.setServiceDescription();
//            site.setVehicleDescription();
            site.setParkingSpace(stationInfos.getParkNums());
//            site.setRateDescription();
//            site.setSpaceChargeExplain();
            // todo 临时写死一个
            site.setAccountingStrategyId(232);
//            site.setEstablishmentTime();
            site.setSort(180);
//            site.setRemark();
//            site.setMark();
//            site.setAreaCodeCountryside();
            site.setStationClassification(1);
            site.setGeneralApplicationType(1);
            site.setSwapMatchCars(stationInfos.getMatchCars());
            site.setRoundTheClock(1);
            site.setParkType(4);
//            site.setParkFee();
//            site.setParkFeeFree();
            site.setBusinessExpandType(1);
            site.setElectricityType(1);
            site.setCapacity(new BigDecimal("1250"));
            site.setRatedPower(new BigDecimal("1200"));
            site.setPeriodFee(1);
            site.setOfficialRunTime("2025-06-22");
//            site.setStationOrientation();
//            site.setStationArea();
            site.setHavePerson(1);
            site.setVideoMonitor(1);
//            site.setSupportingFacilities();
            site.setPrinterFlag(1);
            site.setBarrierFlag(1);
            site.setParkingLockFlag(1);
//            site.setElectricityFee();
            site.setEquipmentOwnerName("途来电");
            site.setSupplyType(1);
            site.setResidentNo("0110043462");
            site.setWattHourMeterNo("MX01D05054000217");
            site.setForwardPower(new BigDecimal("0"));
            site.setServiceFee("0:00-23:59:\"0.20\"");
            Calendar calendar1 = Calendar.getInstance();
            SimpleDateFormat dateFormat1 = new SimpleDateFormat("yyyyMMdd");
            String dateTime1 = dateFormat1.format(calendar1.getTime());
            dateTime1 = dateTime1.substring(2);
            String timestampPart1 = "" + (Math.random() * 10000) * (System.currentTimeMillis() / 10000);
            timestampPart1 = timestampPart1.replace(".", "").replace("E", "");
            timestampPart1 = timestampPart1.substring(0, 4);
            site.setRecordUniqueNo(dateTime+timestampPart);
            site.setPayment(1);
            site.setSupportOrder(1);
//            site.setSerAreaCode();
            site.setIsOpenSynchronization(0);
            site.setIsEnergyStorage(0);
            siteService.save(site);
            sites.add(site);
            for (EquipmentInfos equipmentInfo : stationInfos.getEquipmentInfos()) {
                int i = 1;
                TChargingPile chargingPile = new TChargingPile();
                Calendar calendar2 = Calendar.getInstance();
                SimpleDateFormat dateFormat3 = new SimpleDateFormat("yyyyMMddHHmmss");
                String dateTime4 = dateFormat3.format(calendar2.getTime());
                dateTime4 = dateTime4.substring(2);
                String timestampPart5 = "" + (Math.random() * 10000) * (System.currentTimeMillis() / 10000);
                timestampPart5 = timestampPart5.replace(".", "").replace("E", "");
                timestampPart5 = timestampPart5.substring(0, 4);
                chargingPile.setCode(dateTime4+timestampPart5);
                chargingPile.setName(equipmentInfo.getEquipmentName());
                chargingPile.setNumber(i);
                chargingPile.setType(equipmentInfo.getEquipmentType());
                chargingPile.setSiteId(site.getId());
                chargingPile.setPartnerId(26);
                chargingPile.setManufacturerCode(equipmentInfo.getManufacturerID());
                chargingPile.setManufacturer(equipmentInfo.getManufacturerName());
                chargingPile.setEquipmentType(equipmentInfo.getEquipmentModel());
                String productionDate = equipmentInfo.getProductionDate();
                if (StringUtils.hasLength(productionDate)){
                    // 转化为LocalDate
                    chargingPile.setProductionDate(LocalDate.parse(productionDate));
                }
                chargingPile.setRatedPower(new BigDecimal(120));
//                chargingPile.setChargingStationNumber();
                chargingPile.setStatus(1);
//                chargingPile.setIotdDeviceId();
                chargingPile.setEquipmentClassification(1);
//                chargingPile.setEquipmentUniqueNumber(equipmentInfo.getEquipmentID());
                chargingPile.setEquipmentLng(equipmentInfo.getEquipmentLng()+"");
                chargingPile.setEquipmentLat(equipmentInfo.getEquipmentLat()+"");
//                chargingPile.setEquipmentProductCode();
                chargingPile.setEquipmentPurpose(1);
                chargingPile.setNewNationalStandard(1);
                chargingPile.setVinFlag(1);
                chargingPileService.save(chargingPile);
                piles.add(chargingPile);
                i++;
                for (ConnectorInfo connectorInfo : equipmentInfo.getConnectorInfos()) {
                    int j = 1;
                    TChargingGun gun = new TChargingGun();
                    gun.setCode(j+"");
                    gun.setSiteId(site.getId());
                    gun.setPartnerId(26);
                    gun.setChargingPileId(chargingPile.getId());
                    gun.setName(connectorInfo.getConnectorName());
                    gun.setType(connectorInfo.getConnectorType());
                    gun.setStatus(1);
                    gun.setChargeMode(connectorInfo.getGunType());
                    // todo 临时写死
                    gun.setAccountingStrategyId(232);
                    gun.setUpperRatedVoltage(new BigDecimal("240"));
                    gun.setLowerLimitOfRatedVoltage(new BigDecimal("200"));
                    gun.setRatedCurrent(new BigDecimal("32"));
                    gun.setRatedPower(new BigDecimal("7"));
                    gun.setChargingPower(new BigDecimal("200"));
                    gun.setParkingNumber("39");
                    gun.setParkingStatus(0);
                    gun.setParkingLockState(0);
                    gun.setNationalStandard("3");
//                    gun.setRemark();
//                    gun.setSoc();
                    gun.setFullNumber(chargingPile.getNumber()+j+"");
                    gun.setEquipmentClassification(1);
                    gun.setConstantVoltageUpperLimits(new BigDecimal("240"));
                    gun.setConstantVoltageLowerLimits(new BigDecimal("200"));
                    gun.setConstantCurrentUpperLimits(new BigDecimal("32"));
                    gun.setConstantCurrentLowerLimits(new BigDecimal("7"));
                    gun.setAuxPower(3);
                    gun.setOpreateStatus(0);
//                    gun.setOpreateHours();
                    guns.add(gun);
                    chargingGunService.save(gun);
                    j++;
        // TODO 数据存储
                }
            }
        }
        log.info("新增的站点数据:{}", sites);
        log.info("新增的桩数据:{}", piles);
        log.info("新增的枪数据:{}", guns);
        return R.ok();
    }
@@ -238,6 +447,8 @@
        }
        return result;
    }
    private List<StationInfos> getStationInfos(){
        String s = chargePileHttpUtil.queryStationsInfo(1, 199);
        // 将s字符串转化为json 然后转化为实体类PageInfo
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/controller/NotifyController.java
@@ -38,6 +38,8 @@
public class NotifyController {
    @Autowired
    private ChargingOrderClient chargingOrderClient;
//    @Autowired
//    private IContentService contentService;
    @Autowired
    private ChargingOrderAccountingStrategyClient chargingOrderAccountingStrategyClient;
    @Autowired
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/service/impl/ContentServiceImpl.java
@@ -1,7 +1,7 @@
package com.ruoyi.chargingPile.tulaidian.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.chargingPile.tulaidian.dao.ContentMapper;
import com.ruoyi.chargingPile.mapper.ContentMapper;
import com.ruoyi.chargingPile.tulaidian.domain.TContent;
import com.ruoyi.chargingPile.tulaidian.service.IContentService;
import org.springframework.stereotype.Service;
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/tulaidian/util/CodeGenerateUtils.java
@@ -72,7 +72,14 @@
    }
    public static void main(String[] args) {
        System.err.println(generateVolumeSn());
        Calendar calendar = Calendar.getInstance();
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
        String dateTime = dateFormat.format(calendar.getTime());
        dateTime = dateTime.substring(2);
        String timestampPart = "" + (Math.random() * 10000) * (System.currentTimeMillis() / 10000);
        timestampPart = timestampPart.replace(".", "").replace("E", "");
        timestampPart = timestampPart.substring(0, 4);
        System.err.println(dateTime+timestampPart);
    }
}
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/RegionController.java
@@ -64,6 +64,11 @@
        return R.ok(list);
    }
    @GetMapping("/listAllRegion")
    R<List<Region>> listAllRegion(){
        List<Region> list = regionService.list();
        return R.ok(list);
    }
    @ResponseBody
    @GetMapping("/getTSystemConfiguration")
    public R<List<TSystemConfiguration>> getTSystemConfiguration(){