From 73372f312e8b8bae98623006640b016f9a433988 Mon Sep 17 00:00:00 2001
From: nickchange <126672920+nickchange@users.noreply.github.com>
Date: 星期一, 16 十月 2023 15:12:49 +0800
Subject: [PATCH] 10.16
---
cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java | 313 ++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 302 insertions(+), 11 deletions(-)
diff --git a/cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java b/cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java
index 797d8e1..b0f28e2 100644
--- a/cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java
+++ b/cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java
@@ -3,19 +3,27 @@
import com.dsh.account.entity.TAppUser;
import com.dsh.account.feignclient.other.SysLogClient;
-import com.dsh.account.model.vo.userBenefitDetail.AppUserDetailsVo;
-import com.dsh.account.model.vo.userBenefitDetail.BillingDetailsVo;
-import com.dsh.account.model.vo.userBenefitDetail.IndexOfUserBenefirVo;
+import com.dsh.account.model.vo.userBenefitDetail.*;
+import com.dsh.account.service.RechargeRecordsService;
import com.dsh.account.service.TAppUserService;
+import com.dsh.account.service.UserIntegralChangesService;
import com.dsh.account.util.ResultUtil;
import com.dsh.account.util.TokenUtil;
+import com.dsh.account.util.ToolUtil;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
+import java.util.List;
/**
* 使用福利 控制器
@@ -32,8 +40,14 @@
@Autowired
private TokenUtil tokenUtil;
- @Autowired
+ @Resource
private SysLogClient slClient;
+
+ @Autowired
+ private RechargeRecordsService rechargeRService;
+
+ @Autowired
+ private UserIntegralChangesService uicService;
private final SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
@@ -72,15 +86,52 @@
}
TAppUser tAppUser = tauService.getBaseMapper().selectById(appUserId);
if (null != tAppUser){
+ detailsVo.setUserId(appUserId);
detailsVo.setUserImage(tAppUser.getHeadImg());
detailsVo.setUserName(tAppUser.getName());
detailsVo.setUserPhone(tAppUser.getPhone());
- detailsVo.setSex(tAppUser.getGender() == 1 ? "男" : "女");
- detailsVo.setBirthday(format1.format(tAppUser.getBirthday()));
+ if(tAppUser.getGender()!=null){
+
+ detailsVo.setSex(tAppUser.getGender() == 1 ? "男" : "女");
+ }
+ System.out.println("============="+tAppUser);
+
+ if (tAppUser.getBirthday()!=null){
+ detailsVo.setBirthday(format1.format(tAppUser.getBirthday()));}
detailsVo.setAddress(tAppUser.getProvince()+tAppUser.getCity());
- detailsVo.setMemberLifespan(format1.format(tAppUser.getVipEndTime()));
+ if(tAppUser.getVipEndTime()!=null){
+
+ detailsVo.setMemberLifespan(format1.format(tAppUser.getVipEndTime()));
+ }
}
return ResultUtil.success(detailsVo);
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+ @ResponseBody
+ @PostMapping("/api/useBenefit/uploadImage")
+ @ApiOperation(value = "上传用户头像", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(name = "userImage",value = "用户头像连接",dataType = "string")
+ })
+ public ResultUtil uploadAppUserProfile(String userImage){
+ try {
+ Integer appUserId = tokenUtil.getUserIdFormRedis();
+ if(null == appUserId){
+ return ResultUtil.tokenErr();
+ }
+ TAppUser byId = tauService.getById(appUserId);
+ if (ToolUtil.isNotEmpty(userImage)){
+ byId.setHeadImg(userImage);
+ tauService.updateById(byId);
+ }else {
+ ResultUtil.error("头像不能为空!");
+ }
+ return ResultUtil.success();
}catch (Exception e){
return ResultUtil.runErr();
}
@@ -144,21 +195,261 @@
@ApiImplicitParams({
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
@ApiImplicitParam(value = "年月", name = "yearMonth", required = true, dataType = "string"),
- @ApiImplicitParam(value = "记录id", name = "recordId", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "记录(1充值 2扣除)", name = "recordId", required = false, dataType = "int"),
})
- public ResultUtil<BillingDetailsVo> getUserBillingDetails(@RequestBody String yearMonth,@RequestBody Integer recordId){
+ public ResultUtil<List<ConsumeDetail>> getUserBillingDetails(String yearMonth,Integer recordId){
try {
Integer appUserId = tokenUtil.getUserIdFormRedis();
if(null == appUserId){
return ResultUtil.tokenErr();
}
- return ResultUtil.success(tauService.queryUserBillingDetails(yearMonth,recordId));
+ return ResultUtil.success(tauService.queryUserBillingDetails(yearMonth,recordId,appUserId));
}catch (Exception e){
return ResultUtil.runErr();
}
}
+ @ResponseBody
+ @PostMapping("/api/useBenefit/voucherDetail")
+ @ApiOperation(value = "充值明细", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "年月", name = "yearMonth", required = false, dataType = "string"),
+ @ApiImplicitParam(value = "页码", name = "pageNum", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "每页数量", name = "pageSize", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "记录(1充值 2扣除)", name = "recordId", required = false, dataType = "int"),
+ })
+ public ResultUtil<List<RechargesDetail>> wpGoldRechargeRecord(String yearMonth, Integer recordId,Integer pageNum,Integer pageSize){
+ try {
+ Integer appUserId = tokenUtil.getUserIdFormRedis();
+ if(null == appUserId){
+ return ResultUtil.tokenErr();
+ }
+ return ResultUtil.success(rechargeRService.getAppUserRechargeRecord(yearMonth,recordId,appUserId,pageNum,pageSize));
+ }catch (Exception e){
+ e.printStackTrace();
+ return ResultUtil.runErr();
+ }
+ }
+
+
+ @ResponseBody
+ @PostMapping("/api/useBenefit/voucherCenter")
+ @ApiOperation(value = "充值中心", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ })
+ public ResultUtil<List<RechargeCentVo>> rechargeCenterConfig(){
+ try {
+ Integer appUserId = tokenUtil.getUserIdFormRedis();
+ if(null == appUserId){
+ return ResultUtil.tokenErr();
+ }
+ return ResultUtil.success(tauService.getSysRechargeConfig(appUserId));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+ /**
+ * 充值中心-支付
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/payment")
+ @ApiOperation(value = "充值中心-支付", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ })
+ public ResultUtil rechargeCenPayment(RechargePayRequest request){
+ try {
+ Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
+ if(null == userIdFormRedis){
+ return ResultUtil.tokenErr();
+ }
+ return rechargeRService.rechargeCenPayment(userIdFormRedis,request);
+ }catch (Exception e){
+ e.printStackTrace();
+ return ResultUtil.runErr();
+ }
+
+ }
+
+
+ /**
+ * 积分商城
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/integralMallList")
+ @ApiOperation(value = "积分商城", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ })
+ public ResultUtil<List<Goods>> pointsMallList(MallRequest request){
+ try {
+ return ResultUtil.success(tauService.queryAppUserIntegral(request));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+ /**
+ * 商品详情
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/goodsDetails")
+ @ApiOperation(value = "积分商城-商品详情", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "商品id", name = "goodId", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "商品类型 1实物 2课包 3门票 4优惠券", name = "goodsType", required = true, dataType = "int"),
+ })
+ public ResultUtil<ProductDetailsVo> productDetails(Integer goodId, Integer goodsType){
+ try {
+ return ResultUtil.success(tauService.productDetails(goodId,goodsType));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+
+ /**
+ * 实体、门票、优惠券为默认门店|课包为默认学员
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/goodsOfCourseStore")
+ @ApiOperation(value = "积分商城-实体、门票、优惠券为默认门店|课包为默认学员", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "纬度", name = "lat", required = false, dataType = "String"),
+ @ApiImplicitParam(value = "经度", name = "lon", required = false, dataType = "String"),
+ @ApiImplicitParam(value = "是否为课包商品(1=是 2=否)", name = "isCourse", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "商品id", name = "pointsMerId", required = true, dataType = "int"),
+ })
+ public ResultUtil<StuAndStoreResponse> goodsOfCourseStore(String lat, String lon,Integer isCourse,Integer pointsMerId){
+ try {
+ Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
+ if(null == userIdFormRedis){
+ return ResultUtil.tokenErr();
+ }
+ return ResultUtil.success(tauService.queryAppUserDefaultStuAndStore(userIdFormRedis,pointsMerId,lat,lon,isCourse));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+ /**
+ * 兑换详情(实体、门票、优惠券)中的门店列表
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/exchangeStoreIds")
+ @ApiOperation(value = "积分商城-兑换详情(实体、门票、优惠券)中的门店列表", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "商品类型 1实物 2课包 3门票 4优惠券", name = "goodsType", required = true, dataType = "String"),
+ @ApiImplicitParam(value = "商品id", name = "pointsMerId", required = true, dataType = "int"),
+ })
+ public ResultUtil<List<StoreResponse>> getExchangeStoreIds( Integer goodsType,Integer pointsMerId){
+ try {
+ return ResultUtil.success(tauService.queryStoresOfExchange(goodsType,pointsMerId));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+
+ /**
+ * 商品兑换
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/productRedemptionOperation")
+ @ApiOperation(value = "积分商城-商品兑换", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ })
+ public ResultUtil productRedemptionOperation(GoodsExchangeVo exchangeType){
+ try {
+ Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
+ if(null == userIdFormRedis){
+ return ResultUtil.tokenErr();
+ }
+ return tauService.productRedemptionOperation(userIdFormRedis,exchangeType);
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+ /**
+ * 积分明细
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/integralDetails")
+ @ApiOperation(value = "积分商城-积分明细", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "年月", name = "yearMonth", required = false, dataType = "string"),
+ @ApiImplicitParam(value = "记录(1充值 2扣除)", name = "recordId", required = false, dataType = "int"),
+ })
+ public ResultUtil<List<IntegralsData>> pointDetails(String yearMonth, Integer recordId){
+ try {
+ Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
+ if(null == userIdFormRedis){
+ return ResultUtil.tokenErr();
+ }
+ return ResultUtil.success(uicService.queryUserPointsDetails(yearMonth,recordId,userIdFormRedis));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+ /**
+ * 兑换记录
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/exchangeRecords")
+ @ApiOperation(value = "积分商城-兑换记录", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "使用状态 (1已使用 2未使用)", name = "useType", required = false, dataType = "string"),
+ @ApiImplicitParam(value = "商品类型 1实物 2课包 3门票 4优惠券", name = "goodType", required = false, dataType = "int"),
+ })
+ public ResultUtil<List<ExchangeDetailsResponse>> exchangeRecordsDetails(Integer useType, Integer goodType){
+ try {
+ Integer userIdFormRedis = tokenUtil.getUserIdFormRedis();
+ if(null == userIdFormRedis){
+ return ResultUtil.tokenErr();
+ }
+ return ResultUtil.success(uicService.queryExchangeGoodsdetails(userIdFormRedis,useType,goodType));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
+
+ /**
+ * 兑换记录详情
+ */
+ @ResponseBody
+ @PostMapping("/api/useBenefit/redemptionDetails")
+ @ApiOperation(value = "积分商城-兑换记录详情", tags = {"APP-使用福利"})
+ @ApiImplicitParams({
+ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."),
+ @ApiImplicitParam(value = "记录id", name = "detailsId", required = true, dataType = "string"),
+ })
+ public ResultUtil<PointDetailsVo> redemptionDetails(Long detailsId){
+ try {
+ return ResultUtil.success(uicService.queryRedemptionDetails(detailsId));
+ }catch (Exception e){
+ return ResultUtil.runErr();
+ }
+ }
+
}
--
Gitblit v1.7.1