package com.chinaztt.mes.warehouse.controller; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.chinaztt.mes.common.wrapper.QueryWrapperUtil; import com.chinaztt.mes.warehouse.dto.ReturnDetailDTO; import com.chinaztt.mes.warehouse.entity.ReturnDetail; import com.chinaztt.mes.warehouse.entity.ReturnMain; import com.chinaztt.mes.warehouse.service.ReturnDetailService; import com.chinaztt.mes.warehouse.service.ReturnMainService; import com.chinaztt.ztt.common.core.util.R; import com.chinaztt.ztt.common.log.annotation.SysLog; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; /** * 退库申请主表 * * @author cxf * @date 2020-10-21 10:46:42 */ @RestController @AllArgsConstructor @RequestMapping("/return") @Api(value = "return", tags = "退库申请主表管理") public class ReturnMainController { private final ReturnMainService returnMainService; private final ReturnDetailService returnDetailService; /** * 分页查询 * * @param page 分页对象 * @param returnMain 退库申请主表 * @return */ @ApiOperation(value = "分页查询", notes = "分页查询") @GetMapping("/page") @PreAuthorize("@pms.hasPermission('warehouse_return_view')") public R getWarehouseReturnMainPage(Page page, ReturnMain returnMain) { return R.ok(returnMainService.page(page, QueryWrapperUtil.gen(returnMain))); } /** * 通过id查询退库申请主表 * * @param id id * @return R */ @ApiOperation(value = "通过id查询", notes = "通过id查询") @GetMapping("/{id}") @PreAuthorize("@pms.hasPermission('warehouse_return_view')") public R getById(@PathVariable("id") Long id) { return R.ok(returnMainService.getById(id)); } /** * 新增退库申请主表 * * @param returnMain 退库申请主表 * @return R */ @ApiOperation(value = "新增退库申请主表", notes = "新增退库申请主表") @SysLog("新增退库申请主表") @PostMapping @PreAuthorize("@pms.hasPermission('warehouse_return_add')") public R save(@RequestBody ReturnMain returnMain) { returnMainService.save(returnMain); return R.ok(returnMain); } /** * 修改退库申请主表 * * @param returnMain 退库申请主表 * @return R */ @ApiOperation(value = "修改退库申请主表", notes = "修改退库申请主表") @SysLog("修改退库申请主表") @PutMapping @PreAuthorize("@pms.hasPermission('warehouse_return_edit')") public R updateById(@RequestBody ReturnMain returnMain) { return R.ok(returnMainService.updateById(returnMain)); } /** * 通过id删除退库申请主表 * * @param id id * @return R */ @ApiOperation(value = "通过id删除退库申请主表", notes = "通过id删除退库申请主表") @SysLog("通过id删除退库申请主表") @DeleteMapping("/{id}") @PreAuthorize("@pms.hasPermission('warehouse_return_del')") public R removeById(@PathVariable Long id) { return R.ok(returnMainService.removeById(id)); } /** * 分页查询 * * @param page 分页对象 * @param returnDetailDTO 退库申请明细表 * @return */ @ApiOperation(value = "分页查询", notes = "分页查询") @GetMapping("/returnDetail/page") public R getReturnDetailPage(Page page, ReturnDetailDTO returnDetailDTO) { return R.ok(returnDetailService.getReturnDetailPage(page, QueryWrapperUtil.gen(returnDetailDTO))); } /** * 通过id查询退库申请明细表 * * @param id id * @return R */ @ApiOperation(value = "通过id查询", notes = "通过id查询") @GetMapping("/returnDetail/{id}") public R getReturnDetailById(@PathVariable("id") Long id) { return R.ok(returnDetailService.getReturnDetailById(id)); } /** * 新增退库申请明细表 * * @param returnDetail 退库申请明细表 * @return R */ @ApiOperation(value = "新增退库申请明细表", notes = "新增退库申请明细表") @SysLog("新增退库申请明细表") @PostMapping("/returnDetail") public R save(@RequestBody ReturnDetail returnDetail) { return R.ok(returnDetailService.save(returnDetail)); } /** * 修改退库申请明细表 * * @param returnDetail 退库申请明细表 * @return R */ @ApiOperation(value = "修改退库申请明细表", notes = "修改退库申请明细表") @SysLog("修改退库申请明细表") @PutMapping("/returnDetail") public R updateById(@RequestBody ReturnDetail returnDetail) { return R.ok(returnDetailService.updateById(returnDetail)); } /** * 通过id删除退库申请明细表 * * @param id id * @return R */ @ApiOperation(value = "通过id删除退库申请明细表", notes = "通过id删除退库申请明细表") @SysLog("通过id删除退库申请明细表") @DeleteMapping("/returnDetail/{id}") public R removeReturnDetailById(@PathVariable Long id) { return R.ok(returnDetailService.removeById(id)); } /** * 提交退库申请 * * @param mainId * @return */ @ApiOperation(value = "提交退库申请", notes = "提交退库申请") @GetMapping("/submit/{mainId}") public R submit(@PathVariable("mainId") Long mainId) { return R.ok(returnMainService.submit(mainId)); } /** * 完成处理退库 * * @param mainId * @return */ @ApiOperation(value = "完成处理退库", notes = "完成处理退库") @GetMapping("/accomplish/{mainId}") public R accomplish(@PathVariable("mainId") Long mainId) { return R.ok(returnMainService.accomplish(mainId)); } }