package com.mindskip.xzs.controller.admin; import com.mindskip.xzs.base.BaseApiController; import com.mindskip.xzs.base.RestResponse; import com.mindskip.xzs.domain.TaskExam; import com.mindskip.xzs.service.TaskExamService; import com.mindskip.xzs.utility.DateTimeUtil; import com.mindskip.xzs.utility.PageInfoHelper; import com.mindskip.xzs.viewmodel.admin.task.TaskPageRequestVM; import com.mindskip.xzs.viewmodel.admin.task.TaskPageResponseVM; import com.mindskip.xzs.viewmodel.admin.task.TaskRequestVM; import com.github.pagehelper.PageInfo; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; /** * @version 2.2.0 * @description: 任务 * Copyright (C), 2020-2021, 武汉思维跳跃科技有限公司 * @date 2021 /9/7 9:45 */ @RestController("AdminTaskController") @RequestMapping(value = "/api/admin/task") @AllArgsConstructor public class TaskController extends BaseApiController { private final TaskExamService taskExamService; /** * 任务分页 * * @param model the model * @return the rest response */ @RequestMapping(value = "/page", method = RequestMethod.POST) public RestResponse> pageList(@RequestBody TaskPageRequestVM model) { PageInfo pageInfo = taskExamService.page(model); PageInfo page = PageInfoHelper.copyMap(pageInfo, m -> { TaskPageResponseVM vm = modelMapper.map(m, TaskPageResponseVM.class); vm.setCreateTime(DateTimeUtil.dateFormat(m.getCreateTime())); return vm; }); return RestResponse.ok(page); } /** * 任务编辑 * * @param model the model * @return the rest response */ @RequestMapping(value = "/edit", method = RequestMethod.POST) public RestResponse edit(@RequestBody @Valid TaskRequestVM model) { taskExamService.edit(model, getCurrentUser()); return RestResponse.ok(); } /** * 任务查询 * * @param id the id * @return the rest response */ @RequestMapping(value = "/select/{id}", method = RequestMethod.POST) public RestResponse select(@PathVariable Integer id) { TaskRequestVM vm = taskExamService.taskExamToVM(id); return RestResponse.ok(vm); } /** * 任务删除 * * @param id the id * @return the rest response */ @RequestMapping(value = "/delete/{id}", method = RequestMethod.POST) public RestResponse delete(@PathVariable Integer id) { TaskExam taskExam = taskExamService.selectById(id); taskExam.setDeleted(true); taskExamService.updateByIdFilter(taskExam); return RestResponse.ok(); } }