From c9f0611f690b3fb0cb120f5b6799f94977d3f129 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期一, 20 四月 2026 11:34:23 +0800
Subject: [PATCH] 代码生成

---
 server/services/src/main/java/com/doumee/service/business/impl/SmsrecordServiceImpl.java |   74 ++++++++++++++++++++++++++++++++++++-
 1 files changed, 72 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..182169c 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
@@ -9,7 +9,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.AliSmsService;
 import com.doumee.dao.business.SmsrecordMapper;
 import com.doumee.dao.business.model.Smsrecord;
 import com.doumee.service.business.SmsrecordService;
@@ -17,8 +20,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 +158,72 @@
         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);
+        //鍙戦�侀獙璇佺爜
+        String templateParam = "{\"code\":\"" + digits + "\"}";
+        Boolean result = AliSmsService.sendSms(phone, "SMS_491325122", templateParam);
+        if (!result) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鐭俊鍙戦�佸け璐ワ紝璇风◢鍚庨噸璇�");
+        }
+        //瀛樺偍鐭俊楠岃瘉鐮�
+        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