From c46d1d8c3b9875f051a6ec3c4a1d3fa7bd32e5db Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期四, 15 五月 2025 17:15:21 +0800 Subject: [PATCH] 新增库存管理 新增库存明细 --- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java | 44 +++++++++++++++++++++++++++++++------------- 1 files changed, 31 insertions(+), 13 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java index 0c29bfe..7f14c47 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WaitPakinController.java @@ -10,22 +10,25 @@ import com.vincent.rsf.server.common.domain.BaseParam; import com.vincent.rsf.server.common.domain.KeyValVo; import com.vincent.rsf.server.common.domain.PageParam; +import com.vincent.rsf.server.manager.controller.params.GenerateTaskParams; import com.vincent.rsf.server.manager.controller.params.WaitPakinParam; +import com.vincent.rsf.server.manager.entity.BasStation; +import com.vincent.rsf.server.manager.entity.TaskItem; import com.vincent.rsf.server.manager.entity.WaitPakin; import com.vincent.rsf.server.manager.entity.WaitPakinItem; -import com.vincent.rsf.server.manager.service.TaskService; -import com.vincent.rsf.server.manager.service.WaitPakinItemService; -import com.vincent.rsf.server.manager.service.WaitPakinService; +import com.vincent.rsf.server.manager.service.*; import com.vincent.rsf.server.system.controller.BaseController; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.util.*; +import java.util.stream.Collectors; @Api(tags = "缁勬嫋閫氱煡妗�") @RestController @@ -38,7 +41,12 @@ private WaitPakinItemService waitPakinItemService; @Autowired + private BasStationService basStationService; + + @Autowired private TaskService taskService; + @Autowired + private TaskItemService taskItemService; @PreAuthorize("hasAuthority('manager:waitPakin:list')") @PostMapping("/waitPakin/page") @@ -100,16 +108,23 @@ @PreAuthorize("hasAuthority('manager:waitPakin:remove')") @OperationLog("Delete 缁勬嫋妗�") @PostMapping("/waitPakin/remove/{ids}") + @Transactional(rollbackFor = Exception.class) public R remove(@PathVariable Long[] ids) { - List<WaitPakinItem> pakinItems = waitPakinItemService.list(new LambdaQueryWrapper<WaitPakinItem>() - .in(WaitPakinItem::getPakinId, ids)); - if (!pakinItems.isEmpty()) { - return R.error("缁勬嫋妗f湁鏄庣粏浠诲姟"); + if (Arrays.asList(ids).isEmpty()) { + return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } - if (!waitPakinService.removeByIds(Arrays.asList(ids))) { - return R.error("Delete Fail"); + for (Long id : ids) { + WaitPakin waitPakin = waitPakinService.getById(id); + BasStation isBarcodeSta = basStationService.getOne(new LambdaQueryWrapper<BasStation>() + .eq(BasStation::getBarcode, waitPakin.getBarcode()) + ,false + ); + if (!Cools.isEmpty(isBarcodeSta)){ + throw new CoolException("璇ユ潯鐮佸凡琚�"+isBarcodeSta.getStationName()+"绔欑粦瀹�"); + } } - return R.ok("Delete Success").add(ids); + + return waitPakinService.removePakin(Arrays.asList(ids)); } @PreAuthorize("hasAuthority('manager:waitPakin:list')") @@ -136,11 +151,14 @@ @PreAuthorize("hasAuthority('manager:waitPakin:update')") @ApiOperation("鐢熸垚浠诲姟鍒楄〃") @PostMapping("/waitPakin/merge") - public R generateTask(@RequestBody List<WaitPakin> waitPakin) { - if (Objects.isNull(waitPakin) || waitPakin.isEmpty()) { + public R generateTask(@RequestBody GenerateTaskParams taskParams) { + if (Objects.isNull(taskParams)) { throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒"); } - return taskService.generateTasks(waitPakin, getLoginUserId()); + if (Objects.isNull(taskParams.getWaitPakins()) || taskParams.getWaitPakins().isEmpty()) { + throw new CoolException("缁勬嫋妗d笉鑳戒负绌猴紒锛�"); + } + return taskService.generateTasks(taskParams, getLoginUserId()); } } -- Gitblit v1.9.1