From ae9bfd2d66f68a553786ac78b12f4390e65e4e09 Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期五, 24 十一月 2023 18:30:18 +0800 Subject: [PATCH] 后台bug修改 --- cloud-server-account/src/main/java/com/dsh/account/controller/UseBenefitsController.java | 304 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 285 insertions(+), 19 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 2b9f225..6959633 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 @@ -2,22 +2,24 @@ import com.dsh.account.entity.TAppUser; +import com.dsh.account.feignclient.activity.model.IntegralCommodity; import com.dsh.account.feignclient.other.SysLogClient; 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.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.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; import java.text.SimpleDateFormat; import java.util.List; @@ -42,6 +44,9 @@ @Autowired private RechargeRecordsService rechargeRService; + @Autowired + private UserIntegralChangesService uicService; + private final SimpleDateFormat format1 = new SimpleDateFormat("yyyy-MM-dd"); @@ -50,14 +55,22 @@ @ApiOperation(value = "福利主页", tags = {"APP-使用福利"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(name = "lat",value = "经度",dataType = "string"), + @ApiImplicitParam(name = "lon",value = "纬度",dataType = "string") }) - public ResultUtil<IndexOfUserBenefirVo> queryAppUserUser(){ + public ResultUtil<IndexOfUserBenefirVo> queryAppUserUser(String lon,String lat){ try { Integer appUserId = tokenUtil.getUserIdFormRedis(); if(null == appUserId){ return ResultUtil.tokenErr(); } - return ResultUtil.success(tauService.queryBenefitDetails(appUserId)); + IndexOfUserBenefirVo indexOfUserBenefirVo = tauService.queryBenefitDetails(appUserId,lon,lat); + List<IntegralCommodity> commodities = indexOfUserBenefirVo.getCommodities(); + if (commodities.size() > 5) { + commodities = commodities.subList(0, 5); + } + indexOfUserBenefirVo.setCommodities(commodities); + return ResultUtil.success(indexOfUserBenefirVo); }catch (Exception e){ return ResultUtil.runErr(); } @@ -69,6 +82,9 @@ @ApiOperation(value = "用户个人信息", tags = {"APP-使用福利"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(name = "lat",value = "经度",dataType = "string"), + @ApiImplicitParam(name = "lon",value = "纬度",dataType = "string") + }) public ResultUtil<AppUserDetailsVo> queryAppUserDetails(){ try { @@ -78,16 +94,61 @@ return ResultUtil.tokenErr(); } TAppUser tAppUser = tauService.getBaseMapper().selectById(appUserId); + if (tAppUser.getCode()==null){ + detailsVo.setNeedChange(1); + }else { + detailsVo.setNeedChange(0); + } + + if (null != tAppUser){ + detailsVo.setUserId(appUserId); detailsVo.setUserImage(tAppUser.getHeadImg()); detailsVo.setUserName(tAppUser.getName()); detailsVo.setUserPhone(tAppUser.getPhone()); - detailsVo.setSex(tAppUser.getGender() == 1 ? "男" : "女"); + detailsVo.setIsVip(tAppUser.getIsVip()); + 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(); } @@ -151,9 +212,9 @@ @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"), + @ApiImplicitParam(value = "记录(1充值 2扣除)", name = "recordId", required = false, dataType = "int"), }) - public ResultUtil<BillingDetailsVo> getUserBillingDetails(String yearMonth,Integer recordId){ + public ResultUtil<List<ConsumeDetail>> getUserBillingDetails(String yearMonth,Integer recordId){ try { Integer appUserId = tokenUtil.getUserIdFormRedis(); if(null == appUserId){ @@ -171,17 +232,20 @@ @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"), + @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<RechargeDetailsVo> wpGoldRechargeRecord(String yearMonth, Integer recordId){ + 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)); + return ResultUtil.success(rechargeRService.getAppUserRechargeRecord(yearMonth,recordId,appUserId,pageNum,pageSize)); }catch (Exception e){ + e.printStackTrace(); return ResultUtil.runErr(); } } @@ -206,27 +270,229 @@ } /** - * 课时详情-支付 + * 充值中心-支付 */ @ResponseBody - @PostMapping("/api/startCource/payment") - @ApiOperation(value = "充值中心-支付", tags = {"APP-开始上课"}) + @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 rechargePayment(RechargePayRequest request){ + public ResultUtil rechargeCenPayment(RechargePayRequest request){ try { Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); if(null == userIdFormRedis){ return ResultUtil.tokenErr(); } - return rechargeRService.rechargePayment(userIdFormRedis,request); + 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 { + System.out.println("======request========"+request); + 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/goodsDetailsOne") + @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"), + }) + public ResultUtil<ProductDetailsVo> goodsDetailsOne(Integer goodId){ + try { + return ResultUtil.success(tauService.goodsDetailsOne(goodId)); + }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 synchronized 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"), + @ApiImplicitParam(value = "page", name = "页数", required = true, dataType = "int"), + @ApiImplicitParam(value = "size", name = "size", required = true, dataType = "int"), + }) + public ResultUtil<List<ExchangeDetailsResponse>> exchangeRecordsDetails(Integer useType, Integer goodType,Integer page,Integer size){ + try { + if(page==null || size==null){ + page=1; + size=10; + } + Integer userIdFormRedis = tokenUtil.getUserIdFormRedis(); + if(null == userIdFormRedis){ + return ResultUtil.tokenErr(); + } + return ResultUtil.success(uicService.queryExchangeGoodsdetails1(userIdFormRedis,useType,goodType,page,size)); + }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 { + PointDetailsVo pointDetailsVo = uicService.queryRedemptionDetails(detailsId); + pointDetailsVo.getPics().remove(0); + return ResultUtil.success(pointDetailsVo); +// }catch (Exception e){ +// return ResultUtil.runErr(); +// } + } + + } -- Gitblit v1.7.1