From 1dcfa3702505f0c431757312b5304531029f90f6 Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期四, 09 四月 2026 18:57:38 +0800
Subject: [PATCH] #getter$摘出entity
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java | 146 +++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 136 insertions(+), 10 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
index 9e4110b..7959f0b 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/LocItemController.java
@@ -1,22 +1,34 @@
package com.vincent.rsf.server.manager.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.vincent.rsf.framework.common.Cools;
import com.vincent.rsf.framework.common.R;
+import com.vincent.rsf.framework.exception.CoolException;
+import com.vincent.rsf.server.common.constant.Constants;
import com.vincent.rsf.server.common.utils.ExcelUtil;
import com.vincent.rsf.server.common.annotation.OperationLog;
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.common.utils.FieldsUtils;
+import com.vincent.rsf.server.manager.controller.params.LocToTaskParams;
+import com.vincent.rsf.server.manager.entity.Companys;
import com.vincent.rsf.server.manager.entity.LocItem;
+import com.vincent.rsf.server.manager.enums.TaskResouceType;
+import com.vincent.rsf.server.manager.service.CompanysService;
import com.vincent.rsf.server.manager.service.LocItemService;
+import com.vincent.rsf.server.manager.service.LocService;
+import com.vincent.rsf.server.manager.utils.buildPageRowsUtils;
import com.vincent.rsf.server.system.controller.BaseController;
+import com.vincent.rsf.server.manager.enums.LocStsType;
+import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
import java.util.*;
@RestController
@@ -24,31 +36,145 @@
@Autowired
private LocItemService locItemService;
+ @Autowired
+ private LocService locService;
+ @Autowired
+ private CompanysService companysService;
@PreAuthorize("hasAuthority('manager:locItem:list')")
@PostMapping("/locItem/page")
public R page(@RequestBody Map<String, Object> map) {
BaseParam baseParam = buildParam(map, BaseParam.class);
PageParam<LocItem, BaseParam> pageParam = new PageParam<>(baseParam, LocItem.class);
- return R.ok().add(locItemService.page(pageParam, pageParam.buildWrapper(true)));
+
+ /**鎷兼帴鎵╁睍瀛楁*/
+ PageParam<LocItem, BaseParam> page = locItemService.page(pageParam, pageParam.buildWrapper(true));
+ List<LocItem> records = page.getRecords();
+ for (LocItem record : records) {
+ if (!Objects.isNull(record.getFieldsIndex())) {
+ Map<String, String> fields = FieldsUtils.getFields(record.getFieldsIndex());
+ record.setExtendFields(fields);
+ }
+ }
+ page.setRecords(records);
+
+ return R.ok().add(buildPageRowsUtils.rowsMap(page));
}
+
+ @PreAuthorize("hasAuthority('manager:locItem:list')")
+ @PostMapping("/locItem/useO/page")
+ public R locUseOPage(@RequestBody Map<String, Object> map) {
+ BaseParam baseParam = buildParam(map, BaseParam.class);
+ PageParam<LocItem, BaseParam> pageParam = new PageParam<>(baseParam, LocItem.class);
+ QueryWrapper<LocItem> locItemQueryWrapper = pageParam.buildWrapper(true);
+ String applySql = String.format(
+ "EXISTS (SELECT 1 FROM man_loc ml " +
+ "WHERE ml.use_status = '%s'" +
+ "AND ml.id = man_loc_item.loc_id " +
+ ")",
+ LocStsType.LOC_STS_TYPE_F.type
+ );
+ locItemQueryWrapper.apply(applySql);
+ /**鎷兼帴鎵╁睍瀛楁*/
+ PageParam<LocItem, BaseParam> page = locItemService.page(pageParam, locItemQueryWrapper);
+ List<LocItem> records = page.getRecords();
+ for (LocItem record : records) {
+ if (!Objects.isNull(record.getFieldsIndex())) {
+ Map<String, String> fields = FieldsUtils.getFields(record.getFieldsIndex());
+ record.setExtendFields(fields);
+ }
+ if (record.getSplrId() != null) {
+ Companys companys = companysService.getById(record.getSplrId());
+ if (companys != null) {
+ record.setSplrCode(companys.getCode()).setSplrName(companys.getName());
+ }
+ }
+ }
+ page.setRecords(records);
+
+ return R.ok().add(buildPageRowsUtils.rowsMap(page));
+ }
+
+ /**
+ * 鐢熸垚搴撳瓨鍑哄簱浠诲姟
+ * @param param
+ * @return
+ */
+ @PreAuthorize("hasAuthority('manager:locItem:list')")
+ @ApiOperation("鐢熸垚搴撳瓨鍑哄簱浠诲姟")
+ @PostMapping("/locItem/generate/task")
+ public R generateTask(@RequestBody LocToTaskParams param) {
+ if (Objects.isNull(param)) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ param.setType(Constants.TASK_TYPE_OUT_STOCK);
+
+ try {
+ locItemService.generateTask(TaskResouceType.TASK_RESOUCE_STOCK_TYPE.val, param, getLoginUserId());
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+
+ return R.ok();
+ }
+
+ /**
+ * 鐢熸垚绉诲簱浠诲姟
+ * @param map
+ * @return
+ */
+ @PreAuthorize("hasAuthority('manager:locItem:list')")
+ @ApiOperation("鐢熸垚绉诲簱浠诲姟")
+ @PostMapping("/locItem/move/task")
+ public R genMoveTask(@RequestBody LocToTaskParams map) {
+ if (Objects.isNull(map)) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ return R.ok("浠诲姟鐢熸垚鎴愬姛").add(buildPageRowsUtils.rowsMap(locItemService.genMoveTask(map, getLoginUserId())));
+ }
+
+ /**
+ * 鐢熸垚鐩樼偣鍑哄簱浠诲姟
+ * @param map
+ * @return
+ */
+ @PreAuthorize("hasAuthority('manager:locItem:list')")
+ @ApiOperation("鐢熸垚鐩樼偣鍑哄簱浠诲姟")
+ @PostMapping("/locItem/check/task")
+ public R genStatisticalTask(@RequestBody LocToTaskParams map) {
+ if (Objects.isNull(map)) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+ }
+ map.setType(Constants.TASK_TYPE_OUT_CHECK);
+
+ try {
+ locItemService.generateTask(TaskResouceType.TASK_RESOUCE_CHECK_TYPE.val, map, getLoginUserId());
+ } catch (CoolException e) {
+ throw e;
+ } catch (Exception e) {
+ throw new RuntimeException(e);
+ }
+
+ return R.ok("浠诲姟鐢熸垚鎴愬姛");
+ }
+
@PreAuthorize("hasAuthority('manager:locItem:list')")
@PostMapping("/locItem/list")
public R list(@RequestBody Map<String, Object> map) {
- return R.ok().add(locItemService.list());
+ return R.ok().add(buildPageRowsUtils.rowsMap(locItemService.list()));
}
@PreAuthorize("hasAuthority('manager:locItem:list')")
@PostMapping({"/locItem/many/{ids}", "/locItems/many/{ids}"})
public R many(@PathVariable Long[] ids) {
- return R.ok().add(locItemService.listByIds(Arrays.asList(ids)));
+ return R.ok().add(buildPageRowsUtils.rowsMap(locItemService.listByIds(Arrays.asList(ids))));
}
@PreAuthorize("hasAuthority('manager:locItem:list')")
@GetMapping("/locItem/{id}")
public R get(@PathVariable("id") Long id) {
- return R.ok().add(locItemService.getById(id));
+ return R.ok().add(buildPageRowsUtils.rowsMap(locItemService.getById(id)));
}
@PreAuthorize("hasAuthority('manager:locItem:save')")
@@ -62,7 +188,7 @@
if (!locItemService.save(locItem)) {
return R.error("Save Fail");
}
- return R.ok("Save Success").add(locItem);
+ return R.ok("Save Success").add(buildPageRowsUtils.rowsMap(locItem));
}
@PreAuthorize("hasAuthority('manager:locItem:update')")
@@ -74,7 +200,7 @@
if (!locItemService.updateById(locItem)) {
return R.error("Update Fail");
}
- return R.ok("Update Success").add(locItem);
+ return R.ok("Update Success").add(buildPageRowsUtils.rowsMap(locItem));
}
@PreAuthorize("hasAuthority('manager:locItem:remove')")
@@ -84,7 +210,7 @@
if (!locItemService.removeByIds(Arrays.asList(ids))) {
return R.error("Delete Fail");
}
- return R.ok("Delete Success").add(ids);
+ return R.ok("Delete Success").add(buildPageRowsUtils.rowsMap(ids));
}
@PreAuthorize("hasAuthority('manager:locItem:list')")
@@ -98,13 +224,13 @@
locItemService.page(new Page<>(1, 30), wrapper).getRecords().forEach(
item -> vos.add(new KeyValVo(item.getId(), item.getId()))
);
- return R.ok().add(vos);
+ return R.ok().add(buildPageRowsUtils.rowsMap(vos));
}
@PreAuthorize("hasAuthority('manager:locItem:list')")
@PostMapping("/locItem/export")
public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception {
- ExcelUtil.build(ExcelUtil.create(locItemService.list(), LocItem.class), response);
+ ExcelUtil.build(ExcelUtil.create(buildPageRowsUtils.rowsMap(locItemService.list()), LocItem.class), response);
}
}
--
Gitblit v1.9.1