盘点接口

盘点接口
pull/2/head
siontion 9 months ago
parent 27daafed8b
commit d3f0c12030

@ -1,129 +1,128 @@
package com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck;
import com.chanko.yunxi.mes.module.heli.controller.admin.storage.vo.StorageSaveReqVO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storage.StorageDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagemat.StorageMatDO;
import com.chanko.yunxi.mes.module.heli.service.storagecheckmat.StorageCheckMatService;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import javax.validation.constraints.*;
import javax.validation.*; import javax.validation.*;
package com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck; import javax.servlet.http.*;
import java.time.LocalDateTime;
import com.chanko.yunxi.mes.module.heli.controller.admin.storage.vo.StorageSaveReqVO; import java.util.*;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storage.StorageDO; import java.io.IOException;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelog.StorageLogDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagemat.StorageMatDO; import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
import com.chanko.yunxi.mes.module.heli.service.storagecheckmat.StorageCheckMatService; import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import org.springframework.web.bind.annotation.*; import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
import javax.annotation.Resource; import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
import org.springframework.validation.annotation.Validated; import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag; import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation; import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog;
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
import javax.validation.constraints.*;
import javax.validation.*; import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck.vo.*;
import javax.servlet.http.*; import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheck.StorageCheckDO;
import java.time.LocalDateTime; import com.chanko.yunxi.mes.module.heli.service.storagecheck.StorageCheckService;
import java.util.*;
import java.io.IOException; @Tag(name = "管理后台 - 入/出库盘点")
@RestController
import com.chanko.yunxi.mes.framework.common.pojo.PageParam; @RequestMapping("/heli/storage-check")
import com.chanko.yunxi.mes.framework.common.pojo.PageResult; @Validated
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult; public class StorageCheckController {
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success; @Resource
private StorageCheckService storageCheckService;
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
@Resource
import com.chanko.yunxi.mes.framework.operatelog.core.annotations.OperateLog; private StorageCheckMatService storageCheckMatService;
import static com.chanko.yunxi.mes.framework.operatelog.core.enums.OperateTypeEnum.*;
@PostMapping("/create")
import com.chanko.yunxi.mes.module.heli.controller.admin.storagecheck.vo.*; @Operation(summary = "创建入/出库盘点")
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagecheck.StorageCheckDO; @PreAuthorize("@ss.hasPermission('heli:storage-check:create')")
import com.chanko.yunxi.mes.module.heli.service.storagecheck.StorageCheckService; public CommonResult<Long> createStorageCheck(@Valid @RequestBody StorageCheckSaveReqVO createReqVO) {
return success(storageCheckService.createStorageCheck(createReqVO));
@Tag(name = "管理后台 - 入/出库盘点") }
@RestController
@RequestMapping("/heli/storage-check") @PutMapping("/update")
@Validated @Operation(summary = "更新入/出库盘点")
public class StorageCheckController { @PreAuthorize("@ss.hasPermission('heli:storage-check:update')")
public CommonResult<Boolean> updateStorageCheck(@Valid @RequestBody StorageCheckSaveReqVO updateReqVO) {
@Resource storageCheckService.updateStorageCheck(updateReqVO);
private StorageCheckService storageCheckService; return success(true);
}
@Resource
private StorageCheckMatService storageCheckMatService; @PutMapping("/update-status")
@Operation(summary = "更新盘点状态")
@PostMapping("/create") @PreAuthorize("@ss.hasPermission('heli:storage:update')")
@Operation(summary = "创建入/出库盘点") public CommonResult<Boolean> updateStorageCheckStatus(@Valid @RequestBody StorageCheckSaveReqVO updateReqVO) {
@PreAuthorize("@ss.hasPermission('heli:storage-check:create')")
public CommonResult<Long> createStorageCheck(@Valid @RequestBody StorageCheckSaveReqVO createReqVO) { // 提交或者删除时记录相关操作人
return success(storageCheckService.createStorageCheck(createReqVO)); LocalDateTime currTime = LocalDateTime.now();
} if(updateReqVO.getStatus().equals(2)){
// 已提交时间更新
@PutMapping("/update") updateReqVO.setKeeperTime(currTime);
@Operation(summary = "更新入/出库盘点") } else if(updateReqVO.getStatus().equals(3)){
@PreAuthorize("@ss.hasPermission('heli:storage-check:update')") // 已删除时间更新
public CommonResult<Boolean> updateStorageCheck(@Valid @RequestBody StorageCheckSaveReqVO updateReqVO) { updateReqVO.setCancelTime(currTime);
storageCheckService.updateStorageCheck(updateReqVO); }
return success(true); // 盘点信息保存
} storageCheckService.updateStorageCheck(updateReqVO);
@PutMapping("/update-status") // TODO保存物料列表信息
@Operation(summary = "更新盘点状态")
@PreAuthorize("@ss.hasPermission('heli:storage:update')") // TODO生成入库/出库单据
public CommonResult<Boolean> updateStorageCheckStatus(@Valid @RequestBody StorageCheckSaveReqVO updateReqVO) {
return success(true);
// 提交或者删除时记录相关操作人 }
LocalDateTime currTime = LocalDateTime.now();
if(updateReqVO.getStatus().equals(2)){ @DeleteMapping("/delete")
// 已提交时间更新 @Operation(summary = "删除入/出库盘点")
updateReqVO.setKeeperTime(currTime); @Parameter(name = "id", description = "编号", required = true)
} else if(updateReqVO.getStatus().equals(3)){ @PreAuthorize("@ss.hasPermission('heli:storage-check:delete')")
// 已删除时间更新 public CommonResult<Boolean> deleteStorageCheck(@RequestParam("id") Long id) {
updateReqVO.setCancelTime(currTime); storageCheckService.deleteStorageCheck(id);
} return success(true);
// 盘点信息保存 }
storageCheckService.updateStorageCheck(updateReqVO);
@GetMapping("/get")
// TODO保存物料列表信息 @Operation(summary = "获得入/出库盘点")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
// TODO生成入库/出库单据 @PreAuthorize("@ss.hasPermission('heli:storage-check:query')")
public CommonResult<StorageCheckRespVO> getStorageCheck(@RequestParam("id") Long id) {
return success(true); StorageCheckDO storageCheck = storageCheckService.getStorageCheck(id);
} return success(BeanUtils.toBean(storageCheck, StorageCheckRespVO.class));
}
@DeleteMapping("/delete")
@Operation(summary = "删除入/出库盘点") @GetMapping("/page")
@Parameter(name = "id", description = "编号", required = true) @Operation(summary = "获得入/出库盘点分页")
@PreAuthorize("@ss.hasPermission('heli:storage-check:delete')") @PreAuthorize("@ss.hasPermission('heli:storage-check:query')")
public CommonResult<Boolean> deleteStorageCheck(@RequestParam("id") Long id) { public CommonResult<PageResult<StorageCheckRespVO>> getStorageCheckPage(@Valid StorageCheckPageReqVO pageReqVO) {
storageCheckService.deleteStorageCheck(id); PageResult<StorageCheckDO> pageResult = storageCheckService.getStorageCheckPage(pageReqVO);
return success(true); return success(BeanUtils.toBean(pageResult, StorageCheckRespVO.class));
} }
@GetMapping("/get") @GetMapping("/export-excel")
@Operation(summary = "获得入/出库盘点") @Operation(summary = "导出入/出库盘点 Excel")
@Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('heli:storage-check:export')")
@PreAuthorize("@ss.hasPermission('heli:storage-check:query')") @OperateLog(type = EXPORT)
public CommonResult<StorageCheckRespVO> getStorageCheck(@RequestParam("id") Long id) { public void exportStorageCheckExcel(@Valid StorageCheckPageReqVO pageReqVO,
StorageCheckDO storageCheck = storageCheckService.getStorageCheck(id); HttpServletResponse response) throws IOException {
return success(BeanUtils.toBean(storageCheck, StorageCheckRespVO.class)); pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
} List<StorageCheckDO> list = storageCheckService.getStorageCheckPage(pageReqVO).getList();
// 导出 Excel
@GetMapping("/page") ExcelUtils.write(response, "入/出库盘点.xls", "数据", StorageCheckRespVO.class,
@Operation(summary = "获得入/出库盘点分页") BeanUtils.toBean(list, StorageCheckRespVO.class));
@PreAuthorize("@ss.hasPermission('heli:storage-check:query')") }
public CommonResult<PageResult<StorageCheckRespVO>> getStorageCheckPage(@Valid StorageCheckPageReqVO pageReqVO) {
PageResult<StorageCheckDO> pageResult = storageCheckService.getStorageCheckPage(pageReqVO); }
return success(BeanUtils.toBean(pageResult, StorageCheckRespVO.class));
}
@GetMapping("/export-excel")
@Operation(summary = "导出入/出库盘点 Excel")
@PreAuthorize("@ss.hasPermission('heli:storage-check:export')")
@OperateLog(type = EXPORT)
public void exportStorageCheckExcel(@Valid StorageCheckPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<StorageCheckDO> list = storageCheckService.getStorageCheckPage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "入/出库盘点.xls", "数据", StorageCheckRespVO.class,
BeanUtils.toBean(list, StorageCheckRespVO.class));
}
}

Loading…
Cancel
Save