package com.dsh.course.controller; import com.dsh.course.entity.TCoursePackage; import com.dsh.course.model.vo.response.ExchangeCoursePackageResponse; import com.dsh.course.model.vo.response.WeekLimitedResponse; import com.dsh.course.service.TCoursePackageDiscountService; import com.dsh.course.service.TCoursePackageService; import com.dsh.course.util.ResultUtil; import com.dsh.course.util.TokenUtil; 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.*; /** * @author zhibing.pu * @date 2023/7/5 9:58 */ @RestController @RequestMapping("") public class CoursePackageController { @Autowired private TCoursePackageService coursePackageService; @Autowired private TCoursePackageDiscountService tcpdService; @Autowired private TokenUtil tokenUtil; /** * 根据id获取课包 * @param id * @return */ @ResponseBody @PostMapping("/coursePackage/queryCoursePackageById") public TCoursePackage queryCoursePackageById(@RequestBody Integer id){ try { TCoursePackage coursePackage = coursePackageService.getById(id); return coursePackage; }catch (Exception e){ e.printStackTrace(); return null; } } /** * 本周福利列表 */ @ResponseBody @PostMapping("/api/useBenefit/weekLimitedBenefit") @ApiOperation(value = "本周福利-限时折扣列表", tags = {"APP-使用福利"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), @ApiImplicitParam(name = "discountType",value = "默认显示 限时折扣 (1限时折扣 2赠送课时)",dataType = "int"), @ApiImplicitParam(name = "lon",value = "经度",dataType = "String"), @ApiImplicitParam(name = "lat",value = "纬度",dataType = "String"), }) public ResultUtil thisWeeksBenefitList(Integer discountType,String lon,String lat){ try { Integer appUserId = tokenUtil.getUserIdFormRedis(); if(null == appUserId){ return ResultUtil.tokenErr(); } return ResultUtil.success(tcpdService.getWeeksBenefitCourse(appUserId,discountType,lon,lat)); }catch (Exception e){ return ResultUtil.runErr(); } } /** * 折扣课包详情 */ @ResponseBody @PostMapping("/api/useBenefit/discountCourseDatas") @ApiOperation(value = "本周福利-折扣课包详情", tags = {"APP-使用福利"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), @ApiImplicitParam(name = "coursePackageDiscountId",value = "限时折扣配置id/赠送课时配置id",dataType = "int"), @ApiImplicitParam(name = "lon",value = "经度",dataType = "String"), @ApiImplicitParam(name = "lat",value = "纬度",dataType = "String"), }) public ResultUtil discountCourseDatas(Integer coursePackageDiscountId,String lon,String lat){ try { return ResultUtil.success(tcpdService.getWeekFreeCourseDetails(coursePackageDiscountId,lat,lon)); }catch (Exception e){ return ResultUtil.runErr(); } } /** * 折扣课包支付 */ @ResponseBody @PostMapping("/api/useBenefit/paymentOfDiscountCoursePack") @ApiOperation(value = "本周福利-折扣课包支付", tags = {"APP-使用福利"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), @ApiImplicitParam(name = "coursePackageDiscountId",value = "限时折扣配置id/赠送课时配置id",dataType = "int"), @ApiImplicitParam(name = "lon",value = "经度",dataType = "String"), @ApiImplicitParam(name = "lat",value = "纬度",dataType = "String"), }) public ResultUtil paymentWeeksFreeCourse(Integer coursePackageDiscountId){ try { Integer appuserId = tokenUtil.getUserIdFormRedis(); if(null == appuserId){ return ResultUtil.tokenErr(); } return tcpdService.paymentDiscountCoursePack(coursePackageDiscountId,appuserId); }catch (Exception e){ return ResultUtil.runErr(); } } }