feat(wms): 添加批次、工艺、工艺任务相关功能

- 新增 IWmsBatchService、IWmsProcesseService、IWmsProcessTaskService 接口
- 实现 WmsBatchServiceImpl、WmsProcesseServiceImpl 服务类- 添加 WmsBatch、WmsProcesse、WmsProcessTask 实体类
- 创建对应的 BO、VO 类
- 编写 WmsBatchMapper、WmsProcesseMapper 映射接口- 生成 WmsBatchMapper.xml、WmsProcesseMapper.xml 映射文件
- 开发 WmsBatchController、WmsProcesseController 控制器
This commit is contained in:
JR
2025-08-14 13:52:08 +08:00
parent 85ae6c4efa
commit c4ee58f75d
32 changed files with 1937 additions and 0 deletions

View File

@@ -0,0 +1,99 @@
package com.klp.controller;
import java.util.List;
import java.util.Arrays;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.*;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.klp.common.annotation.RepeatSubmit;
import com.klp.common.annotation.Log;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.domain.R;
import com.klp.common.core.validate.AddGroup;
import com.klp.common.core.validate.EditGroup;
import com.klp.common.enums.BusinessType;
import com.klp.common.utils.poi.ExcelUtil;
import com.klp.domain.vo.WmsBatchVo;
import com.klp.domain.bo.WmsBatchBo;
import com.klp.service.IWmsBatchService;
import com.klp.common.core.page.TableDataInfo;
/**
* 批次(合并相同工艺的任务)
*
* @author klp
* @date 2025-08-14
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/klp/batch")
public class WmsBatchController extends BaseController {
private final IWmsBatchService iWmsBatchService;
/**
* 查询批次(合并相同工艺的任务)列表
*/
@GetMapping("/list")
public TableDataInfo<WmsBatchVo> list(WmsBatchBo bo, PageQuery pageQuery) {
return iWmsBatchService.queryPageList(bo, pageQuery);
}
/**
* 导出批次(合并相同工艺的任务)列表
*/
@Log(title = "批次(合并相同工艺的任务)", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(WmsBatchBo bo, HttpServletResponse response) {
List<WmsBatchVo> list = iWmsBatchService.queryList(bo);
ExcelUtil.exportExcel(list, "批次(合并相同工艺的任务)", WmsBatchVo.class, response);
}
/**
* 获取批次(合并相同工艺的任务)详细信息
*
* @param batchId 主键
*/
@GetMapping("/{batchId}")
public R<WmsBatchVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long batchId) {
return R.ok(iWmsBatchService.queryById(batchId));
}
/**
* 新增批次(合并相同工艺的任务)
*/
@Log(title = "批次(合并相同工艺的任务)", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody WmsBatchBo bo) {
return toAjax(iWmsBatchService.insertByBo(bo));
}
/**
* 修改批次(合并相同工艺的任务)
*/
@Log(title = "批次(合并相同工艺的任务)", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody WmsBatchBo bo) {
return toAjax(iWmsBatchService.updateByBo(bo));
}
/**
* 删除批次(合并相同工艺的任务)
*
* @param batchIds 主键串
*/
@Log(title = "批次(合并相同工艺的任务)", businessType = BusinessType.DELETE)
@DeleteMapping("/{batchIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] batchIds) {
return toAjax(iWmsBatchService.deleteWithValidByIds(Arrays.asList(batchIds), true));
}
}

View File

