From c0211a20f4f2d94fe1ac7657284504afa876b8a0 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期一, 04 十一月 2024 18:47:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java | 43 ++++---
ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TIntegralRule.java | 3
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java | 10 -
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/FileController.java | 6
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingGunController.java | 8 -
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java | 1
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java | 28 ----
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/feignClient/ChargingOrderClient.java | 2
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java | 9 +
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java | 33 ++--
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java | 43 +++++++
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java | 11 +
ruoyi-service/ruoyi-chargingPile/src/main/resources/template/结算汇总.xlsx | 0
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java | 6
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileServiceImpl.java | 24 ++++
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java | 3
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java | 31 +++++
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/UpdateChargingPileStatusVo.java | 15 ++
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/model/BaseResponse.java | 41 +++++-
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java | 7 +
ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserFallbackFactory.java | 6 +
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java | 7
ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java | 3
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/controller/ParkingOrderController.java | 1
ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java | 2
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/config/FileUploadConfig.java | 2
ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java | 9 +
27 files changed, 248 insertions(+), 106 deletions(-)
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserFallbackFactory.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserFallbackFactory.java
index b52e7e8..b4cd200 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/factory/AppUserFallbackFactory.java
@@ -94,9 +94,15 @@
}
@Override
+ public R<Boolean> sensitiveWordDetection(String content, String openid) {
+ return R.fail("敏感词校验失败:" + throwable.getMessage());
+ }
+
+ @Override
public R<String> sendMessage(SendMessageDTO sendMessageDTO) {
return R.fail("短信发送失败:" + throwable.getMessage());
}
+
};
}
}
diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
index 1c4316b..904e7aa 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/feignClient/AppUserClient.java
@@ -96,6 +96,15 @@
R<String> getWXToken();
/**
+ * 敏感词检测
+ * @param content
+ * @param openid
+ * @return
+ */
+ @PostMapping("/wxLogin/sensitiveWordDetection")
+ R<Boolean> sensitiveWordDetection (@RequestParam("content") String content, @RequestParam("openid") String openid);
+
+ /**
* 短信发送
* @return
*/
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java
index eb221dd..b5e2ebc 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/factory/ChargingPileFallbackFactory.java
@@ -3,6 +3,7 @@
import com.ruoyi.chargingPile.api.feignClient.ChargingPileClient;
import com.ruoyi.chargingPile.api.model.TChargingPile;
import com.ruoyi.chargingPile.api.vo.SiteInfoVO;
+import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo;
import com.ruoyi.common.core.domain.R;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -58,7 +59,7 @@
}
@Override
- public void updateChargingPileStatus(String pile_code, String gun_code, Integer status) {
+ public void updateChargingPileStatus(UpdateChargingPileStatusVo vo) {
log.error("修改充电桩状态失败:" + throwable.getMessage());
}
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
index 60448b2..d22aa62 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ChargingPileClient.java
@@ -3,14 +3,12 @@
import com.ruoyi.chargingPile.api.factory.ChargingPileFallbackFactory;
import com.ruoyi.chargingPile.api.model.TChargingPile;
import com.ruoyi.chargingPile.api.vo.SiteInfoVO;
+import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo;
import com.ruoyi.common.core.constant.ServiceNameConstants;
import com.ruoyi.common.core.domain.R;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
import java.util.List;
@@ -53,9 +51,7 @@
/**
* 修改充电桩状态
- * @param code
- * @param status
*/
@PostMapping("/t-charging-pile/updateChargingPileStatus")
- void updateChargingPileStatus(@RequestParam("pile_code") String pile_code, @RequestParam("gun_code") String gun_code, @RequestParam("status") Integer status);
+ void updateChargingPileStatus(@RequestBody UpdateChargingPileStatusVo vo);
}
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java
index fea8b39..2751195 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/feignClient/ParkingLotClient.java
@@ -29,7 +29,7 @@
@PostMapping(value = "/t-parking-lot/getLotBySiteId")
public R<TParkingLot> getLotBySiteId(@RequestParam("siteId") Integer siteId);
- @PostMapping(value = "/t-parking-lot/getRecordById")
+ @GetMapping(value = "/t-parking-lot/getRecordById")
public R<TParkingRecord> getRecordById(@RequestParam("id") Long siteId);
@PostMapping(value = "/t-parking-lot/getRecordAmount")
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java
index ee04672..4e0d5ec 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TParkingRecord.java
@@ -22,7 +22,6 @@
* @since 2024-08-08
*/
@Data
-@EqualsAndHashCode(callSuper = false)
@TableName("t_parking_record")
@ApiModel(value="TParkingRecord对象", description="")
public class TParkingRecord implements Serializable {
diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/UpdateChargingPileStatusVo.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/UpdateChargingPileStatusVo.java
new file mode 100644
index 0000000..b354ffb
--- /dev/null
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/vo/UpdateChargingPileStatusVo.java
@@ -0,0 +1,15 @@
+package com.ruoyi.chargingPile.api.vo;
+
+
+import lombok.Data;
+
+/**
+ * @author zhibing.pu
+ * @Date 2024/11/4 11:37
+ */
+@Data
+public class UpdateChargingPileStatusVo {
+ private String pile_code;
+ private String gun_code;
+ private Integer status;
+}
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 33352e4..78ef068 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
@@ -31,7 +31,7 @@
R<String> queryOrderByGunId(@PathVariable("id") String id);
@PostMapping(value = "/t-charging-order/useOrderCount")
R<Long> useOrderCount(@RequestParam("userId") Long userId);
- @PostMapping(value = "/t-charging-order/chargingBillListR")
+ @PostMapping(value = "/chargingBill/chargingBillListR")
R<ChargingBillVO> chargingBillListR(@RequestBody ChargingListQuery dto);
@PostMapping(value = "/t-charging-order/detail")
R<TChargingOrder> orderDetail(@RequestParam("orderId") Long orderId);
diff --git a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java
index 3154e54..5aefedb 100644
--- a/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java
+++ b/ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/model/TSettlementConfirm.java
@@ -34,7 +34,12 @@
@ApiModelProperty(value = "主键")
@TableId(value = "id")
private Long id;
-
+ @ApiModelProperty(value = "序号")
+ @TableField(exist = false)
+ private Integer xuhao;
+ @ApiModelProperty(value = "月份")
+ @TableField(exist = false)
+ private Integer month;
@ApiModelProperty(value = "站点id")
@TableField("site_id")
private Integer siteId;
diff --git a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TIntegralRule.java b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TIntegralRule.java
index f6ad529..453926a 100644
--- a/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TIntegralRule.java
+++ b/ruoyi-api/ruoyi-api-other/src/main/java/com/ruoyi/other/api/domain/TIntegralRule.java
@@ -51,6 +51,9 @@
@ApiModelProperty(value = "签到得积分{\"num1\":1,\"num2\":[\"1(多少天),2(多少分)\"]}")
@TableField("sign_in_for_points")
private String signInForPoints;
+ @ApiModelProperty(value = "是否双倍")
+ @TableField(exist = false)
+ private Integer isDouble;
}
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/config/FileUploadConfig.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/config/FileUploadConfig.java
similarity index 91%
rename from ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/config/FileUploadConfig.java
rename to ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/config/FileUploadConfig.java
index 5d9cd57..5975453 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/config/FileUploadConfig.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/config/FileUploadConfig.java
@@ -1,4 +1,4 @@
-package com.ruoyi.chargingPile.config;
+package com.ruoyi.account.config;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/FileController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/FileController.java
similarity index 96%
rename from ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/FileController.java
rename to ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/FileController.java
index 9baad05..9c04233 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/FileController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/FileController.java
@@ -1,6 +1,6 @@
-package com.ruoyi.chargingPile.controller;
+package com.ruoyi.account.controller;
-import com.ruoyi.chargingPile.config.FileUploadConfig;
+import com.ruoyi.account.config.FileUploadConfig;
import com.ruoyi.common.core.web.domain.AjaxResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -37,7 +37,6 @@
}
String TimeDir =new SimpleDateFormat("yyyy-MM-dd").format(new Date());
String realPath = fileUploadConfig.getLocation() + TimeDir;
-// String realPath = "D:\\file\\" + TimeDir;
File file = new File(realPath);
// 没有目录就创建
if (!file.exists()) {
@@ -57,7 +56,6 @@
mf.transferTo(targetFile);
//拼接数据
String imgstr = fileUploadConfig.getAccessPath() + TimeDir +"/"+ filename;
-// String imgstr = TimeDir +"/"+ filename;
return AjaxResult.success(imgstr);
}
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
index a3d64ac..6a25b2b 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java
@@ -1,6 +1,7 @@
package com.ruoyi.account.controller;
-import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
import com.alipay.api.internal.util.codec.Base64;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -18,6 +19,7 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.FileUploadUtils;
+import com.ruoyi.common.core.utils.HttpUtils;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.redis.service.RedisService;
@@ -179,4 +181,43 @@
String accessToken = appletTools.getAccessToken("");
return R.ok(accessToken);
}
+
+
+ /**
+ * 敏感词检测
+ * @param content
+ * @param openid
+ * @return
+ */
+ @PostMapping("/sensitiveWordDetection")
+ public R<Boolean> sensitiveWordDetection (@RequestParam("content") String content, @RequestParam("openid") String openid){
+ WxAppletTools appletTools = new WxAppletTools(wxRestTemplate, wxConfig, redisService);
+ String accessToken = appletTools.getAccessToken("");
+ com.alibaba.fastjson2.JSONObject jsonObject = new com.alibaba.fastjson2.JSONObject();
+ jsonObject.put("content", content);
+ jsonObject.put("version", 2);
+ jsonObject.put("scene", 2);
+ jsonObject.put("openid", openid);
+ String post = HttpUtils.post("https://api.weixin.qq.com/wxa/msg_sec_check?access_token=" + accessToken, jsonObject.toString());
+ com.alibaba.fastjson2.JSONObject object = com.alibaba.fastjson2.JSONObject.parseObject(post);
+ Integer errcode = object.getInteger("errcode");
+ if(0 != errcode){
+ throw new RuntimeException(object.getString("errmsg"));
+ }
+ JSONArray detail = object.getJSONArray("detail");
+ for (int i = 0; i < detail.size(); i++) {
+ JSONObject jsonObject1 = detail.getJSONObject(i);
+ Integer errcode1 = jsonObject1.getInteger("errcode");
+ if(0 == errcode1){
+ String suggest = jsonObject1.getString("suggest");
+ Integer label = jsonObject1.getInteger("label");
+ String keyword = jsonObject1.getString("keyword");
+ Integer prob = jsonObject1.getInteger("prob");
+ if(("risky".equals(suggest) || "review".equals(suggest)) && 100 != label && StringUtils.isNotEmpty(keyword) && 80 <= prob){
+ return R.ok(true);
+ }
+ }
+ }
+ return R.ok(false);
+ }
}
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
index f4ab667..d715cb8 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TApplyChargingPileController.java
@@ -655,7 +655,8 @@
response.setContentType("application/vnd.ms-excel");
response.setHeader("Access-Control-Expose-Headers", "Content-disposition");
response.setHeader("Content-Disposition", "attachment;filename=" +
- URLEncoder.encode("月账单-"+data.getCategory()+data.getBillWeek()+data.getSiteName(), CharEncoding.UTF_8) + ".xlsx");
+// URLEncoder.encode("月账单-"+data.getCategory()+data.getBillWeek()+data.getSiteName(), CharEncoding.UTF_8) + ".xlsx");
+ URLEncoder.encode("月账单", CharEncoding.UTF_8) + ".xlsx");
} catch (UnsupportedEncodingException e) {
return R.fail("excel导出失败!");
}
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 1c1442d..a619468 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
@@ -1,8 +1,6 @@
package com.ruoyi.chargingPile.controller;
-import cn.hutool.core.img.ImgUtil;
-import cn.hutool.core.io.FileUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.chargingPile.api.dto.GetSiteListDTO;
@@ -10,7 +8,6 @@
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.api.model.TFaultMessage;
import com.ruoyi.chargingPile.api.query.TChargingGunQuery;
import com.ruoyi.chargingPile.api.vo.GetChargingGunByCode;
import com.ruoyi.chargingPile.api.vo.GunStatusStatisticsVO;
@@ -23,14 +20,11 @@
import com.ruoyi.chargingPile.util.QRCodeUtils;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
-import com.ruoyi.common.core.web.domain.BaseDelete;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.common.log.enums.OperatorType;
import com.ruoyi.common.security.utils.SecurityUtils;
-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;
@@ -40,13 +34,11 @@
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
-import java.awt.image.BufferedImage;
import java.io.*;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import java.util.Map;
/**
* <p>
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
index 6326c71..644e120 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TChargingPileController.java
@@ -8,6 +8,7 @@
import com.ruoyi.chargingPile.api.model.TFaultMessage;
import com.ruoyi.chargingPile.api.query.TChargingGunQuery;
import com.ruoyi.chargingPile.api.vo.TChargingGunVO;
+import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo;
import com.ruoyi.chargingPile.dto.ChargeMonitoring;
import com.ruoyi.chargingPile.dto.ChargingGunCountMonitoring;
import com.ruoyi.chargingPile.dto.ChargingGunMonitoring;
@@ -219,11 +220,13 @@
/**
* 更新充电桩状态
- * @param status
*/
@ResponseBody
@PostMapping("/updateChargingPileStatus")
- public void updateChargingPileStatus(@RequestParam("pile_code") String pile_code, @RequestParam("gun_code") String gun_code, @RequestParam("status") Integer status){
+ public void updateChargingPileStatus(@RequestBody UpdateChargingPileStatusVo vo){
+ String pile_code = vo.getPile_code();
+ String gun_code = vo.getGun_code();
+ Integer status = vo.getStatus();
Map<String, Object> charging_pile_online = redisService.getCacheMap("charging_gun_online");
Long time = (Long) charging_pile_online.get(pile_code + gun_code);
//小于30秒才处理数据,防止频繁查询数据
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java
index 18719cc..b071b25 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TParkingRecordController.java
@@ -37,6 +37,7 @@
import java.math.BigDecimal;
import java.net.URLEncoder;
import java.time.LocalDate;
+import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.HashMap;
@@ -151,6 +152,7 @@
public R out(Long id) {
TParkingRecord byId = parkingRecordService.getById(id);
byId.setStatus(2);
+ byId.setOutParkingTime(LocalDateTime.now());
parkingRecordService.updateById(byId);
return R.ok();
@@ -306,7 +308,7 @@
@PostMapping(value = "/parking/work")
@ApiOperation(value = "停车订单统计", tags = {"管理后台-工作台"})
public R<TParkLotRecordCountVo> work(@RequestBody ParkingRecordQueryDto parkingRecordQueryDto){
- List<TParkingRecord> list = parkingRecordService.lambdaQuery().eq(parkingRecordQueryDto.getParkingLotId() != null, TParkingRecord::getParkingLotId, parkingRecordQueryDto.getParkingLotId())
+ List<TParkingRecord> list = parkingRecordService.lambdaQuery().isNotNull(TParkingRecord::getOutParkingType).eq(parkingRecordQueryDto.getParkingLotId() != null, TParkingRecord::getParkingLotId, parkingRecordQueryDto.getParkingLotId())
.ge(parkingRecordQueryDto.getStartTime()!=null,TParkingRecord::getCreateTime, parkingRecordQueryDto.getStartTime())
.le(parkingRecordQueryDto.getEndTime()!=null,TParkingRecord::getCreateTime, parkingRecordQueryDto.getEndTime().plusDays(1)).list();
int count1 = list.size();
@@ -335,7 +337,7 @@
@PostMapping(value = "/parking/work1")
@ApiOperation(value = "停车订单统计", tags = {"管理后台-工作台"})
public R<TParkLotRecordCountVo> work1(@RequestBody ParkingRecordQueryDto parkingRecordQueryDto){
- List<TParkingRecord> list = parkingRecordService.lambdaQuery().eq(parkingRecordQueryDto.getParkingLotId() != null, TParkingRecord::getParkingLotId, parkingRecordQueryDto.getParkingLotId()).list();
+ List<TParkingRecord> list = parkingRecordService.lambdaQuery().isNotNull(TParkingRecord::getOutParkingType).eq(parkingRecordQueryDto.getParkingLotId() != null, TParkingRecord::getParkingLotId, parkingRecordQueryDto.getParkingLotId()).list();
int count1 = list.size();
//统计出list中chargingOrderId为null的数据个数
int count2 = list.stream().filter(item -> item.getChargingOrderId() != null).collect(Collectors.toList()).size();
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 447ff59..f52b0f1 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
@@ -28,7 +28,9 @@
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.integration.api.feignClient.IntegrationClient;
import com.ruoyi.integration.api.feignClient.IotInterfaceClient;
+import com.ruoyi.integration.api.feignClient.SendMessageClient;
import com.ruoyi.integration.api.feignClient.UploadRealTimeMonitoringDataClient;
+import com.ruoyi.integration.api.model.QrCodeDelivery;
import com.ruoyi.integration.api.model.UploadRealTimeMonitoringData;
import com.ruoyi.integration.api.vo.AddDevice;
import com.ruoyi.integration.api.vo.AddDeviceResp;
@@ -112,6 +114,9 @@
@Resource
private TAccountingStrategyDetailService accountingStrategyDetailService;
+
+ @Resource
+ private SendMessageClient sendMessageClient;
@@ -248,6 +253,25 @@
return AjaxResult.error("设备编号已存在");
}
this.updateById(chargingPile);
+
+ List<TChargingGun> list = chargingGunService.list(new LambdaQueryWrapper<TChargingGun>().eq(TChargingGun::getChargingPileId, chargingPile.getId()).eq(TChargingGun::getDelFlag, 0));
+ for (TChargingGun chargingGun : list) {
+ TChargingGun chargingGun1 = new TChargingGun();
+ chargingGun1.setId(chargingGun.getId());
+ chargingGun1.setFullNumber(chargingPile.getCode() + chargingGun.getCode());
+ chargingGunService.updateById(chargingGun1);
+
+ //下发硬件充电二维码
+ String code_prefix = "https://mxcd.zhinenganguan.com?No=";
+ QrCodeDelivery qrCodeDelivery = new QrCodeDelivery();
+ qrCodeDelivery.setCharging_pile_code(chargingPile.getCode());
+ qrCodeDelivery.setCharging_gun_code(chargingGun.getCode());
+ qrCodeDelivery.setCode_format(1);
+ qrCodeDelivery.setPrefix_length(code_prefix.length());
+ qrCodeDelivery.setCode_prefix(code_prefix);
+ qrCodeDelivery.setQr_code(code_prefix + chargingPile.getCode() + chargingGun.getCode());
+ sendMessageClient.qrCodeDelivery(qrCodeDelivery);
+ }
return AjaxResult.success();
}
diff --git "a/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\347\273\223\347\256\227\346\261\207\346\200\273.xlsx" "b/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\347\273\223\347\256\227\346\261\207\346\200\273.xlsx"
index bba4e25..0623597 100644
--- "a/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\347\273\223\347\256\227\346\261\207\346\200\273.xlsx"
+++ "b/ruoyi-service/ruoyi-chargingPile/src/main/resources/template/\347\273\223\347\256\227\346\261\207\346\200\273.xlsx"
Binary files differ
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/controller/ParkingOrderController.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/controller/ParkingOrderController.java
index 1e90bd8..0979a75 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/controller/ParkingOrderController.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/controller/ParkingOrderController.java
@@ -60,7 +60,6 @@
}
-
/**
* 线下停车场入场
* @param order
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/model/BaseResponse.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/model/BaseResponse.java
index 8f63c73..3506c76 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/model/BaseResponse.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/barrierGate/model/BaseResponse.java
@@ -1,12 +1,10 @@
package com.ruoyi.integration.barrierGate.model;
-import lombok.Data;
/**
* @author zhibing.pu
* @Date 2024/9/5 11:29
*/
-@Data
public class BaseResponse<T> {
private Integer code;
@@ -15,17 +13,46 @@
private T data;
+ public Integer getCode() {
+ return code;
+ }
+
+ public void setCode(Integer code) {
+ this.code = code;
+ }
+
+ public String getMsg() {
+ return msg;
+ }
+
+ public void setMsg(String msg) {
+ this.msg = msg;
+ }
+
+ public T getData() {
+ return data;
+ }
+
+ public void setData(T data) {
+ this.data = data;
+ }
+
+ public BaseResponse() {
+ }
+
+ public BaseResponse(Integer code, String msg, T data) {
+ this.code = code;
+ this.msg = msg;
+ this.data = data;
+ }
public static BaseResponse ok(){
- return ok(new Object());
+ return ok(null);
}
public static <T> BaseResponse<T> ok(T data){
- BaseResponse baseResponse = new BaseResponse();
- baseResponse.setCode(0);
- baseResponse.setData(data);
- baseResponse.setMsg("成功");
+ BaseResponse baseResponse = new BaseResponse(0, "成功", data);
return baseResponse;
}
}
diff --git a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java
index 4a4cb95..8861cff 100644
--- a/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java
+++ b/ruoyi-service/ruoyi-integration/src/main/java/com/ruoyi/integration/rocket/produce/ChargingMessageListener.java
@@ -9,6 +9,7 @@
import com.ruoyi.chargingPile.api.model.TChargingGun;
import com.ruoyi.chargingPile.api.model.TFaultMessage;
import com.ruoyi.chargingPile.api.vo.GetChargingGunByCode;
+import com.ruoyi.chargingPile.api.vo.UpdateChargingPileStatusVo;
import com.ruoyi.integration.api.model.*;
import com.ruoyi.integration.iotda.constant.SendTagConstant;
import com.ruoyi.integration.iotda.enums.ServiceIdMenu;
@@ -148,8 +149,12 @@
Ping ping = new Ping();
BeanUtils.copyProperties(pingMessage,ping);
pingService.create(ping);
-
- chargingPileClient.updateChargingPileStatus(pingMessage.getCharging_pile_code(), pingMessage.getCharging_gun_code(), pingMessage.getCharging_gun_status());
+
+ UpdateChargingPileStatusVo vo1 = new UpdateChargingPileStatusVo();
+ vo1.setGun_code(pingMessage.getCharging_gun_code());
+ vo1.setPile_code(pingMessage.getCharging_pile_code());
+ vo1.setStatus(pingMessage.getCharging_gun_status());
+ chargingPileClient.updateChargingPileStatus(vo1);
break;
case SendTagConstant.END_CHARGE:
EndChargeMessage endChargeMessage = message.getEndChargeMessage();
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java
index 255389b..7f68ade 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/ChargingBillController.java
@@ -286,15 +286,18 @@
}
BigDecimal paymentAmount = new BigDecimal("0");
BigDecimal refundAmount = new BigDecimal("0");
+ BigDecimal commissionAmount = new BigDecimal("0");
List<TChargingOrder> tChargingOrders = chargingOrderService.list(eq);
// 累加支付金额
BigDecimal bigDecimal = new BigDecimal("0");
+ BigDecimal bigDecimal1 = new BigDecimal("0.006");
+
int i =1;
for (TChargingOrder tChargingOrder : tChargingOrders) {
// 账单信息
- paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount());
-
+ paymentAmount = paymentAmount.add(tChargingOrder.getChargeAmount());
+ commissionAmount = commissionAmount.add(tChargingOrder.getPaymentAmount().multiply(bigDecimal1));
// 退款信息
ChargingBillRefundExport chargingBillRefundExport = new ChargingBillRefundExport();
ChargingBillPayExport chargingBillPayExport = new ChargingBillPayExport();
@@ -342,7 +345,7 @@
chargingBillPayExport.setTotal("");
chargingBillPayExports.add(chargingBillPayExport);
i++;
- bigDecimal = bigDecimal.add(tChargingOrder.getOrderAmount());
+ bigDecimal = bigDecimal.add(tChargingOrder.getChargeAmount());
}
if (!chargingBillPayExports.isEmpty()){
chargingBillPayExports.get(0).setTotal(bigDecimal+"");
@@ -358,7 +361,7 @@
}
chargingBillExport.setPaymentAmount(paymentAmount);
chargingBillExport.setRefundAmount(refundAmount);
- chargingBillExport.setIncome(paymentAmount.subtract(refundAmount));
+ chargingBillExport.setIncome(paymentAmount.subtract(refundAmount).subtract(commissionAmount).setScale(2, BigDecimal.ROUND_DOWN));
chargingBillExports.add(chargingBillExport);
// 导出
List<Map<String, Object>> sheetsList = new ArrayList<>();
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 c722bcb..05e93fc 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
@@ -19,6 +19,7 @@
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.api.model.TParkingRecord;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.dto.ChargingOrderGroup;
import com.ruoyi.common.core.dto.ChargingPercentProvinceDto;
@@ -226,17 +227,15 @@
payOrderInfoDto2.setFinalAmount(byId2.getPaymentAmount().subtract(byId2.getRefundAmount()));
return R.ok(payOrderInfoDto2);
//todo luo 停车场订单
-// case 4:
-// TParkingRecord byId3 = parkingLotClient.getRecordById(orderId).getData();
-// PayOrderInfoDto payOrderInfoDto3 = new PayOrderInfoDto();
-// payOrderInfoDto3.setOrderId(byId3.getId().toString());
-// payOrderInfoDto3.setCode(byId3.getCode());
-// payOrderInfoDto3.setTradeNo(byId3);
-// payOrderInfoDto3.setPayType(0);
-// payOrderInfoDto3.setPayAmount(new BigDecimal("0"));
-// payOrderInfoDto3.setPayTime(LocalDateTime.now());
-// payOrderInfoDto3.setRefundAmount(new BigDecimal("0"));
-
+ case 4:
+ R<TParkingRecord> recordById = parkingLotClient.getRecordById(orderId);
+ TParkingRecord byId3 =recordById.getData();
+ PayOrderInfoDto payOrderInfoDto3 = new PayOrderInfoDto();
+ payOrderInfoDto3.setOrderId(byId3.getId().toString());
+ payOrderInfoDto3.setCode(byId3.getCode());
+ payOrderInfoDto3.setPayTime(byId3.getCreateTime());
+ payOrderInfoDto3.setRechargeAmount(byId3.getPayment());
+ return R.ok(payOrderInfoDto3);
@@ -527,7 +526,7 @@
@ResponseBody
@PostMapping(value = "/securityDetection")
public void securityDetection(@RequestBody SecurityDetectionVO securityDetection){
- log.error("-------------------安全检测数据-------------------:" + securityDetection);
+ log.info("-------------------安全检测数据-------------------:" + securityDetection);
chargingOrderService.securityDetection(securityDetection);
}
@@ -538,7 +537,7 @@
@ResponseBody
@PostMapping(value = "/startChargeSuccessfully")
public void startChargeSuccessfully(@RequestBody PlatformStartChargingReplyMessageVO message){
- log.error("-------------------远程启动充电请求应答-------------------:" + message);
+ log.info("-------------------远程启动充电请求应答-------------------:" + message);
chargingOrderService.startChargeSuccessfully(message);
}
@@ -626,7 +625,7 @@
*/
@PostMapping("/terminateSuccessfulResponse")
public void terminateSuccessfulResponse(@RequestBody PlatformStopChargingReplyVO platformStopChargingReply){
- log.error("-------------------远程停止充电请求应答-------------------:" + platformStopChargingReply);
+ log.info("-------------------远程停止充电请求应答-------------------:" + platformStopChargingReply);
chargingOrderService.terminateSuccessfulResponse(platformStopChargingReply);
}
@@ -637,7 +636,7 @@
*/
@PostMapping("/endChargeBillingCharge")
public void endChargeBillingCharge(@RequestBody TransactionRecordMessageVO vo){
- log.error("-------------------停止充电返回账单后计算费用及修改业务状态-------------------:" + vo);
+ log.info("-------------------停止充电返回账单后计算费用及修改业务状态-------------------:" + vo);
chargingOrderService.endChargeBillingCharge(vo);
}
@@ -1805,7 +1804,7 @@
*/
@PostMapping("/endCharge")
public void endCharge(@RequestParam("code") String code){
- log.error(code + ":-------------------充电桩自动结束充电-------------------");
+ log.info(code + ":-------------------充电桩自动结束充电-------------------");
chargingOrderService.endCharge(code, 2);
}
@@ -1815,7 +1814,7 @@
*/
@PostMapping("/excelEndCharge")
public void excelEndCharge(@RequestParam("code") String code){
- log.error(code + ":-------------------充电异常,停止充电-------------------");
+ log.info(code + ":-------------------充电异常,停止充电-------------------");
chargingOrderService.excelEndCharge(code);
}
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 97cbfec..be08b4b 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
@@ -671,7 +671,7 @@
platformStartCharging.setCard_number(chargingOrder.getId().toString());
platformStartCharging.setAccount_balance(account_balance);
- log.error(chargingOrder.getCode() + ":-------------------远程调起开始充电请求-------------------" + platformStartCharging.toString());
+ log.info(chargingOrder.getCode() + ":-------------------远程调起开始充电请求-------------------" + platformStartCharging.toString());
sendMessageClient.platformStartCharging(platformStartCharging);
//异步线程检测远程启动的应答结果。如果失败,则需要全额退款
Long id = chargingOrder.getId();
@@ -699,7 +699,7 @@
String code = chargingOrder.getCode();
String key = "AQJC_" + chargingOrder.getChargingGunId();
List<PlatformStartChargingReply> data = platformStartChargingReplyClient.getPlatformStartChargingReply(code).getData();
- log.error(code + ":-------------------开始检查调起充电结果-------------------" + data.toString());
+ log.info(code + ":-------------------开始检查调起充电结果-------------------" + data.toString());
if(data.size() != 0){
PlatformStartChargingReply platformStartChargingReply = data.get(1);
Integer startup_result = platformStartChargingReply.getStartup_result();
@@ -741,7 +741,7 @@
return true;
}else{
Integer counter = boot_failed_map.get(code);
- log.error(code + ":-------------------未上传开启充电结果-------------------" + counter);
+ log.info(code + ":-------------------未上传开启充电结果-------------------" + counter);
PreChargeCheck preChargeCheck1 = redisService.getCacheObject(key);
//5分钟内未启动成功,退回金额。
if(null == counter || counter < 300){
@@ -837,7 +837,7 @@
* @param code
*/
public void refund(String code){
- log.error(code + ":-------------------充电启动失败,执行退款-------------------");
+ log.info(code + ":-------------------充电启动失败,执行退款-------------------");
TChargingOrder chargingOrder = this.getOne(new LambdaQueryWrapper<TChargingOrder>().eq(TChargingOrder::getCode, code));
if(chargingOrder.getStatus() == 2){
Integer rechargePaymentType = chargingOrder.getRechargePaymentType();
@@ -1007,8 +1007,8 @@
platformStopCharging.setCharging_pile_code(chargingPile.getCode());
platformStopCharging.setCharging_gun_code(chargingGun.getCode());
sendMessageClient.platformStopCharging(platformStopCharging);
- log.error(code1 + ":-------------------远程停止充电请求-------------------");
- log.error(platformStopCharging.toString());
+ log.info(code1 + ":-------------------远程停止充电请求-------------------");
+ log.info(platformStopCharging.toString());
});
return AjaxResult.success();
}
@@ -1163,7 +1163,7 @@
failure_cause = "其他";
break;
}
- log.error(code1 + ":停机失败:订单号:{},失败原因:{}", order.getCode(), failure_cause);
+ log.info(code1 + ":停机失败:订单号:{},失败原因:{}", order.getCode(), failure_cause);
}else{
TChargingOrder chargingOrder = new TChargingOrder();
chargingOrder.setId(order.getId());
@@ -1274,7 +1274,7 @@
electronicMoney = electronicMoney.add(chargingOrderVO.getElectrovalence());
serviceMoney = serviceMoney.add(chargingOrderVO.getServiceCharge());
- income = income.add(chargingOrderVO.getOrderAmount());
+ income = income.add(chargingOrderVO.getPaymentAmount());
@@ -1982,10 +1982,11 @@
TChargingOrder order = new TChargingOrder();
order.setId(chargingOrder.getId());
order.setAppUserId(chargingOrder.getAppUserId());
- if(null != chargingOrder.getEndMode() && chargingOrder.getEndMode() == 2){
- order.setEndMode(refundAmount.compareTo(BigDecimal.ZERO) > 0 ? 2 : 3);
- }
- if(null == chargingOrder.getEndMode()){
+ UploadRealTimeMonitoringData uploadRealTimeMonitoringData = uploadRealTimeMonitoringDataClient.chargingOrderInfo(chargingOrder.getCode()).getData();
+ if(null != uploadRealTimeMonitoringData && null == chargingOrder.getEndMode()){
+ Integer soc = uploadRealTimeMonitoringData.getSoc();
+ order.setEndMode(soc > 98 ? 2 : 3);
+ }else{
order.setEndMode(1);
}
order.setResidualAmount(rechargeAmount.subtract(total).setScale(2, RoundingMode.DOWN));
@@ -2490,8 +2491,8 @@
return null;
}
TChargingOrder one = this.getOne(new LambdaQueryWrapper<TChargingOrder>().eq(TChargingOrder::getAppUserCarId, appUserCar.getId())
- .eq(TChargingOrder::getDelFlag, 0).gt(TChargingOrder::getStartTime, query.getStartTime())
- .eq(TChargingOrder::getRechargePaymentStatus, 2).ne(TChargingOrder::getStatus, 5));
+ .eq(TChargingOrder::getDelFlag, 0).between(TChargingOrder::getStartTime, query.getStartTime(), LocalDateTime.now())
+ .eq(TChargingOrder::getRechargePaymentStatus, 2).in(TChargingOrder::getStatus, Arrays.asList(4, 5)));
return one;
}
@@ -2582,7 +2583,7 @@
couponDiscount = couponDiscount.add(tChargingOrder.getCouponDiscountAmount());
}
if (tChargingOrder.getPaymentAmount()!=null){
- paymentAmount = paymentAmount.add(tChargingOrder.getOrderAmount());
+ paymentAmount = paymentAmount.add(tChargingOrder.getPaymentAmount());
}
}
@@ -2590,12 +2591,12 @@
// 三方交易手续费 三方收费*0.6%
commissionAmount = sharingAmount.multiply(new BigDecimal("0.006"));
// 订单手续费 订单支付金额 - 退款金额*0.6%
- orderCommission = paymentAmount.multiply(new BigDecimal("0.006").setScale(2,RoundingMode.HALF_DOWN));
+ orderCommission = paymentAmount.multiply(new BigDecimal("0.006"));
tSettlementConfirm.setSharingAmount(sharingAmount.setScale(2, RoundingMode.HALF_DOWN));
tSettlementConfirm.setCommissionAmount(commissionAmount.setScale(2, RoundingMode.HALF_DOWN));
tSettlementConfirm.setElectrovalence(electrovalence.setScale(2, RoundingMode.HALF_DOWN));
tSettlementConfirm.setServiceCharge(serviceCharge.subtract(orderCommission).setScale(2, RoundingMode.HALF_DOWN));
- tSettlementConfirm.setOrderCommission(orderCommission);
+ tSettlementConfirm.setOrderCommission(orderCommission.setScale(2,BigDecimal.ROUND_DOWN));
tSettlementConfirm.setVipDiscount(vipDiscount);
tSettlementConfirm.setCouponDiscount(couponDiscount);
tSettlementConfirm.setSiteId(dto.getSiteId());
@@ -2733,7 +2734,9 @@
BigDecimal beforeCost= new BigDecimal("0");
// 上月利润合计
BigDecimal beforeIncome= new BigDecimal("0");
+ int i = 1;
for (TSettlementConfirm tSettlementConfirm : list1) {
+ tSettlementConfirm.setXuhao(i);
tSettlementConfirm.setMetering(tSettlementConfirm.getSupplyElectronic());
List<Site> data1 = siteClient.getSiteByIds(Arrays.asList(tSettlementConfirm.getSiteId())).getData();
if (!data1.isEmpty()){
@@ -2836,6 +2839,8 @@
for (TSettlementConfirm settlementConfirm : list2) {
+ int value = parse.getMonth().getValue();
+ settlementConfirm.setMonth(value);
settlementConfirm.setIncome(settlementConfirm.getElectrovalence().add(settlementConfirm.getServiceCharge()));
tSettlementConfirm.setMetering(tSettlementConfirm.getSupplyElectronic());
if (tSettlementConfirm.getSiteId().equals(settlementConfirm.getSiteId())){
@@ -2858,11 +2863,11 @@
tSettlementConfirm.setTotalPercentage(bigDecimal1+"%"); }
beforeCost = beforeCost.add(settlementConfirm.getCost());
beforeIncome = beforeIncome.add(settlementConfirm.getIncome());
-
-
}
+ i++;
}
TSettlementConfirm tSettlementConfirm = new TSettlementConfirm();
+ tSettlementConfirm.setMonth(parse.getMonthValue());
tSettlementConfirm.setMeteringElectronic(meteringElectronic);
tSettlementConfirm.setChargingElectronic(chargingElectronic);
tSettlementConfirm.setLossElectronic(lossElectronic);
diff --git a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
index dee224b..c726775 100644
--- a/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
+++ b/ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TOrderEvaluateServiceImpl.java
@@ -352,31 +352,9 @@
//检测敏感词
String content = orderEvaluate.getContent();
if(StringUtils.isNotEmpty(content)){
- String token = appUserClient.getWXToken().getData();
- JSONObject jsonObject = new JSONObject();
- jsonObject.put("content", content);
- jsonObject.put("version", 2);
- jsonObject.put("scene", 2);
- jsonObject.put("openid", appUser.getWxOpenid());
- String post = HttpUtils.post("https://api.weixin.qq.com/wxa/msg_sec_check?access_token=" + token, jsonObject.toString());
- JSONObject object = JSONObject.parseObject(post);
- Integer errcode = object.getInteger("errcode");
- if(0 != errcode){
- throw new RuntimeException(object.getString("errmsg"));
- }
- JSONArray detail = object.getJSONArray("detail");
- for (int i = 0; i < detail.size(); i++) {
- JSONObject jsonObject1 = detail.getJSONObject(i);
- Integer errcode1 = jsonObject1.getInteger("errcode");
- if(0 == errcode1){
- String suggest = jsonObject1.getString("suggest");
- Integer label = jsonObject1.getInteger("label");
- String keyword = jsonObject1.getString("keyword");
- Integer prob = jsonObject1.getInteger("prob");
- if(("risky".equals(suggest) || "review".equals(suggest)) && 100 != label && StringUtils.isNotEmpty(keyword) && 80 <= prob){
- return AjaxResult.error("评价包含违规内容,请重新评价!");
- }
- }
+ Boolean data = appUserClient.sensitiveWordDetection(content, appUser.getWxOpenid()).getData();
+ if(data){
+ return AjaxResult.error("评价包含违规内容,请重新评价!");
}
}
orderEvaluate.setContent(content);
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
index 1813a92..39e822d 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
@@ -5,15 +5,22 @@
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.ruoyi.account.api.feignClient.AppUserCarClient;
+import com.ruoyi.account.api.feignClient.AppUserClient;
+import com.ruoyi.account.api.model.TAppUser;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
+import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.other.api.domain.THtml;
import com.ruoyi.other.api.domain.TIntegralRule;
+import com.ruoyi.other.api.domain.TVip;
import com.ruoyi.other.api.dto.SaveHtml;
import com.ruoyi.other.service.THtmlService;
import com.ruoyi.other.service.TIntegralRuleService;
+import com.ruoyi.other.service.TVipService;
+import com.ruoyi.system.api.model.LoginUserApplet;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -35,6 +42,8 @@
private THtmlService htmlService;
@Autowired
private TIntegralRuleService integralRuleService;
+ @Autowired
+ private AppUserClient appUserClient;
/**
@@ -54,12 +63,34 @@
point += jsonObject.getInteger("num4");
return R.ok(point);
}
+ @Autowired
+ private TokenService tokenService;
+ @Autowired
+ private TVipService vipService;
@GetMapping("/getSet")
@ApiOperation(tags = {"管理后台-积分管理","小程序-个人中心-签到"},value = "获取积分设置")
public R<TIntegralRule> getSet() {
TIntegralRule res = integralRuleService.getOne(new QueryWrapper<>());
return R.ok(res);
}
+ @GetMapping("/getSet1")
+ @ApiOperation(tags = {"小程序-个人中心-签到"},value = "获取积分设置")
+ public R<TIntegralRule> getSet1() {
+ TIntegralRule res = integralRuleService.getOne(new QueryWrapper<>());
+ LoginUserApplet loginUserApplet = tokenService.getLoginUserApplet();
+ res.setIsDouble(0);
+ if (loginUserApplet!=null){
+ TAppUser data = appUserClient.getUserById(loginUserApplet.getUserId()).getData();
+ if (data.getVipEndTime()!=null && data.getVipEndTime().isAfter(LocalDateTime.now())){
+ TVip byId = vipService.getById(data.getVipId());
+ Integer doubleIntegration = byId.getDoubleIntegration();
+ if (doubleIntegration!=null&&doubleIntegration==1){
+ res.setIsDouble(1);
+ }
+ }
+ }
+ return R.ok(res);
+ }
@PostMapping("/saveSet")
@ApiOperation(tags = {"管理后台-积分管理"},value = "保存积分设置")
--
Gitblit v1.7.1