ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java
@@ -7,6 +7,8 @@ import org.springframework.data.mongodb.core.mapping.Document; import java.math.BigDecimal; import java.time.LocalDateTime; import java.util.Date; /** * 上传实时监测数据 @@ -45,6 +47,11 @@ private BigDecimal period_charging_degree;// @ApiModelProperty("时段充电度数") private Integer orderType; //1=充电订单(小程序),2=充电订单(刷卡)) private Integer siteId; private Integer status; //状态(0=未知,1=等待中/已插枪,2=启动中,3=充电中,4=停止中,5=已结束)" private Date startTime; //充电开始时间 private Date endTime; //充电结束时间 } ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/OrderClient.java
@@ -56,7 +56,7 @@ * @return */ @PostMapping(value = "/t-exchange-order/activityStatistics") public R<TActivityVO> activityStatistics(@RequestBody TActivityStatisticsQuery dto); R<TActivityVO> activityStatistics(@RequestBody TActivityStatisticsQuery dto); @PostMapping(value = "/chargingBill/accountBillList") @ApiOperation(value = "列表查询", tags = {"管理后台-账户结算账单"}) R<AccountListVO> accountBillList(@RequestBody ChargingListQuery dto); ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TActivityStatisticslVO.java
@@ -1,5 +1,6 @@ package com.ruoyi.order.api.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.databind.ser.Serializers; import com.ruoyi.common.core.web.domain.BasePojo; import com.ruoyi.order.api.model.*; @@ -8,6 +9,7 @@ import lombok.Data; import java.math.BigDecimal; import java.time.LocalDateTime; @Data @ApiModel(value = "管理后台活动费用统计分页列表", description = "管理后台活动费用统计分页列表") @@ -33,16 +35,17 @@ @ApiModelProperty(value = "实付") private BigDecimal paymentAmount; @ApiModelProperty(value = "消费时间") private String time; @ApiModelProperty(value = "消费时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") private LocalDateTime time; @ApiModelProperty(value = "总计优惠") private BigDecimal total; @ApiModelProperty(value = "消费时间") @ApiModelProperty(value = "优惠券优惠") private BigDecimal coupon; @ApiModelProperty(value = "消费时间") @ApiModelProperty(value = "会员抵扣") private BigDecimal discount; @ApiModelProperty(value = "消费时间") @ApiModelProperty(value = "会员活动") private BigDecimal vipActivity; @ApiModelProperty(value = "消费时间") @ApiModelProperty(value = "赠送会员") private BigDecimal grantVip; } ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/TActivityVO.java
@@ -7,7 +7,6 @@ import lombok.Data; import java.math.BigDecimal; @Data @ApiModel(value = "TOrderAppealVO对象", description = "订单申诉VO对象") public class TActivityVO { ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml
@@ -12,7 +12,6 @@ profiles: # 环境配置 active: dev # active: prod --- spring: config: @@ -55,7 +54,7 @@ type: nacos nacos: # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP data-id: seata-server.properties @@ -73,7 +72,7 @@ nacos: application: seata-server # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP username: nacos @@ -88,7 +87,7 @@ nacos: discovery: # 开发环境 server-addr: 192.168.110.169:8848 # nacos注册中心地址 server-addr: 127.0.0.1:8848 # nacos注册中心地址 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb # 命名空间 group: DEFAULT_GROUP application: seata-server #Nacos 中 Seata 名称 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java
@@ -320,7 +320,7 @@ public ChargeMonitoring chargeMonitoring(Integer siteId) { //获取当前登录账户的站点权限数据 Set<Integer> siteIds = new HashSet<>(); if(null == siteId){ if(0 == siteId){ SysUser sysUser = sysUserClient.getSysUser(SecurityUtils.getUserId()).getData(); Integer roleType = sysUser.getRoleType(); Integer objectId = sysUser.getObjectId(); @@ -334,12 +334,20 @@ List<Integer> data1 = roleSiteClient.getSiteIds(data2.get(0).getRoleId()).getData(); data.addAll(data1); siteIds = new HashSet<>(data); }else{ siteIds = null; } } }else{ siteIds.add(siteId); } List<Site> sites = siteService.listByIds(siteIds); List<Site> sites = null; if(null == siteIds){ sites = siteService.list(new LambdaQueryWrapper<Site>().eq(Site::getDelFlag, 0)); siteIds = sites.stream().map(Site::getId).collect(Collectors.toSet()); }else{ sites = siteService.listByIds(siteIds); } List<TChargingGun> total = chargingGunService.list(new LambdaQueryWrapper<TChargingGun>().in(TChargingGun::getSiteId, siteIds).eq(TChargingGun::getDelFlag, 0)); List<TChargingGun> charging = chargingGunService.list(new LambdaQueryWrapper<TChargingGun>().in(TChargingGun::getSiteId, siteIds).eq(TChargingGun::getStatus, 4).eq(TChargingGun::getDelFlag, 0)); BigDecimal ratedPower = total.stream().map(TChargingGun::getRatedPower).reduce(BigDecimal.ZERO, BigDecimal::add); @@ -361,9 +369,9 @@ } List<String> dates = new ArrayList<>(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MMM-dd"); Calendar calendar = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); for (int i = 6; i >= 0; i--) { Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - i); dates.add(sdf.format(calendar.getTime())); } @@ -382,7 +390,7 @@ 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(); Double datum1 = new BigDecimal(datum).divide(new BigDecimal(list.size()).multiply(v).multiply(new BigDecimal(24)), new MathContext(4, RoundingMode.HALF_EVEN)).multiply(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); value2.add(datum1); } } @@ -404,7 +412,7 @@ public ChargingGunCountMonitoring getChargingGunCountMonitoring(Integer siteId) { //获取当前登录账户的站点权限数据 Set<Integer> siteIds = new HashSet<>(); if(null == siteId){ if(0 == siteId){ SysUser sysUser = sysUserClient.getSysUser(SecurityUtils.getUserId()).getData(); Integer roleType = sysUser.getRoleType(); Integer objectId = sysUser.getObjectId(); @@ -418,6 +426,9 @@ List<Integer> data1 = roleSiteClient.getSiteIds(data2.get(0).getRoleId()).getData(); data.addAll(data1); siteIds = new HashSet<>(data); }else{ List<Site> list = siteService.list(new LambdaQueryWrapper<Site>().eq(Site::getDelFlag, 0)); siteIds = list.stream().map(Site::getId).collect(Collectors.toSet()); } } }else{ @@ -452,7 +463,7 @@ public PageInfo<ChargingGunMonitoring> getChargingGunMonitoring(GetChargingGunMonitoring query) { //获取当前登录账户的站点权限数据 Set<Integer> siteIds = new HashSet<>(); if(null == query.getSiteId()){ if(0 == query.getSiteId()){ SysUser sysUser = sysUserClient.getSysUser(SecurityUtils.getUserId()).getData(); Integer roleType = sysUser.getRoleType(); Integer objectId = sysUser.getObjectId(); @@ -466,6 +477,9 @@ List<Integer> data1 = roleSiteClient.getSiteIds(data2.get(0).getRoleId()).getData(); data.addAll(data1); siteIds = new HashSet<>(data); }else{ List<Site> list = siteService.list(new LambdaQueryWrapper<Site>().eq(Site::getDelFlag, 0)); siteIds = list.stream().map(Site::getId).collect(Collectors.toSet()); } } }else{ @@ -489,62 +503,60 @@ Integer id = gunMonitoring.getId(); //根据订单数据查询车牌号 TChargingOrder chargingOrder = chargingOrderClient.getOrderDetailByGunId(id).getData(); Long appUserCarId = chargingOrder.getAppUserCarId(); if(null != appUserCarId){ if(null != chargingOrder){ Long appUserCarId = chargingOrder.getAppUserCarId(); TAppUserCar tAppUserCar = appUserCarClient.getCarByIds(Arrays.asList(appUserCarId)).getData().get(0); gunMonitoring.setLicensePlate(tAppUserCar.getLicensePlate()); } UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataClient.chargingOrderInfo(chargingOrder.getCode()).getData(); gunMonitoring.setChargingRatio(BigDecimal.valueOf(data.getSoc())); gunMonitoring.setElectricQuantity(data.getCharging_degree().toString()); gunMonitoring.setSoc(data.getSoc().toString()); gunMonitoring.setElectricCurrent(data.getOutput_current().toString()); gunMonitoring.setVoltage(data.getOutput_voltage().toString()); switch (data.getHardware_fault()){ case 1: gunMonitoring.setFaultCause("急停按钮动作故障"); break; case 2: gunMonitoring.setFaultCause("无可用整流模块"); break; case 3: gunMonitoring.setFaultCause("出风口温度过高"); break; case 4: gunMonitoring.setFaultCause("交流防雷故障"); break; case 5: gunMonitoring.setFaultCause("交直流模块 DC20 通信中断"); break; case 6: gunMonitoring.setFaultCause("绝缘检测模块 FC08 通信中断"); break; case 7: gunMonitoring.setFaultCause("电度表通信中断"); break; case 8: gunMonitoring.setFaultCause("读卡器通信中断"); break; case 9: gunMonitoring.setFaultCause("RC10 通信中断"); break; case 10: gunMonitoring.setFaultCause("风扇调速板故障"); break; case 11: gunMonitoring.setFaultCause("直流熔断器故障"); break; case 12: gunMonitoring.setFaultCause("高压接触器故障"); break; case 13: gunMonitoring.setFaultCause("门打开"); break; UploadRealTimeMonitoringData data = uploadRealTimeMonitoringDataClient.chargingOrderInfo(chargingOrder.getCode()).getData(); gunMonitoring.setChargingRatio(BigDecimal.valueOf(data.getSoc())); gunMonitoring.setElectricQuantity(data.getCharging_degree().toString()); gunMonitoring.setSoc(data.getSoc().toString()); gunMonitoring.setElectricCurrent(data.getOutput_current().toString()); gunMonitoring.setVoltage(data.getOutput_voltage().toString()); switch (data.getHardware_fault()){ case 1: gunMonitoring.setFaultCause("急停按钮动作故障"); break; case 2: gunMonitoring.setFaultCause("无可用整流模块"); break; case 3: gunMonitoring.setFaultCause("出风口温度过高"); break; case 4: gunMonitoring.setFaultCause("交流防雷故障"); break; case 5: gunMonitoring.setFaultCause("交直流模块 DC20 通信中断"); break; case 6: gunMonitoring.setFaultCause("绝缘检测模块 FC08 通信中断"); break; case 7: gunMonitoring.setFaultCause("电度表通信中断"); break; case 8: gunMonitoring.setFaultCause("读卡器通信中断"); break; case 9: gunMonitoring.setFaultCause("RC10 通信中断"); break; case 10: gunMonitoring.setFaultCause("风扇调速板故障"); break; case 11: gunMonitoring.setFaultCause("直流熔断器故障"); break; case 12: gunMonitoring.setFaultCause("高压接触器故障"); break; case 13: gunMonitoring.setFaultCause("门打开"); break; } } } } return pageInfo.setRecords(chargingGunMonitoring); } ruoyi-service/ruoyi-chargingPile/src/main/resources/bootstrap.yml
@@ -13,7 +13,6 @@ profiles: # 环境配置 active: dev # active: prod --- spring: config: @@ -47,7 +46,7 @@ enabled: true application-id: ${spring.application.name} tx-service-group: seata_tx_group #此处配置自定义的seata事务分组名称 enable-auto-data-source-proxy: false enable-auto-data-source-proxy: true service: vgroup-mapping: seata_tx_group: default @@ -56,7 +55,7 @@ type: nacos nacos: # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP data-id: seata-server.properties @@ -74,7 +73,7 @@ nacos: application: seata-server # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP username: nacos @@ -89,7 +88,7 @@ nacos: discovery: # 开发环境 server-addr: 192.168.110.169:8848 # nacos注册中心地址 server-addr: 127.0.0.1:8848 # nacos注册中心地址 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb # 命名空间 group: DEFAULT_GROUP application: seata-server #Nacos 中 Seata 名称 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderAccountingStrategyServiceImpl.java
@@ -13,8 +13,10 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.math.RoundingMode; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.time.Duration; import java.time.format.DateTimeFormatter; import java.util.*; import java.util.stream.Collectors; import java.util.stream.LongStream; @@ -43,19 +45,20 @@ @Override public List<List<Map<String, Object>>> getTotalElectricQuantity(Integer days, Set<Integer> siteIds) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); DateTimeFormatter sdf1 = DateTimeFormatter.ofPattern("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - days); String startTime = sdf.format(calendar.getTime()) + " 00:00:00"; List<TChargingOrder> list = chargingOrderService.list(new LambdaQueryWrapper<TChargingOrder>().in(TChargingOrder::getSiteId, siteIds).eq(TChargingOrder::getStatus, 5) .eq(TChargingOrder::getDelFlag, 0).last(" and end_time between '" + startTime + "' and DATE_FORMAT('%Y-%m-%d %H:%i:%s', now())")); .eq(TChargingOrder::getDelFlag, 0).last(" and start_time between '" + startTime + "' and DATE_FORMAT(now(), '%Y-%m-%d %H:%i:%s')")); List<Long> orderId = list.stream().map(TChargingOrder::getId).collect(Collectors.toList()); List<TChargingOrderAccountingStrategy> list1 = this.list(new LambdaQueryWrapper<TChargingOrderAccountingStrategy>().in(TChargingOrderAccountingStrategy::getChargingOrderId, orderId)); List<List<Map<String, Object>>> list2 = new ArrayList<>(); Calendar nowDateTime = Calendar.getInstance(); for (int i = days; i >= 0; i--) { Calendar nowDateTime = Calendar.getInstance(); nowDateTime.set(Calendar.DAY_OF_YEAR, nowDateTime.get(Calendar.DAY_OF_YEAR) - i); List<TChargingOrder> collect = list.stream().filter(s -> sdf.format(s.getEndTime()).equals(sdf.format(nowDateTime.getTime()))).collect(Collectors.toList()); List<TChargingOrder> collect = list.stream().filter(s -> s.getStartTime().format(sdf1).equals(sdf.format(nowDateTime.getTime()))).collect(Collectors.toList()); List<Long> orderIds = collect.stream().map(TChargingOrder::getId).collect(Collectors.toList()); @@ -105,15 +108,15 @@ calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - days); String startTime = sdf.format(calendar.getTime()) + " 00:00:00"; List<TChargingOrder> list = chargingOrderService.list(new LambdaQueryWrapper<TChargingOrder>().in(TChargingOrder::getSiteId, siteIds).eq(TChargingOrder::getStatus, 5) .eq(TChargingOrder::getDelFlag, 0).last(" and end_time between '" + startTime + "' and DATE_FORMAT('%Y-%m-%d %H:%i:%s', now())")); .eq(TChargingOrder::getDelFlag, 0).last(" and start_time between '" + startTime + "' and DATE_FORMAT(now(), '%Y-%m-%d %H:%i:%s')")); List<Double> list2 = new ArrayList<>(); Calendar nowDateTime = Calendar.getInstance(); //遍历获取每天的数值 for (int i = days; i >= 0; i--) { Calendar nowDateTime = Calendar.getInstance(); nowDateTime.set(Calendar.DAY_OF_YEAR, nowDateTime.get(Calendar.DAY_OF_YEAR) - i); //充电量 BigDecimal reduce = list.stream().filter(s -> sdf.format(s.getEndTime()).equals(sdf.format(nowDateTime.getTime()))) BigDecimal reduce = list.stream().filter(s -> s.getStartTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")).equals(sdf.format(nowDateTime.getTime()))) .map(TChargingOrder::getChargingCapacity).reduce(BigDecimal.ZERO, BigDecimal::add); list2.add(reduce.doubleValue()); } ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -294,7 +294,7 @@ myChargingOrderInfo.setCurrentAndVoltage(currentAndVoltage); //在MongoDB中获取数据 List<Integer> soc = dataList.stream().map(UploadRealTimeMonitoringData::getSoc).collect(Collectors.toList()); List<BigDecimal> po = dataList.stream().map(s -> s.getOutput_current().multiply(s.getOutput_voltage()).divide(new BigDecimal(1000))).collect(Collectors.toList()); List<BigDecimal> po = dataList.stream().map(s -> s.getOutput_current().multiply(s.getOutput_voltage()).divide(new BigDecimal(1000),2, RoundingMode.HALF_DOWN)).collect(Collectors.toList()); List<Map<String, Object>> power = new ArrayList<>(); for (int i = 0; i < time.size(); i++) { Map<String, Object> map = new HashMap<>(); @@ -2460,9 +2460,13 @@ if (!data1.isEmpty()){ tSettlementConfirm.setSiteName(data1.get(0).getName()); } meteringElectronic = meteringElectronic.add(tSettlementConfirm.getMeteringElectronic()); chargingElectronic = chargingElectronic.add(tSettlementConfirm.getChargingElectronic()); lossElectronic = lossElectronic.add(tSettlementConfirm.getLossElectronic()); if (tSettlementConfirm.getMeteringElectronic()!=null){ meteringElectronic = meteringElectronic.add(tSettlementConfirm.getMeteringElectronic()); chargingElectronic = chargingElectronic.add(tSettlementConfirm.getChargingElectronic()); } if (tSettlementConfirm.getLossElectronic()!=null){ lossElectronic = lossElectronic.add(tSettlementConfirm.getLossElectronic()); } income = income.add(tSettlementConfirm.getIncome()); venue = venue.add(tSettlementConfirm.getVenue()); metering = metering.add(tSettlementConfirm.getMetering()); @@ -2526,13 +2530,22 @@ settlementConfirm.setIncome(settlementConfirm.getElectrovalence().add(settlementConfirm.getServiceCharge())); if (tSettlementConfirm.getSiteId().equals(settlementConfirm.getSiteId())){ // 电站相同比较收入涨幅跌幅 BigDecimal subtract = tSettlementConfirm.getIncome().subtract(settlementConfirm.getIncome()).divide(tSettlementConfirm.getIncome()).setScale(2, RoundingMode.HALF_DOWN).multiply(new BigDecimal("100")); tSettlementConfirm.setIncomePercentage(subtract+"%"); if (tSettlementConfirm.getIncome().compareTo(BigDecimal.ZERO)>0){ BigDecimal subtract = tSettlementConfirm.getIncome().subtract(settlementConfirm.getIncome()).divide(tSettlementConfirm.getIncome()).setScale(2, RoundingMode.HALF_DOWN).multiply(new BigDecimal("100")); tSettlementConfirm.setIncomePercentage(subtract+"%"); }else { tSettlementConfirm.setIncomePercentage("100"+"%"); } // 比较总利润 收入合计-成本合计 BigDecimal subtract1 = tSettlementConfirm.getIncome().subtract(tSettlementConfirm.getCost()); BigDecimal subtract2 = settlementConfirm.getIncome().subtract(settlementConfirm.getCost()); tSettlementConfirm.setTotalPercentage(subtract1.subtract(subtract2).divide(subtract2).setScale(2, RoundingMode.HALF_DOWN).multiply(new BigDecimal("100"))+"%"); } BigDecimal bigDecimal1 = subtract1.subtract(subtract2) .divide(subtract2, 2, RoundingMode.HALF_DOWN) .multiply(new BigDecimal("100")) .setScale(2, RoundingMode.HALF_DOWN); tSettlementConfirm.setTotalPercentage(bigDecimal1+"%"); } beforeCost = beforeCost.add(settlementConfirm.getCost()); beforeIncome = beforeIncome.add(settlementConfirm.getIncome()); @@ -2582,7 +2595,7 @@ if (subtract2.compareTo(new BigDecimal("0")) == 0){ tSettlementConfirm.setTotalPercentage(0+"%"); }else{ tSettlementConfirm.setTotalPercentage(subtract1.subtract(subtract2).divide(subtract2).setScale(2, RoundingMode.HALF_DOWN).multiply(new BigDecimal("100"))+"%"); tSettlementConfirm.setTotalPercentage(subtract1.subtract(subtract2).divide(subtract2,2, RoundingMode.HALF_DOWN).setScale(2, RoundingMode.HALF_DOWN).multiply(new BigDecimal("100"))+"%"); } tSettlementConfirm.setElectronicRefund(0); // 查询上次汇报数据 进行比对涨幅跌幅 ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
@@ -127,15 +127,15 @@ coupon = coupon.add(tActivityStatisticslVO.getCouponDiscountAmount()); stringBuilder.append("优惠券抵扣").append("+"); } if (tActivityStatisticslVO.getVipDiscountAmount()!=null && (tActivityStatisticslVO.getCouponDiscountAmount().compareTo(BigDecimal.ZERO)>0)){ if (tActivityStatisticslVO.getVipDiscountAmount()!=null &&(tActivityStatisticslVO.getVipDiscountAmount().compareTo(BigDecimal.ZERO)>0)){ discount = discount.add(tActivityStatisticslVO.getVipDiscountAmount()); stringBuilder.append("会员抵扣").append("+"); } stringBuilder.deleteCharAt(stringBuilder.length()-1); tActivityStatisticslVO.setType(stringBuilder.toString()); tActivityStatisticslVO.setTime(simpleDateFormat.format(tActivityStatisticslVO.getCreateTime())); if (stringBuilder.length()>0){ stringBuilder.deleteCharAt(stringBuilder.length()-1); tActivityStatisticslVO.setType(stringBuilder.toString()); } tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime()); break; case 2: StringBuilder stringBuilder1 = new StringBuilder(); @@ -155,7 +155,7 @@ } stringBuilder1.deleteCharAt(stringBuilder1.length()-1); tActivityStatisticslVO.setType(stringBuilder1.toString()); tActivityStatisticslVO.setTime(simpleDateFormat.format(tActivityStatisticslVO.getCreateTime())); tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime()); break; case 3: // 会员订单 优惠金额大于0 @@ -165,19 +165,19 @@ vipActivity = vipActivity.add(tActivityStatisticslVO.getVipDiscountAmount()); } tActivityStatisticslVO.setType("会员活动"); tActivityStatisticslVO.setTime(simpleDateFormat.format(tActivityStatisticslVO.getCreateTime())); tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime()); break; case 4: // 赠送会员订单 如果支付金额为0 那么就是后台赠送的会员 if (tActivityStatisticslVO.getPaymentAmount().compareTo(BigDecimal.ZERO)==0){ grantVip = grantVip.add(tActivityStatisticslVO.getOrderAmount()); tActivityStatisticslVO.setType("赠送会员"); tActivityStatisticslVO.setTime(simpleDateFormat.format(tActivityStatisticslVO.getCreateTime())); tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime()); }else{ // 赠送 grantVip = grantVip.add(tActivityStatisticslVO.getVipDiscountAmount()); tActivityStatisticslVO.setType("赠送会员"); tActivityStatisticslVO.setTime(simpleDateFormat.format(tActivityStatisticslVO.getCreateTime())); tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime()); } break; } ruoyi-service/ruoyi-order/src/main/resources/bootstrap.yml
@@ -29,7 +29,6 @@ namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb username: nacos password: nacos # ip: 192.168.110.85 config: # 配置中心地址 server-addr: 192.168.110.169:8848 @@ -57,7 +56,7 @@ type: nacos nacos: # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP data-id: seata-server.properties @@ -75,7 +74,7 @@ nacos: application: seata-server # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP username: nacos @@ -90,7 +89,7 @@ nacos: discovery: # 开发环境 server-addr: 192.168.110.169:8848 # nacos注册中心地址 server-addr: 127.0.0.1:8848 # nacos注册中心地址 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb # 命名空间 group: DEFAULT_GROUP application: seata-server #Nacos 中 Seata 名称 @@ -122,6 +121,7 @@ namespace: c6cf40b5-44e8-43f9-be61-8d10fa830e2a username: nacos password: nacos ip: 192.168.110.111 config: # 配置中心地址 server-addr: 192.168.0.137:8848,192.168.0.123:8848 ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingBillMapper.xml
@@ -6,7 +6,7 @@ <select id="chargingBillList" resultType="com.ruoyi.order.api.vo.ChargingBillListVO"> select t1.* from t_charging_bill t1 where 1=1 <if test="req.type != null "> <if test="req.type != null and req.type!=0"> and t1.type = #{req.type} </if> <if test="req.state != null "> ruoyi-service/ruoyi-other/src/main/resources/bootstrap.yml
@@ -29,7 +29,6 @@ namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb username: nacos password: nacos # ip: 192.168.110.85 config: # 配置中心地址 server-addr: 192.168.110.169:8848 @@ -57,7 +56,7 @@ type: nacos nacos: # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP data-id: seata-server.properties @@ -75,7 +74,7 @@ nacos: application: seata-server # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP username: nacos @@ -90,7 +89,7 @@ nacos: discovery: # 开发环境 server-addr: 192.168.110.169:8848 # nacos注册中心地址 server-addr: 127.0.0.1:8848 # nacos注册中心地址 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb # 命名空间 group: DEFAULT_GROUP application: seata-server #Nacos 中 Seata 名称 ruoyi-service/ruoyi-payment/src/main/resources/bootstrap.yml
@@ -1,7 +1,3 @@ server: port: 9500 tomcat: basedir: /data/tomcat # Spring spring: application: @@ -13,7 +9,6 @@ profiles: # 环境配置 active: dev # active: prod --- spring: config: @@ -42,7 +37,10 @@ # 共享配置 shared-configs: - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} --- seata: enabled: true application-id: ${spring.application.name} @@ -55,57 +53,36 @@ config: type: nacos nacos: # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP data-id: seata-server.properties username: nacos password: nacos # 生产环境 # server-addr: 192.168.0.137:8848,192.168.0.123:8848 # namespace: c6cf40b5-44e8-43f9-be61-8d10fa830e2a # group: DEFAULT_GROUP # data-id: seata-server.properties # username: nacos # password: nacos registry: type: nacos nacos: application: seata-server # 开发环境 server-addr: 192.168.110.169:8848 server-addr: 127.0.0.1:8848 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb group: DEFAULT_GROUP username: nacos password: nacos # 生产环境 # server-addr: 192.168.0.137:8848,192.168.0.123:8848 # namespace: c6cf40b5-44e8-43f9-be61-8d10fa830e2a # group: DEFAULT_GROUP # username: nacos # password: nacos cloud: nacos: discovery: # 开发环境 server-addr: 192.168.110.169:8848 # nacos注册中心地址 server-addr: 127.0.0.1:8848 # nacos注册中心地址 namespace: b5290bc2-e3aa-4988-8a7d-9c07e4e073cb # 命名空间 group: DEFAULT_GROUP application: seata-server #Nacos 中 Seata 名称 username: nacos password: nacos # 生产环境 # server-addr: 192.168.0.137:8848,192.168.0.123:8848 # namespace: c6cf40b5-44e8-43f9-be61-8d10fa830e2a # group: DEFAULT_GROUP # application: seata-server #Nacos 中 Seata 名称 # username: nacos # password: nacos sentinel: transport: dashboard: 127.0.0.1:8080 # Sentinel控制台地址 eager: true --- spring: config: @@ -115,18 +92,14 @@ nacos: discovery: # 服务注册地址 server-addr: 192.168.0.137:8848,192.168.0.123:8848 server-addr: 127.0.0.1:8848 service: ${spring.application.name} group: DEFAULT_GROUP namespace: c6cf40b5-44e8-43f9-be61-8d10fa830e2a username: nacos password: nacos namespace: 3452d750-b08d-4485-a1e9-4fb0548f1fc2 config: # 配置中心地址 server-addr: 192.168.0.137:8848,192.168.0.123:8848 namespace: c6cf40b5-44e8-43f9-be61-8d10fa830e2a username: nacos password: nacos server-addr: 127.0.0.1:8848 namespace: 3452d750-b08d-4485-a1e9-4fb0548f1fc2 group: DEFAULT_GROUP name: ${spring.application.name} # 配置文件格式