@@ -0,0 +1,99 @@
package com.klp.controller;
import java.util.List;
import java.util.Arrays;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.*;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.klp.common.annotation.RepeatSubmit;
import com.klp.common.annotation.Log;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.domain.R;
import com.klp.common.core.validate.AddGroup;
import com.klp.common.core.validate.EditGroup;
import com.klp.common.enums.BusinessType;
import com.klp.common.utils.poi.ExcelUtil;
import com.klp.domain.vo.WmsProcessTaskVo;
import com.klp.domain.bo.WmsProcessTaskBo;
import com.klp.service.IWmsProcessTaskService;
import com.klp.common.core.page.TableDataInfo;
/**
* 工艺任务(生产计划所需工艺任务)
*
* @author klp
* @date 2025-08-14
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/klp/processTask")
public class WmsProcessTaskController extends BaseController {
private final IWmsProcessTaskService iWmsProcessTaskService;
/**
* 查询工艺任务(生产计划所需工艺任务)列表
*/
@GetMapping("/list")
public TableDataInfo<WmsProcessTaskVo> list(WmsProcessTaskBo bo, PageQuery pageQuery) {
return iWmsProcessTaskService.queryPageList(bo, pageQuery);
}
/**
* 导出工艺任务(生产计划所需工艺任务)列表
*/
@Log(title = "工艺任务(生产计划所需工艺任务)", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(WmsProcessTaskBo bo, HttpServletResponse response) {
List<WmsProcessTaskVo> list = iWmsProcessTaskService.queryList(bo);
ExcelUtil.exportExcel(list, "工艺任务(生产计划所需工艺任务)", WmsProcessTaskVo.class, response);
}
/**
* 获取工艺任务(生产计划所需工艺任务)详细信息
*
* @param taskId 主键
*/
@GetMapping("/{taskId}")
public R<WmsProcessTaskVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long taskId) {
return R.ok(iWmsProcessTaskService.queryById(taskId));
}
/**
* 新增工艺任务(生产计划所需工艺任务)
*/
@Log(title = "工艺任务(生产计划所需工艺任务)", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody WmsProcessTaskBo bo) {
return toAjax(iWmsProcessTaskService.insertByBo(bo));
}
/**
* 修改工艺任务(生产计划所需工艺任务)
*/
@Log(title = "工艺任务(生产计划所需工艺任务)", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody WmsProcessTaskBo bo) {
return toAjax(iWmsProcessTaskService.updateByBo(bo));
}
/**
* 删除工艺任务(生产计划所需工艺任务)
*
* @param taskIds 主键串
*/
@Log(title = "工艺任务(生产计划所需工艺任务)", businessType = BusinessType.DELETE)
@DeleteMapping("/{taskIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] taskIds) {
return toAjax(iWmsProcessTaskService.deleteWithValidByIds(Arrays.asList(taskIds), true));
}
}

View File

@@ -0,0 +1,99 @@
package com.klp.controller;
import java.util.List;
import java.util.Arrays;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.*;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.klp.common.annotation.RepeatSubmit;
import com.klp.common.annotation.Log;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.domain.R;
import com.klp.common.core.validate.AddGroup;
import com.klp.common.core.validate.EditGroup;
import com.klp.common.enums.BusinessType;
import com.klp.common.utils.poi.ExcelUtil;
import com.klp.domain.vo.WmsProcesseVo;
import com.klp.domain.bo.WmsProcesseBo;
import com.klp.service.IWmsProcesseService;
import com.klp.common.core.page.TableDataInfo;
/**
* 工艺
*
* @author klp
* @date 2025-08-14
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/klp/processe")
public class WmsProcesseController extends BaseController {
private final IWmsProcesseService iWmsProcesseService;
/**
* 查询工艺列表
*/
@GetMapping("/list")
public TableDataInfo<WmsProcesseVo> list(WmsProcesseBo bo, PageQuery pageQuery) {
return iWmsProcesseService.queryPageList(bo, pageQuery);
}
/**
* 导出工艺列表
*/
@Log(title = "工艺", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(WmsProcesseBo bo, HttpServletResponse response) {
List<WmsProcesseVo> list = iWmsProcesseService.queryList(bo);
ExcelUtil.exportExcel(list, "工艺", WmsProcesseVo.class, response);
}
/**
* 获取工艺详细信息
*
* @param processId 主键
*/
@GetMapping("/{processId}")
public R<WmsProcesseVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long processId) {
return R.ok(iWmsProcesseService.queryById(processId));
}
/**
* 新增工艺
*/
@Log(title = "工艺", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody WmsProcesseBo bo) {
return toAjax(iWmsProcesseService.insertByBo(bo));
}
/**
* 修改工艺
*/
@Log(title = "工艺", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody WmsProcesseBo bo) {
return toAjax(iWmsProcesseService.updateByBo(bo));
}
/**
* 删除工艺
*
* @param processIds 主键串
*/
@Log(title = "工艺", businessType = BusinessType.DELETE)
@DeleteMapping("/{processIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] processIds) {
return toAjax(iWmsProcesseService.deleteWithValidByIds(Arrays.asList(processIds), true));
}
}

