| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169 |
- package com.xjrsoft.module.student.controller;
- import cn.dev33.satoken.annotation.SaCheckPermission;
- import cn.hutool.core.bean.BeanUtil;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.baomidou.mybatisplus.core.metadata.IPage;
- import com.baomidou.mybatisplus.core.toolkit.Wrappers;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.xjrsoft.common.annotation.XjrLog;
- import com.xjrsoft.common.model.result.RT;
- import com.xjrsoft.common.page.ConventPage;
- import com.xjrsoft.common.page.PageOutput;
- import com.xjrsoft.module.student.dto.*;
- import com.xjrsoft.module.student.entity.BasePunishmentStudentHandle;
- import com.xjrsoft.module.student.entity.BasePunishmentType;
- import com.xjrsoft.module.student.entity.BaseStudentPunishmentInfo;
- import com.xjrsoft.module.student.service.IBasePunishmentStudentHandleService;
- import com.xjrsoft.module.student.service.IBasePunishmentTypeService;
- import com.xjrsoft.module.student.service.IBaseStudentPunishmentInfoService;
- import com.xjrsoft.module.student.vo.*;
- import com.xjrsoft.module.system.entity.File;
- import com.xjrsoft.module.system.service.IFileService;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import lombok.AllArgsConstructor;
- import org.springframework.web.bind.annotation.*;
- import javax.validation.Valid;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.List;
- import java.util.Map;
- import java.util.stream.Collectors;
- /**
- * @title: 学生处分信息管理
- * @Author dzx
- * @Date: 2023-11-15
- * @Version 1.0
- */
- @RestController
- @RequestMapping("/student" + "/basestudentpunishmentinfo")
- @Api(value = "/student" + "/basestudentpunishmentinfo", tags = "学生处分信息管理代码")
- @AllArgsConstructor
- public class BaseStudentPunishmentInfoController {
- private final IBasePunishmentTypeService punishmentTypeService;
- private final IBaseStudentPunishmentInfoService baseStudentPunishmentInfoService;
- private final IBasePunishmentStudentHandleService handleService;
- private final IFileService fileService;
- @GetMapping(value = "/page")
- @ApiOperation(value = "学生处分信息管理列表(分页)")
- @SaCheckPermission("basestudentpunishmentinfo:detail")
- @XjrLog(value = "学生处分信息管理列表(分页)")
- public RT<PageOutput<BaseStudentPunishmentInfoPageVo>> page(@Valid BaseStudentPunishmentInfoPageDto dto) {
- IPage<BaseStudentPunishmentInfoPageVo> pageList = baseStudentPunishmentInfoService.selectJoinListPagePc(dto);
- PageOutput<BaseStudentPunishmentInfoPageVo> pageOutput = ConventPage.getPageOutput(pageList, BaseStudentPunishmentInfoPageVo.class);
- return RT.ok(pageOutput);
- }
- @GetMapping(value = "/mobile-page")
- @ApiOperation(value = "学生处分信息管理列表(移动端分页)")
- @SaCheckPermission("basestudentpunishmentinfo:detail")
- @XjrLog(value = "学生处分信息管理列表(移动端分页)")
- public RT<PageOutput<BaseStudentPunishmentInfoMobilePageVo>> mobilePage(@Valid BaseStudentPunishmentInfoMobilePageDto dto) {
- IPage<BaseStudentPunishmentInfoMobilePageVo> paglIst = baseStudentPunishmentInfoService.getMobilePage(new Page<>(dto.getLimit(), dto.getSize()), dto);
- PageOutput<BaseStudentPunishmentInfoMobilePageVo> pageOutput = ConventPage.getPageOutput(paglIst, BaseStudentPunishmentInfoMobilePageVo.class);
- return RT.ok(pageOutput);
- }
- @GetMapping(value = "/info")
- @ApiOperation(value = "根据id查询学生处分信息管理信息")
- @SaCheckPermission("basestudentpunishmentinfo:detail")
- @XjrLog(value = "根据id查询学生处分信息管理信息", saveResponseData = true)
- public RT<BaseStudentPunishmentInfoDetailVo> info(@RequestParam Long id) {
- BaseStudentPunishmentInfoDetailVo baseStudentPunishmentInfoDetailVo = baseStudentPunishmentInfoService.getDetailById(id);
- if (baseStudentPunishmentInfoDetailVo == null) {
- return RT.error("找不到此数据!");
- }
- if (baseStudentPunishmentInfoDetailVo.getFileId() != null) {
- List<File> list = fileService.list(Wrappers.lambdaQuery(File.class).eq(File::getFolderId, baseStudentPunishmentInfoDetailVo.getFileId()));
- baseStudentPunishmentInfoDetailVo.setFileList(list);
- }
- return RT.ok(BeanUtil.toBean(baseStudentPunishmentInfoDetailVo, BaseStudentPunishmentInfoDetailVo.class));
- }
- @GetMapping(value = "/mobile-info")
- @ApiOperation(value = "根据id查询学生处分信息管理信息(移动端)")
- @SaCheckPermission("basestudentpunishmentinfo:detail")
- @XjrLog(value = "根据id查询学生处分信息管理信息(移动端)", saveResponseData = true)
- public RT<BaseStudentPunishmentInfoMobileDetailVo> mobileInfo(@RequestParam Long id) {
- BaseStudentPunishmentInfoMobileDetailVo baseStudentPunishmentInfoMobileDetailVo = baseStudentPunishmentInfoService.getMobileInfo(id);
- if (baseStudentPunishmentInfoMobileDetailVo == null) {
- return RT.error("找不到此数据!");
- }
- return RT.ok(BeanUtil.toBean(baseStudentPunishmentInfoMobileDetailVo, BaseStudentPunishmentInfoMobileDetailVo.class));
- }
- @PostMapping
- @ApiOperation(value = "新增学生处分信息管理")
- @SaCheckPermission("basestudentpunishmentinfo:add")
- @XjrLog(value = "新增学生处分信息管理", saveResponseData = true)
- public RT<Boolean> add(@Valid @RequestBody AddBaseStudentPunishmentInfoDto dto) {
- boolean isSuccess = baseStudentPunishmentInfoService.add(dto);
- return RT.ok(isSuccess);
- }
- @PutMapping
- @ApiOperation(value = "修改学生处分信息管理")
- @SaCheckPermission("basestudentpunishmentinfo:edit")
- @XjrLog(value = "修改学生处分信息管理", saveResponseData = true)
- public RT<Boolean> update(@Valid @RequestBody UpdateBaseStudentPunishmentInfoDto dto) {
- BaseStudentPunishmentInfo baseStudentPunishmentInfo = BeanUtil.toBean(dto, BaseStudentPunishmentInfo.class);
- return RT.ok(baseStudentPunishmentInfoService.update(baseStudentPunishmentInfo));
- }
- @DeleteMapping
- @ApiOperation(value = "删除学生处分信息管理")
- @SaCheckPermission("basestudentpunishmentinfo:delete")
- @XjrLog(value = "删除学生处分信息管理", saveResponseData = true)
- public RT<Boolean> delete(@Valid @RequestBody List<Long> ids) {
- return RT.ok(baseStudentPunishmentInfoService.delete(ids));
- }
- @GetMapping("/handle-list")
- @ApiOperation(value = "处分处理情况查询")
- @SaCheckPermission("basestudentpunishmentinfo:handle-list")
- @XjrLog(value = "处分处理情况查询")
- public RT<List<BasePunishmentStudentHandleVo>> handleList(@RequestParam Long id) {
- List<BasePunishmentStudentHandle> list = handleService.list(
- new QueryWrapper<BasePunishmentStudentHandle>().lambda()
- .eq(BasePunishmentStudentHandle::getBaseStudentPunishmentInfoId, id)
- );
- Map<Long, String> punishmentTypeMap = punishmentTypeService.list().stream().collect(Collectors.toMap(BasePunishmentType::getId, BasePunishmentType::getPunishmentType));
- List<BasePunishmentStudentHandleVo> resultList = new ArrayList<>();
- for (BasePunishmentStudentHandle el : list) {
- BasePunishmentStudentHandleVo bean = BeanUtil.toBean(el, BasePunishmentStudentHandleVo.class);
- String adjustType = null;
- if (el.getAdjustType() == 1) {
- adjustType = "升级(" + punishmentTypeMap.get(el.getPunishmentTypeId()) + ")";
- } else if (el.getAdjustType() == 2) {
- adjustType = "降级(" + punishmentTypeMap.get(el.getPunishmentTypeId()) + ")";
- } else if (el.getAdjustType() == 3) {
- adjustType = "撤销";
- }
- bean.setAdjustType(adjustType);
- resultList.add(bean);
- }
- return RT.ok(resultList);
- }
- @PostMapping("/handle")
- @ApiOperation(value = "处理")
- @SaCheckPermission("basestudentpunishmentinfo:handle")
- @XjrLog(value = "处理", saveResponseData = true)
- public RT<Boolean> handle(@Valid @RequestBody AddBasePunishmentStudentHandleDto dto) {
- BasePunishmentStudentHandle handle = BeanUtil.toBean(dto, BasePunishmentStudentHandle.class);
- handle.setCreateDate(new Date());
- handle.setBaseStudentPunishmentInfoId(dto.getPunishmentInfoId());
- boolean save = handleService.save(handle);
- return RT.ok(save);
- }
- }
|