From bb3b342cecf87eeba29c3258cf6ac0d835f48254 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期五, 23 八月 2024 18:25:59 +0800
Subject: [PATCH] 邀请用户积分处理,首页公告处理

---
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java       |    2 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/WxLoginController.java        |    2 
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java    |   11 ++++-
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/wx/pojo/AppletUserEncrypteData.java      |    3 +
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TNoticeController.java            |   11 +++++
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TInviteUserService.java          |    7 +++
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java |   10 +++++
 ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUser.java                  |    4 ++
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TAppUserService.java             |    4 +-
 ruoyi-service/ruoyi-account/src/main/resources/mapper/account/TAppUserMapper.xml                     |    3 +
 ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java       |    5 +-
 ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/ali/pojo/AppletUserLogin.java            |    3 +
 12 files changed, 56 insertions(+), 9 deletions(-)

diff --git a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUser.java b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUser.java
index 2009d1c..3fdbadc 100644
--- a/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUser.java
+++ b/ruoyi-api/ruoyi-api-account/src/main/java/com/ruoyi/account/api/model/TAppUser.java
@@ -11,6 +11,7 @@
 import lombok.EqualsAndHashCode;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 import java.time.LocalDateTime;
 
 /**
@@ -109,6 +110,9 @@
     @ApiModelProperty(value = "最后一次登录时间")
     @TableField("last_login_time")
     private LocalDateTime lastLoginTime;
+    @ApiModelProperty(value = "邀请人id")
+    @TableField("invite_user_id")
+    private Long inviteUserId;
 
 
 
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/ali/pojo/AppletUserLogin.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/ali/pojo/AppletUserLogin.java
index dc7e36b..f9e8af0 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/ali/pojo/AppletUserLogin.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/ali/pojo/AppletUserLogin.java
@@ -19,4 +19,7 @@
     @NotBlank(message = "获取用户信息加密串不能为空")
     private String token;
 
+    @ApiModelProperty(value = "邀请用户id")
+    private Long inviteUserId;
+
 }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
index 52f871a..6db885e 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/AliLoginController.java
@@ -65,7 +65,7 @@
             String phoneNumber = new AliAppletTools(aliProperties).getPhoneNumber(appletUserLogin.getToken());
             log.info("获取支付宝用户信息:{}", phoneNumber);
             // 用户信息封装
-            return AjaxResult.success(appUserService.aliLogin(response,phoneNumber));
+            return AjaxResult.success(appUserService.aliLogin(response,phoneNumber,appletUserLogin.getInviteUserId()));
         } else {
              String diagnosisUrl = DiagnosisUtils.getDiagnosisUrl(response);
              log.warn("诊断结果:{}",diagnosisUrl);
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 d4252d8..12b3094 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
@@ -65,6 +65,6 @@
         }
         AppletUserDecodeData appletUserDecodeData = WxUtils.encryptedData(data.getEncryptedData(), sessionKey,  data.getIv());
         appletUserDecodeData.setOpenId(openid);
-        return AjaxResult.success(appUserService.wxLogin(appletUserDecodeData));
+        return AjaxResult.success(appUserService.wxLogin(appletUserDecodeData,data.getInviteUserId()));
     }
 }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TAppUserService.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TAppUserService.java
index 9e59184..2e29c49 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TAppUserService.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TAppUserService.java
@@ -24,7 +24,7 @@
      * @param appletUserDecodeData
      * @return
      */
-    Map<String, Object> wxLogin(AppletUserDecodeData appletUserDecodeData);
+    Map<String, Object> wxLogin(AppletUserDecodeData appletUserDecodeData,Long inviteUserId);
 
     /**
      * 支付宝小程序登录用户封装
@@ -32,7 +32,7 @@
      * @return
      */
 //    Map<String, Object> aliLogin(AlipaySystemOauthTokenResponse response, AlipayUserInfoShareResponse userInfo);
