From b0b3fae096a6df34d2552800789172d85b4ff7fb Mon Sep 17 00:00:00 2001 From: linfso Date: Mon, 17 Feb 2025 19:45:02 +0800 Subject: [PATCH] md --- .../emis/EmisTmsCostFeeFeeitemController.java | 134 +++++++++++++++ .../emis/EmisTmsCostFeeSplitController.java | 134 +++++++++++++++ .../erp/emis/domain/EmisTmsCostFee.java | 3 + .../emis/domain/EmisTmsCostFeeFeeitem.java | 53 ++++++ .../erp/emis/domain/EmisTmsCostFeeSplit.java | 57 +++++++ .../mapper/EmisTmsCostFeeFeeitemMapper.java | 87 ++++++++++ .../mapper/EmisTmsCostFeeSplitMapper.java | 80 +++++++++ .../IEmisTmsCostFeeFeeitemService.java | 78 +++++++++ .../service/IEmisTmsCostFeeSplitService.java | 78 +++++++++ .../EmisTmsCostFeeFeeitemServiceImpl.java | 117 +++++++++++++ .../impl/EmisTmsCostFeeServiceImpl.java | 32 +++- .../impl/EmisTmsCostFeeSplitServiceImpl.java | 117 +++++++++++++ .../mapper/EmisTmsCostFeeFeeitemMapper.xml | 138 +++++++++++++++ .../mapper/EmisTmsCostFeeSplitMapper.xml | 158 ++++++++++++++++++ 14 files changed, 1262 insertions(+), 4 deletions(-) create mode 100644 emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeFeeitemController.java create mode 100644 emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeSplitController.java create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFeeFeeitem.java create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFeeSplit.java create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsCostFeeFeeitemMapper.java create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsCostFeeSplitMapper.java create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeFeeitemService.java create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeSplitService.java create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeFeeitemServiceImpl.java create mode 100644 emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeSplitServiceImpl.java create mode 100644 emis-biz/src/main/resources/mapper/EmisTmsCostFeeFeeitemMapper.xml create mode 100644 emis-biz/src/main/resources/mapper/EmisTmsCostFeeSplitMapper.xml diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeFeeitemController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeFeeitemController.java new file mode 100644 index 000000000..ec20a4900 --- /dev/null +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeFeeitemController.java @@ -0,0 +1,134 @@ + +/** + * @Project: emis + * @Title: EmisTmsCostFeeFeeitemController.java + * @author linfso + * @date 2025-02-17 10:33:19 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用条目 控制器

+ */ + +package com.xdadan.erp.web.emis; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.xdadan.erp.common.annotation.Log; +import com.xdadan.erp.common.core.controller.BaseController; +import com.xdadan.erp.common.core.domain.AjaxResult; +import com.xdadan.erp.common.core.page.TableDataInfo; +import com.xdadan.erp.common.enums.BusinessType; +import com.xdadan.erp.common.utils.StringUtils; +import com.xdadan.erp.common.utils.poi.ExcelUtil; + +import com.xdadan.erp.emis.domain.EmisTmsCostFeeFeeitem; +import com.xdadan.erp.emis.service.IEmisTmsCostFeeFeeitemService; + +/** + * 成本费用条目Controller + * + * @author linfso + * @date 2025-02-17 10:33:19 + */ +@RestController +@RequestMapping("/emis/emisTmsCostFeeFeeitem") +public class EmisTmsCostFeeFeeitemController extends BaseController +{ + @Autowired + private IEmisTmsCostFeeFeeitemService emisTmsCostFeeFeeitemService; + + /** + * 查询成本费用条目列表 + */ +// @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeFeeitem:list')") + @GetMapping("/list") + public TableDataInfo list(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + startPage(); + List list = emisTmsCostFeeFeeitemService.selectEmisTmsCostFeeFeeitemList(emisTmsCostFeeFeeitem); + return getDataTable(list); + } + + + /** + * 检查是否重复 + * + * @param emisTmsCostFeeFeeitem + * @return 数量 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeFeeitem:list')") + @GetMapping("/checkUnique") + public AjaxResult checkUnique(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + int cnt=emisTmsCostFeeFeeitemService.checkUnique(emisTmsCostFeeFeeitem); + return AjaxResult.success("检查成功",cnt); + } + + + /** + * 导出成本费用条目列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeFeeitem:export')") + @Log(title = "成本费用条目", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + List list = emisTmsCostFeeFeeitemService.selectEmisTmsCostFeeFeeitemList(emisTmsCostFeeFeeitem); + ExcelUtil util = new ExcelUtil(EmisTmsCostFeeFeeitem.class); + util.exportExcel(response, list, "成本费用条目数据"); + } + + /** + * 获取成本费用条目详细信息 + */ +// @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeFeeitem:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(emisTmsCostFeeFeeitemService.selectEmisTmsCostFeeFeeitemById(id)); + } + + /** + * 新增成本费用条目 + */ +// @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeFeeitem:add')") + @Log(title = "成本费用条目", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + return toAjax(emisTmsCostFeeFeeitemService.insertEmisTmsCostFeeFeeitem(emisTmsCostFeeFeeitem)); + } + + /** + * 修改成本费用条目 + */ +// @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeFeeitem:edit')") + @Log(title = "成本费用条目", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + return toAjax(emisTmsCostFeeFeeitemService.updateEmisTmsCostFeeFeeitem(emisTmsCostFeeFeeitem)); + } + + /** + * 删除成本费用条目 + */ +// @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeFeeitem:remove')") + @Log(title = "成本费用条目", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(emisTmsCostFeeFeeitemService.deleteEmisTmsCostFeeFeeitemByIds(ids)); + } +} diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeSplitController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeSplitController.java new file mode 100644 index 000000000..d79ed1d84 --- /dev/null +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisTmsCostFeeSplitController.java @@ -0,0 +1,134 @@ + +/** + * @Project: emis + * @Title: EmisTmsCostFeeSplitController.java + * @author linfso + * @date 2025-02-17 11:42:30 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用分摊明细 控制器

+ */ + +package com.xdadan.erp.web.emis; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.xdadan.erp.common.annotation.Log; +import com.xdadan.erp.common.core.controller.BaseController; +import com.xdadan.erp.common.core.domain.AjaxResult; +import com.xdadan.erp.common.core.page.TableDataInfo; +import com.xdadan.erp.common.enums.BusinessType; +import com.xdadan.erp.common.utils.StringUtils; +import com.xdadan.erp.common.utils.poi.ExcelUtil; + +import com.xdadan.erp.emis.domain.EmisTmsCostFeeSplit; +import com.xdadan.erp.emis.service.IEmisTmsCostFeeSplitService; + +/** + * 成本费用分摊明细Controller + * + * @author linfso + * @date 2025-02-17 11:42:30 + */ +@RestController +@RequestMapping("/emis/emisTmsCostFeeSplit") +public class EmisTmsCostFeeSplitController extends BaseController +{ + @Autowired + private IEmisTmsCostFeeSplitService emisTmsCostFeeSplitService; + + /** + * 查询成本费用分摊明细列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeSplit:list')") + @GetMapping("/list") + public TableDataInfo list(EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + startPage(); + List list = emisTmsCostFeeSplitService.selectEmisTmsCostFeeSplitList(emisTmsCostFeeSplit); + return getDataTable(list); + } + + + /** + * 检查是否重复 + * + * @param emisTmsCostFeeSplit + * @return 数量 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeSplit:list')") + @GetMapping("/checkUnique") + public AjaxResult checkUnique(EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + int cnt=emisTmsCostFeeSplitService.checkUnique(emisTmsCostFeeSplit); + return AjaxResult.success("检查成功",cnt); + } + + + /** + * 导出成本费用分摊明细列表 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeSplit:export')") + @Log(title = "成本费用分摊明细", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + List list = emisTmsCostFeeSplitService.selectEmisTmsCostFeeSplitList(emisTmsCostFeeSplit); + ExcelUtil util = new ExcelUtil(EmisTmsCostFeeSplit.class); + util.exportExcel(response, list, "成本费用分摊明细数据"); + } + + /** + * 获取成本费用分摊明细详细信息 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeSplit:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(emisTmsCostFeeSplitService.selectEmisTmsCostFeeSplitById(id)); + } + + /** + * 新增成本费用分摊明细 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeSplit:add')") + @Log(title = "成本费用分摊明细", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + return toAjax(emisTmsCostFeeSplitService.insertEmisTmsCostFeeSplit(emisTmsCostFeeSplit)); + } + + /** + * 修改成本费用分摊明细 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeSplit:edit')") + @Log(title = "成本费用分摊明细", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + return toAjax(emisTmsCostFeeSplitService.updateEmisTmsCostFeeSplit(emisTmsCostFeeSplit)); + } + + /** + * 删除成本费用分摊明细 + */ + @PreAuthorize("@ss.hasPermi('emis:emisTmsCostFeeSplit:remove')") + @Log(title = "成本费用分摊明细", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(emisTmsCostFeeSplitService.deleteEmisTmsCostFeeSplitByIds(ids)); + } +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFee.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFee.java index 2901fb951..12d1ba7fb 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFee.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFee.java @@ -110,4 +110,7 @@ public class EmisTmsCostFee extends BaseEntity // 关联单号 private List billRelList; + // 关联费用 + List feeItemList; + } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFeeFeeitem.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFeeFeeitem.java new file mode 100644 index 000000000..9ba824a68 --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFeeFeeitem.java @@ -0,0 +1,53 @@ +/** + * @Project: emis + * @Title: EmisTmsCostFeeFeeitem.java + * @author linfso + * @date 2025-02-17 10:33:18 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用条目 实体类

+ */ + +package com.xdadan.erp.emis.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.xdadan.erp.common.annotation.Excel; +import com.xdadan.erp.common.core.domain.BaseEntity; +import com.xdadan.erp.common.core.domain.TreeEntity; +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + + +/** + * @ClassName EmisTmsCostFeeFeeitem + * @Description 成本费用条目 + * @author linfso + * @date 2025-02-17 10:33:18 + */ + @Data +public class EmisTmsCostFeeFeeitem extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /* id */ + private Long id; + /* 成本序号 */ + private String costNo; + /* 费用类型 */ + private String feeType; + /* 费用值 */ + private BigDecimal fee; + /* 费用币种 */ + private String currency; + /* 人民币汇率 */ + private BigDecimal currecyToCnyRate; + /* 实收人民币费用 */ + private BigDecimal cnyFee; + /* 排序 */ + private Integer orderNum; + +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFeeSplit.java b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFeeSplit.java new file mode 100644 index 000000000..0195a46ee --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/domain/EmisTmsCostFeeSplit.java @@ -0,0 +1,57 @@ +/** + * @Project: emis + * @Title: EmisTmsCostFeeSplit.java + * @author linfso + * @date 2025-02-17 11:42:29 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用分摊明细 实体类

+ */ + +package com.xdadan.erp.emis.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.xdadan.erp.common.annotation.Excel; +import com.xdadan.erp.common.core.domain.BaseEntity; +import com.xdadan.erp.common.core.domain.TreeEntity; +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import lombok.Data; + + +/** + * @ClassName EmisTmsCostFeeSplit + * @Description 成本费用分摊明细 + * @author linfso + * @date 2025-02-17 11:42:29 + */ + @Data +public class EmisTmsCostFeeSplit extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /* id */ + private Long id; + /* 支付序号 */ + private String costNo; + /* 费用项ID */ + private Long feeItemId; + /* 运单号 */ + private String billCode; + /* 成本费用类型 字典 emis_cost_fee_type */ + private String feeType; + /* 成本分摊类型 1-按重量 2-按体积 3-按票 */ + private String splitType; + /* 分摊成本 */ + private BigDecimal costFee; + /* 总体积 */ + private BigDecimal totalVolume; + /* 实际重量 */ + private BigDecimal billWeight; + /* 计算备注 */ + private String calcRemark; + +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsCostFeeFeeitemMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsCostFeeFeeitemMapper.java new file mode 100644 index 000000000..0dce230cd --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsCostFeeFeeitemMapper.java @@ -0,0 +1,87 @@ +/** + * @Project: emis + * @Title: EmisTmsCostFeeFeeitemMapper.java + * @author linfso + * @date 2025-02-17 10:33:18 + * @Copyright: ShangHai Doitinfo 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用条目 Mapper 接口

+ * Warning : This file is generate by ai tools,don't edit!!! + */ +package com.xdadan.erp.emis.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.xdadan.erp.emis.domain.EmisTmsCostFeeFeeitem; +/** + * @ClassName EmisTmsCostFeeFeeitemMapper + * @Description

成本费用条目 Mapper 接口

+ * @author linfso + * @date 2025-02-17 10:33:18 + */ +public interface EmisTmsCostFeeFeeitemMapper extends BaseMapper +{ + /** + * 主键查询 + * @param id + * @return + */ + public EmisTmsCostFeeFeeitem selectEmisTmsCostFeeFeeitemById(Long id); + + /** + * 查询列表 + * + * @param emisTmsCostFeeFeeitem + * @return 集合 + */ + public List selectEmisTmsCostFeeFeeitemList(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem); + + + /** + * 检查是否重复 + * + * @param emisTmsCostFeeFeeitem + * @return 数量 + */ + public int checkUnique(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem); + + + /** + * 新增 + * + * @param emisTmsCostFeeFeeitem + * @return + */ + public int insertEmisTmsCostFeeFeeitem(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem); + + /** + * 修改 + * + * @param emisTmsCostFeeFeeitem + * @return + */ + public int updateEmisTmsCostFeeFeeitem(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem); + + /** + * + * @param costNo + * @return + */ + public int deleteEmisTmsCostFeeFeeitemByCostNo(String costNo); + + /** + * 删除 + * + * @param id 主键 + * @return 结果 + */ + public int deleteEmisTmsCostFeeFeeitemById(Long id); + + /** + * 批量删除 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteEmisTmsCostFeeFeeitemByIds(Long[] ids); +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsCostFeeSplitMapper.java b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsCostFeeSplitMapper.java new file mode 100644 index 000000000..9a5115a95 --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/mapper/EmisTmsCostFeeSplitMapper.java @@ -0,0 +1,80 @@ +/** + * @Project: emis + * @Title: EmisTmsCostFeeSplitMapper.java + * @author linfso + * @date 2025-02-17 11:42:29 + * @Copyright: ShangHai Doitinfo 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用分摊明细 Mapper 接口

+ * Warning : This file is generate by ai tools,don't edit!!! + */ +package com.xdadan.erp.emis.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.xdadan.erp.emis.domain.EmisTmsCostFeeSplit; +/** + * @ClassName EmisTmsCostFeeSplitMapper + * @Description

成本费用分摊明细 Mapper 接口

+ * @author linfso + * @date 2025-02-17 11:42:29 + */ +public interface EmisTmsCostFeeSplitMapper extends BaseMapper +{ + /** + * 主键查询 + * @param id + * @return + */ + public EmisTmsCostFeeSplit selectEmisTmsCostFeeSplitById(Long id); + + /** + * 查询列表 + * + * @param emisTmsCostFeeSplit + * @return 集合 + */ + public List selectEmisTmsCostFeeSplitList(EmisTmsCostFeeSplit emisTmsCostFeeSplit); + + + /** + * 检查是否重复 + * + * @param emisTmsCostFeeSplit + * @return 数量 + */ + public int checkUnique(EmisTmsCostFeeSplit emisTmsCostFeeSplit); + + + /** + * 新增 + * + * @param emisTmsCostFeeSplit + * @return + */ + public int insertEmisTmsCostFeeSplit(EmisTmsCostFeeSplit emisTmsCostFeeSplit); + + /** + * 修改 + * + * @param emisTmsCostFeeSplit + * @return + */ + public int updateEmisTmsCostFeeSplit(EmisTmsCostFeeSplit emisTmsCostFeeSplit); + + /** + * 删除 + * + * @param id 主键 + * @return 结果 + */ + public int deleteEmisTmsCostFeeSplitById(Long id); + + /** + * 批量删除 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteEmisTmsCostFeeSplitByIds(Long[] ids); +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeFeeitemService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeFeeitemService.java new file mode 100644 index 000000000..94ec86246 --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeFeeitemService.java @@ -0,0 +1,78 @@ + /** + * @Project: emis + * @Title: EmisTmsCostFeeFeeitemService.java + * @author linfso + * @date 2025-02-17 10:33:19 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用条目 服务类接口

+ */ +package com.xdadan.erp.emis.service; + +import java.util.List; +import com.xdadan.erp.emis.domain.EmisTmsCostFeeFeeitem; + +/** + * @ClassName EmisTmsCostFeeFeeitemService + * @Description 成本费用条目 + * @author linfso + * @date 2025-02-17 10:33:19 + */ +public interface IEmisTmsCostFeeFeeitemService +{ + /** + * 主键查询 + * @param id + * @return + */ + public EmisTmsCostFeeFeeitem selectEmisTmsCostFeeFeeitemById(Long id); + + /** + * 查询成本费用条目列表 + * + * @param emisTmsCostFeeFeeitem 成本费用条目 + * @return 成本费用条目集合 + */ + public List selectEmisTmsCostFeeFeeitemList(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem); + + + /** + * 检查是否重复 + * + * @param emisTmsCostFeeFeeitem + * @return 数量 + */ + public int checkUnique(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem); + + /** + * 新增成本费用条目 + * + * @param emisTmsCostFeeFeeitem 成本费用条目 + * @return 结果 + */ + public int insertEmisTmsCostFeeFeeitem(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem); + + /** + * 修改成本费用条目 + * + * @param emisTmsCostFeeFeeitem 成本费用条目 + * @return 结果 + */ + public int updateEmisTmsCostFeeFeeitem(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem); + + /** + * 批量删除成本费用条目 + * + * @param ids 需要删除的成本费用条目主键集合 + * @return 结果 + */ + public int deleteEmisTmsCostFeeFeeitemByIds(Long[] ids); + + /** + * 删除成本费用条目信息 + * + * @param id 成本费用条目主键 + * @return 结果 + */ + public int deleteEmisTmsCostFeeFeeitemById(Long id); +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeSplitService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeSplitService.java new file mode 100644 index 000000000..59888a617 --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisTmsCostFeeSplitService.java @@ -0,0 +1,78 @@ + /** + * @Project: emis + * @Title: EmisTmsCostFeeSplitService.java + * @author linfso + * @date 2025-02-17 11:42:30 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用分摊明细 服务类接口

+ */ +package com.xdadan.erp.emis.service; + +import java.util.List; +import com.xdadan.erp.emis.domain.EmisTmsCostFeeSplit; + +/** + * @ClassName EmisTmsCostFeeSplitService + * @Description 成本费用分摊明细 + * @author linfso + * @date 2025-02-17 11:42:30 + */ +public interface IEmisTmsCostFeeSplitService +{ + /** + * 主键查询 + * @param id + * @return + */ + public EmisTmsCostFeeSplit selectEmisTmsCostFeeSplitById(Long id); + + /** + * 查询成本费用分摊明细列表 + * + * @param emisTmsCostFeeSplit 成本费用分摊明细 + * @return 成本费用分摊明细集合 + */ + public List selectEmisTmsCostFeeSplitList(EmisTmsCostFeeSplit emisTmsCostFeeSplit); + + + /** + * 检查是否重复 + * + * @param emisTmsCostFeeSplit + * @return 数量 + */ + public int checkUnique(EmisTmsCostFeeSplit emisTmsCostFeeSplit); + + /** + * 新增成本费用分摊明细 + * + * @param emisTmsCostFeeSplit 成本费用分摊明细 + * @return 结果 + */ + public int insertEmisTmsCostFeeSplit(EmisTmsCostFeeSplit emisTmsCostFeeSplit); + + /** + * 修改成本费用分摊明细 + * + * @param emisTmsCostFeeSplit 成本费用分摊明细 + * @return 结果 + */ + public int updateEmisTmsCostFeeSplit(EmisTmsCostFeeSplit emisTmsCostFeeSplit); + + /** + * 批量删除成本费用分摊明细 + * + * @param ids 需要删除的成本费用分摊明细主键集合 + * @return 结果 + */ + public int deleteEmisTmsCostFeeSplitByIds(Long[] ids); + + /** + * 删除成本费用分摊明细信息 + * + * @param id 成本费用分摊明细主键 + * @return 结果 + */ + public int deleteEmisTmsCostFeeSplitById(Long id); +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeFeeitemServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeFeeitemServiceImpl.java new file mode 100644 index 000000000..9266aa6a8 --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeFeeitemServiceImpl.java @@ -0,0 +1,117 @@ + /** + * @Project: emis + * @Title: EmisTmsCostFeeFeeitemServiceImpl.java + * @author linfso + * @date 2025-02-17 10:33:19 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用条目 实体类

+ */ + +package com.xdadan.erp.emis.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.xdadan.erp.emis.domain.EmisTmsCostFeeFeeitem; +import com.xdadan.erp.emis.mapper.EmisTmsCostFeeFeeitemMapper; +import com.xdadan.erp.emis.service.IEmisTmsCostFeeFeeitemService; + +/** + * 成本费用条目Service业务层处理 + * + * @author linfso + * @date 2025-02-17 10:33:19 + */ +@Service +public class EmisTmsCostFeeFeeitemServiceImpl implements IEmisTmsCostFeeFeeitemService +{ + @Autowired + private EmisTmsCostFeeFeeitemMapper emisTmsCostFeeFeeitemMapper; + + /** + * 查询成本费用条目 + * + * @param id 成本费用条目主键 + * @return 成本费用条目 + */ + @Override + public EmisTmsCostFeeFeeitem selectEmisTmsCostFeeFeeitemById(Long id) + { + return emisTmsCostFeeFeeitemMapper.selectEmisTmsCostFeeFeeitemById(id); + } + + + /** + * 查询成本费用条目列表 + * + * @param emisTmsCostFeeFeeitem 成本费用条目 + * @return 成本费用条目 + */ + @Override + public List selectEmisTmsCostFeeFeeitemList(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + return emisTmsCostFeeFeeitemMapper.selectEmisTmsCostFeeFeeitemList(emisTmsCostFeeFeeitem); + } + + /** + * 检查是否重复 + * + * @param emisTmsCostFeeFeeitem + * @return 数量 + */ + @Override + public int checkUnique(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + return emisTmsCostFeeFeeitemMapper.checkUnique(emisTmsCostFeeFeeitem); + } + + /** + * 新增成本费用条目 + * + * @param emisTmsCostFeeFeeitem 成本费用条目 + * @return 结果 + */ + @Override + public int insertEmisTmsCostFeeFeeitem(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + return emisTmsCostFeeFeeitemMapper.insertEmisTmsCostFeeFeeitem(emisTmsCostFeeFeeitem); + } + + /** + * 修改成本费用条目 + * + * @param emisTmsCostFeeFeeitem 成本费用条目 + * @return 结果 + */ + @Override + public int updateEmisTmsCostFeeFeeitem(EmisTmsCostFeeFeeitem emisTmsCostFeeFeeitem) + { + return emisTmsCostFeeFeeitemMapper.updateEmisTmsCostFeeFeeitem(emisTmsCostFeeFeeitem); + } + + /** + * 批量删除成本费用条目 + * + * @param ids 需要删除的成本费用条目主键 + * @return 结果 + */ + @Override + public int deleteEmisTmsCostFeeFeeitemByIds(Long[] ids) + { + return emisTmsCostFeeFeeitemMapper.deleteEmisTmsCostFeeFeeitemByIds(ids); + } + + /** + * 删除成本费用条目信息 + * + * @param id 成本费用条目主键 + * @return 结果 + */ + @Override + public int deleteEmisTmsCostFeeFeeitemById(Long id) + { + return emisTmsCostFeeFeeitemMapper.deleteEmisTmsCostFeeFeeitemById(id); + } + +} diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeServiceImpl.java index dcd7e7f49..d671aa170 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeServiceImpl.java @@ -17,16 +17,13 @@ import cn.hutool.core.collection.CollectionUtil; import com.xdadan.erp.emis.domain.*; import com.xdadan.erp.emis.domain.enumtype.EmisBizErrorType; import com.xdadan.erp.emis.domain.exception.EmisBizError; -import com.xdadan.erp.emis.mapper.EmisTmsCostFeeRelMapper; -import com.xdadan.erp.emis.mapper.EmisTmsCostProfitMapper; -import com.xdadan.erp.emis.mapper.EmisWaybillMapper; +import com.xdadan.erp.emis.mapper.*; import com.xdadan.erp.emis.utils.WaybillHelper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; -import com.xdadan.erp.emis.mapper.EmisTmsCostFeeMapper; import com.xdadan.erp.emis.service.IEmisTmsCostFeeService; import org.springframework.transaction.annotation.Transactional; @@ -46,6 +43,9 @@ public class EmisTmsCostFeeServiceImpl implements IEmisTmsCostFeeService @Autowired private EmisTmsCostFeeRelMapper emisTmsCostFeeRelMapper; + @Autowired + private EmisTmsCostFeeFeeitemMapper emisTmsCostFeeFeeitemMapper; + @Autowired private EmisTmsCostProfitMapper emisTmsCostProfitMapper; @@ -118,6 +118,17 @@ public class EmisTmsCostFeeServiceImpl implements IEmisTmsCostFeeService emisTmsCostFeeMapper.insertEmisTmsCostFee(emisTmsCostFee); + // 插入关联费用 + for (EmisTmsCostFeeFeeitem feeItem:emisTmsCostFee.getFeeItemList() + ) { + EmisTmsCostFeeFeeitem newFeeItem = new EmisTmsCostFeeFeeitem(); + newFeeItem.setCostNo(costNo); + newFeeItem.setFeeType(feeItem.getFeeType()); + newFeeItem.setFee(feeItem.getFee()); + newFeeItem.setCurrency(feeItem.getCurrency()); + emisTmsCostFeeFeeitemMapper.insertEmisTmsCostFeeFeeitem(newFeeItem); + } + // 计算分摊费用 // reCalcSplitCostFee(costNo); @@ -274,6 +285,19 @@ public class EmisTmsCostFeeServiceImpl implements IEmisTmsCostFeeService emisTmsCostFeeRelMapper.insertEmisTmsCostFeeRel(newCostFeeRel); } + // 删除旧的费用 + emisTmsCostFeeFeeitemMapper.deleteEmisTmsCostFeeFeeitemByCostNo(emisTmsCostFee.getCostNo()); + // 插入关联费用 + for (EmisTmsCostFeeFeeitem feeItem:emisTmsCostFee.getFeeItemList() + ) { + EmisTmsCostFeeFeeitem newFeeItem = new EmisTmsCostFeeFeeitem(); + newFeeItem.setCostNo(costNo); + newFeeItem.setFeeType(feeItem.getFeeType()); + newFeeItem.setFee(feeItem.getFee()); + newFeeItem.setCurrency(feeItem.getCurrency()); + emisTmsCostFeeFeeitemMapper.insertEmisTmsCostFeeFeeitem(newFeeItem); + } + emisTmsCostFeeMapper.updateEmisTmsCostFee(emisTmsCostFee); // 计算分摊费用 diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeSplitServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeSplitServiceImpl.java new file mode 100644 index 000000000..2c54c68a0 --- /dev/null +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisTmsCostFeeSplitServiceImpl.java @@ -0,0 +1,117 @@ + /** + * @Project: emis + * @Title: EmisTmsCostFeeSplitServiceImpl.java + * @author linfso + * @date 2025-02-17 11:42:30 + * @Copyright: ShangHai Duta 2022 All rights reserved. + * @version v1.0 + * @Description:

成本费用分摊明细 实体类

+ */ + +package com.xdadan.erp.emis.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.xdadan.erp.emis.domain.EmisTmsCostFeeSplit; +import com.xdadan.erp.emis.mapper.EmisTmsCostFeeSplitMapper; +import com.xdadan.erp.emis.service.IEmisTmsCostFeeSplitService; + +/** + * 成本费用分摊明细Service业务层处理 + * + * @author linfso + * @date 2025-02-17 11:42:30 + */ +@Service +public class EmisTmsCostFeeSplitServiceImpl implements IEmisTmsCostFeeSplitService +{ + @Autowired + private EmisTmsCostFeeSplitMapper emisTmsCostFeeSplitMapper; + + /** + * 查询成本费用分摊明细 + * + * @param id 成本费用分摊明细主键 + * @return 成本费用分摊明细 + */ + @Override + public EmisTmsCostFeeSplit selectEmisTmsCostFeeSplitById(Long id) + { + return emisTmsCostFeeSplitMapper.selectEmisTmsCostFeeSplitById(id); + } + + + /** + * 查询成本费用分摊明细列表 + * + * @param emisTmsCostFeeSplit 成本费用分摊明细 + * @return 成本费用分摊明细 + */ + @Override + public List selectEmisTmsCostFeeSplitList(EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + return emisTmsCostFeeSplitMapper.selectEmisTmsCostFeeSplitList(emisTmsCostFeeSplit); + } + + /** + * 检查是否重复 + * + * @param emisTmsCostFeeSplit + * @return 数量 + */ + @Override + public int checkUnique(EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + return emisTmsCostFeeSplitMapper.checkUnique(emisTmsCostFeeSplit); + } + + /** + * 新增成本费用分摊明细 + * + * @param emisTmsCostFeeSplit 成本费用分摊明细 + * @return 结果 + */ + @Override + public int insertEmisTmsCostFeeSplit(EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + return emisTmsCostFeeSplitMapper.insertEmisTmsCostFeeSplit(emisTmsCostFeeSplit); + } + + /** + * 修改成本费用分摊明细 + * + * @param emisTmsCostFeeSplit 成本费用分摊明细 + * @return 结果 + */ + @Override + public int updateEmisTmsCostFeeSplit(EmisTmsCostFeeSplit emisTmsCostFeeSplit) + { + return emisTmsCostFeeSplitMapper.updateEmisTmsCostFeeSplit(emisTmsCostFeeSplit); + } + + /** + * 批量删除成本费用分摊明细 + * + * @param ids 需要删除的成本费用分摊明细主键 + * @return 结果 + */ + @Override + public int deleteEmisTmsCostFeeSplitByIds(Long[] ids) + { + return emisTmsCostFeeSplitMapper.deleteEmisTmsCostFeeSplitByIds(ids); + } + + /** + * 删除成本费用分摊明细信息 + * + * @param id 成本费用分摊明细主键 + * @return 结果 + */ + @Override + public int deleteEmisTmsCostFeeSplitById(Long id) + { + return emisTmsCostFeeSplitMapper.deleteEmisTmsCostFeeSplitById(id); + } + +} diff --git a/emis-biz/src/main/resources/mapper/EmisTmsCostFeeFeeitemMapper.xml b/emis-biz/src/main/resources/mapper/EmisTmsCostFeeFeeitemMapper.xml new file mode 100644 index 000000000..e01f44b45 --- /dev/null +++ b/emis-biz/src/main/resources/mapper/EmisTmsCostFeeFeeitemMapper.xml @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + select id, cost_no, fee_type, fee, currency, currecy_to_cny_rate, cny_fee, order_num, del_flag, create_by, create_time, update_by, update_time, remark from emis_tms_cost_fee_feeitem + + + + + + + + + + insert into emis_tms_cost_fee_feeitem + + cost_no, + fee_type, + fee, + currency, + currecy_to_cny_rate, + cny_fee, + order_num, + del_flag, + create_by, + create_time, + update_by, + update_time, + remark, + + + #{costNo}, + #{feeType}, + #{fee}, + #{currency}, + #{currecyToCnyRate}, + #{cnyFee}, + #{orderNum}, + #{delFlag}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + + + + + update emis_tms_cost_fee_feeitem + + cost_no = #{costNo}, + fee_type = #{feeType}, + fee = #{fee}, + currency = #{currency}, + currecy_to_cny_rate = #{currecyToCnyRate}, + cny_fee = #{cnyFee}, + order_num = #{orderNum}, + del_flag = #{delFlag}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + + where id = #{id} + + + + update emis_tms_cost_fee_feeitem set del_flag='1' where cost_no = #{costNo} + + + + update emis_tms_cost_fee_feeitem set del_flag='1' where id = #{id} + + + + update emis_tms_cost_fee_feeitem set del_flag='1' where id in + + #{id} + + + \ No newline at end of file diff --git a/emis-biz/src/main/resources/mapper/EmisTmsCostFeeSplitMapper.xml b/emis-biz/src/main/resources/mapper/EmisTmsCostFeeSplitMapper.xml new file mode 100644 index 000000000..c8fcd63ad --- /dev/null +++ b/emis-biz/src/main/resources/mapper/EmisTmsCostFeeSplitMapper.xml @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + + + + select id, cost_no, fee_item_id, bill_code, fee_type, split_type, cost_fee, total_volume, bill_weight, calc_remark, remark, del_flag, create_by, create_time, update_by, update_time, create_site, update_site from emis_tms_cost_fee_split + + + + + + + + + + insert into emis_tms_cost_fee_split + + id, + cost_no, + fee_item_id, + bill_code, + fee_type, + split_type, + cost_fee, + total_volume, + bill_weight, + calc_remark, + remark, + del_flag, + create_by, + create_time, + update_by, + update_time, + create_site, + update_site, + + + #{id}, + #{costNo}, + #{feeItemId}, + #{billCode}, + #{feeType}, + #{splitType}, + #{costFee}, + #{totalVolume}, + #{billWeight}, + #{calcRemark}, + #{remark}, + #{delFlag}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{createSite}, + #{updateSite}, + + + + + update emis_tms_cost_fee_split + + cost_no = #{costNo}, + fee_item_id = #{feeItemId}, + bill_code = #{billCode}, + fee_type = #{feeType}, + split_type = #{splitType}, + cost_fee = #{costFee}, + total_volume = #{totalVolume}, + bill_weight = #{billWeight}, + calc_remark = #{calcRemark}, + remark = #{remark}, + del_flag = #{delFlag}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + create_site = #{createSite}, + update_site = #{updateSite}, + + where id = #{id} + + + + delete from emis_tms_cost_fee_split where id = #{id} + + + + delete from emis_tms_cost_fee_split where id in + + #{id} + + + \ No newline at end of file