From ec600036e1ebef43ee58c988bed6efd86d323191 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=A5=8E=E5=85=B4?= <2220574228@qq.com> Date: Wed, 3 Jun 2026 15:09:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BD=95=E5=85=A5=E9=85=8D=E9=80=81=E5=8D=95;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...eryDetailsLinkItemsApplicationService.java | 85 +++++++++++++ .../entity/DeliveryDetailsLink.java | 4 + .../repository/po/DeliveryDetailsLinkPO.java | 2 + .../todo/DeliveryDetailsLinkDO.java | 5 + .../entity/DeliveryDetailsLinkItems.java | 49 ++++++++ .../IDeliveryDetailsLinkItemsService.java | 51 ++++++++ .../DeliveryDetailsLinkItemsMapper.java | 23 ++++ .../DeliveryDetailsLinkItemsImpl.java | 116 ++++++++++++++++++ .../po/DeliveryDetailsLinkItemsPO.java | 56 +++++++++ .../todo/DeliveryDetailsLinkItemsDO.java | 73 +++++++++++ ...DeliveryDetailsLinkItemsDomainService.java | 75 +++++++++++ .../DeliveryDetailsLinkItemsAssembler.java | 66 ++++++++++ .../DeliveryDetailsLinkItemsDTO.java | 59 +++++++++ .../DeliveryDetailsLinkItemsApi.java | 109 ++++++++++++++++ .../DeliveryDetailsLinkItemsMapper.xml | 72 +++++++++++ 15 files changed, 845 insertions(+) create mode 100644 mhd_wms/src/main/java/com/mhd/wms/application/service/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsApplicationService.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/entity/DeliveryDetailsLinkItems.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/facade/IDeliveryDetailsLinkItemsService.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/mapper/DeliveryDetailsLinkItemsMapper.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/persistence/DeliveryDetailsLinkItemsImpl.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/po/DeliveryDetailsLinkItemsPO.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/todo/DeliveryDetailsLinkItemsDO.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/service/DeliveryDetailsLinkItemsDomainService.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsAssembler.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsDTO.java create mode 100644 mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsApi.java create mode 100644 mhd_wms/src/main/resources/mapper/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsMapper.xml diff --git a/mhd_wms/src/main/java/com/mhd/wms/application/service/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsApplicationService.java b/mhd_wms/src/main/java/com/mhd/wms/application/service/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsApplicationService.java new file mode 100644 index 000000000..3efabcd23 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/application/service/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsApplicationService.java @@ -0,0 +1,85 @@ +package com.mhd.wms.application.service.deliveryDetailsLinkItems; + +import com.mhd.common.security.utils.SecurityUtils; +import com.mhd.system.api.model.LoginUser; +import com.mhd.wms.domain.deliveryDetailsLink.repository.todo.DeliveryDetailsLinkDO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.po.DeliveryDetailsLinkItemsPO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo.DeliveryDetailsLinkItemsDO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.service.DeliveryDetailsLinkItemsDomainService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 配送明细关联子项ApplicationService + * + * @author gen + * @date 2026-06-03 + */ +@Service +@Slf4j +public class DeliveryDetailsLinkItemsApplicationService { + @Autowired + private DeliveryDetailsLinkItemsDomainService deliveryDetailsLinkItemsDomainService; + + + /** + * 分页查询配送明细关联子项列表 + */ + + public List queryList(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) { + LoginUser loginUser = SecurityUtils.getLoginUser(); + if (loginUser != null){ + Long topOrganizationId = loginUser.getUserPo().getTopOrganizationId(); + if (topOrganizationId != null && topOrganizationId != 1){ + deliveryDetailsLinkItemsDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); + } + } + return deliveryDetailsLinkItemsDomainService.queryList(deliveryDetailsLinkItemsDO); + } + + + /** + * 新增配送明细关联子项 + */ + public Boolean insert(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) { + + return deliveryDetailsLinkItemsDomainService.insert(deliveryDetailsLinkItemsDO); + } + + /** + * 修改配送明细关联子项 + */ + public Boolean update(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) { + return deliveryDetailsLinkItemsDomainService.update(deliveryDetailsLinkItemsDO); + } + + /** + * 批量删除配送明细关联子项 + */ + public boolean delete(Long[] ids) { + return deliveryDetailsLinkItemsDomainService.delete(ids); + } + + /** + * 获取配送明细关联子项详细信息 + */ + public DeliveryDetailsLinkItemsPO getInfo(Long id) + { + return deliveryDetailsLinkItemsDomainService.getInfo(id); + } + + /** + * 批量新增 + */ + public Boolean batchInsert(List deliveryDetailsLinkItemsDOList) { + return deliveryDetailsLinkItemsDomainService.batchInsert(deliveryDetailsLinkItemsDOList); + } + + public Boolean lrpsd(DeliveryDetailsLinkDO deliveryDetailsLinkDO) { + return deliveryDetailsLinkItemsDomainService.lrpsd(deliveryDetailsLinkDO); + } + +} \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/entity/DeliveryDetailsLink.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/entity/DeliveryDetailsLink.java index eba5f078f..a42053a9c 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/entity/DeliveryDetailsLink.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/entity/DeliveryDetailsLink.java @@ -1,5 +1,6 @@ package com.mhd.wms.domain.deliveryDetailsLink.entity; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -47,4 +48,7 @@ public class DeliveryDetailsLink extends BaseVOEntity { @ApiModelProperty(value = "金额") private BigDecimal amount; + @ApiModelProperty("附件(地址)") + private String fileUrl; + } \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/repository/po/DeliveryDetailsLinkPO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/repository/po/DeliveryDetailsLinkPO.java index db1cee929..f3f52855a 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/repository/po/DeliveryDetailsLinkPO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/repository/po/DeliveryDetailsLinkPO.java @@ -51,5 +51,7 @@ public class DeliveryDetailsLinkPO extends BaseVOEntity { @ApiModelProperty(value = "金额") private BigDecimal amount; + @ApiModelProperty("附件(地址)") + private String fileUrl; } \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/repository/todo/DeliveryDetailsLinkDO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/repository/todo/DeliveryDetailsLinkDO.java index 639439dcc..906ed9964 100644 --- a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/repository/todo/DeliveryDetailsLinkDO.java +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLink/repository/todo/DeliveryDetailsLinkDO.java @@ -3,6 +3,7 @@ package com.mhd.wms.domain.deliveryDetailsLink.repository.todo; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.mhd.common.core.web.domain.BaseVOEntity; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo.DeliveryDetailsLinkItemsDO; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -56,4 +57,8 @@ public class DeliveryDetailsLinkDO extends BaseVOEntity { @ApiModelProperty(name = "权限菜单ID") private Long permissionMenuId; + + private List deliveryDetailsLinkItemsDOList; + @ApiModelProperty("附件(地址)") + private String fileUrl; } \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/entity/DeliveryDetailsLinkItems.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/entity/DeliveryDetailsLinkItems.java new file mode 100644 index 000000000..900a43594 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/entity/DeliveryDetailsLinkItems.java @@ -0,0 +1,49 @@ +package com.mhd.wms.domain.deliveryDetailsLinkItems.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.mhd.common.core.annotation.Excel; +import com.mhd.common.core.web.domain.BaseVOEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +@Data +@TableName(value = "delivery_details_link") +public class DeliveryDetailsLinkItems extends BaseVOEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("编号") + @TableId(type = IdType.AUTO) + private Long id; + + @ApiModelProperty(value = "客户编号") + private String customerNumber; + + @ApiModelProperty(value = "配送名称") + private String deliveryName; + + @ApiModelProperty(value = "箱") + private Integer box; + + @ApiModelProperty(value = "包") + private Integer bag; + + @ApiModelProperty(value = "金额") + private BigDecimal amount; + + @ApiModelProperty("物料编码") + private String materialCode; + + @ApiModelProperty("物料名称") + private String materialName; + + @ApiModelProperty("物料基础信息id") + private Long materialBaseInfoId; + + @ApiModelProperty("配送id") + private Long deliveryId; + +} \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/facade/IDeliveryDetailsLinkItemsService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/facade/IDeliveryDetailsLinkItemsService.java new file mode 100644 index 000000000..053fc1fc2 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/facade/IDeliveryDetailsLinkItemsService.java @@ -0,0 +1,51 @@ +package com.mhd.wms.domain.deliveryDetailsLinkItems.repository.facade; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.mhd.wms.domain.deliveryDetailsLink.repository.todo.DeliveryDetailsLinkDO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.entity.DeliveryDetailsLinkItems; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.po.DeliveryDetailsLinkItemsPO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo.DeliveryDetailsLinkItemsDO; + +import java.util.List; + +/** + * 配送明细关联子项Service接口 + * + * @author gen + * @date 2026-06-03 + */ +public interface IDeliveryDetailsLinkItemsService extends IService +{ + /** + * 分页查询配送明细关联子项列表 + */ + public List queryList(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO); + + /** + * 新增配送明细关联子项 + */ + public Boolean insert(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO); + + /** + * 修改配送明细关联子项 + */ + public Boolean update(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO); + + /** + * 批量删除配送明细关联子项 + */ + public Boolean delete(Long[] ids); + + + /** + * 查询配送明细关联子项 + */ + public DeliveryDetailsLinkItemsPO getInfo(Long id); + + /** + * 批量新增 + */ + Boolean batchInsert(List deliveryDetailsLinkItemsDOList); + + Boolean lrpsd(DeliveryDetailsLinkDO deliveryDetailsLinkItemsDO); +} \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/mapper/DeliveryDetailsLinkItemsMapper.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/mapper/DeliveryDetailsLinkItemsMapper.java new file mode 100644 index 000000000..b9b2aa2ef --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/mapper/DeliveryDetailsLinkItemsMapper.java @@ -0,0 +1,23 @@ +package com.mhd.wms.domain.deliveryDetailsLinkItems.repository.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.mhd.wms.domain.deliveryDetailsLinkItems.entity.DeliveryDetailsLinkItems; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.po.DeliveryDetailsLinkItemsPO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo.DeliveryDetailsLinkItemsDO; + +import java.util.List; + +/** + * 配送明细关联子项Mapper接口 + * + * @author gen + * @date 2026-06-03 + */ +public interface DeliveryDetailsLinkItemsMapper extends BaseMapper +{ + /** + * 查询配送明细关联子项列表 + */ + public List queryList(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO); + +} diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/persistence/DeliveryDetailsLinkItemsImpl.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/persistence/DeliveryDetailsLinkItemsImpl.java new file mode 100644 index 000000000..ad0035637 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/persistence/DeliveryDetailsLinkItemsImpl.java @@ -0,0 +1,116 @@ +package com.mhd.wms.domain.deliveryDetailsLinkItems.repository.persistence; + +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mhd.wms.domain.deliveryDetailsLink.entity.DeliveryDetailsLink; +import com.mhd.wms.domain.deliveryDetailsLink.repository.mapper.DeliveryDetailsLinkMapper; +import com.mhd.wms.domain.deliveryDetailsLink.repository.todo.DeliveryDetailsLinkDO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.entity.DeliveryDetailsLinkItems; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.facade.IDeliveryDetailsLinkItemsService; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.mapper.DeliveryDetailsLinkItemsMapper; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.po.DeliveryDetailsLinkItemsPO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo.DeliveryDetailsLinkItemsDO; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 配送明细关联子项Service业务层处理 + * + * @author gen + * @date 2026-06-03 + */ +@Service +public class DeliveryDetailsLinkItemsImpl extends ServiceImpl implements IDeliveryDetailsLinkItemsService { + @Autowired + private DeliveryDetailsLinkItemsMapper deliveryDetailsLinkItemsMapper; + @Autowired + private DeliveryDetailsLinkMapper deliveryDetailsLinkMapper; + + /** + * 查询配送明细关联子项列表 + */ + @Override + public List queryList(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) + { + return deliveryDetailsLinkItemsMapper.queryList(deliveryDetailsLinkItemsDO); + } + + /** + * 新增配送明细关联子项 + */ + @Override + public Boolean insert(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) { + DeliveryDetailsLinkItems deliveryDetailsLinkItems = new DeliveryDetailsLinkItems(); + BeanUtils.copyProperties(deliveryDetailsLinkItemsDO, deliveryDetailsLinkItems); + return this.save(deliveryDetailsLinkItems); + } + + /** + * 修改配送明细关联子项 + */ + @Override + public Boolean update(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) { + DeliveryDetailsLinkItems deliveryDetailsLinkItems = new DeliveryDetailsLinkItems(); + BeanUtils.copyProperties(deliveryDetailsLinkItemsDO, deliveryDetailsLinkItems); + return this.updateById(deliveryDetailsLinkItems); + } + + /** + * 批量删除配送明细关联子项 + */ + @Override + public Boolean delete(Long[] ids ) { + List list = new ArrayList<>(); + for (Long id : ids) { + DeliveryDetailsLinkItems deliveryDetailsLinkItems = new DeliveryDetailsLinkItems(); + deliveryDetailsLinkItems.setId(id); + deliveryDetailsLinkItems.setDelFlag(2); + list.add(deliveryDetailsLinkItems); + } + return this.updateBatchById(list); + } + + /** + * 查询配送明细关联子项 + */ + @Override + public DeliveryDetailsLinkItemsPO getInfo(Long id) { + DeliveryDetailsLinkItems deliveryDetailsLinkItems = this.getById(id); + DeliveryDetailsLinkItemsPO deliveryDetailsLinkItemsPO = new DeliveryDetailsLinkItemsPO(); + BeanUtils.copyProperties(deliveryDetailsLinkItems, deliveryDetailsLinkItemsPO); + return deliveryDetailsLinkItemsPO; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean batchInsert(List deliveryDetailsLinkItemsDOList) { + List deliveryDetailsLinkItemsList = deliveryDetailsLinkItemsDOList.stream().map(deliveryDetailsLinkItemsDO -> { + DeliveryDetailsLinkItems deliveryDetailsLinkItems = new DeliveryDetailsLinkItems(); + BeanUtils.copyProperties(deliveryDetailsLinkItemsDO, deliveryDetailsLinkItems); + return deliveryDetailsLinkItems; + }).collect(Collectors.toList()); + + return this.saveBatch(deliveryDetailsLinkItemsList); + } + + + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean lrpsd(DeliveryDetailsLinkDO deliveryDetailsLinkDO) { + List deliveryDetailsLinkItemsDOList = deliveryDetailsLinkDO.getDeliveryDetailsLinkItemsDOList(); + List deliveryDetailsLinkItemsList = deliveryDetailsLinkItemsDOList.stream().map(deliveryDetailsLinkItemsDO -> { + DeliveryDetailsLinkItems deliveryDetailsLinkItems = new DeliveryDetailsLinkItems(); + BeanUtils.copyProperties(deliveryDetailsLinkItemsDO, deliveryDetailsLinkItems); + deliveryDetailsLinkItems.setDeliveryId(deliveryDetailsLinkDO.getId()); + return deliveryDetailsLinkItems; + }).collect(Collectors.toList()); + deliveryDetailsLinkMapper.update(null,new LambdaUpdateWrapper().set(DeliveryDetailsLink::getFileUrl, deliveryDetailsLinkDO.getFileUrl()).eq(DeliveryDetailsLink::getId, deliveryDetailsLinkDO.getId())); + return this.saveBatch(deliveryDetailsLinkItemsList); + } +} \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/po/DeliveryDetailsLinkItemsPO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/po/DeliveryDetailsLinkItemsPO.java new file mode 100644 index 000000000..5d7cb04a9 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/po/DeliveryDetailsLinkItemsPO.java @@ -0,0 +1,56 @@ +package com.mhd.wms.domain.deliveryDetailsLinkItems.repository.po; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.mhd.common.core.web.domain.BaseVOEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + + +/** + * 配送明细关联子项对象 delivery_details_link + * + * @author gen + * @date 2026-06-03 + */ + +@Data +@ApiModel(value = "配送明细关联子项对象", description = "配送明细关联子项响应对象") +public class DeliveryDetailsLinkItemsPO extends BaseVOEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("编号") + @TableId(type = IdType.AUTO) + private Long id; + + @ApiModelProperty(value = "客户编号") + private String customerNumber; + + @ApiModelProperty(value = "配送名称") + private String deliveryName; + + @ApiModelProperty(value = "箱") + private Integer box; + + @ApiModelProperty(value = "包") + private Integer bag; + + @ApiModelProperty(value = "金额") + private BigDecimal amount; + + @ApiModelProperty("物料编码") + private String materialCode; + + @ApiModelProperty("物料名称") + private String materialName; + + @ApiModelProperty("物料基础信息id") + private Long materialBaseInfoId; + + @ApiModelProperty("配送id") + private Long deliveryId; + +} diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/todo/DeliveryDetailsLinkItemsDO.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/todo/DeliveryDetailsLinkItemsDO.java new file mode 100644 index 000000000..7ad127aa2 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/repository/todo/DeliveryDetailsLinkItemsDO.java @@ -0,0 +1,73 @@ +package com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.mhd.common.core.annotation.Excel; +import com.mhd.common.core.web.domain.BaseVOEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + + +/** + * 配送明细关联子项对象 delivery_details_link + * + * @author gen + * @date 2026-06-03 + */ + +@Data +public class DeliveryDetailsLinkItemsDO extends BaseVOEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("编号") + @TableId(type = IdType.AUTO) + private Long id; + + @ApiModelProperty(value = "客户编号") + private String customerNumber; + + @ApiModelProperty(value = "配送名称") + private String deliveryName; + + @ApiModelProperty(value = "箱") + private Integer box; + + @ApiModelProperty(value = "包") + private Integer bag; + + @ApiModelProperty(value = "金额") + private BigDecimal amount; + + @ApiModelProperty("物料编码") + private String materialCode; + + @ApiModelProperty("物料名称") + private String materialName; + + @ApiModelProperty("物料基础信息id") + private Long materialBaseInfoId; + + @ApiModelProperty("配送id") + private Long deliveryId; + + @ApiModelProperty("组织表ID") + @Excel(name = "组织表ID") + private Long organizationId; + + @ApiModelProperty("组织名称") + @Excel(name = "组织名称") + private String organizationName; + + @ApiModelProperty("一级组织表ID") + @Excel(name = "一级组织表ID") + private Long topOrganizationId; + + @ApiModelProperty(name = "组织ID集合") + private List organizationIdList; + + @ApiModelProperty(name = "权限菜单ID") + private Long permissionMenuId; +} diff --git a/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/service/DeliveryDetailsLinkItemsDomainService.java b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/service/DeliveryDetailsLinkItemsDomainService.java new file mode 100644 index 000000000..62276235a --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/domain/deliveryDetailsLinkItems/service/DeliveryDetailsLinkItemsDomainService.java @@ -0,0 +1,75 @@ +package com.mhd.wms.domain.deliveryDetailsLinkItems.service; + +import com.mhd.wms.domain.deliveryDetailsLink.repository.todo.DeliveryDetailsLinkDO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.facade.IDeliveryDetailsLinkItemsService; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.po.DeliveryDetailsLinkItemsPO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo.DeliveryDetailsLinkItemsDO; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 配送明细关联子项 + * + * @author gen + * @date 2026-06-03 + */ +@Service +@Slf4j +public class DeliveryDetailsLinkItemsDomainService { + + @Autowired + private IDeliveryDetailsLinkItemsService deliveryDetailsLinkItemsService; + + + /** + * 分页查询配送明细关联子项列表 + */ + public List queryList(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) { + return deliveryDetailsLinkItemsService.queryList(deliveryDetailsLinkItemsDO); + } + + + /** + * 新增配送明细关联子项 + */ + public Boolean insert(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) { + + return deliveryDetailsLinkItemsService.insert(deliveryDetailsLinkItemsDO); + } + + /** + * 修改配送明细关联子项 + */ + public Boolean update(DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO) { + return deliveryDetailsLinkItemsService.update(deliveryDetailsLinkItemsDO); + } + + /** + * 批量删除配送明细关联子项 + */ + public Boolean delete(Long[] ids) { + return deliveryDetailsLinkItemsService.delete(ids); + } + + /** + * 获取配送明细关联子项详细信息 + */ + public DeliveryDetailsLinkItemsPO getInfo(Long id) + { + return deliveryDetailsLinkItemsService.getInfo(id); + } + + /** + * 批量新增 + */ + public Boolean batchInsert(List deliveryDetailsLinkItemsDOList) { + return deliveryDetailsLinkItemsService.batchInsert(deliveryDetailsLinkItemsDOList); + } + + public Boolean lrpsd(DeliveryDetailsLinkDO deliveryDetailsLinkItemsDO) { + return deliveryDetailsLinkItemsService.lrpsd(deliveryDetailsLinkItemsDO); + } +} \ No newline at end of file diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsAssembler.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsAssembler.java new file mode 100644 index 000000000..92feb3b77 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/assember/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsAssembler.java @@ -0,0 +1,66 @@ +package com.mhd.wms.interfaces.assember.deliveryDetailsLinkItems; + +import cn.hutool.core.util.ObjectUtil; +import com.mhd.common.core.exception.digitalLogisticsException.DigitalLogisticsException; +import com.mhd.common.core.exception.digitalLogisticsException.UserError; +import com.mhd.common.core.utils.IgnoreNullUtil; +import com.mhd.common.core.utils.bean.BeanUtils; +import com.mhd.common.security.utils.SecurityUtils; +import com.mhd.system.api.model.LoginUser; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo.DeliveryDetailsLinkItemsDO; +import com.mhd.wms.interfaces.dto.deliveryDetailsLinkItems.DeliveryDetailsLinkItemsDTO; +import org.springframework.stereotype.Component; + +import java.util.Date; + +/** + * 配送明细关联子项Assembler + * + * @author gen + * @date 2026-06-03 + */ +@Component +public class DeliveryDetailsLinkItemsAssembler { + + /** + * 转换实体 + */ + public DeliveryDetailsLinkItemsDO toDO(DeliveryDetailsLinkItemsDTO deliveryDetailsLinkItemsDTO) { + DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO = new DeliveryDetailsLinkItemsDO(); + // 拷贝 + BeanUtils.copyProperties(deliveryDetailsLinkItemsDTO, deliveryDetailsLinkItemsDO, IgnoreNullUtil.getNullPropertyNames(deliveryDetailsLinkItemsDTO)); + LoginUser loginUser = SecurityUtils.getLoginUser(); + if (ObjectUtil.isNull(loginUser)) { + throw new DigitalLogisticsException(UserError.TIMEOUT); + } + return deliveryDetailsLinkItemsDO; + } + + /** + * 转换实体 + */ + public DeliveryDetailsLinkItemsDO toDOByEdit(DeliveryDetailsLinkItemsDTO deliveryDetailsLinkItemsDTO) { + DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO = new DeliveryDetailsLinkItemsDO(); + // 拷贝 + BeanUtils.copyProperties(deliveryDetailsLinkItemsDTO, deliveryDetailsLinkItemsDO, IgnoreNullUtil.getNullPropertyNames(deliveryDetailsLinkItemsDTO)); + LoginUser loginUser = SecurityUtils.getLoginUser(); + if (ObjectUtil.isNull(loginUser)) { + throw new DigitalLogisticsException(UserError.TIMEOUT); + } + if(deliveryDetailsLinkItemsDTO.getId() != null){ + deliveryDetailsLinkItemsDO.setUpdateBy(loginUser.getUserid()); + deliveryDetailsLinkItemsDO.setUpdateByName(loginUser.getUsername()); + deliveryDetailsLinkItemsDO.setUpdateTime(new Date()); + + }else { + deliveryDetailsLinkItemsDO.setOrganizationId(loginUser.getUserPo().getOrganizationId()); + deliveryDetailsLinkItemsDO.setOrganizationName(loginUser.getUserPo().getOrganizationName()); + deliveryDetailsLinkItemsDO.setTopOrganizationId(loginUser.getUserPo().getTopOrganizationId()); + deliveryDetailsLinkItemsDO.setCreateBy(loginUser.getUserid()); + deliveryDetailsLinkItemsDO.setCreateByName(loginUser.getUsername()); + deliveryDetailsLinkItemsDO.setCreateTime(new Date()); + } + return deliveryDetailsLinkItemsDO; + } + +} diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsDTO.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsDTO.java new file mode 100644 index 000000000..35a17a105 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/dto/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsDTO.java @@ -0,0 +1,59 @@ +package com.mhd.wms.interfaces.dto.deliveryDetailsLinkItems; + +import com.mhd.common.core.web.domain.BaseVOEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +/** + * 配送明细关联子项对象 delivery_details_link + * + * @author gen + * @date 2026-06-03 + */ + +@Data +public class DeliveryDetailsLinkItemsDTO extends BaseVOEntity { + private static final long serialVersionUID = 1L; + + @ApiModelProperty("编号") + private Long id; + + @ApiModelProperty(value = "客户编号") + private String customerNumber; + + @ApiModelProperty(value = "配送名称") + private String deliveryName; + + @ApiModelProperty(value = "箱") + private Integer box; + + @ApiModelProperty(value = "包") + private Integer bag; + + @ApiModelProperty(value = "金额") + private BigDecimal amount; + + @ApiModelProperty("物料编码") + private String materialCode; + + @ApiModelProperty("物料名称") + private String materialName; + + @ApiModelProperty("物料基础信息id") + private Long materialBaseInfoId; + + @ApiModelProperty("配送id") + private Long deliveryId; + + @ApiModelProperty("备注") + private String remark; + + @ApiModelProperty(name = "组织ID集合") + private List organizationIdList; + + @ApiModelProperty(name = "权限菜单ID") + private Long permissionMenuId; +} diff --git a/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsApi.java b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsApi.java new file mode 100644 index 000000000..5f2757583 --- /dev/null +++ b/mhd_wms/src/main/java/com/mhd/wms/interfaces/facadeApi/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsApi.java @@ -0,0 +1,109 @@ +package com.mhd.wms.interfaces.facadeApi.deliveryDetailsLinkItems; + +import com.mhd.common.core.web.controller.BaseController; +import com.mhd.common.core.web.domain.AjaxResult; +import com.mhd.common.core.web.page.TableDataInfo; +import com.mhd.wms.application.service.deliveryDetailsLinkItems.DeliveryDetailsLinkItemsApplicationService; +import com.mhd.wms.domain.deliveryDetailsLink.repository.todo.DeliveryDetailsLinkDO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.po.DeliveryDetailsLinkItemsPO; +import com.mhd.wms.domain.deliveryDetailsLinkItems.repository.todo.DeliveryDetailsLinkItemsDO; +import com.mhd.wms.interfaces.assember.deliveryDetailsLinkItems.DeliveryDetailsLinkItemsAssembler; +import com.mhd.wms.interfaces.dto.deliveryDetailsLinkItems.DeliveryDetailsLinkItemsDTO; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +/** + * 配送明细关联子项Api + * + * @author gen + * @date 2026-06-03 + */ +@RestController +@RequestMapping("/deliveryDetailsLinkItemsApi") +public class DeliveryDetailsLinkItemsApi extends BaseController { + @Autowired + private DeliveryDetailsLinkItemsApplicationService deliveryDetailsLinkItemsApplicationService; + + @Resource + private DeliveryDetailsLinkItemsAssembler deliveryDetailsLinkItemsAssembler; + + /** + * 分页查询配送明细关联子项列表 + */ + @ApiOperation("查询配送明细关联子项列表") + @GetMapping("/list") + public TableDataInfo list(DeliveryDetailsLinkItemsDTO deliveryDetailsLinkItemsDTO) + { + //转换实体 + DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO = deliveryDetailsLinkItemsAssembler.toDO(deliveryDetailsLinkItemsDTO); + startPage(); + List list = deliveryDetailsLinkItemsApplicationService.queryList(deliveryDetailsLinkItemsDO); + return getDataTable(list); + } + + /** + * 编辑配送明细关联子项 + */ + @ApiOperation("编辑配送明细关联子项") + @PostMapping("/edit") + public AjaxResult edit(@RequestBody DeliveryDetailsLinkItemsDTO deliveryDetailsLinkItemsDTO) + { + //转换实体 + DeliveryDetailsLinkItemsDO deliveryDetailsLinkItemsDO = deliveryDetailsLinkItemsAssembler.toDOByEdit(deliveryDetailsLinkItemsDTO); + if(deliveryDetailsLinkItemsDTO.getId() != null){ + return toAjax(deliveryDetailsLinkItemsApplicationService.update(deliveryDetailsLinkItemsDO)); + }else { + return toAjax(deliveryDetailsLinkItemsApplicationService.insert(deliveryDetailsLinkItemsDO)); + } + } + + /** + * 批量删除配送明细关联子项 + */ + @ApiOperation("批量删除配送明细关联子项") + @DeleteMapping("/deleteByIds/{ids}") + public AjaxResult delete(@PathVariable Long[] ids) + { + return toAjax(deliveryDetailsLinkItemsApplicationService.delete(ids)); + } + + /** + * 获取配送明细关联子项详细信息 + */ + @ApiOperation("获取配送明细关联子项") + @GetMapping(value = "/getInfo/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return AjaxResult.success(deliveryDetailsLinkItemsApplicationService.getInfo(id)); + } + + /** + * 批量新增配送明细关联子项 + */ + @ApiOperation("批量新增配送明细关联子项") + @PostMapping("/batchInsert") + public AjaxResult batchInsert(@RequestBody List deliveryDetailsLinkItemsDTOList) + { + List deliveryDetailsLinkItemsDOList = new ArrayList<>(); + for (DeliveryDetailsLinkItemsDTO dto : deliveryDetailsLinkItemsDTOList) { + deliveryDetailsLinkItemsDOList.add(deliveryDetailsLinkItemsAssembler.toDOByEdit(dto)); + } + return toAjax(deliveryDetailsLinkItemsApplicationService.batchInsert(deliveryDetailsLinkItemsDOList)); + } + + /** + * 批量新增配送明细关联子项 + */ + @ApiOperation("录入配送单") + @PostMapping("/lrpsd") + public AjaxResult lrpsd(@RequestBody DeliveryDetailsLinkDO deliveryDetailsLinkDO) + { + return toAjax(deliveryDetailsLinkItemsApplicationService.lrpsd(deliveryDetailsLinkDO)); + } + +} \ No newline at end of file diff --git a/mhd_wms/src/main/resources/mapper/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsMapper.xml b/mhd_wms/src/main/resources/mapper/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsMapper.xml new file mode 100644 index 000000000..8a228e3e3 --- /dev/null +++ b/mhd_wms/src/main/resources/mapper/deliveryDetailsLinkItems/DeliveryDetailsLinkItemsMapper.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, customer_number, delivery_name, box, bag, amount, material_code, material_name, material_base_info_id, delivery_id from delivery_details_link + + + + + + and customer_number = #{customerNumber} + + + and delivery_name like concat('%', #{deliveryName}, '%') + + + and box = #{box} + + + and bag = #{bag} + + + and amount = #{amount} + + + and material_code = #{materialCode} + + + and material_name like concat('%', #{materialName}, '%') + + + and material_base_info_id = #{materialBaseInfoId} + + + and delivery_id = #{deliveryId} + + + and del_flag = #{delFlag} + and del_flag = 1 + + + + + +