-    Map<String, Object> aliLogin(AlipaySystemOauthTokenResponse response,String phone);
+    Map<String, Object> aliLogin(AlipaySystemOauthTokenResponse response,String phone,Long inviteUserId);
 
     /**
      * 封装用户信息和token
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TInviteUserService.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TInviteUserService.java
index 6e295ed..73b1001 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TInviteUserService.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/TInviteUserService.java
@@ -13,4 +13,11 @@
  */
 public interface TInviteUserService extends IService<TInviteUser> {
 
+    /**
+     * 添加邀请用户
+     * @param appUserId
+     * @param beInvitedAppUserId
+     */
+    void saveInviteUser(Long appUserId, Long beInvitedAppUserId);
+
 }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java
index d3351ef..b49fc4f 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TAppUserServiceImpl.java
@@ -10,6 +10,7 @@
 import com.ruoyi.account.api.model.TAppUser;
 import com.ruoyi.account.mapper.TAppUserMapper;
 import com.ruoyi.account.service.TAppUserService;
+import com.ruoyi.account.service.TInviteUserService;
 import com.ruoyi.account.wx.model.WeixinProperties;
 import com.ruoyi.account.wx.pojo.AppletUserDecodeData;
 import com.ruoyi.common.core.exception.ServiceException;
@@ -35,8 +36,10 @@
 public class TAppUserServiceImpl extends ServiceImpl<TAppUserMapper, TAppUser> implements TAppUserService {
     @Autowired
     private TokenService tokenService;
+    @Autowired
+    private TInviteUserService inviteUserService;
     @Override
-    public Map<String, Object> wxLogin(AppletUserDecodeData appletUserDecodeData) {
+    public Map<String, Object> wxLogin(AppletUserDecodeData appletUserDecodeData,Long inviteUserId) {
         // 通过手机号查询用户,是否已存在手动导入用户,包含支付宝用户
         TAppUser appUser = this.getOne(Wrappers.lambdaQuery(TAppUser.class)
                 .eq(TAppUser::getPhone, appletUserDecodeData.getPhoneNumber())
@@ -56,17 +59,19 @@
         if(Objects.nonNull(appUser.getStatus())){
             throwInfo(appUser.getStatus());
         }
+        appUser.setInviteUserId(inviteUserId);
         appUser.setAvatar(appletUserDecodeData.getAvatarUrl());
         appUser.setCity(appletUserDecodeData.getCity());
         appUser.setName(appletUserDecodeData.getNickName());
         appUser.setProvince(appletUserDecodeData.getProvince());
         appUser.setWxOpenid(appletUserDecodeData.getOpenId());
         this.saveOrUpdate(appUser);
+        inviteUserService.saveInviteUser(appUser.getId(), inviteUserId);
         return this.getUserInfo(appUser);
     }
 
     @Override
-    public Map<String, Object> aliLogin(AlipaySystemOauthTokenResponse response,String phone) {
+    public Map<String, Object> aliLogin(AlipaySystemOauthTokenResponse response,String phone,Long inviteUserId) {
         // 通过手机号查询用户,是否已存在手动导入用户,包含微信用户
         TAppUser appUser = this.getOne(Wrappers.lambdaQuery(TAppUser.class)
                 .eq(TAppUser::getPhone, phone)
@@ -86,8 +91,10 @@
         if(Objects.nonNull(appUser.getStatus())){
             throwInfo(appUser.getStatus());
         }
+        appUser.setInviteUserId(inviteUserId);
         appUser.setAliOpenid(response.getOpenId());
         this.saveOrUpdate(appUser);
+        inviteUserService.saveInviteUser(appUser.getId(), inviteUserId);
         return this.getUserInfo(appUser);
     }
 //    @Override
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java
index e84b304..8626df8 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/TInviteUserServiceImpl.java
@@ -6,6 +6,8 @@
 import com.ruoyi.account.service.TInviteUserService;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalDateTime;
+
 /**
  * <p>
  *  服务实现类
@@ -17,4 +19,12 @@
 @Service
 public class TInviteUserServiceImpl extends ServiceImpl<TInviteUserMapper, TInviteUser> implements TInviteUserService {
 
+    @Override
+    public void saveInviteUser(Long appUserId, Long beInvitedAppUserId) {
+        TInviteUser inviteUser = new TInviteUser();
+        inviteUser.setAppUserId(appUserId);
+        inviteUser.setBeInvitedAppUserId(beInvitedAppUserId);
+        inviteUser.setCreateTime(LocalDateTime.now());
+        this.save(inviteUser);
+    }
 }
diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/wx/pojo/AppletUserEncrypteData.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/wx/pojo/AppletUserEncrypteData.java
index 45884a8..90f5011 100644
--- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/wx/pojo/AppletUserEncrypteData.java
+++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/wx/pojo/AppletUserEncrypteData.java
@@ -1,5 +1,6 @@
 package com.ruoyi.account.wx.pojo;
 
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 /**
@@ -14,4 +15,6 @@
     private String rawData;
     private String signature;
     private String code;
+    @ApiModelProperty(value = "邀请用户id")
+    private Long inviteUserId;
 }
diff --git a/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/TAppUserMapper.xml b/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/TAppUserMapper.xml
index 0dad576..6a665e0 100644
--- a/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/TAppUserMapper.xml
+++ b/ruoyi-service/ruoyi-account/src/main/resources/mapper/account/TAppUserMapper.xml
@@ -24,11 +24,12 @@
         <result column="create_time" property="createTime" />
         <result column="del_flag" property="delFlag" />
         <result column="last_login_time" property="lastLoginTime" />
+        <result column="invite_user_id" property="inviteUserId" />
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, name, phone, avatar, vip_id, vip_end_time, company_id, id_card, auth_status, wx_openid, ali_openid, points, province, province_code, city, city_code, status, create_time, del_flag, last_login_time
+        id, name, phone, avatar, vip_id, vip_end_time, company_id, id_card, auth_status, wx_openid, ali_openid, points, province, province_code, city, city_code, status, create_time, del_flag, last_login_time,invite_user_id
     </sql>
 
 </mapper>
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java
index 55c8ab2..bc78481 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TAdvertisingController.java
@@ -69,9 +69,10 @@
 
     @ApiOperation(tags = {"小程序-广告管理"},value = "广告列表查询")
     @GetMapping(value = "/list")
-    public AjaxResult<List<TAdvertising>> list() {
+    public AjaxResult<List<TAdvertising>> list(@RequestParam("position") Integer position) {
         return AjaxResult.ok(advertisingService.list(Wrappers.lambdaQuery(TAdvertising.class)
-                .eq(TAdvertising::getStatus, AdvertisingStatusEnum.YES.getCode())));
+                .eq(TAdvertising::getStatus, AdvertisingStatusEnum.YES.getCode())
+                .eq(TAdvertising::getPosition,position)));
     }
 }
 
diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TNoticeController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TNoticeController.java
index de7171d..06ecd0f 100644
--- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TNoticeController.java
+++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TNoticeController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.other.controller;
 
 
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.other.api.domain.TNotice;
@@ -12,6 +13,7 @@
 
 import javax.annotation.Resource;
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * <p>
@@ -80,5 +82,14 @@
 
     }
 
+    @ApiOperation(tags = {"小程序-首页-公告管理"},value = "查询")
+    @GetMapping(value = "/list")
+    public AjaxResult<List<TNotice>> list() {
+        return AjaxResult.success(noticeService.list(Wrappers.lambdaQuery(TNotice.class)
+                .ge(TNotice::getStartTime, LocalDateTime.now())
+                .le(TNotice::getEndTime,LocalDateTime.now())));
+
+    }
+
 }
 

--
Gitblit v1.7.1