package com.ots.project.exam.controller; import com.ots.common.enums.UserTypeEnum; import com.ots.common.utils.poi.ExcelUtil; import com.ots.common.utils.security.ShiroUtils; import com.ots.framework.aspectj.lang.annotation.Log; import com.ots.framework.aspectj.lang.enums.BusinessType; import com.ots.framework.web.controller.BaseController; import com.ots.framework.web.domain.AjaxResult; import com.ots.framework.web.page.TableDataInfo; import com.ots.project.exam.domain.EntTestSendtask; import com.ots.project.exam.service.IEntTestSendtaskService; import com.ots.project.system.user.domain.User; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Objects; /** * 评测邀请发送任务Controller * * @author ots * @date 2019-12-19 */ @Controller @RequestMapping("/exam/sendtask") public class EntTestSendtaskController extends BaseController { private String prefix = "exam/sendtask"; @Autowired private IEntTestSendtaskService entTestSendtaskService; @RequiresPermissions("exam:sendtask:view") @GetMapping() public String sendtask() { return prefix + "/sendtask"; } @GetMapping("/condition/{testId}") public String hrSendlog(@PathVariable Long testId,ModelMap mmap) { mmap.put("testId",testId); return prefix + "/sendtask"; } /** * 查询评测邀请发送任务列表 */ @RequiresPermissions("exam:sendtask:list") @PostMapping("/list") @ResponseBody public TableDataInfo list(EntTestSendtask entTestSendtask) { startPage(); if (Objects.isNull(entTestSendtask.getUserId())) { User sysUser = ShiroUtils.getSysUser(); String userType = sysUser.getUserType(); if (UserTypeEnum.ENT_USER.getUserType().equals(userType)) { entTestSendtask.setUserId(sysUser.getUserId()); } } List list = entTestSendtaskService.selectEntTestSendtaskList(entTestSendtask); return getDataTable(list); } /** * 导出评测邀请发送任务列表 */ @RequiresPermissions("exam:sendtask:export") @PostMapping("/export") @ResponseBody public AjaxResult export(EntTestSendtask entTestSendtask) { List list = entTestSendtaskService.selectEntTestSendtaskList(entTestSendtask); ExcelUtil util = new ExcelUtil(EntTestSendtask.class); return util.exportExcel(list, "sendtask"); } /** * 新增评测邀请发送任务 */ @GetMapping("/add") public String add() { return prefix + "/add"; } /** * 新增保存评测邀请发送任务 */ @RequiresPermissions("exam:sendtask:add") @Log(title = "评测邀请发送任务", businessType = BusinessType.INSERT) @PostMapping("/add") @ResponseBody public AjaxResult addSave(EntTestSendtask entTestSendtask) { return toAjax(entTestSendtaskService.insertEntTestSendtask(entTestSendtask)); } /** * 修改评测邀请发送任务 */ @GetMapping("/edit/{id}") public String edit(@PathVariable("id") Long id, ModelMap mmap) { EntTestSendtask entTestSendtask = entTestSendtaskService.selectEntTestSendtaskById(id); mmap.put("entTestSendtask", entTestSendtask); return prefix + "/edit"; } /** * 修改保存评测邀请发送任务 */ @RequiresPermissions("exam:sendtask:edit") @Log(title = "评测邀请发送任务", businessType = BusinessType.UPDATE) @PostMapping("/edit") @ResponseBody public AjaxResult editSave(EntTestSendtask entTestSendtask) { return toAjax(entTestSendtaskService.updateEntTestSendtask(entTestSendtask)); } /** * 删除评测邀请发送任务 */ @RequiresPermissions("exam:sendtask:remove") @Log(title = "评测邀请发送任务", businessType = BusinessType.DELETE) @PostMapping("/remove") @ResponseBody public AjaxResult remove(String ids) { return toAjax(entTestSendtaskService.deleteEntTestSendtaskByIds(ids)); } }