From 3aef471b170a703b501ddb4d9d2a12791d07ff28 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 15 四月 2026 20:06:56 +0800
Subject: [PATCH] 代码生成

---
 server/services/src/main/java/com/doumee/service/business/impl/SmsrecordServiceImpl.java |   81 +++++++++++++++++++++++++++++++++++++++-
 1 files changed, 79 insertions(+), 2 deletions(-)

diff --git a/server/services/src/main/java/com/doumee/service/business/impl/SmsrecordServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/SmsrecordServiceImpl.java
index 9aa71eb..b551c26 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/SmsrecordServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/SmsrecordServiceImpl.java
@@ -1,5 +1,7 @@
 package com.doumee.service.business.impl;
 
+import com.alibaba.fastjson.JSONObject;
+import com.aliyuncs.CommonResponse;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -9,7 +11,10 @@
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.DateUtil;
+import com.doumee.core.utils.Strings;
 import com.doumee.core.utils.Utils;
+import com.doumee.core.utils.aliyun.ALiYunSmSUtil;
 import com.doumee.dao.business.SmsrecordMapper;
 import com.doumee.dao.business.model.Smsrecord;
 import com.doumee.service.business.SmsrecordService;
@@ -17,8 +22,7 @@
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
 
 /**
  * 鐭俊楠岃瘉鐮丼ervice瀹炵幇
@@ -156,4 +160,77 @@
         return smsrecordMapper.selectCount(wrapper);
     }
 
+
+    /****************************************绉诲姩绔帴鍙e紑濮�********************************************************************/
+
+
+    /**
+     * 鍙戦�佺煭淇�  鐩墠鍙湁鐭俊楠岃瘉鐮�
+     * @param memberId
+     * @param phone
+     */
+    @Override
+    public void sendSms(Integer memberId,String phone){
+        smsrecordMapper.update(null,
+                new UpdateWrapper<Smsrecord>()
+                        .set("STATUS",2)
+                        .eq("PHONE",phone)
+                        .eq("STATUS",0)
+        );
+        String digits = Strings.randomNumeric(4);
+        //鍙戦�侀獙璇佺爜
+        Map<String,Object> map = new HashMap<String,Object>();
+        map.put("code",digits);
+        CommonResponse response = ALiYunSmSUtil.sendMessage(phone,map);
+        if(response.getHttpResponse().isSuccess()){
+            JSONObject data = JSONObject.parseObject(response.getData());
+            String returnCode = data.getString("Code");
+            if(!returnCode.equals("OK")){
+                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐭俊鍙戦�佸け璐ワ細" + data.getString("Message"));
+            }
+        }
+        //瀛樺偍鐭俊楠岃瘉鐮�
+        Smsrecord smsrecord = new Smsrecord();
+        smsrecord.setCreateTime(new Date());
+        smsrecord.setMemberId(memberId);
+        smsrecord.setPhone(phone);
+        smsrecord.setContent("楠岃瘉鐮佺煭淇�");
+        smsrecord.setType(Constants.ZERO);
+        smsrecord.setValidDate(DateUtil.afterMinutesDate(3));
+        smsrecord.setCode(digits);
+        smsrecord.setStatus(Constants.ZERO);
+        smsrecord.setDeleted(Constants.ZERO);
+        smsrecordMapper.insert(smsrecord);
+    }
+
+
+    /**
+     * 楠岃瘉鐮侀獙璇�
+     * @param memberId
+     * @param phone
+     * @param code
+     */
+    @Override
+    public void verifyCode(Integer memberId,String phone,String code){
+        Smsrecord smsrecord = smsrecordMapper.selectOne(new QueryWrapper<Smsrecord>()
+                .eq("MEMBER_ID",memberId)
+                .eq("PHONE",phone)
+                .eq("CODE",code)
+                .eq("TYPE",Constants.ZERO)
+                .eq("STATUS",Constants.ZERO)
+                .last(" limit 1 ")
+        );
+        if(Objects.isNull(smsrecord)){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"楠岃瘉鐮佽緭鍏ラ敊璇垨宸茶繃鏈燂紒");
+        }
+        if(smsrecord.getValidDate().getTime()<System.currentTimeMillis()){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"楠岃瘉鐮佸凡杩囨湡璇烽噸鏂拌幏鍙栵紒");
+        }
+        smsrecord.setStatus(Constants.ONE);
+        smsrecord.setUpdateTime(new Date());
+        smsrecordMapper.updateById(smsrecord);
+    }
+
+
+
 }

--
Gitblit v1.9.3