From 13d24f569394491177411a0caa4dcdd20b642383 Mon Sep 17 00:00:00 2001 From: JR <3573153686@qq.com> Date: Wed, 13 Aug 2025 10:33:03 +0800 Subject: [PATCH] =?UTF-8?q?feat(wms):=20=E6=96=B0=E5=A2=9E=E4=BC=9A?= =?UTF-8?q?=E8=AE=A1=E7=A7=91=E7=9B=AE=E5=92=8C=E8=B4=A2=E5=8A=A1=E5=8D=95?= =?UTF-8?q?=E6=8D=AE=E7=9B=B8=E5=85=B3=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加了会计科目、财务单据、日记账凭证等领域的实体类、控制器、服务接口、Mapper接口和XML映射文件 - 实现了基本的CRUD操作,包括查询、新增、修改和删除 - 优化了数据校验和批量删除逻辑 --- .../main/resources/vm/java/controller.java.vm | 1 - .../klp/controller/WmsAccountController.java | 98 +++++++++++++++ .../WmsFinancialDocumentController.java | 99 +++++++++++++++ .../controller/WmsJournalEntryController.java | 99 +++++++++++++++ .../controller/WmsOrderProfitController.java | 99 +++++++++++++++ .../klp/controller/WmsPayableController.java | 99 +++++++++++++++ .../controller/WmsReceivableController.java | 99 +++++++++++++++ .../main/java/com/klp/domain/WmsAccount.java | 54 ++++++++ .../com/klp/domain/WmsFinancialDocument.java | 64 ++++++++++ .../java/com/klp/domain/WmsJournalEntry.java | 76 ++++++++++++ .../java/com/klp/domain/WmsOrderProfit.java | 58 +++++++++ .../main/java/com/klp/domain/WmsPayable.java | 68 ++++++++++ .../java/com/klp/domain/WmsReceivable.java | 68 ++++++++++ .../java/com/klp/domain/bo/WmsAccountBo.java | 51 ++++++++ .../klp/domain/bo/WmsFinancialDocumentBo.java | 66 ++++++++++ .../com/klp/domain/bo/WmsJournalEntryBo.java | 82 ++++++++++++ .../com/klp/domain/bo/WmsOrderProfitBo.java | 56 +++++++++ .../java/com/klp/domain/bo/WmsPayableBo.java | 71 +++++++++++ .../com/klp/domain/bo/WmsReceivableBo.java | 71 +++++++++++ .../java/com/klp/domain/vo/WmsAccountVo.java | 68 ++++++++++ .../klp/domain/vo/WmsFinancialDocumentVo.java | 76 ++++++++++++ .../com/klp/domain/vo/WmsJournalEntryVo.java | 97 +++++++++++++++ .../com/klp/domain/vo/WmsOrderProfitVo.java | 67 ++++++++++ .../java/com/klp/domain/vo/WmsPayableVo.java | 84 +++++++++++++ .../com/klp/domain/vo/WmsReceivableVo.java | 84 +++++++++++++ .../java/com/klp/mapper/WmsAccountMapper.java | 15 +++ .../mapper/WmsFinancialDocumentMapper.java | 15 +++ .../com/klp/mapper/WmsJournalEntryMapper.java | 15 +++ .../com/klp/mapper/WmsOrderProfitMapper.java | 15 +++ .../java/com/klp/mapper/WmsPayableMapper.java | 15 +++ .../com/klp/mapper/WmsReceivableMapper.java | 15 +++ .../com/klp/service/IWmsAccountService.java | 43 +++++++ .../service/IWmsFinancialDocumentService.java | 49 ++++++++ .../klp/service/IWmsJournalEntryService.java | 49 ++++++++ .../klp/service/IWmsOrderProfitService.java | 49 ++++++++ .../com/klp/service/IWmsPayableService.java | 49 ++++++++ .../klp/service/IWmsReceivableService.java | 49 ++++++++ .../service/impl/WmsAccountServiceImpl.java | 101 +++++++++++++++ .../impl/WmsFinancialDocumentServiceImpl.java | 114 +++++++++++++++++ .../impl/WmsJournalEntryServiceImpl.java | 117 ++++++++++++++++++ .../impl/WmsOrderProfitServiceImpl.java | 112 +++++++++++++++++ .../service/impl/WmsPayableServiceImpl.java | 115 +++++++++++++++++ .../impl/WmsReceivableServiceImpl.java | 115 +++++++++++++++++ .../resources/mapper/klp/WmsAccountMapper.xml | 23 ++++ .../mapper/klp/WmsFinancialDocumentMapper.xml | 24 ++++ .../mapper/klp/WmsJournalEntryMapper.xml | 27 ++++ .../mapper/klp/WmsOrderProfitMapper.xml | 23 ++++ .../resources/mapper/klp/WmsPayableMapper.xml | 25 ++++ .../mapper/klp/WmsReceivableMapper.xml | 25 ++++ 49 files changed, 3053 insertions(+), 1 deletion(-) create mode 100644 klp-wms/src/main/java/com/klp/controller/WmsAccountController.java create mode 100644 klp-wms/src/main/java/com/klp/controller/WmsFinancialDocumentController.java create mode 100644 klp-wms/src/main/java/com/klp/controller/WmsJournalEntryController.java create mode 100644 klp-wms/src/main/java/com/klp/controller/WmsOrderProfitController.java create mode 100644 klp-wms/src/main/java/com/klp/controller/WmsPayableController.java create mode 100644 klp-wms/src/main/java/com/klp/controller/WmsReceivableController.java create mode 100644 klp-wms/src/main/java/com/klp/domain/WmsAccount.java create mode 100644 klp-wms/src/main/java/com/klp/domain/WmsFinancialDocument.java create mode 100644 klp-wms/src/main/java/com/klp/domain/WmsJournalEntry.java create mode 100644 klp-wms/src/main/java/com/klp/domain/WmsOrderProfit.java create mode 100644 klp-wms/src/main/java/com/klp/domain/WmsPayable.java create mode 100644 klp-wms/src/main/java/com/klp/domain/WmsReceivable.java create mode 100644 klp-wms/src/main/java/com/klp/domain/bo/WmsAccountBo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/bo/WmsFinancialDocumentBo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/bo/WmsJournalEntryBo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/bo/WmsOrderProfitBo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/bo/WmsPayableBo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/bo/WmsReceivableBo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/vo/WmsAccountVo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/vo/WmsFinancialDocumentVo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/vo/WmsJournalEntryVo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/vo/WmsOrderProfitVo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/vo/WmsPayableVo.java create mode 100644 klp-wms/src/main/java/com/klp/domain/vo/WmsReceivableVo.java create mode 100644 klp-wms/src/main/java/com/klp/mapper/WmsAccountMapper.java create mode 100644 klp-wms/src/main/java/com/klp/mapper/WmsFinancialDocumentMapper.java create mode 100644 klp-wms/src/main/java/com/klp/mapper/WmsJournalEntryMapper.java create mode 100644 klp-wms/src/main/java/com/klp/mapper/WmsOrderProfitMapper.java create mode 100644 klp-wms/src/main/java/com/klp/mapper/WmsPayableMapper.java create mode 100644 klp-wms/src/main/java/com/klp/mapper/WmsReceivableMapper.java create mode 100644 klp-wms/src/main/java/com/klp/service/IWmsAccountService.java create mode 100644 klp-wms/src/main/java/com/klp/service/IWmsFinancialDocumentService.java create mode 100644 klp-wms/src/main/java/com/klp/service/IWmsJournalEntryService.java create mode 100644 klp-wms/src/main/java/com/klp/service/IWmsOrderProfitService.java create mode 100644 klp-wms/src/main/java/com/klp/service/IWmsPayableService.java create mode 100644 klp-wms/src/main/java/com/klp/service/IWmsReceivableService.java create mode 100644 klp-wms/src/main/java/com/klp/service/impl/WmsAccountServiceImpl.java create mode 100644 klp-wms/src/main/java/com/klp/service/impl/WmsFinancialDocumentServiceImpl.java create mode 100644 klp-wms/src/main/java/com/klp/service/impl/WmsJournalEntryServiceImpl.java create mode 100644 klp-wms/src/main/java/com/klp/service/impl/WmsOrderProfitServiceImpl.java create mode 100644 klp-wms/src/main/java/com/klp/service/impl/WmsPayableServiceImpl.java create mode 100644 klp-wms/src/main/java/com/klp/service/impl/WmsReceivableServiceImpl.java create mode 100644 klp-wms/src/main/resources/mapper/klp/WmsAccountMapper.xml create mode 100644 klp-wms/src/main/resources/mapper/klp/WmsFinancialDocumentMapper.xml create mode 100644 klp-wms/src/main/resources/mapper/klp/WmsJournalEntryMapper.xml create mode 100644 klp-wms/src/main/resources/mapper/klp/WmsOrderProfitMapper.xml create mode 100644 klp-wms/src/main/resources/mapper/klp/WmsPayableMapper.xml create mode 100644 klp-wms/src/main/resources/mapper/klp/WmsReceivableMapper.xml diff --git a/klp-generator/src/main/resources/vm/java/controller.java.vm b/klp-generator/src/main/resources/vm/java/controller.java.vm index 9fc11b8d..4f49a8fd 100644 --- a/klp-generator/src/main/resources/vm/java/controller.java.vm +++ b/klp-generator/src/main/resources/vm/java/controller.java.vm @@ -6,7 +6,6 @@ import java.util.Arrays; import lombok.RequiredArgsConstructor; import javax.servlet.http.HttpServletResponse; import javax.validation.constraints.*; -import cn.dev33.satoken.annotation.SaCheckPermission; import org.springframework.web.bind.annotation.*; import org.springframework.validation.annotation.Validated; import com.klp.common.annotation.RepeatSubmit; diff --git a/klp-wms/src/main/java/com/klp/controller/WmsAccountController.java b/klp-wms/src/main/java/com/klp/controller/WmsAccountController.java new file mode 100644 index 00000000..b914f47c --- /dev/null +++ b/klp-wms/src/main/java/com/klp/controller/WmsAccountController.java @@ -0,0 +1,98 @@ +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.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.WmsAccountVo; +import com.klp.domain.bo.WmsAccountBo; +import com.klp.service.IWmsAccountService; + +/** + * 会计科目 + * + * @author klp + * @date 2025-08-13 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/klp/account") +public class WmsAccountController extends BaseController { + + private final IWmsAccountService iWmsAccountService; + + /** + * 查询会计科目列表 + */ + @GetMapping("/list") + public R> list(WmsAccountBo bo) { + List list = iWmsAccountService.queryList(bo); + return R.ok(list); + } + + /** + * 导出会计科目列表 + */ + @Log(title = "会计科目", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(WmsAccountBo bo, HttpServletResponse response) { + List list = iWmsAccountService.queryList(bo); + ExcelUtil.exportExcel(list, "会计科目", WmsAccountVo.class, response); + } + + /** + * 获取会计科目详细信息 + * + * @param accountId 主键 + */ + @GetMapping("/{accountId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long accountId) { + return R.ok(iWmsAccountService.queryById(accountId)); + } + + /** + * 新增会计科目 + */ + @Log(title = "会计科目", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody WmsAccountBo bo) { + return toAjax(iWmsAccountService.insertByBo(bo)); + } + + /** + * 修改会计科目 + */ + @Log(title = "会计科目", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody WmsAccountBo bo) { + return toAjax(iWmsAccountService.updateByBo(bo)); + } + + /** + * 删除会计科目 + * + * @param accountIds 主键串 + */ + @Log(title = "会计科目", businessType = BusinessType.DELETE) + @DeleteMapping("/{accountIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] accountIds) { + return toAjax(iWmsAccountService.deleteWithValidByIds(Arrays.asList(accountIds), true)); + } +} diff --git a/klp-wms/src/main/java/com/klp/controller/WmsFinancialDocumentController.java b/klp-wms/src/main/java/com/klp/controller/WmsFinancialDocumentController.java new file mode 100644 index 00000000..ad6b073e --- /dev/null +++ b/klp-wms/src/main/java/com/klp/controller/WmsFinancialDocumentController.java @@ -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.WmsFinancialDocumentVo; +import com.klp.domain.bo.WmsFinancialDocumentBo; +import com.klp.service.IWmsFinancialDocumentService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 财务单据 + * + * @author klp + * @date 2025-08-13 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/klp/financialDocument") +public class WmsFinancialDocumentController extends BaseController { + + private final IWmsFinancialDocumentService iWmsFinancialDocumentService; + + /** + * 查询财务单据列表 + */ + @GetMapping("/list") + public TableDataInfo list(WmsFinancialDocumentBo bo, PageQuery pageQuery) { + return iWmsFinancialDocumentService.queryPageList(bo, pageQuery); + } + + /** + * 导出财务单据列表 + */ + @Log(title = "财务单据", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(WmsFinancialDocumentBo bo, HttpServletResponse response) { + List list = iWmsFinancialDocumentService.queryList(bo); + ExcelUtil.exportExcel(list, "财务单据", WmsFinancialDocumentVo.class, response); + } + + /** + * 获取财务单据详细信息 + * + * @param documentId 主键 + */ + @GetMapping("/{documentId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long documentId) { + return R.ok(iWmsFinancialDocumentService.queryById(documentId)); + } + + /** + * 新增财务单据 + */ + @Log(title = "财务单据", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody WmsFinancialDocumentBo bo) { + return toAjax(iWmsFinancialDocumentService.insertByBo(bo)); + } + + /** + * 修改财务单据 + */ + @Log(title = "财务单据", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody WmsFinancialDocumentBo bo) { + return toAjax(iWmsFinancialDocumentService.updateByBo(bo)); + } + + /** + * 删除财务单据 + * + * @param documentIds 主键串 + */ + @Log(title = "财务单据", businessType = BusinessType.DELETE) + @DeleteMapping("/{documentIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] documentIds) { + return toAjax(iWmsFinancialDocumentService.deleteWithValidByIds(Arrays.asList(documentIds), true)); + } +} diff --git a/klp-wms/src/main/java/com/klp/controller/WmsJournalEntryController.java b/klp-wms/src/main/java/com/klp/controller/WmsJournalEntryController.java new file mode 100644 index 00000000..09305bb4 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/controller/WmsJournalEntryController.java @@ -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.WmsJournalEntryVo; +import com.klp.domain.bo.WmsJournalEntryBo; +import com.klp.service.IWmsJournalEntryService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 日记账凭证(宽松版) + * + * @author klp + * @date 2025-08-13 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/klp/journalEntry") +public class WmsJournalEntryController extends BaseController { + + private final IWmsJournalEntryService iWmsJournalEntryService; + + /** + * 查询日记账凭证(宽松版)列表 + */ + @GetMapping("/list") + public TableDataInfo list(WmsJournalEntryBo bo, PageQuery pageQuery) { + return iWmsJournalEntryService.queryPageList(bo, pageQuery); + } + + /** + * 导出日记账凭证(宽松版)列表 + */ + @Log(title = "日记账凭证(宽松版)", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(WmsJournalEntryBo bo, HttpServletResponse response) { + List list = iWmsJournalEntryService.queryList(bo); + ExcelUtil.exportExcel(list, "日记账凭证(宽松版)", WmsJournalEntryVo.class, response); + } + + /** + * 获取日记账凭证(宽松版)详细信息 + * + * @param entryId 主键 + */ + @GetMapping("/{entryId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long entryId) { + return R.ok(iWmsJournalEntryService.queryById(entryId)); + } + + /** + * 新增日记账凭证(宽松版) + */ + @Log(title = "日记账凭证(宽松版)", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody WmsJournalEntryBo bo) { + return toAjax(iWmsJournalEntryService.insertByBo(bo)); + } + + /** + * 修改日记账凭证(宽松版) + */ + @Log(title = "日记账凭证(宽松版)", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody WmsJournalEntryBo bo) { + return toAjax(iWmsJournalEntryService.updateByBo(bo)); + } + + /** + * 删除日记账凭证(宽松版) + * + * @param entryIds 主键串 + */ + @Log(title = "日记账凭证(宽松版)", businessType = BusinessType.DELETE) + @DeleteMapping("/{entryIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] entryIds) { + return toAjax(iWmsJournalEntryService.deleteWithValidByIds(Arrays.asList(entryIds), true)); + } +} diff --git a/klp-wms/src/main/java/com/klp/controller/WmsOrderProfitController.java b/klp-wms/src/main/java/com/klp/controller/WmsOrderProfitController.java new file mode 100644 index 00000000..e94cc34a --- /dev/null +++ b/klp-wms/src/main/java/com/klp/controller/WmsOrderProfitController.java @@ -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.WmsOrderProfitVo; +import com.klp.domain.bo.WmsOrderProfitBo; +import com.klp.service.IWmsOrderProfitService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 订单盈亏 + * + * @author klp + * @date 2025-08-13 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/klp/orderProfit") +public class WmsOrderProfitController extends BaseController { + + private final IWmsOrderProfitService iWmsOrderProfitService; + + /** + * 查询订单盈亏列表 + */ + @GetMapping("/list") + public TableDataInfo list(WmsOrderProfitBo bo, PageQuery pageQuery) { + return iWmsOrderProfitService.queryPageList(bo, pageQuery); + } + + /** + * 导出订单盈亏列表 + */ + @Log(title = "订单盈亏", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(WmsOrderProfitBo bo, HttpServletResponse response) { + List list = iWmsOrderProfitService.queryList(bo); + ExcelUtil.exportExcel(list, "订单盈亏", WmsOrderProfitVo.class, response); + } + + /** + * 获取订单盈亏详细信息 + * + * @param profitId 主键 + */ + @GetMapping("/{profitId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long profitId) { + return R.ok(iWmsOrderProfitService.queryById(profitId)); + } + + /** + * 新增订单盈亏 + */ + @Log(title = "订单盈亏", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody WmsOrderProfitBo bo) { + return toAjax(iWmsOrderProfitService.insertByBo(bo)); + } + + /** + * 修改订单盈亏 + */ + @Log(title = "订单盈亏", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody WmsOrderProfitBo bo) { + return toAjax(iWmsOrderProfitService.updateByBo(bo)); + } + + /** + * 删除订单盈亏 + * + * @param profitIds 主键串 + */ + @Log(title = "订单盈亏", businessType = BusinessType.DELETE) + @DeleteMapping("/{profitIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] profitIds) { + return toAjax(iWmsOrderProfitService.deleteWithValidByIds(Arrays.asList(profitIds), true)); + } +} diff --git a/klp-wms/src/main/java/com/klp/controller/WmsPayableController.java b/klp-wms/src/main/java/com/klp/controller/WmsPayableController.java new file mode 100644 index 00000000..41193bea --- /dev/null +++ b/klp-wms/src/main/java/com/klp/controller/WmsPayableController.java @@ -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.WmsPayableVo; +import com.klp.domain.bo.WmsPayableBo; +import com.klp.service.IWmsPayableService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 应付款管理(宽松版) + * + * @author klp + * @date 2025-08-13 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/klp/payable") +public class WmsPayableController extends BaseController { + + private final IWmsPayableService iWmsPayableService; + + /** + * 查询应付款管理(宽松版)列表 + */ + @GetMapping("/list") + public TableDataInfo list(WmsPayableBo bo, PageQuery pageQuery) { + return iWmsPayableService.queryPageList(bo, pageQuery); + } + + /** + * 导出应付款管理(宽松版)列表 + */ + @Log(title = "应付款管理(宽松版)", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(WmsPayableBo bo, HttpServletResponse response) { + List list = iWmsPayableService.queryList(bo); + ExcelUtil.exportExcel(list, "应付款管理(宽松版)", WmsPayableVo.class, response); + } + + /** + * 获取应付款管理(宽松版)详细信息 + * + * @param payableId 主键 + */ + @GetMapping("/{payableId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long payableId) { + return R.ok(iWmsPayableService.queryById(payableId)); + } + + /** + * 新增应付款管理(宽松版) + */ + @Log(title = "应付款管理(宽松版)", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody WmsPayableBo bo) { + return toAjax(iWmsPayableService.insertByBo(bo)); + } + + /** + * 修改应付款管理(宽松版) + */ + @Log(title = "应付款管理(宽松版)", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody WmsPayableBo bo) { + return toAjax(iWmsPayableService.updateByBo(bo)); + } + + /** + * 删除应付款管理(宽松版) + * + * @param payableIds 主键串 + */ + @Log(title = "应付款管理(宽松版)", businessType = BusinessType.DELETE) + @DeleteMapping("/{payableIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] payableIds) { + return toAjax(iWmsPayableService.deleteWithValidByIds(Arrays.asList(payableIds), true)); + } +} diff --git a/klp-wms/src/main/java/com/klp/controller/WmsReceivableController.java b/klp-wms/src/main/java/com/klp/controller/WmsReceivableController.java new file mode 100644 index 00000000..46449d61 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/controller/WmsReceivableController.java @@ -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.WmsReceivableVo; +import com.klp.domain.bo.WmsReceivableBo; +import com.klp.service.IWmsReceivableService; +import com.klp.common.core.page.TableDataInfo; + +/** + * 应收款管理(宽松版) + * + * @author klp + * @date 2025-08-13 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/klp/receivable") +public class WmsReceivableController extends BaseController { + + private final IWmsReceivableService iWmsReceivableService; + + /** + * 查询应收款管理(宽松版)列表 + */ + @GetMapping("/list") + public TableDataInfo list(WmsReceivableBo bo, PageQuery pageQuery) { + return iWmsReceivableService.queryPageList(bo, pageQuery); + } + + /** + * 导出应收款管理(宽松版)列表 + */ + @Log(title = "应收款管理(宽松版)", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(WmsReceivableBo bo, HttpServletResponse response) { + List list = iWmsReceivableService.queryList(bo); + ExcelUtil.exportExcel(list, "应收款管理(宽松版)", WmsReceivableVo.class, response); + } + + /** + * 获取应收款管理(宽松版)详细信息 + * + * @param receivableId 主键 + */ + @GetMapping("/{receivableId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long receivableId) { + return R.ok(iWmsReceivableService.queryById(receivableId)); + } + + /** + * 新增应收款管理(宽松版) + */ + @Log(title = "应收款管理(宽松版)", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody WmsReceivableBo bo) { + return toAjax(iWmsReceivableService.insertByBo(bo)); + } + + /** + * 修改应收款管理(宽松版) + */ + @Log(title = "应收款管理(宽松版)", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody WmsReceivableBo bo) { + return toAjax(iWmsReceivableService.updateByBo(bo)); + } + + /** + * 删除应收款管理(宽松版) + * + * @param receivableIds 主键串 + */ + @Log(title = "应收款管理(宽松版)", businessType = BusinessType.DELETE) + @DeleteMapping("/{receivableIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] receivableIds) { + return toAjax(iWmsReceivableService.deleteWithValidByIds(Arrays.asList(receivableIds), true)); + } +} diff --git a/klp-wms/src/main/java/com/klp/domain/WmsAccount.java b/klp-wms/src/main/java/com/klp/domain/WmsAccount.java new file mode 100644 index 00000000..15a6b429 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/WmsAccount.java @@ -0,0 +1,54 @@ +package com.klp.domain; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import com.klp.common.core.domain.TreeEntity; + +/** + * 会计科目对象 wms_account + * + * @author klp + * @date 2025-08-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("wms_account") +public class WmsAccount extends TreeEntity { + + private static final long serialVersionUID=1L; + + /** + * 科目ID(主键) + */ + @TableId(value = "account_id") + private Long accountId; + /** + * 科目编码 + */ + private String accountCode; + /** + * 科目名称 + */ + private String accountName; + /** + * 科目类型 + */ + private String accountType; + /** + * 当前余额(可容忍暂时不准确,过账汇总) + */ + private BigDecimal balance; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-wms/src/main/java/com/klp/domain/WmsFinancialDocument.java b/klp-wms/src/main/java/com/klp/domain/WmsFinancialDocument.java new file mode 100644 index 00000000..5ba27089 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/WmsFinancialDocument.java @@ -0,0 +1,64 @@ +package com.klp.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 财务单据对象 wms_financial_document + * + * @author klp + * @date 2025-08-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("wms_financial_document") +public class WmsFinancialDocument extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * 单据ID(主键) + */ + @TableId(value = "document_id") + private Long documentId; + /** + * 单据编号 + */ + private String docNo; + /** + * 单据类型 + */ + private String docType; + /** + * 单据日期 + */ + private Date docDate; + /** + * 单据金额 + */ + private BigDecimal amount; + /** + * 关联订单ID + */ + private Long relatedOrderId; + /** + * 单据状态 + */ + private String status; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-wms/src/main/java/com/klp/domain/WmsJournalEntry.java b/klp-wms/src/main/java/com/klp/domain/WmsJournalEntry.java new file mode 100644 index 00000000..d9f2647b --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/WmsJournalEntry.java @@ -0,0 +1,76 @@ +package com.klp.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 日记账凭证(宽松版)对象 wms_journal_entry + * + * @author klp + * @date 2025-08-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("wms_journal_entry") +public class WmsJournalEntry extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * 分录ID(主键) + */ + @TableId(value = "entry_id") + private Long entryId; + /** + * 凭证编号 + */ + private String voucherNo; + /** + * 分录行号(同一凭证内序号) + */ + private Long lineNo; + /** + * 记账日期 + */ + private Date entryDate; + /** + * 科目ID + */ + private Long accountId; + /** + * 借方金额(可为0或负数用于调账/红冲) + */ + private BigDecimal debitAmount; + /** + * 贷方金额(可为0或负数用于调账/红冲) + */ + private BigDecimal creditAmount; + /** + * 参考单据号 + */ + private String referenceNo; + /** + * 关联订单ID + */ + private Long relatedOrderId; + /** + * 状态 + */ + private String status; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-wms/src/main/java/com/klp/domain/WmsOrderProfit.java b/klp-wms/src/main/java/com/klp/domain/WmsOrderProfit.java new file mode 100644 index 00000000..291cd578 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/WmsOrderProfit.java @@ -0,0 +1,58 @@ +package com.klp.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +/** + * 订单盈亏对象 wms_order_profit + * + * @author klp + * @date 2025-08-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("wms_order_profit") +public class WmsOrderProfit extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * 盈亏ID(主键) + */ + @TableId(value = "profit_id") + private Long profitId; + /** + * 订单ID + */ + private Long orderId; + /** + * 成本金额 + */ + private BigDecimal costAmount; + /** + * 收入金额 + */ + private BigDecimal revenueAmount; + /** + * 利润金额 + */ + private BigDecimal profitAmount; + /** + * 利润率(%) + */ + private BigDecimal profitRate; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-wms/src/main/java/com/klp/domain/WmsPayable.java b/klp-wms/src/main/java/com/klp/domain/WmsPayable.java new file mode 100644 index 00000000..d47511c3 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/WmsPayable.java @@ -0,0 +1,68 @@ +package com.klp.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 应付款管理(宽松版)对象 wms_payable + * + * @author klp + * @date 2025-08-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("wms_payable") +public class WmsPayable extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * 应付ID(主键) + */ + @TableId(value = "payable_id") + private Long payableId; + /** + * 供应商ID + */ + private Long supplierId; + /** + * 订单ID + */ + private Long orderId; + /** + * 到期日 + */ + private Date dueDate; + /** + * 应付金额(可为负数用于调整) + */ + private BigDecimal amount; + /** + * 已付金额(可为负数用于冲销) + */ + private BigDecimal paidAmount; + /** + * 未付金额 + */ + private BigDecimal balanceAmount; + /** + * 状态 + */ + private String status; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-wms/src/main/java/com/klp/domain/WmsReceivable.java b/klp-wms/src/main/java/com/klp/domain/WmsReceivable.java new file mode 100644 index 00000000..c1289256 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/WmsReceivable.java @@ -0,0 +1,68 @@ +package com.klp.domain; + +import com.baomidou.mybatisplus.annotation.*; +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 应收款管理(宽松版)对象 wms_receivable + * + * @author klp + * @date 2025-08-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("wms_receivable") +public class WmsReceivable extends BaseEntity { + + private static final long serialVersionUID=1L; + + /** + * 应收ID(主键) + */ + @TableId(value = "receivable_id") + private Long receivableId; + /** + * 客户ID + */ + private Long customerId; + /** + * 订单ID + */ + private Long orderId; + /** + * 到期日 + */ + private Date dueDate; + /** + * 应收金额(可为负数用于调整) + */ + private BigDecimal amount; + /** + * 已收金额(可为负数用于冲销) + */ + private BigDecimal paidAmount; + /** + * 未收金额 + */ + private BigDecimal balanceAmount; + /** + * 状态 + */ + private String status; + /** + * 删除标志(0=正常,1=已删除) + */ + @TableLogic + private Integer delFlag; + /** + * 备注 + */ + private String remark; + +} diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsAccountBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsAccountBo.java new file mode 100644 index 00000000..f589ae76 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsAccountBo.java @@ -0,0 +1,51 @@ +package com.klp.domain.bo; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import com.klp.common.core.domain.TreeEntity; + +/** + * 会计科目业务对象 wms_account + * + * @author klp + * @date 2025-08-13 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class WmsAccountBo extends TreeEntity { + + /** + * 科目ID(主键) + */ + private Long accountId; + + /** + * 科目编码 + */ + private String accountCode; + + /** + * 科目名称 + */ + private String accountName; + + /** + * 科目类型 + */ + private String accountType; + + /** + * 当前余额(可容忍暂时不准确,过账汇总) + */ + private BigDecimal balance; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsFinancialDocumentBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsFinancialDocumentBo.java new file mode 100644 index 00000000..b5e258ff --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsFinancialDocumentBo.java @@ -0,0 +1,66 @@ +package com.klp.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 财务单据业务对象 wms_financial_document + * + * @author klp + * @date 2025-08-13 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class WmsFinancialDocumentBo extends BaseEntity { + + /** + * 单据ID(主键) + */ + private Long documentId; + + /** + * 单据编号 + */ + private String docNo; + + /** + * 单据类型 + */ + private String docType; + + /** + * 单据日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date docDate; + + /** + * 单据金额 + */ + private BigDecimal amount; + + /** + * 关联订单ID + */ + private Long relatedOrderId; + + /** + * 单据状态 + */ + private String status; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsJournalEntryBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsJournalEntryBo.java new file mode 100644 index 00000000..783283e6 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsJournalEntryBo.java @@ -0,0 +1,82 @@ +package com.klp.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import javax.validation.constraints.*; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 日记账凭证(宽松版)业务对象 wms_journal_entry + * + * @author klp + * @date 2025-08-13 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class WmsJournalEntryBo extends BaseEntity { + + /** + * 分录ID(主键) + */ + private Long entryId; + + /** + * 凭证编号 + */ + private String voucherNo; + + /** + * 分录行号(同一凭证内序号) + */ + private Long lineNo; + + /** + * 记账日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date entryDate; + + /** + * 科目ID + */ + private Long accountId; + + /** + * 借方金额(可为0或负数用于调账/红冲) + */ + private BigDecimal debitAmount; + + /** + * 贷方金额(可为0或负数用于调账/红冲) + */ + private BigDecimal creditAmount; + + /** + * 参考单据号 + */ + private String referenceNo; + + /** + * 关联订单ID + */ + private Long relatedOrderId; + + /** + * 状态 + */ + private String status; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsOrderProfitBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsOrderProfitBo.java new file mode 100644 index 00000000..1466ef0d --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsOrderProfitBo.java @@ -0,0 +1,56 @@ +package com.klp.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; + +/** + * 订单盈亏业务对象 wms_order_profit + * + * @author klp + * @date 2025-08-13 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class WmsOrderProfitBo extends BaseEntity { + + /** + * 盈亏ID(主键) + */ + private Long profitId; + + /** + * 订单ID + */ + private Long orderId; + + /** + * 成本金额 + */ + private BigDecimal costAmount; + + /** + * 收入金额 + */ + private BigDecimal revenueAmount; + + /** + * 利润金额 + */ + private BigDecimal profitAmount; + + /** + * 利润率(%) + */ + private BigDecimal profitRate; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsPayableBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsPayableBo.java new file mode 100644 index 00000000..492a688d --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsPayableBo.java @@ -0,0 +1,71 @@ +package com.klp.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 应付款管理(宽松版)业务对象 wms_payable + * + * @author klp + * @date 2025-08-13 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class WmsPayableBo extends BaseEntity { + + /** + * 应付ID(主键) + */ + private Long payableId; + + /** + * 供应商ID + */ + private Long supplierId; + + /** + * 订单ID + */ + private Long orderId; + + /** + * 到期日 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date dueDate; + + /** + * 应付金额(可为负数用于调整) + */ + private BigDecimal amount; + + /** + * 已付金额(可为负数用于冲销) + */ + private BigDecimal paidAmount; + + /** + * 未付金额 + */ + private BigDecimal balanceAmount; + + /** + * 状态 + */ + private String status; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/bo/WmsReceivableBo.java b/klp-wms/src/main/java/com/klp/domain/bo/WmsReceivableBo.java new file mode 100644 index 00000000..199ffee2 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/bo/WmsReceivableBo.java @@ -0,0 +1,71 @@ +package com.klp.domain.bo; + +import com.klp.common.core.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; + +/** + * 应收款管理(宽松版)业务对象 wms_receivable + * + * @author klp + * @date 2025-08-13 + */ + +@Data +@EqualsAndHashCode(callSuper = true) +public class WmsReceivableBo extends BaseEntity { + + /** + * 应收ID(主键) + */ + private Long receivableId; + + /** + * 客户ID + */ + private Long customerId; + + /** + * 订单ID + */ + private Long orderId; + + /** + * 到期日 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date dueDate; + + /** + * 应收金额(可为负数用于调整) + */ + private BigDecimal amount; + + /** + * 已收金额(可为负数用于冲销) + */ + private BigDecimal paidAmount; + + /** + * 未收金额 + */ + private BigDecimal balanceAmount; + + /** + * 状态 + */ + private String status; + + /** + * 备注 + */ + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsAccountVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsAccountVo.java new file mode 100644 index 00000000..a304fc7d --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsAccountVo.java @@ -0,0 +1,68 @@ +package com.klp.domain.vo; + +import java.math.BigDecimal; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 会计科目视图对象 wms_account + * + * @author klp + * @date 2025-08-13 + */ +@Data +@ExcelIgnoreUnannotated +public class WmsAccountVo { + + private static final long serialVersionUID = 1L; + + /** + * 科目ID(主键) + */ + @ExcelProperty(value = "科目ID", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "主=键") + private Long accountId; + + /** + * 科目编码 + */ + @ExcelProperty(value = "科目编码") + private String accountCode; + + /** + * 科目名称 + */ + @ExcelProperty(value = "科目名称") + private String accountName; + + /** + * 科目类型 + */ + @ExcelProperty(value = "科目类型") + private String accountType; + + /** + * 上级科目ID + */ + @ExcelProperty(value = "上级科目ID") + private Long parentId; + + /** + * 当前余额(可容忍暂时不准确,过账汇总) + */ + @ExcelProperty(value = "当前余额", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "可=容忍暂时不准确,过账汇总") + private BigDecimal balance; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsFinancialDocumentVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsFinancialDocumentVo.java new file mode 100644 index 00000000..0700ac96 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsFinancialDocumentVo.java @@ -0,0 +1,76 @@ +package com.klp.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 财务单据视图对象 wms_financial_document + * + * @author klp + * @date 2025-08-13 + */ +@Data +@ExcelIgnoreUnannotated +public class WmsFinancialDocumentVo { + + private static final long serialVersionUID = 1L; + + /** + * 单据ID(主键) + */ + @ExcelProperty(value = "单据ID", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "主=键") + private Long documentId; + + /** + * 单据编号 + */ + @ExcelProperty(value = "单据编号") + private String docNo; + + /** + * 单据类型 + */ + @ExcelProperty(value = "单据类型") + private String docType; + + /** + * 单据日期 + */ + @ExcelProperty(value = "单据日期") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date docDate; + + /** + * 单据金额 + */ + @ExcelProperty(value = "单据金额") + private BigDecimal amount; + + /** + * 关联订单ID + */ + @ExcelProperty(value = "关联订单ID") + private Long relatedOrderId; + + /** + * 单据状态 + */ + @ExcelProperty(value = "单据状态") + private String status; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsJournalEntryVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsJournalEntryVo.java new file mode 100644 index 00000000..3c1b81c7 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsJournalEntryVo.java @@ -0,0 +1,97 @@ +package com.klp.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 日记账凭证(宽松版)视图对象 wms_journal_entry + * + * @author klp + * @date 2025-08-13 + */ +@Data +@ExcelIgnoreUnannotated +public class WmsJournalEntryVo { + + private static final long serialVersionUID = 1L; + + /** + * 分录ID(主键) + */ + @ExcelProperty(value = "分录ID", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "主=键") + private Long entryId; + + /** + * 凭证编号 + */ + @ExcelProperty(value = "凭证编号") + private String voucherNo; + + /** + * 分录行号(同一凭证内序号) + */ + @ExcelProperty(value = "分录行号", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "同=一凭证内序号") + private Long lineNo; + + /** + * 记账日期 + */ + @ExcelProperty(value = "记账日期") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date entryDate; + + /** + * 科目ID + */ + @ExcelProperty(value = "科目ID") + private Long accountId; + + /** + * 借方金额(可为0或负数用于调账/红冲) + */ + @ExcelProperty(value = "借方金额", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "可=为0或负数用于调账/红冲") + private BigDecimal debitAmount; + + /** + * 贷方金额(可为0或负数用于调账/红冲) + */ + @ExcelProperty(value = "贷方金额", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "可=为0或负数用于调账/红冲") + private BigDecimal creditAmount; + + /** + * 参考单据号 + */ + @ExcelProperty(value = "参考单据号") + private String referenceNo; + + /** + * 关联订单ID + */ + @ExcelProperty(value = "关联订单ID") + private Long relatedOrderId; + + /** + * 状态 + */ + @ExcelProperty(value = "状态") + private String status; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsOrderProfitVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsOrderProfitVo.java new file mode 100644 index 00000000..7de474d0 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsOrderProfitVo.java @@ -0,0 +1,67 @@ +package com.klp.domain.vo; + +import java.math.BigDecimal; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 订单盈亏视图对象 wms_order_profit + * + * @author klp + * @date 2025-08-13 + */ +@Data +@ExcelIgnoreUnannotated +public class WmsOrderProfitVo { + + private static final long serialVersionUID = 1L; + + /** + * 盈亏ID(主键) + */ + @ExcelProperty(value = "盈亏ID", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "主=键") + private Long profitId; + + /** + * 订单ID + */ + @ExcelProperty(value = "订单ID") + private Long orderId; + + /** + * 成本金额 + */ + @ExcelProperty(value = "成本金额") + private BigDecimal costAmount; + + /** + * 收入金额 + */ + @ExcelProperty(value = "收入金额") + private BigDecimal revenueAmount; + + /** + * 利润金额 + */ + @ExcelProperty(value = "利润金额") + private BigDecimal profitAmount; + + /** + * 利润率(%) + */ + @ExcelProperty(value = "利润率(%)") + private BigDecimal profitRate; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsPayableVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsPayableVo.java new file mode 100644 index 00000000..e8c7703e --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsPayableVo.java @@ -0,0 +1,84 @@ +package com.klp.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 应付款管理(宽松版)视图对象 wms_payable + * + * @author klp + * @date 2025-08-13 + */ +@Data +@ExcelIgnoreUnannotated +public class WmsPayableVo { + + private static final long serialVersionUID = 1L; + + /** + * 应付ID(主键) + */ + @ExcelProperty(value = "应付ID", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "主=键") + private Long payableId; + + /** + * 供应商ID + */ + @ExcelProperty(value = "供应商ID") + private Long supplierId; + + /** + * 订单ID + */ + @ExcelProperty(value = "订单ID") + private Long orderId; + + /** + * 到期日 + */ + @ExcelProperty(value = "到期日") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date dueDate; + + /** + * 应付金额(可为负数用于调整) + */ + @ExcelProperty(value = "应付金额", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "可=为负数用于调整") + private BigDecimal amount; + + /** + * 已付金额(可为负数用于冲销) + */ + @ExcelProperty(value = "已付金额", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "可=为负数用于冲销") + private BigDecimal paidAmount; + + /** + * 未付金额 + */ + @ExcelProperty(value = "未付金额") + private BigDecimal balanceAmount; + + /** + * 状态 + */ + @ExcelProperty(value = "状态") + private String status; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/domain/vo/WmsReceivableVo.java b/klp-wms/src/main/java/com/klp/domain/vo/WmsReceivableVo.java new file mode 100644 index 00000000..6c46da5c --- /dev/null +++ b/klp-wms/src/main/java/com/klp/domain/vo/WmsReceivableVo.java @@ -0,0 +1,84 @@ +package com.klp.domain.vo; + +import java.math.BigDecimal; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import com.klp.common.annotation.ExcelDictFormat; +import com.klp.common.convert.ExcelDictConvert; +import lombok.Data; + + +/** + * 应收款管理(宽松版)视图对象 wms_receivable + * + * @author klp + * @date 2025-08-13 + */ +@Data +@ExcelIgnoreUnannotated +public class WmsReceivableVo { + + private static final long serialVersionUID = 1L; + + /** + * 应收ID(主键) + */ + @ExcelProperty(value = "应收ID", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "主=键") + private Long receivableId; + + /** + * 客户ID + */ + @ExcelProperty(value = "客户ID") + private Long customerId; + + /** + * 订单ID + */ + @ExcelProperty(value = "订单ID") + private Long orderId; + + /** + * 到期日 + */ + @ExcelProperty(value = "到期日") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date dueDate; + + /** + * 应收金额(可为负数用于调整) + */ + @ExcelProperty(value = "应收金额", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "可=为负数用于调整") + private BigDecimal amount; + + /** + * 已收金额(可为负数用于冲销) + */ + @ExcelProperty(value = "已收金额", converter = ExcelDictConvert.class) + @ExcelDictFormat(readConverterExp = "可=为负数用于冲销") + private BigDecimal paidAmount; + + /** + * 未收金额 + */ + @ExcelProperty(value = "未收金额") + private BigDecimal balanceAmount; + + /** + * 状态 + */ + @ExcelProperty(value = "状态") + private String status; + + /** + * 备注 + */ + @ExcelProperty(value = "备注") + private String remark; + + +} diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsAccountMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsAccountMapper.java new file mode 100644 index 00000000..15e4511c --- /dev/null +++ b/klp-wms/src/main/java/com/klp/mapper/WmsAccountMapper.java @@ -0,0 +1,15 @@ +package com.klp.mapper; + +import com.klp.domain.WmsAccount; +import com.klp.domain.vo.WmsAccountVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 会计科目Mapper接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface WmsAccountMapper extends BaseMapperPlus { + +} diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsFinancialDocumentMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsFinancialDocumentMapper.java new file mode 100644 index 00000000..9f0372db --- /dev/null +++ b/klp-wms/src/main/java/com/klp/mapper/WmsFinancialDocumentMapper.java @@ -0,0 +1,15 @@ +package com.klp.mapper; + +import com.klp.domain.WmsFinancialDocument; +import com.klp.domain.vo.WmsFinancialDocumentVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 财务单据Mapper接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface WmsFinancialDocumentMapper extends BaseMapperPlus { + +} diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsJournalEntryMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsJournalEntryMapper.java new file mode 100644 index 00000000..47a390f6 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/mapper/WmsJournalEntryMapper.java @@ -0,0 +1,15 @@ +package com.klp.mapper; + +import com.klp.domain.WmsJournalEntry; +import com.klp.domain.vo.WmsJournalEntryVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 日记账凭证(宽松版)Mapper接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface WmsJournalEntryMapper extends BaseMapperPlus { + +} diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsOrderProfitMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsOrderProfitMapper.java new file mode 100644 index 00000000..b432dcc3 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/mapper/WmsOrderProfitMapper.java @@ -0,0 +1,15 @@ +package com.klp.mapper; + +import com.klp.domain.WmsOrderProfit; +import com.klp.domain.vo.WmsOrderProfitVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 订单盈亏Mapper接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface WmsOrderProfitMapper extends BaseMapperPlus { + +} diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsPayableMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsPayableMapper.java new file mode 100644 index 00000000..178250ed --- /dev/null +++ b/klp-wms/src/main/java/com/klp/mapper/WmsPayableMapper.java @@ -0,0 +1,15 @@ +package com.klp.mapper; + +import com.klp.domain.WmsPayable; +import com.klp.domain.vo.WmsPayableVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 应付款管理(宽松版)Mapper接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface WmsPayableMapper extends BaseMapperPlus { + +} diff --git a/klp-wms/src/main/java/com/klp/mapper/WmsReceivableMapper.java b/klp-wms/src/main/java/com/klp/mapper/WmsReceivableMapper.java new file mode 100644 index 00000000..fec2e241 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/mapper/WmsReceivableMapper.java @@ -0,0 +1,15 @@ +package com.klp.mapper; + +import com.klp.domain.WmsReceivable; +import com.klp.domain.vo.WmsReceivableVo; +import com.klp.common.core.mapper.BaseMapperPlus; + +/** + * 应收款管理(宽松版)Mapper接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface WmsReceivableMapper extends BaseMapperPlus { + +} diff --git a/klp-wms/src/main/java/com/klp/service/IWmsAccountService.java b/klp-wms/src/main/java/com/klp/service/IWmsAccountService.java new file mode 100644 index 00000000..562f401d --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/IWmsAccountService.java @@ -0,0 +1,43 @@ +package com.klp.service; + +import com.klp.domain.WmsAccount; +import com.klp.domain.vo.WmsAccountVo; +import com.klp.domain.bo.WmsAccountBo; + +import java.util.Collection; +import java.util.List; + +/** + * 会计科目Service接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface IWmsAccountService { + + /** + * 查询会计科目 + */ + WmsAccountVo queryById(Long accountId); + + + /** + * 查询会计科目列表 + */ + List queryList(WmsAccountBo bo); + + /** + * 新增会计科目 + */ + Boolean insertByBo(WmsAccountBo bo); + + /** + * 修改会计科目 + */ + Boolean updateByBo(WmsAccountBo bo); + + /** + * 校验并批量删除会计科目信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-wms/src/main/java/com/klp/service/IWmsFinancialDocumentService.java b/klp-wms/src/main/java/com/klp/service/IWmsFinancialDocumentService.java new file mode 100644 index 00000000..a8817e4f --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/IWmsFinancialDocumentService.java @@ -0,0 +1,49 @@ +package com.klp.service; + +import com.klp.domain.WmsFinancialDocument; +import com.klp.domain.vo.WmsFinancialDocumentVo; +import com.klp.domain.bo.WmsFinancialDocumentBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 财务单据Service接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface IWmsFinancialDocumentService { + + /** + * 查询财务单据 + */ + WmsFinancialDocumentVo queryById(Long documentId); + + /** + * 查询财务单据列表 + */ + TableDataInfo queryPageList(WmsFinancialDocumentBo bo, PageQuery pageQuery); + + /** + * 查询财务单据列表 + */ + List queryList(WmsFinancialDocumentBo bo); + + /** + * 新增财务单据 + */ + Boolean insertByBo(WmsFinancialDocumentBo bo); + + /** + * 修改财务单据 + */ + Boolean updateByBo(WmsFinancialDocumentBo bo); + + /** + * 校验并批量删除财务单据信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-wms/src/main/java/com/klp/service/IWmsJournalEntryService.java b/klp-wms/src/main/java/com/klp/service/IWmsJournalEntryService.java new file mode 100644 index 00000000..8b6bfe4e --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/IWmsJournalEntryService.java @@ -0,0 +1,49 @@ +package com.klp.service; + +import com.klp.domain.WmsJournalEntry; +import com.klp.domain.vo.WmsJournalEntryVo; +import com.klp.domain.bo.WmsJournalEntryBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 日记账凭证(宽松版)Service接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface IWmsJournalEntryService { + + /** + * 查询日记账凭证(宽松版) + */ + WmsJournalEntryVo queryById(Long entryId); + + /** + * 查询日记账凭证(宽松版)列表 + */ + TableDataInfo queryPageList(WmsJournalEntryBo bo, PageQuery pageQuery); + + /** + * 查询日记账凭证(宽松版)列表 + */ + List queryList(WmsJournalEntryBo bo); + + /** + * 新增日记账凭证(宽松版) + */ + Boolean insertByBo(WmsJournalEntryBo bo); + + /** + * 修改日记账凭证(宽松版) + */ + Boolean updateByBo(WmsJournalEntryBo bo); + + /** + * 校验并批量删除日记账凭证(宽松版)信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-wms/src/main/java/com/klp/service/IWmsOrderProfitService.java b/klp-wms/src/main/java/com/klp/service/IWmsOrderProfitService.java new file mode 100644 index 00000000..f3b2b96a --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/IWmsOrderProfitService.java @@ -0,0 +1,49 @@ +package com.klp.service; + +import com.klp.domain.WmsOrderProfit; +import com.klp.domain.vo.WmsOrderProfitVo; +import com.klp.domain.bo.WmsOrderProfitBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 订单盈亏Service接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface IWmsOrderProfitService { + + /** + * 查询订单盈亏 + */ + WmsOrderProfitVo queryById(Long profitId); + + /** + * 查询订单盈亏列表 + */ + TableDataInfo queryPageList(WmsOrderProfitBo bo, PageQuery pageQuery); + + /** + * 查询订单盈亏列表 + */ + List queryList(WmsOrderProfitBo bo); + + /** + * 新增订单盈亏 + */ + Boolean insertByBo(WmsOrderProfitBo bo); + + /** + * 修改订单盈亏 + */ + Boolean updateByBo(WmsOrderProfitBo bo); + + /** + * 校验并批量删除订单盈亏信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-wms/src/main/java/com/klp/service/IWmsPayableService.java b/klp-wms/src/main/java/com/klp/service/IWmsPayableService.java new file mode 100644 index 00000000..7a7c6c45 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/IWmsPayableService.java @@ -0,0 +1,49 @@ +package com.klp.service; + +import com.klp.domain.WmsPayable; +import com.klp.domain.vo.WmsPayableVo; +import com.klp.domain.bo.WmsPayableBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 应付款管理(宽松版)Service接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface IWmsPayableService { + + /** + * 查询应付款管理(宽松版) + */ + WmsPayableVo queryById(Long payableId); + + /** + * 查询应付款管理(宽松版)列表 + */ + TableDataInfo queryPageList(WmsPayableBo bo, PageQuery pageQuery); + + /** + * 查询应付款管理(宽松版)列表 + */ + List queryList(WmsPayableBo bo); + + /** + * 新增应付款管理(宽松版) + */ + Boolean insertByBo(WmsPayableBo bo); + + /** + * 修改应付款管理(宽松版) + */ + Boolean updateByBo(WmsPayableBo bo); + + /** + * 校验并批量删除应付款管理(宽松版)信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-wms/src/main/java/com/klp/service/IWmsReceivableService.java b/klp-wms/src/main/java/com/klp/service/IWmsReceivableService.java new file mode 100644 index 00000000..a1880ff2 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/IWmsReceivableService.java @@ -0,0 +1,49 @@ +package com.klp.service; + +import com.klp.domain.WmsReceivable; +import com.klp.domain.vo.WmsReceivableVo; +import com.klp.domain.bo.WmsReceivableBo; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 应收款管理(宽松版)Service接口 + * + * @author klp + * @date 2025-08-13 + */ +public interface IWmsReceivableService { + + /** + * 查询应收款管理(宽松版) + */ + WmsReceivableVo queryById(Long receivableId); + + /** + * 查询应收款管理(宽松版)列表 + */ + TableDataInfo queryPageList(WmsReceivableBo bo, PageQuery pageQuery); + + /** + * 查询应收款管理(宽松版)列表 + */ + List queryList(WmsReceivableBo bo); + + /** + * 新增应收款管理(宽松版) + */ + Boolean insertByBo(WmsReceivableBo bo); + + /** + * 修改应收款管理(宽松版) + */ + Boolean updateByBo(WmsReceivableBo bo); + + /** + * 校验并批量删除应收款管理(宽松版)信息 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsAccountServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsAccountServiceImpl.java new file mode 100644 index 00000000..9dbddf2a --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsAccountServiceImpl.java @@ -0,0 +1,101 @@ +package com.klp.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.domain.bo.WmsAccountBo; +import com.klp.domain.vo.WmsAccountVo; +import com.klp.domain.WmsAccount; +import com.klp.mapper.WmsAccountMapper; +import com.klp.service.IWmsAccountService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 会计科目Service业务层处理 + * + * @author klp + * @date 2025-08-13 + */ +@RequiredArgsConstructor +@Service +public class WmsAccountServiceImpl implements IWmsAccountService { + + private final WmsAccountMapper baseMapper; + + /** + * 查询会计科目 + */ + @Override + public WmsAccountVo queryById(Long accountId){ + return baseMapper.selectVoById(accountId); + } + + + /** + * 查询会计科目列表 + */ + @Override + public List queryList(WmsAccountBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(WmsAccountBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getAccountCode()), WmsAccount::getAccountCode, bo.getAccountCode()); + lqw.like(StringUtils.isNotBlank(bo.getAccountName()), WmsAccount::getAccountName, bo.getAccountName()); + lqw.eq(StringUtils.isNotBlank(bo.getAccountType()), WmsAccount::getAccountType, bo.getAccountType()); + lqw.eq(bo.getParentId() != null, WmsAccount::getParentId, bo.getParentId()); + lqw.eq(bo.getBalance() != null, WmsAccount::getBalance, bo.getBalance()); + return lqw; + } + + /** + * 新增会计科目 + */ + @Override + public Boolean insertByBo(WmsAccountBo bo) { + WmsAccount add = BeanUtil.toBean(bo, WmsAccount.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setAccountId(add.getAccountId()); + } + return flag; + } + + /** + * 修改会计科目 + */ + @Override + public Boolean updateByBo(WmsAccountBo bo) { + WmsAccount update = BeanUtil.toBean(bo, WmsAccount.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(WmsAccount entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除会计科目 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsFinancialDocumentServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsFinancialDocumentServiceImpl.java new file mode 100644 index 00000000..77f21b18 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsFinancialDocumentServiceImpl.java @@ -0,0 +1,114 @@ +package com.klp.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.domain.bo.WmsFinancialDocumentBo; +import com.klp.domain.vo.WmsFinancialDocumentVo; +import com.klp.domain.WmsFinancialDocument; +import com.klp.mapper.WmsFinancialDocumentMapper; +import com.klp.service.IWmsFinancialDocumentService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 财务单据Service业务层处理 + * + * @author klp + * @date 2025-08-13 + */ +@RequiredArgsConstructor +@Service +public class WmsFinancialDocumentServiceImpl implements IWmsFinancialDocumentService { + + private final WmsFinancialDocumentMapper baseMapper; + + /** + * 查询财务单据 + */ + @Override + public WmsFinancialDocumentVo queryById(Long documentId){ + return baseMapper.selectVoById(documentId); + } + + /** + * 查询财务单据列表 + */ + @Override + public TableDataInfo queryPageList(WmsFinancialDocumentBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询财务单据列表 + */ + @Override + public List queryList(WmsFinancialDocumentBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(WmsFinancialDocumentBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getDocNo()), WmsFinancialDocument::getDocNo, bo.getDocNo()); + lqw.eq(StringUtils.isNotBlank(bo.getDocType()), WmsFinancialDocument::getDocType, bo.getDocType()); + lqw.eq(bo.getDocDate() != null, WmsFinancialDocument::getDocDate, bo.getDocDate()); + lqw.eq(bo.getAmount() != null, WmsFinancialDocument::getAmount, bo.getAmount()); + lqw.eq(bo.getRelatedOrderId() != null, WmsFinancialDocument::getRelatedOrderId, bo.getRelatedOrderId()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), WmsFinancialDocument::getStatus, bo.getStatus()); + return lqw; + } + + /** + * 新增财务单据 + */ + @Override + public Boolean insertByBo(WmsFinancialDocumentBo bo) { + WmsFinancialDocument add = BeanUtil.toBean(bo, WmsFinancialDocument.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setDocumentId(add.getDocumentId()); + } + return flag; + } + + /** + * 修改财务单据 + */ + @Override + public Boolean updateByBo(WmsFinancialDocumentBo bo) { + WmsFinancialDocument update = BeanUtil.toBean(bo, WmsFinancialDocument.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(WmsFinancialDocument entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除财务单据 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsJournalEntryServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsJournalEntryServiceImpl.java new file mode 100644 index 00000000..ec8c9bb8 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsJournalEntryServiceImpl.java @@ -0,0 +1,117 @@ +package com.klp.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.domain.bo.WmsJournalEntryBo; +import com.klp.domain.vo.WmsJournalEntryVo; +import com.klp.domain.WmsJournalEntry; +import com.klp.mapper.WmsJournalEntryMapper; +import com.klp.service.IWmsJournalEntryService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 日记账凭证(宽松版)Service业务层处理 + * + * @author klp + * @date 2025-08-13 + */ +@RequiredArgsConstructor +@Service +public class WmsJournalEntryServiceImpl implements IWmsJournalEntryService { + + private final WmsJournalEntryMapper baseMapper; + + /** + * 查询日记账凭证(宽松版) + */ + @Override + public WmsJournalEntryVo queryById(Long entryId){ + return baseMapper.selectVoById(entryId); + } + + /** + * 查询日记账凭证(宽松版)列表 + */ + @Override + public TableDataInfo queryPageList(WmsJournalEntryBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询日记账凭证(宽松版)列表 + */ + @Override + public List queryList(WmsJournalEntryBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(WmsJournalEntryBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(StringUtils.isNotBlank(bo.getVoucherNo()), WmsJournalEntry::getVoucherNo, bo.getVoucherNo()); + lqw.eq(bo.getLineNo() != null, WmsJournalEntry::getLineNo, bo.getLineNo()); + lqw.eq(bo.getEntryDate() != null, WmsJournalEntry::getEntryDate, bo.getEntryDate()); + lqw.eq(bo.getAccountId() != null, WmsJournalEntry::getAccountId, bo.getAccountId()); + lqw.eq(bo.getDebitAmount() != null, WmsJournalEntry::getDebitAmount, bo.getDebitAmount()); + lqw.eq(bo.getCreditAmount() != null, WmsJournalEntry::getCreditAmount, bo.getCreditAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getReferenceNo()), WmsJournalEntry::getReferenceNo, bo.getReferenceNo()); + lqw.eq(bo.getRelatedOrderId() != null, WmsJournalEntry::getRelatedOrderId, bo.getRelatedOrderId()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), WmsJournalEntry::getStatus, bo.getStatus()); + return lqw; + } + + /** + * 新增日记账凭证(宽松版) + */ + @Override + public Boolean insertByBo(WmsJournalEntryBo bo) { + WmsJournalEntry add = BeanUtil.toBean(bo, WmsJournalEntry.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setEntryId(add.getEntryId()); + } + return flag; + } + + /** + * 修改日记账凭证(宽松版) + */ + @Override + public Boolean updateByBo(WmsJournalEntryBo bo) { + WmsJournalEntry update = BeanUtil.toBean(bo, WmsJournalEntry.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(WmsJournalEntry entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除日记账凭证(宽松版) + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsOrderProfitServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsOrderProfitServiceImpl.java new file mode 100644 index 00000000..59b9424b --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsOrderProfitServiceImpl.java @@ -0,0 +1,112 @@ +package com.klp.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.domain.bo.WmsOrderProfitBo; +import com.klp.domain.vo.WmsOrderProfitVo; +import com.klp.domain.WmsOrderProfit; +import com.klp.mapper.WmsOrderProfitMapper; +import com.klp.service.IWmsOrderProfitService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 订单盈亏Service业务层处理 + * + * @author klp + * @date 2025-08-13 + */ +@RequiredArgsConstructor +@Service +public class WmsOrderProfitServiceImpl implements IWmsOrderProfitService { + + private final WmsOrderProfitMapper baseMapper; + + /** + * 查询订单盈亏 + */ + @Override + public WmsOrderProfitVo queryById(Long profitId){ + return baseMapper.selectVoById(profitId); + } + + /** + * 查询订单盈亏列表 + */ + @Override + public TableDataInfo queryPageList(WmsOrderProfitBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询订单盈亏列表 + */ + @Override + public List queryList(WmsOrderProfitBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(WmsOrderProfitBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getOrderId() != null, WmsOrderProfit::getOrderId, bo.getOrderId()); + lqw.eq(bo.getCostAmount() != null, WmsOrderProfit::getCostAmount, bo.getCostAmount()); + lqw.eq(bo.getRevenueAmount() != null, WmsOrderProfit::getRevenueAmount, bo.getRevenueAmount()); + lqw.eq(bo.getProfitAmount() != null, WmsOrderProfit::getProfitAmount, bo.getProfitAmount()); + lqw.eq(bo.getProfitRate() != null, WmsOrderProfit::getProfitRate, bo.getProfitRate()); + return lqw; + } + + /** + * 新增订单盈亏 + */ + @Override + public Boolean insertByBo(WmsOrderProfitBo bo) { + WmsOrderProfit add = BeanUtil.toBean(bo, WmsOrderProfit.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setProfitId(add.getProfitId()); + } + return flag; + } + + /** + * 修改订单盈亏 + */ + @Override + public Boolean updateByBo(WmsOrderProfitBo bo) { + WmsOrderProfit update = BeanUtil.toBean(bo, WmsOrderProfit.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(WmsOrderProfit entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除订单盈亏 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsPayableServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsPayableServiceImpl.java new file mode 100644 index 00000000..617ed96c --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsPayableServiceImpl.java @@ -0,0 +1,115 @@ +package com.klp.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.domain.bo.WmsPayableBo; +import com.klp.domain.vo.WmsPayableVo; +import com.klp.domain.WmsPayable; +import com.klp.mapper.WmsPayableMapper; +import com.klp.service.IWmsPayableService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 应付款管理(宽松版)Service业务层处理 + * + * @author klp + * @date 2025-08-13 + */ +@RequiredArgsConstructor +@Service +public class WmsPayableServiceImpl implements IWmsPayableService { + + private final WmsPayableMapper baseMapper; + + /** + * 查询应付款管理(宽松版) + */ + @Override + public WmsPayableVo queryById(Long payableId){ + return baseMapper.selectVoById(payableId); + } + + /** + * 查询应付款管理(宽松版)列表 + */ + @Override + public TableDataInfo queryPageList(WmsPayableBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询应付款管理(宽松版)列表 + */ + @Override + public List queryList(WmsPayableBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(WmsPayableBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getSupplierId() != null, WmsPayable::getSupplierId, bo.getSupplierId()); + lqw.eq(bo.getOrderId() != null, WmsPayable::getOrderId, bo.getOrderId()); + lqw.eq(bo.getDueDate() != null, WmsPayable::getDueDate, bo.getDueDate()); + lqw.eq(bo.getAmount() != null, WmsPayable::getAmount, bo.getAmount()); + lqw.eq(bo.getPaidAmount() != null, WmsPayable::getPaidAmount, bo.getPaidAmount()); + lqw.eq(bo.getBalanceAmount() != null, WmsPayable::getBalanceAmount, bo.getBalanceAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), WmsPayable::getStatus, bo.getStatus()); + return lqw; + } + + /** + * 新增应付款管理(宽松版) + */ + @Override + public Boolean insertByBo(WmsPayableBo bo) { + WmsPayable add = BeanUtil.toBean(bo, WmsPayable.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setPayableId(add.getPayableId()); + } + return flag; + } + + /** + * 修改应付款管理(宽松版) + */ + @Override + public Boolean updateByBo(WmsPayableBo bo) { + WmsPayable update = BeanUtil.toBean(bo, WmsPayable.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(WmsPayable entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除应付款管理(宽松版) + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-wms/src/main/java/com/klp/service/impl/WmsReceivableServiceImpl.java b/klp-wms/src/main/java/com/klp/service/impl/WmsReceivableServiceImpl.java new file mode 100644 index 00000000..52881851 --- /dev/null +++ b/klp-wms/src/main/java/com/klp/service/impl/WmsReceivableServiceImpl.java @@ -0,0 +1,115 @@ +package com.klp.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.klp.common.core.page.TableDataInfo; +import com.klp.common.core.domain.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.klp.common.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import com.klp.domain.bo.WmsReceivableBo; +import com.klp.domain.vo.WmsReceivableVo; +import com.klp.domain.WmsReceivable; +import com.klp.mapper.WmsReceivableMapper; +import com.klp.service.IWmsReceivableService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 应收款管理(宽松版)Service业务层处理 + * + * @author klp + * @date 2025-08-13 + */ +@RequiredArgsConstructor +@Service +public class WmsReceivableServiceImpl implements IWmsReceivableService { + + private final WmsReceivableMapper baseMapper; + + /** + * 查询应收款管理(宽松版) + */ + @Override + public WmsReceivableVo queryById(Long receivableId){ + return baseMapper.selectVoById(receivableId); + } + + /** + * 查询应收款管理(宽松版)列表 + */ + @Override + public TableDataInfo queryPageList(WmsReceivableBo bo, PageQuery pageQuery) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询应收款管理(宽松版)列表 + */ + @Override + public List queryList(WmsReceivableBo bo) { + LambdaQueryWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private LambdaQueryWrapper buildQueryWrapper(WmsReceivableBo bo) { + Map params = bo.getParams(); + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(bo.getCustomerId() != null, WmsReceivable::getCustomerId, bo.getCustomerId()); + lqw.eq(bo.getOrderId() != null, WmsReceivable::getOrderId, bo.getOrderId()); + lqw.eq(bo.getDueDate() != null, WmsReceivable::getDueDate, bo.getDueDate()); + lqw.eq(bo.getAmount() != null, WmsReceivable::getAmount, bo.getAmount()); + lqw.eq(bo.getPaidAmount() != null, WmsReceivable::getPaidAmount, bo.getPaidAmount()); + lqw.eq(bo.getBalanceAmount() != null, WmsReceivable::getBalanceAmount, bo.getBalanceAmount()); + lqw.eq(StringUtils.isNotBlank(bo.getStatus()), WmsReceivable::getStatus, bo.getStatus()); + return lqw; + } + + /** + * 新增应收款管理(宽松版) + */ + @Override + public Boolean insertByBo(WmsReceivableBo bo) { + WmsReceivable add = BeanUtil.toBean(bo, WmsReceivable.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setReceivableId(add.getReceivableId()); + } + return flag; + } + + /** + * 修改应收款管理(宽松版) + */ + @Override + public Boolean updateByBo(WmsReceivableBo bo) { + WmsReceivable update = BeanUtil.toBean(bo, WmsReceivable.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(WmsReceivable entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 批量删除应收款管理(宽松版) + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteBatchIds(ids) > 0; + } +} diff --git a/klp-wms/src/main/resources/mapper/klp/WmsAccountMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsAccountMapper.xml new file mode 100644 index 00000000..42a29d17 --- /dev/null +++ b/klp-wms/src/main/resources/mapper/klp/WmsAccountMapper.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-wms/src/main/resources/mapper/klp/WmsFinancialDocumentMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsFinancialDocumentMapper.xml new file mode 100644 index 00000000..4c71dda7 --- /dev/null +++ b/klp-wms/src/main/resources/mapper/klp/WmsFinancialDocumentMapper.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-wms/src/main/resources/mapper/klp/WmsJournalEntryMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsJournalEntryMapper.xml new file mode 100644 index 00000000..75c704da --- /dev/null +++ b/klp-wms/src/main/resources/mapper/klp/WmsJournalEntryMapper.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-wms/src/main/resources/mapper/klp/WmsOrderProfitMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsOrderProfitMapper.xml new file mode 100644 index 00000000..b01a8b33 --- /dev/null +++ b/klp-wms/src/main/resources/mapper/klp/WmsOrderProfitMapper.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-wms/src/main/resources/mapper/klp/WmsPayableMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsPayableMapper.xml new file mode 100644 index 00000000..acc31481 --- /dev/null +++ b/klp-wms/src/main/resources/mapper/klp/WmsPayableMapper.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/klp-wms/src/main/resources/mapper/klp/WmsReceivableMapper.xml b/klp-wms/src/main/resources/mapper/klp/WmsReceivableMapper.xml new file mode 100644 index 00000000..842b1bc7 --- /dev/null +++ b/klp-wms/src/main/resources/mapper/klp/WmsReceivableMapper.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + +