package org.springblade.modules.directive.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.AllArgsConstructor; import org.springblade.core.mp.support.Condition; import org.springblade.core.mp.support.Query; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.modules.directive.entity.Directive; import org.springblade.modules.directive.service.DirectiveService; import org.springblade.modules.directive.vo.DirectiveVo; import org.springframework.web.bind.annotation.*; import java.util.Date; import java.util.List; /** * @author zhongrj * @time 2021-07-21 * @desc 指令控制层 */ @RestController @AllArgsConstructor @RequestMapping("/directive") public class DirectiveController { private final DirectiveService directiveService; /** * 自定义分页 * @param query page,size * @param directive 指令信息对象 */ @GetMapping("/page") public R> page(DirectiveVo directive, Query query) { IPage pages = directiveService.selectDirectivePage(Condition.getPage(query), directive); return R.data(pages); } /** * 新增 * @param directive 指令信息对象 */ @PostMapping("/save") @ApiOperation(value = "新增", notes = "传入directive") public R save(@RequestBody Directive directive) { return R.status(directiveService.save(directive)); } /** * 指令信息新增,同时新增到轨迹表中 * @param directive 指令信息对象 */ @PostMapping("/saveDirectiveAndLocus") public R saveDirectiveAndLocus(@RequestBody Directive directive) { //先查询是否已有指令信息,如果有,则更新,没有则插入 DirectiveVo directiveVo = directiveService.selectDirectiveInfo(directive); boolean status = false; //返回数据 return R.status(false); } /** * 修改 * @param directive 指令信息对象 */ @PostMapping("/update") public R update(@RequestBody Directive directive) { return R.status(directiveService.updateById(directive)); } /** * 新增或修改 * @param directive 指令信息对象 */ @PostMapping("/submit") public R submit(@RequestBody Directive directive) { return R.status(directiveService.saveOrUpdate(directive)); } /** * 删除 * @param ids 指令信息ids 数组 */ @PostMapping("/remove") public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) { return R.status(directiveService.removeByIds(Func.toLongList(ids))); } /** * 详情 * @param directive 指令信息对象 */ @GetMapping("/detail") @ApiOperation(value = "详情", notes = "传入directive") public R detail(Directive directive) { Directive detail = directiveService.getOne(Condition.getQueryWrapper(directive)); return R.data(detail); } /** * 自定义详情查询 * @param directive 指令信息对象 */ @GetMapping("/details") @ApiOperation(value = "详情", notes = "传入directive") public R details(Directive directive) { DirectiveVo detail = directiveService.selectDirectiveInfo(directive); return R.data(detail); } }