rsf-design/src/api/warehouse-areas.js
@@ -160,7 +160,7 @@ export function fetchWarehouseList() { return request.post({ url: '/warehouse/list', url: '/warehouse/list2', data: {} }) } rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/WarehouseController.java
@@ -12,6 +12,7 @@ import com.vincent.rsf.server.common.domain.PageParam; import com.vincent.rsf.server.manager.entity.Warehouse; import com.vincent.rsf.server.manager.entity.WarehouseAreas; import com.vincent.rsf.server.manager.entity.vo.WarehouseVO; import com.vincent.rsf.server.manager.service.WarehouseAreasItemService; import com.vincent.rsf.server.manager.service.WarehouseAreasService; import com.vincent.rsf.server.manager.service.WarehouseService; @@ -24,6 +25,7 @@ import jakarta.servlet.http.HttpServletResponse; import java.util.*; import java.util.stream.Collectors; @Api(tags = "仓库") @RestController @@ -53,6 +55,20 @@ } @PreAuthorize("hasAuthority('manager:warehouse:list')") @PostMapping("/warehouse/list2") public R list2(@RequestBody Map<String, Object> map) { List<Warehouse> warehouseList = warehouseService.list(new LambdaQueryWrapper<Warehouse>().select(Warehouse::getId,Warehouse::getName)); List<WarehouseVO> warehouseList2 = warehouseList.stream().map(warehouse -> { WarehouseVO vo = new WarehouseVO(); vo.setId(warehouse.getId()); vo.setName(warehouse.getName()); return vo; }).collect(Collectors.toList()); return R.ok().add(warehouseList2); } @PreAuthorize("hasAuthority('manager:warehouse:list')") @PostMapping({"/warehouse/many/{ids}", "/warehouses/many/{ids}"}) public R many(@PathVariable Long[] ids) { return R.ok().add(warehouseService.listByIds(Arrays.asList(ids))); rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/vo/WarehouseVO.java
New file @@ -0,0 +1,9 @@ package com.vincent.rsf.server.manager.entity.vo; import lombok.Data; @Data public class WarehouseVO { private Long id; private String name; } rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AsnOrderLogSchedule.java
@@ -63,7 +63,7 @@ * @description 删除已完成订单加入Log表 * @time 2025/3/19 19:09 */ @Scheduled(cron = "0/35 * * * * ? ") // @Scheduled(cron = "0/35 * * * * ? ") @Transactional(rollbackFor = Exception.class) public void InStockToLog() { List<WkOrder> wkOrders = asnOrderService.list(new LambdaQueryWrapper<WkOrder>() rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/AsnOrderPressureSchedules.java
@@ -23,6 +23,7 @@ import java.util.Collections; import java.util.Date; import java.util.List; import java.util.concurrent.atomic.AtomicBoolean; /** * ASN 单据压测数据定时生成器。 @@ -37,6 +38,7 @@ private static final Integer TENANT_ID = 1; private static final Long USER_ID = 51L; private static final String MEMO = "ASN_PRESSURE_TEST"; private final AtomicBoolean running = new AtomicBoolean(false); @Autowired private AsnOrderService asnOrderService; @@ -59,10 +61,15 @@ @Scheduled(cron = "${pressure.asn-order.cron:0/10 * * * * ?}") @Transactional(rollbackFor = Exception.class) public synchronized void insertPressureOrders() { public void insertPressureOrders() { if (!enabled) { return; } if (!running.compareAndSet(false, true)) { log.warn("ASN压测任务仍在执行中,本轮跳过"); return; } try { if (orderCountPerRun <= 0 || itemCountPerOrder <= 0 || itemQty <= 0) { log.warn("ASN压测任务配置无效,跳过执行: orderCountPerRun={}, itemCountPerOrder={}, itemQty={}", orderCountPerRun, itemCountPerOrder, itemQty); @@ -101,6 +108,9 @@ } log.info("ASN压测任务执行完成,本次插入主单 {} 条,明细 {} 条", orders.size(), items.size()); } finally { running.set(false); } } private List<Matnr> loadMatnrs() {