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