| | |
| | | package com.example.jz.controller; |
| | | |
| | | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.StringUtils; |
| | | import com.baomidou.mybatisplus.extension.api.ApiController; |
| | | import com.baomidou.mybatisplus.extension.api.R; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | |
| | | import com.example.jz.dao.UserDao; |
| | | import com.example.jz.modle.PageParam; |
| | | import com.example.jz.modle.R; |
| | | import com.example.jz.modle.entity.CommonQuestion; |
| | | import com.example.jz.modle.entity.User; |
| | | import com.example.jz.modle.vo.QuestionVo; |
| | | import com.example.jz.service.CommonQuestionService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.security.core.context.SecurityContextHolder; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.io.Serializable; |
| | | import java.util.List; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * 常见问题表(CommonQuestion)表控制层 |
| | |
| | | */ |
| | | @RestController |
| | | @RequestMapping("commonQuestion") |
| | | @Api(tags = "常见问题接口") |
| | | public class CommonQuestionController extends ApiController { |
| | | /** |
| | | * 服务对象 |
| | | */ |
| | | @Resource |
| | | private CommonQuestionService commonQuestionService; |
| | | @Resource |
| | | UserDao userDao; |
| | | |
| | | /** |
| | | * 分页查询所有数据 |
| | | * |
| | | * @param page 分页对象 |
| | | * @param page 分页对象 |
| | | * @param commonQuestion 查询实体 |
| | | * @return 所有数据 |
| | | */ |
| | | @GetMapping |
| | | public R selectAll(Page<CommonQuestion> page, CommonQuestion commonQuestion) { |
| | | return success(this.commonQuestionService.page(page, new QueryWrapper<>(commonQuestion))); |
| | | @ApiOperation("分页查询所有数据") |
| | | public R<IPage<QuestionVo>> selectAll(PageParam<CommonQuestion> page, CommonQuestion commonQuestion) { |
| | | ArrayList<QuestionVo> QuestionVos = new ArrayList<>(); |
| | | PageParam<CommonQuestion> CommonQuestionPageParam ; |
| | | if (commonQuestion.getStatus()!=null ){ |
| | | CommonQuestionPageParam = commonQuestionService.page(page, new QueryWrapper<CommonQuestion>().like(StringUtils.isNotBlank(commonQuestion.getQuestionTitle()),"question_title",commonQuestion.getQuestionTitle()).eq("status",commonQuestion.getStatus()).orderByDesc("ctime")); |
| | | }else { |
| | | CommonQuestionPageParam = commonQuestionService.page(page, new QueryWrapper<CommonQuestion>().like(StringUtils.isNotBlank(commonQuestion.getQuestionTitle()),"question_title",commonQuestion.getQuestionTitle()).orderByDesc("ctime")); |
| | | } |
| | | CommonQuestionPageParam.getRecords().forEach(item->{ |
| | | QuestionVo QuestionVo = new QuestionVo(); |
| | | BeanUtils.copyProperties(item,QuestionVo); |
| | | QuestionVo.setUserName(userDao.selectOne(new QueryWrapper<User>().eq("id",item.getCreator())).getRealName()); |
| | | QuestionVos.add(QuestionVo); |
| | | }); |
| | | PageParam<QuestionVo> QuestionVoPageParam = new PageParam<>(); |
| | | BeanUtils.copyProperties(CommonQuestionPageParam,QuestionVoPageParam); |
| | | QuestionVoPageParam.setRecords(QuestionVos); |
| | | return R.ok(QuestionVoPageParam); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return 单条数据 |
| | | */ |
| | | @GetMapping("{id}") |
| | | public R selectOne(@PathVariable Serializable id) { |
| | | return success(this.commonQuestionService.getById(id)); |
| | | @ApiOperation(value = "通过主键查询单条数据", notes = "通过主键查询单条数据") |
| | | public R<CommonQuestion> selectOne(@PathVariable Serializable id) { |
| | | return R.ok(commonQuestionService.getById(id)); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return 新增结果 |
| | | */ |
| | | @PostMapping |
| | | public R insert(@RequestBody CommonQuestion commonQuestion) { |
| | | return success(this.commonQuestionService.save(commonQuestion)); |
| | | @ApiOperation(value = "新增数据", notes = "新增数据") |
| | | public R<Boolean> insert(@RequestBody CommonQuestion commonQuestion) { |
| | | commonQuestion.setStatus(0); |
| | | commonQuestion.setCtime(new Date()); |
| | | commonQuestion.setCreator(userDao.selectOne(new QueryWrapper<User>().eq("login_username", SecurityContextHolder.getContext().getAuthentication().getPrincipal())).getId()); |
| | | return R.ok(commonQuestionService.save(commonQuestion)); |
| | | } |
| | | |
| | | /** |
| | |
| | | * @return 修改结果 |
| | | */ |
| | | @PutMapping |
| | | public R update(@RequestBody CommonQuestion commonQuestion) { |
| | | return success(this.commonQuestionService.updateById(commonQuestion)); |
| | | @ApiOperation(value = "修改数据", notes = "修改数据") |
| | | public R<Boolean> update(@RequestBody CommonQuestion commonQuestion) { |
| | | if (commonQuestion.getId() == 1) { |
| | | commonQuestion.setReleaseTime(new Date()); |
| | | } |
| | | return R.ok(commonQuestionService.updateById(commonQuestion)); |
| | | } |
| | | |
| | | /** |
| | | * 删除数据 |
| | | * |
| | | * @param idList 主键结合 |
| | | * @param id 主键 |
| | | * @return 删除结果 |
| | | */ |
| | | @DeleteMapping |
| | | public R delete(@RequestParam("idList") List<Long> idList) { |
| | | return success(this.commonQuestionService.removeByIds(idList)); |
| | | @ApiOperation(value = "删除数据", notes = "删除数据") |
| | | public R<Boolean> delete(@RequestParam("id") Serializable id) { |
| | | return R.ok(commonQuestionService.removeById(id)); |
| | | } |
| | | |
| | | /** |
| | | * 发布 |
| | | * |
| | | * @param id 主键 |
| | | * @return 发布结果 |
| | | */ |
| | | @ApiOperation(value = "发布", notes = "发布") |
| | | @GetMapping("release/{id}") |
| | | public R<Boolean> release(@PathVariable Serializable id) { |
| | | CommonQuestion commonQuestion = commonQuestionService.getById(id); |
| | | commonQuestion.setReleaseTime(new Date()); |
| | | commonQuestion.setStatus(1); |
| | | return R.ok(commonQuestionService.updateById(commonQuestion)); |
| | | } |
| | | |
| | | /** |
| | | * 下架 |
| | | * |
| | | * @param id 主键 |
| | | * @return 发布结果 |
| | | */ |
| | | @ApiOperation(value = "下架", notes = "下架") |
| | | @GetMapping("offline/{id}") |
| | | public R<Boolean> offline(@PathVariable Serializable id) { |
| | | CommonQuestion commonQuestion = commonQuestionService.getById(id); |
| | | commonQuestion.setStatus(2); |
| | | return R.ok(commonQuestionService.updateById(commonQuestion)); |
| | | } |
| | | } |
| | | |