From 7865a1010be2f95faab151d99ecdb095f44c2a08 Mon Sep 17 00:00:00 2001 From: lisy <linlangsur163@163.com> Date: 星期五, 14 七月 2023 16:30:34 +0800 Subject: [PATCH] 修复了积分商城详情页面的门店列表查询;兑换支付todo --- cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java | 213 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 212 insertions(+), 1 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 cbe0d58..76219ff 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 @@ -6,6 +6,7 @@ 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 io.swagger.annotations.ApiImplicitParam; @@ -16,8 +17,10 @@ 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; @@ -41,6 +44,9 @@ @Autowired private RechargeRecordsService rechargeRService; + + @Autowired + private UserIntegralChangesService uicService; private final SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd"); @@ -88,6 +94,26 @@ 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 = "file",value = "图片字节",dataType = "MultipartFile") + }) + public ResultUtil uploadAppUserProfile(MultipartFile file, HttpServletRequest request){ + try { + Integer appUserId = tokenUtil.getUserIdFormRedis(); + if(null == appUserId){ + return ResultUtil.tokenErr(); + } + return ResultUtil.success(tauService.uploadAppUserHeadImg(appUserId,file,request)); }catch (Exception e){ return ResultUtil.runErr(); } @@ -210,7 +236,7 @@ */ @ResponseBody @PostMapping("/api/useBenefit/payment") - @ApiOperation(value = "充值中心-支付", tags = {"APP-开始上课"}) + @ApiOperation(value = "充值中心-支付", tags = {"APP-使用福利"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), }) @@ -228,5 +254,190 @@ } + /** + * 积分商城 + */ + @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<PointMallDetailsResponse> pointsMallList(MallRequest request){ + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if(null == userIdFormRedis){ + return ResultUtil.tokenErr(); + } + return ResultUtil.success(tauService.queryAppUserIntegral(request,userIdFormRedis)); + }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 = "lat", 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....."), + @ApiImplicitParam(value = "商品id", name = "goodId", required = true, dataType = "int"), + @ApiImplicitParam(value = "商品类型 1实物 2课包 3门票 4优惠券", name = "goodsType", required = true, dataType = "int"), + @ApiImplicitParam(value = "兑换数量", name = "nums", required = false, dataType = "int"), + @ApiImplicitParam(value = "兑换方式(1=积分,2=积分+现金)", name = "exchangeType", required = true, dataType = "int"), + @ApiImplicitParam(value = "现金支付方式(1=微信 2=支付宝)", name = "payType", required = false, dataType = "int"), + @ApiImplicitParam(value = "学员id列表", name = "stuIds", required = false), + }) + public ResultUtil productRedemptionOperation(Integer goodId, Integer goodsType,Integer nums,Integer exchangeType,Integer payType,List<Integer> stuIds){ + try { + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if(null == userIdFormRedis){ + return ResultUtil.tokenErr(); + } + return tauService.productRedemptionOperation(userIdFormRedis,goodId,goodsType,nums,exchangeType,payType); + }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 = true, dataType = "string"), + @ApiImplicitParam(value = "记录(1充值 2扣除)", name = "recordId", required = true, dataType = "int"), + }) + public ResultUtil<IntegralDetailsResponse> 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 = true, dataType = "string"), + @ApiImplicitParam(value = "商品类型 1实物 2课包 3门票 4优惠券", name = "goodType", required = true, 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(Integer detailsId){ + try { + return ResultUtil.success(uicService.queryRedemptionDetails(detailsId)); + }catch (Exception e){ + return ResultUtil.runErr(); + } + } + + } -- Gitblit v1.7.1