From e08b0977b9bf2f742e8672a16380e7f234a498d1 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期一, 19 八月 2024 17:24:29 +0800
Subject: [PATCH] 短信记录,故障短信发送

---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/CodeController.java                         |   53 +++++++++++++++++
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TFaultMessageController.java                |    5 +
 ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java                                                      |   25 --------
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java                         |    2 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TFaultMessageServiceImpl.java             |   31 ++++++++++
 ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPileNotification.java               |   13 ---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TFaultMessageService.java                      |    6 ++
 ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MsgUtil.java                                        |    2 
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TChargingPileNotificationService.java          |    9 +++
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java |   20 ++++++
 10 files changed, 126 insertions(+), 40 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPileNotification.java b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPileNotification.java
index 23a5d14..3bd2b7e 100644
--- a/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPileNotification.java
+++ b/ruoyi-api/ruoyi-api-chargingPile/src/main/java/com/ruoyi/chargingPile/api/model/TChargingPileNotification.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
 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;
@@ -24,7 +25,7 @@
 @EqualsAndHashCode(callSuper = false)
 @TableName("t_charging_pile_notification")
 @ApiModel(value="TChargingPileNotification对象", description="")
-public class TChargingPileNotification implements Serializable {
+public class TChargingPileNotification extends BasePojo {
 
     private static final long serialVersionUID = 1L;
 
@@ -51,15 +52,5 @@
     @ApiModelProperty(value = "通知内容")
     @TableField("content")
     private String content;
-
-    @ApiModelProperty(value = "发送时间")
-    @TableField("create_time")
-    private LocalDateTime createTime;
-
-    @ApiModelProperty(value = "删除状态(0=否,1=是)")
-    @TableField("del_flag")
-    @TableLogic
-    private Integer delFlag;
-
 
 }
diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java
index 7f333d2..fd0347b 100644
--- a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java
+++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java
@@ -51,10 +51,6 @@
     private SysLoginService sysLoginService;
     @Resource
     private SysUserClient userClient;
-    @Autowired
-    private RedisService redisService;
-    @Autowired
-    private AppUserClient appUserClient;
 
     
     
@@ -127,27 +123,6 @@
         // 用户注册
         sysLoginService.register(registerBody.getUsername(), registerBody.getPassword(), request);
         return R.ok();
-    }
-
-    /**
-     * 获取验证码
-     *
-     * @param phone 手机号
-     * @return 结果
-     */
-    @ApiOperation(value = "获取验证码",notes = "获取验证码",tags = {"更换手机号获取验证码"})
-    @GetMapping("getCode")
-    public AjaxResult getCode(@RequestParam("phone") String phone)
-    {
-        TAppUser appUser = appUserClient.selectByPhone(phone).getData();
-        if (Objects.nonNull(appUser)){
-            return AjaxResult.error("该手机号已绑定账号");
-        }
-        String code = MsgUtil.createCode();
-        redisService.setCacheObject(phone+Constants.APPLET,code,5L, TimeUnit.MINUTES);
-        String reqStr = MsgUtil.codeMsg(phone, code);
-        String result = HttpUtils.post(MsgConstants.SEND_URL, reqStr);
-        return AjaxResult.success(result);
     }
 
 }
diff --git a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MsgUtil.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MsgUtil.java
index 188900d..54eb150 100644
--- a/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MsgUtil.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MsgUtil.java
@@ -112,7 +112,7 @@
         return encode;
     }
 
-    /**
+    /**  phone  单词可拼接5000个号码
      * 桩故障(自动/手动):检测到【电站1】【编号】号桩设备离线,请及时查看处理!
      * @param phone 手机号
      * @param site 站点名称
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/CodeController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/CodeController.java
new file mode 100644
index 0000000..14b8403
--- /dev/null
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/CodeController.java
@@ -0,0 +1,53 @@
+package com.ruoyi.chargingPile.controller;
+
+import com.ruoyi.account.api.feignClient.AppUserClient;
+import com.ruoyi.account.api.model.TAppUser;
+import com.ruoyi.chargingPile.api.model.TChargingPile;
+import com.ruoyi.chargingPile.service.TChargingPileNotificationService;
+import com.ruoyi.common.core.constant.Constants;
+import com.ruoyi.common.core.constant.MsgConstants;
+import com.ruoyi.common.core.utils.HttpUtils;
+import com.ruoyi.common.core.utils.MsgUtil;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.redis.service.RedisService;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+
+import java.util.Objects;
+import java.util.concurrent.TimeUnit;
+
+public class CodeController {
+
+    @Autowired
+    private RedisService redisService;
+    @Autowired
+    private AppUserClient appUserClient;
+    @Autowired
+    private TChargingPileNotificationService chargingPileNotificationService;
+
+    /**
+     * 获取验证码
+     *
+     * @param phone 手机号
+     * @return 结果
+     */
+    @ApiOperation(value = "获取验证码",notes = "获取验证码",tags = {"更换手机号获取验证码"})
+    @GetMapping("getCode")
+    public AjaxResult getCode(@RequestParam("phone") String phone)
+    {
+        TAppUser appUser = appUserClient.selectByPhone(phone).getData();
+        if (Objects.nonNull(appUser)){
+            return AjaxResult.error("该手机号已绑定账号");
+        }
+        String code = MsgUtil.createCode();
+        redisService.setCacheObject(phone+ Constants.APPLET,code,5L, TimeUnit.MINUTES);
+        String reqStr = MsgUtil.codeMsg(phone, code);
+        String result = HttpUtils.post(MsgConstants.SEND_URL, reqStr);
+        // 记录短信发送
+        chargingPileNotificationService.saveData(1,null,null,phone,"验证码:"+code+",用于更换手机号。请勿转发。");
+        return AjaxResult.success(result);
+    }
+
+}
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
index 8ddb212..6bd43d4 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/SiteController.java
@@ -156,7 +156,7 @@
 
 	
 	@ResponseBody
