采购历史增强代码

This commit is contained in:
2025-05-22 19:49:01 +08:00
parent 69de2b28cf
commit af5ae35562
31 changed files with 922 additions and 67 deletions

View File

@@ -1,5 +1,7 @@
package com.ruoyi.oa.controller;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
@@ -10,12 +12,16 @@ import com.ruoyi.common.excel.ExcelResult;
import com.ruoyi.oa.domain.SysOaWarehouseMaster;
import com.ruoyi.oa.domain.bo.SysOaWarehouseDetailBo;
import com.ruoyi.oa.domain.bo.SysOaWarehouseMasterBo;
import com.ruoyi.oa.domain.dto.MonthlyStatsDTO;
import com.ruoyi.oa.domain.dto.SummaryFilterDTO;
import com.ruoyi.oa.domain.vo.SummaryCardVo;
import com.ruoyi.oa.listener.SysOaWarehouseListener;
import com.ruoyi.oa.service.ISysOaWarehouseMasterService;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
@@ -188,4 +194,38 @@ public class SysOaWarehouseController extends BaseController {
public void importTemplate(HttpServletResponse response) {
ExcelUtil.exportExcel(new ArrayList<>(), "投诉工单", SysOaWarehouseVo.class, response);
}
@GetMapping("/recent")
public R<List<SysOaWarehouseVo>> selectRecentOutbound(@RequestParam(name = "limit", defaultValue = "10") int limit){
return R.ok(iSysOaWarehouseService.selectRecentOutbound(limit));
}
@GetMapping("/cards")
public R<List<SummaryCardVo>> summaryCards(
@RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
LocalDateTime beginTime,
@RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
LocalDateTime endTime,
@RequestParam(required = false) String name,
@RequestParam(required = false) String brand,
@RequestParam(required = false) String supplier
) {
SummaryFilterDTO filter = new SummaryFilterDTO();
filter.setBeginTime(beginTime);
filter.setEndTime(endTime);
filter.setName(name);
filter.setBrand(brand);
filter.setSupplier(supplier);
return R.ok(iSysOaWarehouseService.getSummaryCards(filter));
}
/**
* 获取某年 112 月的入库/出库/库存快照数据
* @param month 可选参数,格式 yyyy-MM-dd只读取其年份
*/
@GetMapping("/monthly")
public R<MonthlyStatsDTO> monthly( @RequestParam(required = false) String month ) {
return R.ok(iSysOaWarehouseService.getMonthlyStats(month));
}
}

View File

@@ -108,6 +108,15 @@ public class SysOaWarehouseMasterController extends BaseController {
return toAjax(iSysOaWarehouseMasterService.updateByBo(bo));
}
/**
* 修改出库单管理
*/
@RepeatSubmit()
@PutMapping("/updateMasterAndInsertBatchWare")
public R<Void> updateMasterAndInsertBatchWare(@Validated(EditGroup.class) @RequestBody SysOaWarehouseMasterBo bo) {
return toAjax(iSysOaWarehouseMasterService.updateMasterAndInsertBatchWare(bo));
}
/**
* 删除出库单管理
*

View File

@@ -111,6 +111,40 @@ public class SysOaWarehouseTaskController extends BaseController {
return toAjax(iSysOaWarehouseTaskService.updateByBo(bo));
}
/**
* 修改采购计划
*/
@Log(title = "采购计划", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping("/editBatch")
public R<Void> editBatch(@Validated(EditGroup.class) @RequestBody List<SysOaWarehouseTaskBo> bo) {
return toAjax(iSysOaWarehouseTaskService.updateByBoBatch(bo));
}
/**
* 处理单个物料入库
*/
@RepeatSubmit()
@PutMapping("/status")
public R<Void> status(@Validated(EditGroup.class) @RequestBody SysOaWarehouseTaskBo bo) {
return toAjax(iSysOaWarehouseTaskService.updateToWare(bo));
}
/**
* 处理单个物料入库
*/
@RepeatSubmit()
@PutMapping("/status-list")
public R<Void> status(@Validated(EditGroup.class) @RequestBody List<SysOaWarehouseTaskBo> boList) {
boList.forEach(bo -> {
int i = iSysOaWarehouseTaskService.updateToWare(bo);
});
return toAjax(1);
}
/**
* 删除采购计划
*