From c159cda7673a96201e501a95aac4532c3c76bddb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BD=97=E6=88=90?= <2847920761@qq.com> Date: Mon, 4 Aug 2025 11:06:44 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=A1=A8=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BusMaterialsorderController.java | 53 +++++++++--- .../domain/BusCailiaoshebei.java | 5 +- .../domain/BusCailiaoshebeiPici.java | 28 +++++++ .../domain/BusMaterialbatchdemandplan.java | 4 +- .../domain/BusMaterialsorder.java | 4 +- .../domain/bo/BusCailiaoshebeiAddReq.java | 4 +- .../domain/bo/BusCailiaoshebeiBo.java | 4 +- .../domain/bo/BusCailiaoshebeiListReq.java | 4 +- .../bo/BusMaterialbatchdemandplanAddReq.java | 4 +- .../domain/bo/BusMaterialsorderBo.java | 2 +- .../domain/bo/BusMaterialsorderListReq.java | 28 +++++++ .../domain/bo/MasterDataListReq.java | 2 +- .../bo/MaterialsorderPcPlanEditReq.java | 50 +++++++++++ .../domain/vo/BusCailiaoshebeiPiciVo.java | 26 ++++++ .../service/IBusMaterialsorderService.java | 7 ++ .../impl/BusCailiaoshebeiServiceImpl.java | 6 +- ...BusMaterialbatchdemandplanServiceImpl.java | 2 +- .../impl/BusMaterialsorderServiceImpl.java | 84 +++++++++++++++---- 18 files changed, 268 insertions(+), 49 deletions(-) create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialsorderListReq.java create mode 100644 xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/MaterialsorderPcPlanEditReq.java diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/controller/BusMaterialsorderController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/controller/BusMaterialsorderController.java index da77ced3..0275119a 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/controller/BusMaterialsorderController.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/controller/BusMaterialsorderController.java @@ -2,10 +2,16 @@ package org.dromara.cailiaoshebei.controller; import java.util.List; +import cn.hutool.core.bean.BeanUtil; import lombok.RequiredArgsConstructor; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.*; import cn.dev33.satoken.annotation.SaCheckPermission; +import org.dromara.cailiaoshebei.domain.BusCailiaoshebeiPici; +import org.dromara.cailiaoshebei.domain.BusMaterialsorder; +import org.dromara.cailiaoshebei.domain.bo.*; +import org.dromara.cailiaoshebei.domain.vo.BusCailiaoshebeiPiciVo; +import org.dromara.cailiaoshebei.service.IBusCailiaoshebeiPiciService; import org.springframework.web.bind.annotation.*; import org.springframework.validation.annotation.Validated; import org.dromara.common.idempotent.annotation.RepeatSubmit; @@ -18,7 +24,6 @@ import org.dromara.common.core.validate.EditGroup; import org.dromara.common.log.enums.BusinessType; import org.dromara.common.excel.utils.ExcelUtil; import org.dromara.cailiaoshebei.domain.vo.BusMaterialsorderVo; -import org.dromara.cailiaoshebei.domain.bo.BusMaterialsorderBo; import org.dromara.cailiaoshebei.service.IBusMaterialsorderService; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -35,17 +40,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo; public class BusMaterialsorderController extends BaseController { private final IBusMaterialsorderService busMaterialsorderService; - - /** - * 新增物资-设备订货 - */ - @SaCheckPermission("cailiaoshebei:materialsorder:add") - @Log(title = "物资-设备订货", businessType = BusinessType.INSERT) - @RepeatSubmit() - @PostMapping() - public R add(@Validated(AddGroup.class) @RequestBody BusMaterialsorderBo bo) { - return toAjax(busMaterialsorderService.insertByBo(bo)); - } + private final IBusCailiaoshebeiPiciService busCailiaoshebeiPiciService; // /** // * 查询物资-设备订货列表 @@ -113,4 +108,38 @@ public class BusMaterialsorderController extends BaseController { // @PathVariable Long[] ids) { // return toAjax(busMaterialsorderService.deleteWithValidByIds(List.of(ids), true)); // } + + + /** + * 订货-批次号列表 + */ + @SaCheckPermission("cailiaoshebei:materialsorder:pcPlanList") + @GetMapping("/pcPlanList") + public TableDataInfo pcPlanList(BusCailiaoshebeiPiciPcListReq bo, PageQuery pageQuery) { + BusCailiaoshebeiPiciBo busCailiaoshebeiPiciBo = BeanUtil.copyProperties(bo, BusCailiaoshebeiPiciBo.class); + busCailiaoshebeiPiciBo.setBatchType("3"); + return busCailiaoshebeiPiciService.queryPageList(busCailiaoshebeiPiciBo, pageQuery); + } + + /** + * 订货-修改订货信息 + */ + @SaCheckPermission("cailiaoshebei:materialsorder:modifyTheOrderForm") + @Log(title = "订货-修改订货信息", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping("/modifyTheOrderForm") + public R modifyTheOrderForm(@Validated(EditGroup.class) @RequestBody MaterialsorderPcPlanEditReq req) { + return toAjax(busMaterialsorderService.modifyTheOrderForm(req)); + } + + + /** + * 订货-查询物资设备订货列表 + */ + @SaCheckPermission("cailiaoshebei:materialsorder:list") + @GetMapping("/list") + public TableDataInfo list(BusMaterialsorderListReq req, PageQuery pageQuery) { + BusMaterialsorderBo bo = BeanUtil.copyProperties(req, BusMaterialsorderBo.class); + return busMaterialsorderService.queryPageList(bo, pageQuery); + } } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusCailiaoshebei.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusCailiaoshebei.java index ea987568..14a960c9 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusCailiaoshebei.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusCailiaoshebei.java @@ -30,9 +30,9 @@ public class BusCailiaoshebei extends BaseEntity { private Long id; /** - * 批次ID + * 批次号 */ - private Long batchId; + private String batchNumber; /** * 供货商ID @@ -104,5 +104,4 @@ public class BusCailiaoshebei extends BaseEntity { */ private String remark; - } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusCailiaoshebeiPici.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusCailiaoshebeiPici.java index 32df093d..c702dd1b 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusCailiaoshebeiPici.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusCailiaoshebeiPici.java @@ -9,6 +9,7 @@ import lombok.Data; import lombok.EqualsAndHashCode; import java.io.Serial; +import java.util.Date; /** * 物资-批次号对象 bus_cailiaoshebei_pici @@ -67,4 +68,31 @@ public class BusCailiaoshebeiPici extends BaseEntity { private String remark; + + /** + * 订货-采购人 + */ + private String purchasingAgent; + /** + * 订货-采购时间 + */ + private Date purchasingPeriod; + /** + * 订货-合同号 + */ + private String contractNumber; + /** + * 订货-备注 + */ + private String dhRemark; + /** + * 订货-供应商 + */ + private String dhSupplier; + /** + * 订货-状态 + */ + private String dhSucceed; + + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusMaterialbatchdemandplan.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusMaterialbatchdemandplan.java index b16784d1..cf505eb5 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusMaterialbatchdemandplan.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusMaterialbatchdemandplan.java @@ -30,9 +30,9 @@ public class BusMaterialbatchdemandplan extends BaseEntity { private Long id; /** - * 批次ID + * 批次号 */ - private String batchId; + private String batchNumber; /** * 项目ID diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusMaterialsorder.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusMaterialsorder.java index e7e16c8c..825d3dde 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusMaterialsorder.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/BusMaterialsorder.java @@ -30,9 +30,9 @@ public class BusMaterialsorder extends BaseEntity { private Long id; /** - * 批次ID + * 批次号 */ - private String batchId; + private String batchNumber; /** * 项目ID diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiAddReq.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiAddReq.java index ed49cdbb..d7fa1cb7 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiAddReq.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiAddReq.java @@ -40,9 +40,9 @@ public class BusCailiaoshebeiAddReq extends BaseEntity { /** * 批次ID (必填) */ - @NotBlank(message = "批次ID不能为空", groups = { AddGroup.class }) + @NotBlank(message = "批次号不能为空", groups = { AddGroup.class }) @Size(max = 128, message = "批次ID长度不能超过128个字符", groups = {AddGroup.class, EditGroup.class}) - private String batchId; + private String batchNumber; /** * 供货商ID (必填,多个逗号分隔) diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiBo.java index c696c4f6..4fc87e03 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiBo.java @@ -35,9 +35,9 @@ public class BusCailiaoshebeiBo extends BaseEntity { /** - * 批次ID + * 批次号 */ - private String batchId; + private String batchNumber; /** * 供货商ID diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiListReq.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiListReq.java index 3f2c05b5..25d4af67 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiListReq.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusCailiaoshebeiListReq.java @@ -22,9 +22,9 @@ public class BusCailiaoshebeiListReq implements Serializable { /** - * 批次ID + * 批次号 */ - private String batchId; + private String batchNumber; /** * 供货商ID diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialbatchdemandplanAddReq.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialbatchdemandplanAddReq.java index 1268b032..55ebd8c0 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialbatchdemandplanAddReq.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialbatchdemandplanAddReq.java @@ -17,9 +17,9 @@ import java.util.List; @Data public class BusMaterialbatchdemandplanAddReq implements Serializable { /** - * 批次ID + * 批次号 */ - private String batchId; + private String batchNumber; /** diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialsorderBo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialsorderBo.java index 3f1a3e67..bbee1034 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialsorderBo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialsorderBo.java @@ -31,7 +31,7 @@ public class BusMaterialsorderBo extends BaseEntity { /** * 批次ID */ - private String batchId; + private String batchNumber; /** * 项目ID diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialsorderListReq.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialsorderListReq.java new file mode 100644 index 00000000..ac209e42 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/BusMaterialsorderListReq.java @@ -0,0 +1,28 @@ +package org.dromara.cailiaoshebei.domain.bo; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + * @Author 铁憨憨 + * @Date 2025/8/2 18:46 + * @Version 1.0 + */ + +@Data +@Accessors(chain = true) +public class BusMaterialsorderListReq implements Serializable { + + /** + * 批次ID + */ + private String batchId; + + /** + * 项目ID + */ + private Long projectId; + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/MasterDataListReq.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/MasterDataListReq.java index f5c92014..b377aa3c 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/MasterDataListReq.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/MasterDataListReq.java @@ -23,7 +23,7 @@ public class MasterDataListReq implements Serializable { /** * 批次ID */ - private String batchId; + private String batchNumber; /** * 物料编码 diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/MaterialsorderPcPlanEditReq.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/MaterialsorderPcPlanEditReq.java new file mode 100644 index 00000000..e9d5ad34 --- /dev/null +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/bo/MaterialsorderPcPlanEditReq.java @@ -0,0 +1,50 @@ +package org.dromara.cailiaoshebei.domain.bo; + +import jakarta.validation.constraints.NotNull; +import lombok.Data; +import lombok.experimental.Accessors; +import org.dromara.cailiaoshebei.domain.BusMaterialsorder; +import org.dromara.common.core.validate.EditGroup; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * @Author 铁憨憨 + * @Date 2025/8/2 18:51 + * @Version 1.0 + */ + +@Data +@Accessors(chain = true) +public class MaterialsorderPcPlanEditReq implements Serializable { + /** + * 批次号 + */ + private String batchNumber; + + /** + * 订货-采购人 + */ + private String purchasingAgent; + /** + * 订货-采购时间 + */ + private Date purchasingPeriod; + /** + * 订货-合同号 + */ + private String contractNumber; + /** + * 订货-备注 + */ + private String dhRemark; + + /** + * 订货-主体数据 + */ + private List list; + + +} diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/vo/BusCailiaoshebeiPiciVo.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/vo/BusCailiaoshebeiPiciVo.java index ac8a3af9..287b9178 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/vo/BusCailiaoshebeiPiciVo.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/domain/vo/BusCailiaoshebeiPiciVo.java @@ -65,4 +65,30 @@ public class BusCailiaoshebeiPiciVo implements Serializable { private String remark; + /** + * 订货-采购人 + */ + private String purchasingAgent; + /** + * 订货-采购时间 + */ + private Date purchasingPeriod; + /** + * 订货-合同号 + */ + private String contractNumber; + /** + * 订货-备注 + */ + private String dhRemark; + /** + * 订货-供应商 + */ + private String dhSupplier; + /** + * 订货-状态 + */ + private String dhSucceed; + + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/IBusMaterialsorderService.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/IBusMaterialsorderService.java index a9ca8b09..26ca78d3 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/IBusMaterialsorderService.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/IBusMaterialsorderService.java @@ -1,5 +1,6 @@ package org.dromara.cailiaoshebei.service; +import org.dromara.cailiaoshebei.domain.bo.MaterialsorderPcPlanEditReq; import org.dromara.cailiaoshebei.domain.vo.BusMaterialsorderVo; import org.dromara.cailiaoshebei.domain.bo.BusMaterialsorderBo; import org.dromara.cailiaoshebei.domain.BusMaterialsorder; @@ -76,4 +77,10 @@ public interface IBusMaterialsorderService extends IService{ * @return 是否新增成功 */ Boolean extractDataNewAddition(String batchNumber,Long projectId); + + + /** + * 修改订货单的基础头信息和基础信息 + */ + Boolean modifyTheOrderForm(MaterialsorderPcPlanEditReq req); } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusCailiaoshebeiServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusCailiaoshebeiServiceImpl.java index ba36550e..d1a23ac3 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusCailiaoshebeiServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusCailiaoshebeiServiceImpl.java @@ -64,10 +64,6 @@ public class BusCailiaoshebeiServiceImpl extends ServiceImpl queryPageList(BusCailiaoshebeiBo bo, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); -// //获取到供货商,随后返回对应的供货商名 -// List list = contractorService.list(new LambdaQueryWrapper().eq(SubContractor::getProjectId, bo.getProjectId())); -// - return TableDataInfo.build(result); } @@ -87,7 +83,7 @@ public class BusCailiaoshebeiServiceImpl extends ServiceImpl params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.orderByAsc(BusCailiaoshebei::getId); - lqw.eq(StringUtils.isNotBlank(bo.getBatchId()), BusCailiaoshebei::getBatchId, bo.getBatchId()); + lqw.like(StringUtils.isNotBlank(bo.getBatchNumber()), BusCailiaoshebei::getBatchNumber, bo.getBatchNumber()); lqw.eq(bo.getSupplierId() != null, BusCailiaoshebei::getSupplierId, bo.getSupplierId()); lqw.eq(bo.getProjectId() != null, BusCailiaoshebei::getProjectId, bo.getProjectId()); lqw.eq(StringUtils.isNotBlank(bo.getSupplier()), BusCailiaoshebei::getSupplier, bo.getSupplier()); diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusMaterialbatchdemandplanServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusMaterialbatchdemandplanServiceImpl.java index 7b484268..6e628146 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusMaterialbatchdemandplanServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusMaterialbatchdemandplanServiceImpl.java @@ -148,7 +148,7 @@ public class BusMaterialbatchdemandplanServiceImpl extends ServiceImpl eq = new LambdaQueryWrapper() - .eq(BusMaterialbatchdemandplan::getBatchId, bo.getBatchId()); + .eq(BusMaterialbatchdemandplan::getBatchNumber, bo.getBatchNumber()); int delete = baseMapper.delete(eq); if (delete != 1) { throw new RuntimeException("删除失败"); diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusMaterialsorderServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusMaterialsorderServiceImpl.java index 70fb53b1..dd382a3d 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusMaterialsorderServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/cailiaoshebei/service/impl/BusMaterialsorderServiceImpl.java @@ -1,8 +1,14 @@ package org.dromara.cailiaoshebei.service.impl; +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.dromara.cailiaoshebei.domain.BusCailiaoshebeiPici; +import org.dromara.cailiaoshebei.domain.BusMaterialbatchdemandplan; +import org.dromara.cailiaoshebei.domain.bo.MaterialsorderPcPlanEditReq; import org.dromara.cailiaoshebei.service.IBusCailiaoshebeiPiciService; +import org.dromara.cailiaoshebei.service.IBusMaterialbatchdemandplanService; +import org.dromara.common.core.domain.model.LoginUser; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -11,6 +17,7 @@ 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.dromara.common.satoken.utils.LoginHelper; import org.dromara.common.utils.BatchNumberGenerator; import org.springframework.stereotype.Service; import org.dromara.cailiaoshebei.domain.bo.BusMaterialsorderBo; @@ -20,9 +27,7 @@ import org.dromara.cailiaoshebei.mapper.BusMaterialsorderMapper; import org.dromara.cailiaoshebei.service.IBusMaterialsorderService; import org.springframework.transaction.annotation.Transactional; -import java.util.List; -import java.util.Map; -import java.util.Collection; +import java.util.*; /** * 物资-设备订货Service业务层处理 @@ -36,6 +41,8 @@ public class BusMaterialsorderServiceImpl extends ServiceImpl params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); lqw.orderByAsc(BusMaterialsorder::getId); - lqw.eq(StringUtils.isNotBlank(bo.getBatchId()), BusMaterialsorder::getBatchId, bo.getBatchId()); + lqw.eq(StringUtils.isNotBlank(bo.getBatchNumber()), BusMaterialsorder::getBatchNumber, bo.getBatchNumber()); lqw.eq(bo.getProjectId() != null, BusMaterialsorder::getProjectId, bo.getProjectId()); lqw.eq(bo.getCailiaoshebeiId() != null, BusMaterialsorder::getCailiaoshebeiId, bo.getCailiaoshebeiId()); lqw.eq(bo.getSuppliespriceId() != null, BusMaterialsorder::getSuppliespriceId, bo.getSuppliespriceId()); @@ -155,17 +162,66 @@ public class BusMaterialsorderServiceImpl extends ServiceImpl list = busMaterialbatchdemandplanService.list( + new LambdaQueryWrapper() + .eq(BusMaterialbatchdemandplan::getBatchNumber, batchNumber) + ); + //2、遍历主数据,根据供应商分成不同订单存储 + Map> map = new HashMap<>(); + for (BusMaterialbatchdemandplan busMaterialbatchdemandplan : list) { + String supplierCompany = busMaterialbatchdemandplan.getSupplierCompany(); + List busMaterialsorders = map.get(supplierCompany); + //判断如果为空就初始化 + if (busMaterialsorders == null) { + busMaterialsorders = new ArrayList<>(); + } + busMaterialsorders.add(BeanUtil.copyProperties(busMaterialbatchdemandplan, BusMaterialsorder.class)); + map.put(supplierCompany, busMaterialsorders); + } + //3、遍历map,根据供应商分成不同订单存储 + List addData = new ArrayList<>(); + for (Map.Entry> entry : map.entrySet()) { + String supplierCompany = entry.getKey(); + List busMaterialsorders = entry.getValue(); + //3-1、生成批次ID(订货批次ID) + BusCailiaoshebeiPici busCailiaoshebeiPici = new BusCailiaoshebeiPici() + .setBatchNumber(BatchNumberGenerator.generateBatchNumber("DH-")) + .setProjectId(projectId) + .setDhSupplier(supplierCompany) //供应商 + .setBatchType("3"); + boolean save = busCailiaoshebeiPiciService.save(busCailiaoshebeiPici); + if(!save){ + throw new RuntimeException("订货批次号新增失败"); + } + //3-2、组装订货详情 + for (BusMaterialsorder busMaterialsorder : busMaterialsorders) { + busMaterialsorder.setBatchNumber(busCailiaoshebeiPici.getBatchNumber()); + addData.add(busMaterialsorder); + } + } + //3-3、保存订货详情 + return baseMapper.insertBatch(addData); + } + + @Override + @Transactional + public Boolean modifyTheOrderForm(MaterialsorderPcPlanEditReq req) { + List list = req.getList(); + if (list.isEmpty()){ + throw new RuntimeException("未获取到主体数据"); + } + //1、修改主体数据标头 + BusCailiaoshebeiPici busCailiaoshebeiPici = BeanUtil.copyProperties(req, BusCailiaoshebeiPici.class); + LambdaQueryWrapper lqw = new LambdaQueryWrapper().eq(BusCailiaoshebeiPici::getBatchNumber,req.getBatchNumber()); + if(!busCailiaoshebeiPiciService.update(busCailiaoshebeiPici,lqw)){ return false; } - //2、根据批次号查询主数据 - BusCailiaoshebeiPici busCailiaoshebeiPici1 = busCailiaoshebeiPiciService.getById(busCailiaoshebeiPici.getId()); - return null; + //2、删除主体详情数据 + baseMapper.delete(new LambdaQueryWrapper().eq(BusMaterialsorder::getBatchNumber, req.getBatchNumber())); + //3、新增主体详情数据 + return baseMapper.insertBatch(list); } }