View File

@@ -0,0 +1,99 @@
package com.klp.controller;
import java.util.List;
import java.util.Arrays;
import lombok.RequiredArgsConstructor;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.*;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import com.klp.common.annotation.RepeatSubmit;
import com.klp.common.annotation.Log;
import com.klp.common.core.controller.BaseController;
import com.klp.common.core.domain.PageQuery;
import com.klp.common.core.domain.R;
import com.klp.common.core.validate.AddGroup;
import com.klp.common.core.validate.EditGroup;
import com.klp.common.enums.BusinessType;
import com.klp.common.utils.poi.ExcelUtil;
import com.klp.domain.vo.WmsProductProcesseVo;
import com.klp.domain.bo.WmsProductProcesseBo;
import com.klp.service.IWmsProductProcesseService;
import com.klp.common.core.page.TableDataInfo;
/**
* 产品生产工艺(预定义产品所需工艺)
*
* @author klp
* @date 2025-08-14
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/klp/productProcesse")
public class WmsProductProcesseController extends BaseController {
private final IWmsProductProcesseService iWmsProductProcesseService;
/**
* 查询产品生产工艺(预定义产品所需工艺)列表
*/
@GetMapping("/list")
public TableDataInfo<WmsProductProcesseVo> list(WmsProductProcesseBo bo, PageQuery pageQuery) {
return iWmsProductProcesseService.queryPageList(bo, pageQuery);
}
/**
* 导出产品生产工艺(预定义产品所需工艺)列表
*/
@Log(title = "产品生产工艺(预定义产品所需工艺)", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(WmsProductProcesseBo bo, HttpServletResponse response) {
List<WmsProductProcesseVo> list = iWmsProductProcesseService.queryList(bo);
ExcelUtil.exportExcel(list, "产品生产工艺(预定义产品所需工艺)", WmsProductProcesseVo.class, response);
}
/**
* 获取产品生产工艺(预定义产品所需工艺)详细信息
*
* @param ppId 主键
*/
@GetMapping("/{ppId}")
public R<WmsProductProcesseVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long ppId) {
return R.ok(iWmsProductProcesseService.queryById(ppId));
}
/**
* 新增产品生产工艺(预定义产品所需工艺)
*/
@Log(title = "产品生产工艺(预定义产品所需工艺)", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody WmsProductProcesseBo bo) {
return toAjax(iWmsProductProcesseService.insertByBo(bo));
}
/**
* 修改产品生产工艺(预定义产品所需工艺)
*/
@Log(title = "产品生产工艺(预定义产品所需工艺)", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody WmsProductProcesseBo bo) {
return toAjax(iWmsProductProcesseService.updateByBo(bo));
}
/**
* 删除产品生产工艺(预定义产品所需工艺)
*
* @param ppIds 主键串
*/
@Log(title = "产品生产工艺(预定义产品所需工艺)", businessType = BusinessType.DELETE)
@DeleteMapping("/{ppIds}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ppIds) {
return toAjax(iWmsProductProcesseService.deleteWithValidByIds(Arrays.asList(ppIds), true));
}
}