package com.dsh.course.controller; import com.dsh.course.model.vo.ProblemWarpper; import com.dsh.course.service.IProblemService; import com.dsh.course.util.TokenUtil; import com.dsh.guns.modular.system.util.ResultUtil; import io.swagger.annotations.Api; 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 javax.servlet.http.HttpServletRequest; import java.util.List; import java.util.Map; /** * 在线客服控制器 */ @Api @RestController @RequestMapping("/api/problem") public class ProblemController { @Autowired private TokenUtil tokenUtil; @Autowired private IProblemService problemService; /** * 添加客服留言 * @param content * @param request * @return */ @ResponseBody @PostMapping("/leaveMessage") @ApiOperation(value = "Add customer service message添加客服留言", tags = {"Client - Personal center用户端-个人中心"}, notes = "") @ApiImplicitParams({ @ApiImplicitParam(value = "Message content留言内容", name = "content", required = true, dataType = "string"), @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil leaveMessage(String content, HttpServletRequest request){ try { Integer uid = tokenUtil.getUserIdFormRedis(request); if(null == uid){ return ResultUtil.tokenErr(); } return problemService.leaveMessage(content, uid); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } /** * 获取历史提交的留言列表 * @param pageNum * @param size * @param request * @return */ @ResponseBody @PostMapping("/queryProblems") @ApiOperation(value = "Get a list of comments submitted in history获取历史提交的留言列表", tags = {"Client - Personal center用户端-个人中心"}, notes = "") @ApiImplicitParams({ @ApiImplicitParam(value = "Page number, first page 1页码,首页1", name = "pageNum", required = true, dataType = "int"), @ApiImplicitParam(value = "Number of pages页条数", name = "size", required = true, dataType = "int"), @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil> queryProblems(Integer pageNum, Integer size, HttpServletRequest request){ try { Integer uid = tokenUtil.getUserIdFormRedis(request); if(null == uid){ return ResultUtil.tokenErr(); } List> maps = problemService.queryProblems(pageNum, size, uid); return ResultUtil.success(ProblemWarpper.getProblemWarpper(maps)); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } }