From 7fc7b9077c184623c00c4b1f08884de59aef6cae Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 11 九月 2024 17:42:43 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile --- ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java | 5 + ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 38 ++++++------ ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java | 11 +++ ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java | 10 ++- ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/dto/SettlementConfirmAdd.java | 111 ++++++++++++++++++++++++++++++++++++ 5 files changed, 150 insertions(+), 25 deletions(-) diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/dto/SettlementConfirmAdd.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/dto/SettlementConfirmAdd.java index fe67ee4..bb8ac0e 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/dto/SettlementConfirmAdd.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/dto/SettlementConfirmAdd.java @@ -1,11 +1,18 @@ package com.ruoyi.order.api.dto; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.core.web.page.BasePage; +import com.ruoyi.order.api.model.TChargingOrder; import com.ruoyi.order.api.model.TSettlementConfirm; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.math.BigDecimal; +import java.time.LocalDateTime; import java.util.List; @Data @@ -21,6 +28,106 @@ private String endTime; @ApiModelProperty(value = "点击去生成 传1 填完表格数据点击保存 传2") private Integer state; - @ApiModelProperty(value = "保存的数据") - private TSettlementConfirm data; + @ApiModelProperty(value = "主键") + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + + @ApiModelProperty(value = "合作商id") + private Integer partnerId; + @ApiModelProperty(value = "结算电费备注") + private String remark; + @ApiModelProperty(value = "结算服务费备注") + private String serviceRemark; + + @ApiModelProperty(value = "计量电量(电量合计)") + private BigDecimal meteringElectronic; + @ApiModelProperty(value = "充电电量") + private BigDecimal chargingElectronic; + @ApiModelProperty(value = "电损电量") + private BigDecimal lossElectronic; + @ApiModelProperty(value = "收入合计") + private BigDecimal income; + + @ApiModelProperty(value = "场地费") + private BigDecimal venue; + @ApiModelProperty(value = "计量电费") + private BigDecimal metering; + @ApiModelProperty(value = "清洁费") + private BigDecimal clean; + @ApiModelProperty(value = "日常维护费") + private BigDecimal maintain; + @ApiModelProperty(value = "成本") + private BigDecimal cost; + @ApiModelProperty(value = "合计可分配金额") + private BigDecimal distribution; + @ApiModelProperty(value = "利润") + private BigDecimal profitMoney; + @ApiModelProperty(value = "新能源利润") + private BigDecimal newMoney; + @ApiModelProperty(value = "新能源结算金额") + private BigDecimal newSettlement; + + @ApiModelProperty(value = "供电局结算电费") + private BigDecimal supplyElectronic; + @ApiModelProperty(value = "合作商承担电损占比") + private BigDecimal proportionPartner; + @ApiModelProperty(value = "承担金额") + private BigDecimal proportionMoney; + @ApiModelProperty(value = "本期结算电费总金额 (实际电费转账)") + private BigDecimal totalElectronic; + @ApiModelProperty(value = "本期结算服务费总金额(实际服务费转账)") + private BigDecimal totalService; + @ApiModelProperty(value = "合作商充电服务费根据合同约定分成比例") + private BigDecimal servicePartner; + @ApiModelProperty(value = "合作商充电服务费根据合同约定分成金额") + private BigDecimal serviceMoney; + + @ApiModelProperty(value = "三方收费(合计三方平台收费)") + private BigDecimal sharingAmount; + @ApiModelProperty(value = " 交易手续费 三方收费*0.06%") + private BigDecimal commissionAmount; + @ApiModelProperty(value = "充电电费计费(平台合计电费)") + private BigDecimal electrovalence; + @ApiModelProperty(value = "充电服务费计费(实收服务费)") + private BigDecimal serviceCharge; + @ApiModelProperty(value = "交易手续费计费") + private BigDecimal orderCommission; + @ApiModelProperty(value = "会员抵扣") + private BigDecimal vipDiscount; + @ApiModelProperty(value = "优惠券抵扣") + private BigDecimal couponDiscount; + +// @ApiModelProperty(value = "类型(1=开始,2=结束)") +// @TableField("type") +// private Integer type; +// @ApiModelProperty(value = "开始时间") +// @TableField("start_time") +// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") +// private LocalDateTime startTime; +// @ApiModelProperty(value = "结束时间") +// @TableField("end_time") +// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") +// private LocalDateTime endTime; + @ApiModelProperty(value = "站点名称") + private String siteName; + @ApiModelProperty(value = "合作商名称") + private String partnerName; + + @ApiModelProperty(value = "uid") + private String uid; + + @ApiModelProperty(value = "结账日期 2024年09月06日17:10:06至2024年09月06日17:10:06") + private String time; + @ApiModelProperty(value = "充电记录明细") + private List<TChargingOrder> list; + @ApiModelProperty(value = "收入合计涨幅/跌幅 正数为涨幅负数为跌幅 字段为空 说明没有上月记录 不展示涨幅跌幅") + private String incomePercentage; + @ApiModelProperty(value = "总利润涨幅/跌幅 正数为涨幅负数为跌幅 字段为空 说明没有上月记录 不展示涨幅跌幅") + private String totalPercentage; + @ApiModelProperty(value = "利用率") + private String rate; + @ApiModelProperty(value = "参与电力市场交易退补电费") + private Integer electronicRefund; + } diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java index 21adfde..72ebc17 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/factory/ChargingOrderFallbackFactory.java @@ -113,6 +113,11 @@ public R<String> updateChargingOrder(TChargingOrder chargingOrder) { return R.fail("修改充电订单失败:" + throwable.getMessage()); } + + @Override + public R<String> stopCharging(String id) { + return R.fail("手动停止充电失败:" + throwable.getMessage()); + } }; } } diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java index 5e460f3..b395682 100644 --- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java +++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java @@ -4,6 +4,7 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.dto.ChargingOrderGroup; import com.ruoyi.common.core.dto.ChargingPercentProvinceDto; +import com.ruoyi.common.core.web.domain.AjaxResult; import com.ruoyi.order.api.factory.ChargingOrderFallbackFactory; import com.ruoyi.order.api.model.ChargingListQuery; import com.ruoyi.order.api.model.TChargingOrder; @@ -12,6 +13,8 @@ import com.ruoyi.order.api.query.UploadRealTimeMonitoringDataQuery; import com.ruoyi.order.api.vo.ChargingBillVO; import com.ruoyi.order.api.vo.SettlementTotalVO; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import com.ruoyi.order.api.vo.GetChargingOrderByLicensePlate; import org.springframework.cloud.openfeign.FeignClient; @@ -126,4 +129,12 @@ */ @PostMapping("/t-charging-order/updateChargingOrder") R<String> updateChargingOrder(@RequestBody TChargingOrder chargingOrder); + + /** + * 手动停止充电 + * @param id + * @return + */ + @PutMapping(value = "/t-charging-order/stopCharging/{id}") + R<String> stopCharging(@PathVariable("id") String id); } diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java index ab353e2..79acf34 100644 --- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java +++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java @@ -25,6 +25,7 @@ import com.ruoyi.common.log.enums.OperatorType; import com.ruoyi.integration.api.feignClient.IntegrationClient; import com.ruoyi.integration.api.model.EndCharge; +import com.ruoyi.order.api.feignClient.ChargingOrderClient; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -57,6 +58,8 @@ @Autowired private TChargingGunService chargingGunService; + @Autowired + private ChargingOrderClient chargingOrderClient; @Resource private TChargingPileService chargingPileService; @@ -130,10 +133,9 @@ @Log(title = "【充电桩信息】结束充电", businessType = BusinessType.OTHER,operatorType = OperatorType.MANAGE) @ApiOperation(tags = {"后台-充电枪"},value = "结束充电") @PutMapping(value = "/stopCharging") - public AjaxResult<String> stopCharging(@RequestParam("id") Integer id) { - // TODO 硬件 结束充电 -// EndCharge endCharge = new EndCharge(); -// integrationClient.endCharge(endCharge); + public AjaxResult<String> stopCharging(@RequestParam("id") String id) { + // 硬件 结束充电 + chargingOrderClient.stopCharging(id); return AjaxResult.success(); } diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java index acd926c..9b7c706 100644 --- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java +++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java @@ -1903,26 +1903,26 @@ tSettlementConfirm.setType(dto.getType()); if (dto.getState() == 2){ - tSettlementConfirm.setSupplyElectronic(dto.getData().getSupplyElectronic()); - tSettlementConfirm.setVenue(dto.getData().getVenue()); - tSettlementConfirm.setMetering(dto.getData().getMetering()); - tSettlementConfirm.setClean(dto.getData().getClean()); - tSettlementConfirm.setLossElectronic(dto.getData().getLossElectronic()); - tSettlementConfirm.setMaintain(dto.getData().getMaintain()); + tSettlementConfirm.setSupplyElectronic(dto.getSupplyElectronic()); + tSettlementConfirm.setVenue(dto.getVenue()); + tSettlementConfirm.setMetering(dto.getMetering()); + tSettlementConfirm.setClean(dto.getClean()); + tSettlementConfirm.setLossElectronic(dto.getLossElectronic()); + tSettlementConfirm.setMaintain(dto.getMaintain()); - tSettlementConfirm.setMeteringElectronic(dto.getData().getMeteringElectronic()); - tSettlementConfirm.setProportionPartner(dto.getData().getProportionPartner()); - tSettlementConfirm.setProportionMoney(dto.getData().getProportionMoney()); - tSettlementConfirm.setTotalElectronic(dto.getData().getTotalElectronic()); - tSettlementConfirm.setTotalService(dto.getData().getTotalService()); - tSettlementConfirm.setRemark(dto.getData().getRemark()); - tSettlementConfirm.setServicePartner(dto.getData().getServicePartner()); - tSettlementConfirm.setServiceMoney(dto.getData().getServiceMoney()); - tSettlementConfirm.setTotalService(dto.getData().getTotalService()); - tSettlementConfirm.setServiceRemark(dto.getData().getServiceRemark()); - tSettlementConfirm.setDistribution(dto.getData().getDistribution()); - tSettlementConfirm.setIncome(dto.getData().getElectrovalence().add(dto.getData().getServiceCharge())); - tSettlementConfirm.setCost(dto.getData().getVenue().add(dto.getData().getClean()).add(dto.getData().getMaintain())); + tSettlementConfirm.setMeteringElectronic(dto.getMeteringElectronic()); + tSettlementConfirm.setProportionPartner(dto.getProportionPartner()); + tSettlementConfirm.setProportionMoney(dto.getProportionMoney()); + tSettlementConfirm.setTotalElectronic(dto.getTotalElectronic()); + tSettlementConfirm.setTotalService(dto.getTotalService()); + tSettlementConfirm.setRemark(dto.getRemark()); + tSettlementConfirm.setServicePartner(dto.getServicePartner()); + tSettlementConfirm.setServiceMoney(dto.getServiceMoney()); + tSettlementConfirm.setTotalService(dto.getTotalService()); + tSettlementConfirm.setServiceRemark(dto.getServiceRemark()); + tSettlementConfirm.setDistribution(dto.getDistribution()); + tSettlementConfirm.setIncome(dto.getElectrovalence().add(dto.getServiceCharge())); + tSettlementConfirm.setCost(dto.getVenue().add(dto.getClean()).add(dto.getMaintain())); tSettlementConfirmMapper.insert(tSettlementConfirm); } return tSettlementConfirm; -- Gitblit v1.7.1