package com.dsh.account.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.dsh.account.entity.TStudent; import com.dsh.account.model.StudentVo; import com.dsh.account.service.TAppUserService; import com.dsh.account.service.TStudentService; import com.dsh.account.util.ResultUtil; import com.dsh.account.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.*; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * @author zhibing.pu * @date 2023/6/24 14:59 */ @RestController @RequestMapping("") public class StudentController { @Autowired private TStudentService studentService; @Autowired private TokenUtil tokenUtil; /** * 获取用户学员列表 * @param appUserId * @return */ @ResponseBody @PostMapping("/student/queryStudentList") public List queryStudentList(@RequestBody Integer appUserId){ try { List list = studentService.list(new QueryWrapper().eq("appUserId", appUserId).eq("state", 1)); return list; }catch (Exception e){ e.printStackTrace(); return new ArrayList<>(); } } @ResponseBody @PostMapping("/student/queryDefaultStudent") public TStudent queryDefaultStudent(@RequestBody Integer appUserId){ try { TStudent one = studentService.getOne(new QueryWrapper().eq("appUserId", appUserId).eq("isDefault", 1).eq("state", 1)); return one; }catch (Exception e){ e.printStackTrace(); return null; } } @ResponseBody @PostMapping("/api/student/queryStudentList") @ApiOperation(value = "获取学员列表", tags = {"APP-课程列表"}) @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil> queryStudentList(){ try { Integer uid = tokenUtil.getUserIdFormRedis(); if(null == uid){ return ResultUtil.tokenErr(); } List list = studentService.list(new QueryWrapper().eq("appUserId", uid).eq("state", 1)); List listVo = new ArrayList<>(); for (TStudent tStudent : list) { StudentVo studentVo = new StudentVo(); studentVo.setId(tStudent.getId()); studentVo.setPhone(tStudent.getPhone()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); studentVo.setAge(Integer.valueOf(sdf.format(new Date())) - Integer.valueOf(sdf.format(tStudent.getBirthday()))); listVo.add(studentVo); studentVo.setName(tStudent.getName()); } return ResultUtil.success(listVo); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } /** * 根据电话号码学员信息 * @param phone * @return */ @ResponseBody @PostMapping("/student/queryStudentByPhone") public TStudent queryStudentByPhone(@RequestBody String phone){ try { TStudent one = studentService.getOne(new QueryWrapper().eq("phone", phone).eq("state", 1)); return one; }catch (Exception e){ e.printStackTrace(); return null; } } }