From 883d04c8d038ba0e45c1630f760f4aa642286f45 Mon Sep 17 00:00:00 2001 From: hjl <1657978663@qq.com> Date: 星期三, 22 五月 2024 10:50:48 +0800 Subject: [PATCH] feat: 微信分享更改;接口返回更改;接口参数描述 --- ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java | 6 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserShareServiceImpl.java | 7 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/dto/CompleteStudyDTO.java | 2 ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/controller/TSysSetController.java | 7 + ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserService.java | 8 - ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/domain/TSysSet.java | 4 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserShareService.java | 8 + ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/model/TSysSet.java | 60 ++++++++++ ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java | 2 ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TUserShareMapper.java | 8 + ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java | 76 ++++++++--- ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/factory/TManagementFallbackFactory.java | 6 + ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/feignClient/ManagementClient.java | 15 + ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserServiceImpl.java | 106 ----------------- ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TUserShareMapper.xml | 7 15 files changed, 172 insertions(+), 150 deletions(-) diff --git a/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/factory/TManagementFallbackFactory.java b/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/factory/TManagementFallbackFactory.java index 697d360..cf8078c 100644 --- a/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/factory/TManagementFallbackFactory.java +++ b/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/factory/TManagementFallbackFactory.java @@ -4,6 +4,7 @@ import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.management.api.feignClient.ManagementClient; import com.ruoyi.management.api.model.TFeedback; +import com.ruoyi.management.api.model.TSysSet; import com.ruoyi.management.api.model.TUseGuide; import com.ruoyi.management.api.model.TVipSet; import com.ruoyi.management.api.query.UseGuideQuery; @@ -54,6 +55,11 @@ } + @Override + public R<TSysSet> shareInfo() { + return R.fail("获取分享信息失败"+cause.getMessage()); + } + }; } } diff --git a/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/feignClient/ManagementClient.java b/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/feignClient/ManagementClient.java index 6b8f021..4f6a361 100644 --- a/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/feignClient/ManagementClient.java +++ b/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/feignClient/ManagementClient.java @@ -4,13 +4,11 @@ import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.page.PageInfo; import com.ruoyi.management.api.factory.TManagementFallbackFactory; -import com.ruoyi.management.api.model.TFeedback; -import com.ruoyi.management.api.model.TPage; -import com.ruoyi.management.api.model.TUseGuide; -import com.ruoyi.management.api.model.TVipSet; +import com.ruoyi.management.api.model.*; import com.ruoyi.management.api.query.UseGuideQuery; import io.swagger.annotations.ApiOperation; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -35,4 +33,13 @@ @PostMapping("/tSysSet/agreement1/{type}") R<String> agreement1(@PathVariable("type") Integer type); + /** + * 获取分享图片、标题及可获积分数 + * + * @return 获取分享图片、标题及可获积分数 + */ + @GetMapping("/tSysSet/shareInfo") + @ApiOperation(value = "获取分享图片、标题及可获积分数", tags = {"获取分享图片、标题及可获积分数"}) + R<TSysSet> shareInfo(); + } diff --git a/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/model/TSysSet.java b/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/model/TSysSet.java new file mode 100644 index 0000000..7e0466d --- /dev/null +++ b/ruoyi-api/ruoyi-api-management/src/main/java/com/ruoyi/management/api/model/TSysSet.java @@ -0,0 +1,60 @@ +package com.ruoyi.management.api.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.ruoyi.common.core.web.domain.BaseModel; +import lombok.Data; + +/** + * <p> + * 系统设置 + * </p> + * + * @author 无关风月 + * @since 2024-04-26 + */ +@TableName("t_sys_set") +@Data +public class TSysSet extends BaseModel { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 客服电话 多个逗号隔开 + */ + private String phone; + /** + * 分享设置 标题 + */ + private String title; + /** + * 分享设置 图片 + */ + private String img; + /** + * 音效设置 正确 + */ + private String correct; + /** + * 音效设置 错误 + */ + private String error; + /** + * 积分设置 每在线x分钟 + */ + private String time; + /** + * 积分设置 可获积分 + */ + private String integral; + /** + * 分享可获得积分 + */ + private String integralShare; +} diff --git a/ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/controller/TSysSetController.java b/ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/controller/TSysSetController.java index 7342c2e..0f247da 100644 --- a/ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/controller/TSysSetController.java +++ b/ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/controller/TSysSetController.java @@ -177,5 +177,12 @@ useGuideService.removeById(id); return AjaxResult.success("删除成功"); } + + @GetMapping("/shareInfo") + @ApiOperation(value = "获取分享图片、标题及可获积分数", tags = {"获取分享图片、标题及可获积分数"}) + public R<TSysSet> shareInfo() { + return R.ok(sysSetService.lambdaQuery().one()); + } + } diff --git a/ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/domain/TSysSet.java b/ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/domain/TSysSet.java index 1bd7a45..3bdeb27 100644 --- a/ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/domain/TSysSet.java +++ b/ruoyi-service/ruoyi-management/src/main/java/com/ruoyi/management/domain/TSysSet.java @@ -53,4 +53,8 @@ * 积分设置 可获积分 */ private String integral; + /** + * 分享可获得积分 + */ + private String integralShare; } diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java index e56a842..dc1d7d3 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TStudyController.java @@ -943,7 +943,7 @@ * @param completeStudy 完成学习信息 */ @PostMapping("/completeLearning") - @ApiOperation(value = "完成学习", tags = {"完成学习"}) + @ApiOperation(value = "完成学习", tags = {"完成学习/其他积分来源(分享...)"}) public AjaxResult<Boolean> completeLearning(@RequestBody CompleteStudyDTO completeStudy) { // 登录用户id Integer userId = tokenService.getLoginUserStudy().getUserid(); diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java index 6cb31db..d55f8cb 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/controller/TUserController.java @@ -12,17 +12,16 @@ import com.ruoyi.common.security.service.TokenService; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.management.api.feignClient.ManagementClient; -import com.ruoyi.management.api.model.TFeedback; -import com.ruoyi.management.api.model.TPage; -import com.ruoyi.management.api.model.TUseGuide; -import com.ruoyi.management.api.model.TVipSet; +import com.ruoyi.management.api.model.*; import com.ruoyi.management.api.query.UseGuideQuery; import com.ruoyi.study.domain.TUser; +import com.ruoyi.study.domain.TUserShare; import com.ruoyi.study.domain.TVipOrder; import com.ruoyi.study.dto.AppUserQuery; import com.ruoyi.study.dto.UserInfoQuery; import com.ruoyi.study.request.RegisterPhoneRequest; import com.ruoyi.study.service.ITUserService; +import com.ruoyi.study.service.ITUserShareService; import com.ruoyi.study.service.IVipOrderService; import com.ruoyi.study.utils.PayMoneyUtil; import com.ruoyi.study.utils.UUIDUtil; @@ -65,6 +64,8 @@ private TokenService tokenService; @Resource private RedisService redisService; + @Resource + private ITUserShareService userShareService; @PostMapping("/vipInfo") @ApiOperation(value = "会员中心-获取会员说明、当前登录用户是否为会员、会员购买规格", tags = {"家长端-个人中心"}) @@ -301,6 +302,7 @@ } return AjaxResult.success(); } + @PostMapping("/parentPage") @ApiOperation(value = "平板", tags = {"家长端-启动页"}) public AjaxResult<String> parentPage() { @@ -312,6 +314,7 @@ } return AjaxResult.success(); } + @PostMapping("/parentPage1") @ApiOperation(value = "手机", tags = {"家长端-启动页"}) public AjaxResult<String> parentPage1() { @@ -323,6 +326,7 @@ } return AjaxResult.success(); } + @PostMapping("/getProtocol") @ApiOperation(value = "获取协议", tags = {"家长端-协议"}) @ApiImplicitParams({ @@ -367,9 +371,21 @@ return AjaxResult.error("登录失败,您的账号已被冻结!"); } } else { - // todo 验证码校验 - tUser1 = getUser(phone); - userService.save(tUser1); + // 手机验证码校验 + Object redisPhoneCode = redisService.getCacheObject(RedisConstants.PHONE_CODE + phone); + if (null == redisPhoneCode) { + return AjaxResult.error("登录失败,手机验证码已过期!"); + } else { + // redis 验证码的value 为 code:时间戳 + String rCodeAndTime = String.valueOf(redisPhoneCode); + String rCode = rCodeAndTime.split(":")[0]; + if (!rCode.equalsIgnoreCase(phoneCode)) { + return AjaxResult.error("登录失败,手机验证码输入有误!"); + } else { + tUser1 = getUser(phone); + userService.save(tUser1); + } + } } LoginUserParent loginUserParent = new LoginUserParent(); loginUserParent.setName(tUser1.getName()); @@ -455,17 +471,29 @@ } /** - * 家长端 学习端都可用 - * - * @param url app网页链接 + * 分享图片、标题及可获积分数 */ - @GetMapping("/weiXinShare") - @ApiOperation(value = "微信分享", tags = {"微信分享"}) - @ApiImplicitParams({ - @ApiImplicitParam(value = "应用分享url地址", name = "url", dataType = "string", required = true), - }) - public AjaxResult weiXinShare(@RequestParam String url) { - return AjaxResult.success(userService.weiXinShare(url)); + @GetMapping("/shareInfo") + @ApiOperation(value = "微信分享信息", tags = {"微信分享信息"}) + public AjaxResult shareInfo() { + // 分享信息 + TSysSet data = managementClient.shareInfo().getData(); + Integer userid = tokenService.getLoginUserStudy().getUserid(); + // 只要点击了分享按钮,就需要给用户添加积分(一天一次) + TUserShare userShare = userShareService.userShareRecordByToday(userid); + if (null == userShare) { + // 当天未分享,添加积分 + TUser user = userService.getById(userid); + int integral = Integer.parseInt(data.getIntegralShare()); + user.setIntegral(user.getIntegral() + integral); + userService.updateById(user); + // 添加分享记录 + TUserShare record = new TUserShare(); + record.setIntegral(integral); + record.setUserId(userid); + userShareService.save(record); + } + return AjaxResult.success(); } @PostMapping("/deleteUser") @@ -544,6 +572,7 @@ userService.saveOrUpdate(byId); return AjaxResult.success("修改成功"); } + @ResponseBody @PostMapping("/base/wxRefund") public void cancelMySiteCallback(HttpServletRequest request, HttpServletResponse response) { @@ -566,12 +595,12 @@ .eq("payState", 2) .orderByDesc("createTime")); int size = list.size(); - if (size == 0){ + if (size == 0) { // 证明这是用户第一次充值会员 将首次充值会员时间和会员到期时间清空 byId1.setVipEndTime(null); byId1.setVipPayTime(null); userService.updateById(byId1); - }else{ + } else { // 最近的一次充值会员时间 TVipOrder tVipOrder = list.get(0); // 将会员到期时间回退到上一次 @@ -588,6 +617,7 @@ e.printStackTrace(); } } + @PostMapping("/vipBack/{id}") @ApiOperation(value = "会员退款", tags = {"管理后台-会员退款"}) public R vipBack(@PathVariable("id") Integer id) throws AlipayApiException { @@ -596,7 +626,7 @@ String transactionId = byId.getTransactionId(); // 内部订单号 String outTradeNo = byId.getOutTradeNo(); - switch (byId.getPayType()){ + switch (byId.getPayType()) { case 1: // 微信退款 Map<String, String> stringStringMap = payMoneyUtil.wxRefund(transactionId, outTradeNo, byId.getMoney().toString(), byId.getMoney().toString(), "/base/wxRefund"); @@ -611,7 +641,7 @@ vipOrderService.updateById(byId); case 2: // 支付宝退款 - Map<String, String> stringStringMap1 = payMoneyUtil.aliRefund(transactionId,byId.getMoney().toString()); + Map<String, String> stringStringMap1 = payMoneyUtil.aliRefund(transactionId, byId.getMoney().toString()); if (null == stringStringMap1) { return R.fail("取消退款异常"); } @@ -635,12 +665,12 @@ .eq("payState", 2) .orderByDesc("createTime")); int size = list.size(); - if (size == 0){ + if (size == 0) { // 证明这是用户第一次充值会员 将首次充值会员时间和会员到期时间清空 byId1.setVipEndTime(null); byId1.setVipPayTime(null); userService.updateById(byId1); - }else{ + } else { // 最近的一次充值会员时间 TVipOrder tVipOrder = list.get(0); // 将会员到期时间回退到上一次 diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/dto/CompleteStudyDTO.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/dto/CompleteStudyDTO.java index 62dfa50..5ff2e94 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/dto/CompleteStudyDTO.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/dto/CompleteStudyDTO.java @@ -20,7 +20,7 @@ /** * 完成听故事、完成游戏、完成答题、完成每日学习、商城消费 */ - @ApiModelProperty("完成听故事、完成游戏、完成答题、完成每日学习、商城消费") + @ApiModelProperty("完成听故事、完成游戏、完成答题、完成每日学习、商城消费、分享") private String method; } diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TUserShareMapper.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TUserShareMapper.java index cdd15c5..c4ac90d 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TUserShareMapper.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/mapper/TUserShareMapper.java @@ -1,7 +1,6 @@ package com.ruoyi.study.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.ruoyi.study.domain.TGame; import com.ruoyi.study.domain.TUserShare; /** @@ -14,4 +13,11 @@ */ public interface TUserShareMapper extends BaseMapper<TUserShare> { + /** + * 根据用户id和当日 + * + * @param userid 用户id + * @return 用户分享记录 + */ + TUserShare userShareRecordByToday(Integer userid); } diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserService.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserService.java index 1ec531d..202d465 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserService.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserService.java @@ -7,7 +7,6 @@ import com.ruoyi.study.vo.AppUserVO; import java.util.List; -import java.util.Map; /** * <p> @@ -36,11 +35,4 @@ */ Boolean isVip(); - /** - * 微信分享app - * - * @param url app网页链接 - * @return 返回信息 - */ - Map<String, Object> weiXinShare(String url); } diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserShareService.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserShareService.java index 7aad242..ab9b04b 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserShareService.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/ITUserShareService.java @@ -1,7 +1,6 @@ package com.ruoyi.study.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.ruoyi.study.domain.TGame; import com.ruoyi.study.domain.TUserShare; /** @@ -14,4 +13,11 @@ */ public interface ITUserShareService extends IService<TUserShare> { + /** + * 根据用户id和当日 + * + * @param userid 用户id + * @return 用户分享记录 + */ + TUserShare userShareRecordByToday(Integer userid); } diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java index 510ed8e..15966db 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TStudyServiceImpl.java @@ -112,8 +112,12 @@ TStudyAnswer data = answerList.get(rand.nextInt(answerList.size())); // 获取问题题目 和 回答题目 Map<String, Object> result = new HashMap<>(8); + List<String> ids = new ArrayList<>(); + ids.add(String.valueOf(data.getSubject())); + ids.add(String.valueOf(data.getAnswerSubject())); result.put("data", data); - // todo 有问有答 + // 有问有答 + result.put("subject", getSubjects(ids.toArray(ids.toArray(new String[0])))); return result; } diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserServiceImpl.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserServiceImpl.java index 14f88d5..208da90 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserServiceImpl.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserServiceImpl.java @@ -1,37 +1,22 @@ package com.ruoyi.study.service.impl; import cn.hutool.core.util.RandomUtil; -import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.constant.Constants; import com.ruoyi.common.core.constant.RedisConstants; -import com.ruoyi.common.core.constant.TokenConstants; import com.ruoyi.common.core.exception.GlobalException; import com.ruoyi.common.security.service.TokenService; import com.ruoyi.study.domain.TUser; import com.ruoyi.study.dto.AppUserQuery; import com.ruoyi.study.mapper.TUserMapper; import com.ruoyi.study.service.ITUserService; -import com.ruoyi.study.utils.RandomVxUtil; -import com.ruoyi.study.utils.SignatureUtil; import com.ruoyi.study.vo.AppUserVO; -import org.apache.http.HttpEntity; -import org.apache.http.HttpResponse; -import org.apache.http.HttpStatus; -import org.apache.http.client.HttpClient; -import org.apache.http.client.methods.HttpGet; -import org.apache.http.impl.client.HttpClients; -import org.apache.http.util.EntityUtils; -import org.springframework.beans.factory.annotation.Value; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.io.IOException; import java.util.Date; -import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.concurrent.TimeUnit; /** @@ -49,18 +34,6 @@ private RedisTemplate<String, Object> redisTemplate; @Resource private TokenService tokenService; - - /** - * 微信公众号的appid - */ - @Value("wx.appId") - private String appId; - - /** - * 微信公众号的appSecret - */ - @Value("wx.secret") - private String secret; @Override public List<AppUserVO> listAll(AppUserQuery query) { @@ -103,7 +76,7 @@ @Override public Boolean isVip() { TUser user = lambdaQuery().eq(TUser::getId, tokenService.getLoginUserStudy().getUserid()) - .eq(TUser::getDisabled, 0).one(); + .eq(TUser::getDisabled, 0).eq(TUser::getState,1).one(); // 是否为vip 逻辑 if (null == user) { return false; @@ -111,83 +84,6 @@ // vip过期时间,字段为空也表示 当前用户不是vip Date vipEndTime = user.getVipEndTime(); return null != vipEndTime && System.currentTimeMillis() <= vipEndTime.getTime(); - } - - @Override - public Map<String, Object> weiXinShare(String url) { - // 初始化微信API,并注册AppID - long timestamp = System.currentTimeMillis() / 1000; - String noncestr = RandomVxUtil.createRandomString(16); - String ticket = getTicket(getToken(appId, secret)); - String str = "jsapi_ticket=" + ticket + "&noncestr=" + noncestr + "×tamp=" + timestamp + "&url=" + url; - // 获取加密后的签名 - String signature = SignatureUtil.getSignature(str); - Map<String, Object> map = new HashMap<>(); - map.put("appId", appId); - map.put("timestamp", timestamp); - map.put("nonceStr", noncestr); - map.put("signature", signature); - return map; - } - - public String getToken(String appid, String secret) { - //拼接访问地址 - String apiUrl = String.format(TokenConstants.VX_TOKEN_API_PREFIX, appid, secret); - HttpClient client = HttpClients.createDefault(); - //get请求 - HttpGet get = new HttpGet(apiUrl); - // 初始化解析json格式的对象 - String result = null; - try { - HttpResponse res = client.execute(get); - // 初始化响应内容 - String responseContent; - HttpEntity entity = res.getEntity(); - //设置编码格式 - responseContent = EntityUtils.toString(entity, "UTF-8"); - // 将json字符串转换为json对象 - JSONObject json = JSONObject.parseObject(responseContent); - if (res.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { - if (json.get(Constants.ERR_CODE) != null) { - // 错误时微信会返回错误码等信息,{"errcode":40013,"errmsg":"invalid appid"} - throw new GlobalException("微信授权失败!"); - } else { - // 正常情况下{"access_token":"ACCESS_TOKEN","expires_in":7200} - result = String.valueOf(json.get("access_token")); - } - } - return result; - } catch (IOException e) { - throw new GlobalException("微信授权失败!"); - } - } - - public static String getTicket(String accessToken) { - String turl = String.format(TokenConstants.VX_TICKET_API_PREFIX, accessToken); - HttpClient client = HttpClients.createDefault(); - HttpGet get = new HttpGet(turl); - String result = null; - try { - HttpResponse res = client.execute(get); - // 响应内容 - String responseContent; - HttpEntity entity = res.getEntity(); - responseContent = EntityUtils.toString(entity, "UTF-8"); - JSONObject jsonObject = JSONObject.parseObject(responseContent); - // 将json字符串转换为json对象 - if (res.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { - if (jsonObject.get(Constants.ERR_CODE) == null) { - // 错误时微信会返回错误码等信息,{"errcode":40013,"errmsg":"invalid appid"} - throw new GlobalException("微信授权失败!"); - } else { - // 正常情况下{"access_token":"ACCESS_TOKEN","expires_in":7200} - result = String.valueOf(jsonObject.get("ticket")); - } - } - return result; - } catch (IOException e) { - throw new GlobalException("微信授权失败!"); - } } } diff --git a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserShareServiceImpl.java b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserShareServiceImpl.java index 2fc4eee..eddd156 100644 --- a/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserShareServiceImpl.java +++ b/ruoyi-service/ruoyi-study/src/main/java/com/ruoyi/study/service/impl/TUserShareServiceImpl.java @@ -1,11 +1,8 @@ package com.ruoyi.study.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.study.domain.TGame; import com.ruoyi.study.domain.TUserShare; -import com.ruoyi.study.mapper.TGameMapper; import com.ruoyi.study.mapper.TUserShareMapper; -import com.ruoyi.study.service.ITGameService; import com.ruoyi.study.service.ITUserShareService; import org.springframework.stereotype.Service; @@ -20,4 +17,8 @@ @Service public class TUserShareServiceImpl extends ServiceImpl<TUserShareMapper, TUserShare> implements ITUserShareService { + @Override + public TUserShare userShareRecordByToday(Integer userid) { + return baseMapper.userShareRecordByToday(userid); + } } diff --git a/ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TUserShareMapper.xml b/ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TUserShareMapper.xml index 41f5319..7dac456 100644 --- a/ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TUserShareMapper.xml +++ b/ruoyi-service/ruoyi-study/src/main/resources/mapper/sutdy/TUserShareMapper.xml @@ -2,6 +2,9 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.study.mapper.TUserShareMapper"> - - + <select id="userShareRecordByToday" resultType="com.ruoyi.study.domain.TUserShare"> + SELECT integral, createTime + FROM t_user_share + WHERE DATE(createTime) = CURDATE() + </select> </mapper> -- Gitblit v1.7.1