From 3b179ff7149a13e99ed2aa8f494ed6750e4dc04c Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期六, 31 八月 2024 14:50:35 +0800
Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderDto.java | 2
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java | 39 +++++++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderAccountingStrategyServiceImpl.java | 6
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/InvoiceInformationVo.java | 62 ++++++++++++
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java | 2
ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml | 129 ++++++++++++++-----------
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java | 2
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java | 6
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java | 18 ++
9 files changed, 195 insertions(+), 71 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/InvoiceInformationVo.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/InvoiceInformationVo.java
new file mode 100644
index 0000000..6a6b7c6
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/vo/InvoiceInformationVo.java
@@ -0,0 +1,62 @@
+package com.ruoyi.account.api.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.web.domain.BasePojo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author luodangjia
+ * @since 2024-08-06
+ */
+@Data
+public class InvoiceInformationVo {
+
+
+ private String id;
+
+ @ApiModelProperty(value = "用户id")
+ private Long appUserId;
+
+ @ApiModelProperty(value = "发票类型(1=增值税普通发票,2=增值税专用发票)")
+ private String invoiceType;
+
+ @ApiModelProperty(value = "发票类型id")
+ private Integer invoiceTypeId;
+
+ @ApiModelProperty(value = "抬头类型(1=个人,2=企业)")
+ private Integer invoicingObjectType;
+
+ @ApiModelProperty(value = "名称")
+ private String name;
+
+ @ApiModelProperty(value = "纳税识别号")
+ private String taxIdentificationNumber;
+
+ @ApiModelProperty(value = "公司地址")
+ private String companyAddress;
+
+ @ApiModelProperty(value = "公司电话")
+ private String companyPhone;
+
+ @ApiModelProperty(value = "开户银行")
+ private String depositBank;
+
+ @ApiModelProperty(value = "银行账户")
+ private String bankAccount;
+
+ @ApiModelProperty(value = "设置默认(0=否,1=是)")
+ private Integer isDefault;
+
+
+
+
+}
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java
index 5d51fbc..2f98b2c 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderAccountingStrategyClient.java
@@ -36,6 +36,6 @@
* @param days
* @return
*/
- @PostMapping("/t-charging-order-getDailyChargingDegree-strategy/getUtilizationTrend/{days}")
+ @PostMapping("/t-charging-order-accounting-strategy/getDailyChargingDegree/{days}")
R<List<Double>> getDailyChargingDegree(@PathVariable("days") Integer days, @RequestParam("siteIds") Set<Integer> siteIds);
}
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java
index 29320fa..344daa0 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TOrderAppeal.java
@@ -70,6 +70,8 @@
@ApiModelProperty(value = "申诉反馈")
@TableField("feedback")
private String feedback;
+ @TableField(exist = false)
+ private String uid;
@ApiModelProperty(value = "反馈人id")
@TableField("feedback_user_id")
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
index a567303..d497796 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
@@ -40,6 +40,7 @@
import javax.annotation.Resource;
import java.math.BigDecimal;
+import java.math.MathContext;
import java.math.RoundingMode;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -304,8 +305,13 @@
chargeMonitoring.setNotCharged(total.size() - charging.size());
chargeMonitoring.setRatedPower(ratedPower.setScale(4, RoundingMode.HALF_EVEN));
chargeMonitoring.setRealTimePower(realTimePower.setScale(4, RoundingMode.HALF_EVEN));
- chargeMonitoring.setDemandPowerSatisfactionRate(realTimePower.divide(ratedPower).multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_EVEN));
-
+ if(ratedPower.equals(BigDecimal.ZERO)){
+ chargeMonitoring.setDemandPowerSatisfactionRate(BigDecimal.ZERO);
+ }else{
+ chargeMonitoring.setDemandPowerSatisfactionRate(realTimePower.divide(ratedPower, new MathContext(2, RoundingMode.HALF_EVEN))
+ .multiply(new BigDecimal(100)).setScale(2, RoundingMode.HALF_EVEN));
+ }
+
List<String> dates = new ArrayList<>();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MMM-dd");
Calendar calendar = Calendar.getInstance();
@@ -325,8 +331,12 @@
List<Double> data = chargingOrderAccountingStrategyClient.getDailyChargingDegree(6, siteIds).getData();
List<Double> value2 = new ArrayList<>();
for (Double datum : data) {
- Double datum1 = new BigDecimal(datum).divide(new BigDecimal(list.size()).multiply(v).multiply(new BigDecimal(24))).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
- value2.add(datum1);
+ if(list.size() == 0){
+ value2.add(0D);
+ }else{
+ Double datum1 = new BigDecimal(datum).divide(new BigDecimal(list.size()).multiply(v).multiply(new BigDecimal(24))).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
+ value2.add(datum1);
+ }
}
Map<String, Object> utilizationTrend = new HashMap<>();
utilizationTrend.put("date", dates);
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
index 9c19079..712b961 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -205,8 +205,10 @@
payOrderChargingInfo.setChargingName(data1.getName());
TChargingGun data2 = chargingGunClient.getChargingGunById(byId.getChargingGunId()).getData();
payOrderChargingInfo.setGunName(data2.getName());
- List<TAppUserCar> data3 = appUserCarClient.getCarByIds(Collections.singletonList(byId.getAppUserCarId())).getData();
- payOrderChargingInfo.setCarNum(data3.get(0).getLicensePlate());
+ if (byId.getAppUserCarId()!=null) {
+ List<TAppUserCar> data3 = appUserCarClient.getCarByIds(Collections.singletonList(byId.getAppUserCarId())).getData();
+ payOrderChargingInfo.setCarNum(data3.get(0).getLicensePlate());
+ }
return R.ok();
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java
index e64f518..2a771c7 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TOrderAppealController.java
@@ -9,18 +9,19 @@
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.common.security.utils.SecurityUtils;
-import com.ruoyi.order.api.model.TOrderAppeal;
+import com.ruoyi.order.api.model.*;
import com.ruoyi.order.api.query.TOrderAppealQuery;
import com.ruoyi.order.api.vo.TOrderAppealVO;
import com.ruoyi.order.dto.ManageFeedbackDto;
import com.ruoyi.order.dto.ManageOrderAppealQuery;
-import com.ruoyi.order.service.TOrderAppealService;
+import com.ruoyi.order.service.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
+import java.util.Arrays;
/**
* <p>
@@ -38,6 +39,16 @@
private final TokenService tokenService;
@Resource
private AppUserClient appUserClient;
+ @Resource
+ private TChargingOrderService chargingOrderService;
+ @Resource
+ private TShoppingOrderService shoppingOrderService;
+ @Resource
+ private TExchangeOrderService exchangeOrderService;
+
+ @Resource
+ private TVipOrderService vipOrderService;
+
@Autowired
public TOrderAppealController(TOrderAppealService orderAppealService, TokenService tokenService) {
@@ -53,9 +64,19 @@
.like(manageOrderAppealQuery.getPhone() != null, TOrderAppeal::getPhone, manageOrderAppealQuery.getPhone())
.eq(manageOrderAppealQuery.getOrderType() != null, TOrderAppeal::getOrderType, manageOrderAppealQuery.getOrderType())
.in(TOrderAppeal::getOrderType, 1, 2).page(Page.of(manageOrderAppealQuery.getPageCurr(), manageOrderAppealQuery.getPageSize()));
+
+ for (TOrderAppeal record : page.getRecords()) {
+ record.setUid(record.getId().toString());
+ }
return R.ok(page);
+ }
+ @ApiOperation(tags = {"后台-订单管理-订单申诉"},value = "删除")
+ @DeleteMapping (value = "/manage/delete")
+ public R<Page<TOrderAppeal>> delete(String ids) {
+ orderAppealService.removeBatchByIds(Arrays.asList(ids.split(",")));
+ return R.ok();
}
@ApiOperation(tags = {"后台-订单管理-订单申诉"},value = "后台-订单管理-订单申诉")
@@ -98,6 +119,20 @@
orderAppeal.setAppUserId(appUserId);
orderAppeal.setStatus(1);
orderAppeal.setPhone(data.getPhone());
+
+ if (orderAppeal.getOrderType()==1){
+ TChargingOrder byId = chargingOrderService.getById(orderAppeal.getOrderId());
+ orderAppeal.setCode(byId.getCode());
+ }else if(orderAppeal.getOrderType()==2){
+ TShoppingOrder byId = shoppingOrderService.getById(orderAppeal.getOrderId());
+ orderAppeal.setCode(byId.getCode());
+ }else if(orderAppeal.getOrderType()==3){
+ TExchangeOrder byId = exchangeOrderService.getById(orderAppeal.getOrderId());
+ orderAppeal.setCode(byId.getCode());
+ }else if(orderAppeal.getOrderType()==4){
+ TVipOrder byId = vipOrderService.getById(orderAppeal.getOrderId());
+ orderAppeal.setCode(byId.getCode());
+ }
orderAppealService.save(orderAppeal);
return AjaxResult.success();
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderDto.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderDto.java
index db5a856..762d550 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderDto.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/dto/PayOrderDto.java
@@ -31,5 +31,7 @@
private LocalDateTime endTime;
@ApiModelProperty("支付时间")
private LocalDateTime payTime;
+ private Integer refundStatus;
+ private Double finalAmount;
}
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderAccountingStrategyServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderAccountingStrategyServiceImpl.java
index 413fa9b..f242070 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderAccountingStrategyServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderAccountingStrategyServiceImpl.java
@@ -71,21 +71,21 @@
map2.put("name", "峰");
BigDecimal value2 = list1.stream().filter(s -> orderIds.contains(s.getChargingOrderId()) && s.getType() == 2)
.map(TChargingOrderAccountingStrategy::getChargingCapacity).reduce(BigDecimal.ZERO, BigDecimal::add);
- map1.put("value", value2.setScale(2, RoundingMode.HALF_EVEN));
+ map2.put("value", value2.setScale(2, RoundingMode.HALF_EVEN));
datas.add(map2);
Map<String, Object> map3 = new HashMap<>();
map3.put("name", "平");
BigDecimal value3 = list1.stream().filter(s -> orderIds.contains(s.getChargingOrderId()) && s.getType() == 3)
.map(TChargingOrderAccountingStrategy::getChargingCapacity).reduce(BigDecimal.ZERO, BigDecimal::add);
- map1.put("value", value3.setScale(2, RoundingMode.HALF_EVEN));
+ map3.put("value", value3.setScale(2, RoundingMode.HALF_EVEN));
datas.add(map3);
Map<String, Object> map4 = new HashMap<>();
map4.put("name", "谷");
BigDecimal value4 = list1.stream().filter(s -> orderIds.contains(s.getChargingOrderId()) && s.getType() == 4)
.map(TChargingOrderAccountingStrategy::getChargingCapacity).reduce(BigDecimal.ZERO, BigDecimal::add);
- map1.put("value", value4.setScale(2, RoundingMode.HALF_EVEN));
+ map4.put("value", value4.setScale(2, RoundingMode.HALF_EVEN));
datas.add(map4);
list2.add(datas);
}
diff --git a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
index ab35e85..3314d60 100644
--- a/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
+++ b/ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
@@ -104,62 +104,75 @@
</select>
<select id="payOrderQuery" resultType="com.ruoyi.order.dto.PayOrderDto">
SELECT * FROM (SELECT
- id,
- `code`,
- 1 as type,
- title,
- phone,
- `status`,
- order_amount,
- payment_amount ,
- create_time,
- end_time,
- pay_time
- FROM
- charging_pile_order.t_charging_order UNION ALL
- SELECT
- id,
- `code`,
- 2 as type,
- title,
- phone,
- `status`,
- order_amount,
- payment_amount ,
- create_time,
- receiving_time as end_time,
- pay_time
- FROM
- charging_pile_order.t_shopping_order UNION ALL
- SELECT
- id,
- `code`,
- 3 as type,
- title,
- phone,
- payment_status AS `status`,
- order_amount,
- payment_amount ,
- create_time,
- create_time as end_time,
- pay_time
- FROM
- charging_pile_order.t_vip_order UNION ALL
- SELECT
- id,
- `code`,
- 4 as type,
- title,
- phone,
- `status`,
- order_amount ,
- order_amount as payment_amount,
- create_time,
- out_parking_time as end_time,
- out_parking_time as pay_time
- FROM
- charging_pile_service.t_parking_record ) o
+ id,
+ `code`,
+ 1 as type,
+ title,
+ phone,
+ `status`,
+ order_amount,
+ payment_amount ,
+ create_time,
+ end_time,
+ pay_time,
+ refund_status,
+ (payment_amount-refund_amount) as final_amount,
+ del_flag
+ FROM
+ charging_pile_order.t_charging_order UNION ALL
+ SELECT
+ id,
+ `code`,
+ 2 as type,
+ title,
+ phone,
+ `status`,
+ order_amount,
+ payment_amount ,
+ create_time,
+ receiving_time as end_time,
+ pay_time,
+ refund_status,
+ (payment_amount-refund_amount) as final_amount,
+ del_flag
+ FROM
+ charging_pile_order.t_shopping_order UNION ALL
+ SELECT
+ id,
+ `code`,
+ 3 as type,
+ title,
+ phone,
+ payment_status AS `status`,
+ order_amount,
+ payment_amount ,
+ create_time,
+ create_time as end_time,
+ pay_time,
+ refund_status,
+ (payment_amount-refund_amount) as final_amount,
+ del_flag
+ FROM
+ charging_pile_order.t_vip_order UNION ALL
+ SELECT
+ id,
+ `code`,
+ 4 as type,
+ title,
+ phone,
+ `status`,
+ order_amount ,
+ order_amount as payment_amount,
+ create_time,
+ out_parking_time as end_time,
+ out_parking_time as pay_time,
+ null as refund_status,
+ 0 as final_amount,
+ 0 as del_flag
+ FROM
+ charging_pile_service.t_parking_record ) o
<where>
+ o.del_flag = 0
<if test="data.code != null and data.code != ''">
AND o.code LIKE CONCAT('%',#{data.code},'%')
</if>
@@ -169,9 +182,7 @@
<if test="data.type != null">
AND o.type = #{data.type}
</if>
- <if test="data.status != null">
- AND o.status = #{data.status}
- </if>
+
<if test="data.createTime1 != null">
AND o.create_time >= #{data.createTime1}
</if>
@@ -179,7 +190,7 @@
AND o.create_time <= #{data.createTime2}
</if>
</where>
-
+ ORDER BY o.create_time desc
</select>
<select id="getRefundList" resultType="com.ruoyi.order.api.model.TChargingOrderRefund">
--
Gitblit v1.7.1