-	@PostMapping("/getSiteList")
+	@PostMapping("/addSite")
 	@ApiOperation(value = "添加站点", tags = {"管理后台-站点管理"})
 	public AjaxResult addSite(@RequestBody Site site){
 		return siteService.addSite(site);
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TFaultMessageController.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TFaultMessageController.java
index 47190e3..9acebda 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TFaultMessageController.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/controller/TFaultMessageController.java
@@ -42,8 +42,9 @@
     @Log(title = "添加故障报修管理", businessType = BusinessType.INSERT,operatorType = OperatorType.MOBILE)
     @ApiOperation(tags = {"小程序-故障报修"},value = "添加故障报修管理")
     @PostMapping(value = "/add")
-    public AjaxResult<Boolean> add(@Validated @RequestBody TFaultMessage dto) {
-        return AjaxResult.ok(faultMessageService.save(dto));
+    public AjaxResult<String> add(@Validated @RequestBody TFaultMessage dto) {
+        faultMessageService.add(dto);
+        return AjaxResult.success();
     }
 
 
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TChargingPileNotificationService.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TChargingPileNotificationService.java
index 28287dd..aa630d2 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TChargingPileNotificationService.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TChargingPileNotificationService.java
@@ -23,4 +23,13 @@
 	 * @return
 	 */
 	PageInfo<TChargingPileNotification> chargingPileNotificationPageList(Integer siteId, BasePage basePage);
+
+	/**
+	 *
+	 * @param type 1=验证码 2=停车占位 3=充电结束 4=桩故障
+	 * @param phone 手机号
+	 * @param data 内容
+	 */
+    void saveData(Integer type,Integer siteId,Integer chargingPileId, String phone, String data);
+
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TFaultMessageService.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TFaultMessageService.java
index 3605b47..62fc81e 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TFaultMessageService.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/TFaultMessageService.java
@@ -13,4 +13,10 @@
  */
 public interface TFaultMessageService extends IService<TFaultMessage> {
 
+    /**
+     * 添加故障报修管理
+     * @param dto
+     * @return
+     */
+    void add(TFaultMessage dto);
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java
index b38a11d..8297e9e 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TChargingPileNotificationServiceImpl.java
@@ -84,4 +84,24 @@
 		pageInfo.setRecords(list);
 		return pageInfo;
 	}
+
+	@Override
+	public void saveData(Integer type,Integer siteId,Integer chargingPileId, String phone, String data) {
+		TChargingPileNotification notification = new TChargingPileNotification();
+		switch (type){
+			case 1:
+				// 验证码
+				notification.setPhone(phone);
+				notification.setContent(data);
+				break;
+			default:
+				// 停车占位
+				notification.setSiteId(siteId);
+				notification.setChargingPileId(chargingPileId);
+				notification.setPhone(phone);
+				notification.setContent(data);
+				break;
+		}
+	}
+
 }
diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TFaultMessageServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TFaultMessageServiceImpl.java
index c5e9e20..01dff45 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TFaultMessageServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TFaultMessageServiceImpl.java
@@ -1,9 +1,18 @@
 package com.ruoyi.chargingPile.service.impl;
 
+import com.alibaba.fastjson2.JSON;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.chargingPile.api.model.Site;
+import com.ruoyi.chargingPile.api.model.TChargingPile;
 import com.ruoyi.chargingPile.api.model.TFaultMessage;
 import com.ruoyi.chargingPile.mapper.TFaultMessageMapper;
+import com.ruoyi.chargingPile.service.ISiteService;
+import com.ruoyi.chargingPile.service.TChargingPileNotificationService;
+import com.ruoyi.chargingPile.service.TChargingPileService;
 import com.ruoyi.chargingPile.service.TFaultMessageService;
+import com.ruoyi.common.core.utils.MsgUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
@@ -14,7 +23,29 @@
  * @author xiaochen
  * @since 2024-08-08
  */
+@Slf4j
 @Service
 public class TFaultMessageServiceImpl extends ServiceImpl<TFaultMessageMapper, TFaultMessage> implements TFaultMessageService {
 
+    @Autowired
+    private ISiteService siteService;
+    @Autowired
+    private TChargingPileService chargingPileService;
+    @Autowired
+    private TChargingPileNotificationService chargingPileNotificationService;
+
+    @Override
+    public void add(TFaultMessage dto) {
+        // 故障短信提醒
+        Site site = siteService.getById(dto.getSiteId());
+        TChargingPile chargingPile = chargingPileService.getById(dto.getChargingPileId());
+        String siteName = site.getName();
+        String result = MsgUtil.faultMsg(site.getPhone(), site.getName(), chargingPile.getNumber() + "");
+        log.info("故障短信提醒:{}",result);
+        if(siteName.length()>10){
+            siteName = siteName.substring(0,10);
+        }
+        chargingPileNotificationService.saveData(4,dto.getSiteId(),dto.getChargingPileId(),site.getPhone(),"检测到"+siteName+"..."+chargingPile.getNumber()+"号桩设备离线,请及时查看处理!");
+        this.save(dto);
+    }
 }

--
Gitblit v1.7.1