Browse Source

问题处理

yzc 2 năm trước cách đây
mục cha
commit
211efbe248
21 tập tin đã thay đổi với 369 bổ sung8 xóa
  1. 17 0
      code/src/test/java/purchaseDataSource.java
  2. 1 0
      hx-purchase/src/main/java/com/fjhx/purchase/a-json/PurchasePayRecordApi.json
  3. 7 1
      hx-purchase/src/main/java/com/fjhx/purchase/controller/purchase/PurchaseController.java
  4. 34 0
      hx-purchase/src/main/java/com/fjhx/purchase/controller/purchase/PurchasePayRecordController.java
  5. 4 3
      hx-purchase/src/main/java/com/fjhx/purchase/controller/subscribe/SubscribeController.java
  6. 17 0
      hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/dto/PurchasePayRecordDto.java
  7. 17 0
      hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/dto/PurchasePayRecordSelectDto.java
  8. 33 0
      hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/po/PurchasePayRecord.java
  9. 11 0
      hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/vo/PurchaseDetailVo.java
  10. 17 0
      hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/vo/PurchasePayRecordVo.java
  11. 26 0
      hx-purchase/src/main/java/com/fjhx/purchase/mapper/purchase/PurchasePayRecordMapper.java
  12. 6 0
      hx-purchase/src/main/java/com/fjhx/purchase/service/arrival/impl/ArrivalServiceImpl.java
  13. 25 0
      hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/PurchasePayRecordService.java
  14. 5 0
      hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/PurchaseService.java
  15. 33 0
      hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/impl/PurchasePayRecordServiceImpl.java
  16. 23 0
      hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/impl/PurchaseServiceImpl.java
  17. 2 1
      hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/SubscribeService.java
  18. 3 2
      hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/impl/SubscribeServiceImpl.java
  19. 17 0
      hx-purchase/src/main/resources/mapper/purchase/PurchasePayRecordMapper.xml
  20. 66 1
      hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/deliver/impl/DeliverGoodsServiceImpl.java
  21. 5 0
      hx-wms/src/main/java/com/fjhx/wms/entity/stock/vo/StockJournalDetailsVo.java

+ 17 - 0
code/src/test/java/purchaseDataSource.java

@@ -0,0 +1,17 @@
+import fly.generator.GeneratorApplication;
+
+public class purchaseDataSource {
+
+    public static void main(String[] args) {
+        GeneratorApplication.builder()
+                .url("jdbc:mysql://36.134.91.96:17330/bytesailing_purchase?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&nullCatalogMeansCurrent=true")
+                .username("fjhx2012mysql")
+                .password("3PN-Mzn#vnP&q6d")
+                .port(9989)
+                .module("hx-purchase")
+                .parent("com.fjhx.purchase")
+                .superServiceClass("com.ruoyi.common.core.service.BaseService")
+                .build();
+    }
+
+}

+ 1 - 0
hx-purchase/src/main/java/com/fjhx/purchase/a-json/PurchasePayRecordApi.json

@@ -0,0 +1 @@
+{"openapi":"3.0.1","tags":[{"name":"采购付款记录"}],"paths":{"/purchasePayRecord/page":{"post":{"summary":"分页","tags":["采购付款记录"],"requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["pageNum","pageSize"],"title":null,"properties":{"pageNum":{"type":"integer","required":null,"title":"页数","properties":null,"items":null},"pageSize":{"type":"integer","required":null,"title":"每页大小","properties":null,"items":null}},"items":null}}}},"responses":{"200":{"description":"成功","content":{"application/json":{"schema":{"type":"object","required":["code","success","msg","data"],"title":null,"properties":{"code":{"type":"Integer","required":null,"title":null,"properties":null,"items":null},"success":{"type":"boolean","required":null,"title":null,"properties":null,"items":null},"msg":{"type":"string","required":null,"title":null,"properties":null,"items":null},"data":{"type":"object","required":["rows","total"],"title":null,"properties":{"records":{"type":"array","required":null,"title":"分页数据","properties":null,"items":{"type":"object","required":null,"title":null,"properties":{"id":{"type":"integer","required":null,"title":"采购付款记录id","properties":null,"items":null},"purchaseId":{"type":"integer","required":null,"title":"采购id","properties":null,"items":null},"amount":{"type":"number","required":null,"title":"付款金额","properties":null,"items":null},"createTime":{"type":"string","required":null,"title":"创建时间","properties":null,"items":null},"updateTime":{"type":"string","required":null,"title":"修改时间","properties":null,"items":null}},"items":null}},"total":{"type":"integer","required":null,"title":"总条数","properties":null,"items":null}},"items":null}},"items":null}}}}}}}}}

+ 7 - 1
hx-purchase/src/main/java/com/fjhx/purchase/controller/purchase/PurchaseController.java

@@ -95,6 +95,12 @@ public class PurchaseController {
         return purchaseService.paymentBill(purchaseDto);
     }
 
-
+    /**
+     * 采购付款
+     */
+    @PostMapping("/payByWdly")
+    public void payByWdly(@RequestBody PurchaseDto purchaseDto) {
+        purchaseService.payByWdly(purchaseDto);
+    }
 
 }

+ 34 - 0
hx-purchase/src/main/java/com/fjhx/purchase/controller/purchase/PurchasePayRecordController.java

@@ -0,0 +1,34 @@
+package com.fjhx.purchase.controller.purchase;
+
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.purchase.entity.purchase.vo.PurchasePayRecordVo;
+import com.fjhx.purchase.entity.purchase.dto.PurchasePayRecordSelectDto;
+import com.fjhx.purchase.service.purchase.PurchasePayRecordService;
+import org.springframework.beans.factory.annotation.Autowired;
+
+
+/**
+ * <p>
+ * 采购付款记录 前端控制器
+ * </p>
+ *
+ * @author 
+ * @since 2023-05-23
+ */
+@RestController
+@RequestMapping("/purchasePayRecord")
+public class PurchasePayRecordController {
+
+    @Autowired
+    private PurchasePayRecordService purchasePayRecordService;
+
+    /**
+     * 采购付款记录分页
+     */
+    @PostMapping("/page")
+    public Page<PurchasePayRecordVo> page(@RequestBody PurchasePayRecordSelectDto dto) {
+        return purchasePayRecordService.getPage(dto);
+    }
+
+}

+ 4 - 3
hx-purchase/src/main/java/com/fjhx/purchase/controller/subscribe/SubscribeController.java

@@ -2,6 +2,7 @@ package com.fjhx.purchase.controller.subscribe;
 
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.fjhx.common.constant.SourceConstant;
+import com.fjhx.purchase.entity.subscribe.dto.SubscribeDetailDto;
 import com.fjhx.purchase.entity.subscribe.po.Subscribe;
 import com.ruoyi.common.core.domain.entity.SysDept;
 import org.springframework.web.bind.annotation.*;
@@ -80,9 +81,9 @@ public class SubscribeController {
         subscribeService.delete(dto.getId());
     }
 
-    @GetMapping("/getDepts")
-    public List<SysDept> getDepts() {
-        return subscribeService.getDepts();
+    @PostMapping("/getDepts")
+    public List<SysDept> getDepts(@RequestBody SubscribeDetailDto subscribeDetailDto) {
+        return subscribeService.getDepts(subscribeDetailDto);
     }
 
 }

+ 17 - 0
hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/dto/PurchasePayRecordDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.purchase.entity.purchase.dto;
+
+import com.fjhx.purchase.entity.purchase.po.PurchasePayRecord;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 采购付款记录新增编辑入参实体
+ *
+ * @author 
+ * @since 2023-05-23
+ */
+@Getter
+@Setter
+public class PurchasePayRecordDto extends PurchasePayRecord {
+
+}

+ 17 - 0
hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/dto/PurchasePayRecordSelectDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.purchase.entity.purchase.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 采购付款记录列表查询入参实体
+ *
+ * @author 
+ * @since 2023-05-23
+ */
+@Getter
+@Setter
+public class PurchasePayRecordSelectDto extends BaseSelectDto {
+
+}

+ 33 - 0
hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/po/PurchasePayRecord.java

@@ -0,0 +1,33 @@
+package com.fjhx.purchase.entity.purchase.po;
+
+import com.ruoyi.common.core.domain.BasePo;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.math.BigDecimal;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 采购付款记录
+ * </p>
+ *
+ * @author 
+ * @since 2023-05-23
+ */
+@Getter
+@Setter
+@TableName("purchase_pay_record")
+public class PurchasePayRecord extends BasePo {
+
+    /**
+     * 采购id
+     */
+    private Long purchaseId;
+
+    /**
+     * 付款金额
+     */
+    private BigDecimal amount;
+
+}

+ 11 - 0
hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/vo/PurchaseDetailVo.java

@@ -4,6 +4,8 @@ import com.fjhx.purchase.entity.arrival.vo.ArrivalDetailVo;
 import com.fjhx.purchase.entity.deliver.DeliverGoodsDetailsPo;
 import com.fjhx.purchase.entity.purchase.po.PurchaseDetail;
 import com.fjhx.purchase.entity.quality.po.QualityDetail;
+import com.fjhx.wms.entity.stock.po.StockJournalDetails;
+import com.fjhx.wms.entity.stock.vo.StockJournalDetailsVo;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -86,4 +88,13 @@ public class PurchaseDetailVo extends PurchaseDetail {
      * 质检数量
      */
     private BigDecimal qualityQuantity;
+
+    /**
+     * 入库数量
+     */
+    private BigDecimal receiptQuantity;
+    /**
+     * 入库列表
+     */
+    private List<StockJournalDetailsVo> receiptList;
 }

+ 17 - 0
hx-purchase/src/main/java/com/fjhx/purchase/entity/purchase/vo/PurchasePayRecordVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.purchase.entity.purchase.vo;
+
+import com.fjhx.purchase.entity.purchase.po.PurchasePayRecord;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 采购付款记录列表查询返回值实体
+ *
+ * @author 
+ * @since 2023-05-23
+ */
+@Getter
+@Setter
+public class PurchasePayRecordVo extends PurchasePayRecord {
+
+}

+ 26 - 0
hx-purchase/src/main/java/com/fjhx/purchase/mapper/purchase/PurchasePayRecordMapper.java

@@ -0,0 +1,26 @@
+package com.fjhx.purchase.mapper.purchase;
+
+import com.fjhx.purchase.entity.purchase.po.PurchasePayRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.purchase.entity.purchase.vo.PurchasePayRecordVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 采购付款记录 Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2023-05-23
+ */
+public interface PurchasePayRecordMapper extends BaseMapper<PurchasePayRecord> {
+
+    /**
+     * 采购付款记录分页
+     */
+    Page<PurchasePayRecordVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<PurchasePayRecord> wrapper);
+
+}

+ 6 - 0
hx-purchase/src/main/java/com/fjhx/purchase/service/arrival/impl/ArrivalServiceImpl.java

@@ -175,6 +175,12 @@ public class ArrivalServiceImpl extends ServiceImpl<ArrivalMapper, Arrival> impl
     @DSTransactional
     @Override
     public void addByWdly(Arrival arrival) {
+        if(ObjectUtil.isEmpty(arrival.getPurchaseId())){
+            throw new ServiceException("采购id不能为空");
+        }
+        if(ObjectUtil.isEmpty(arrival.getSupplyId())){
+            throw new ServiceException("供应商id不能为空");
+        }
         arrival.setCode(codingRuleService.createCode(CodingRuleEnum.ARRIVAL.getKey(),null));
 //        arrival.setCode(CodeEnum.ARRIVAL.getCode());
         arrival.setStatus(1);//设置到货

+ 25 - 0
hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/PurchasePayRecordService.java

@@ -0,0 +1,25 @@
+package com.fjhx.purchase.service.purchase;
+
+import com.fjhx.purchase.entity.purchase.po.PurchasePayRecord;
+import com.ruoyi.common.core.service.BaseService;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.purchase.entity.purchase.vo.PurchasePayRecordVo;
+import com.fjhx.purchase.entity.purchase.dto.PurchasePayRecordSelectDto;
+
+
+/**
+ * <p>
+ * 采购付款记录 服务类
+ * </p>
+ *
+ * @author 
+ * @since 2023-05-23
+ */
+public interface PurchasePayRecordService extends BaseService<PurchasePayRecord> {
+
+    /**
+     * 采购付款记录分页
+     */
+    Page<PurchasePayRecordVo> getPage(PurchasePayRecordSelectDto dto);
+
+}

+ 5 - 0
hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/PurchaseService.java

@@ -62,4 +62,9 @@ public interface PurchaseService extends BaseService<Purchase> {
      * 货款账单
      */
     Page<PurchaseDto> paymentBill(PurchaseSelectDto purchaseDto);
+
+    /**
+     * 采购付款
+     */
+    void payByWdly(PurchaseDto purchaseDto);
 }

+ 33 - 0
hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/impl/PurchasePayRecordServiceImpl.java

@@ -0,0 +1,33 @@
+package com.fjhx.purchase.service.purchase.impl;
+
+import com.fjhx.purchase.entity.purchase.po.PurchasePayRecord;
+import com.fjhx.purchase.mapper.purchase.PurchasePayRecordMapper;
+import com.fjhx.purchase.service.purchase.PurchasePayRecordService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.purchase.entity.purchase.vo.PurchasePayRecordVo;
+import com.fjhx.purchase.entity.purchase.dto.PurchasePayRecordSelectDto;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+
+
+/**
+ * <p>
+ * 采购付款记录 服务实现类
+ * </p>
+ *
+ * @author 
+ * @since 2023-05-23
+ */
+@Service
+public class PurchasePayRecordServiceImpl extends ServiceImpl<PurchasePayRecordMapper, PurchasePayRecord> implements PurchasePayRecordService {
+
+    @Override
+    public Page<PurchasePayRecordVo> getPage(PurchasePayRecordSelectDto dto) {
+        IWrapper<PurchasePayRecord> wrapper = getWrapper();
+        wrapper.orderByDesc("ppr", PurchasePayRecord::getId);
+        Page<PurchasePayRecordVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+}

+ 23 - 0
hx-purchase/src/main/java/com/fjhx/purchase/service/purchase/impl/PurchaseServiceImpl.java

@@ -27,6 +27,7 @@ import com.fjhx.purchase.entity.purchase.dto.PurchaseSelectDto;
 import com.fjhx.purchase.entity.purchase.enums.PurchaseStatusEnum;
 import com.fjhx.purchase.entity.purchase.po.Purchase;
 import com.fjhx.purchase.entity.purchase.po.PurchaseDetail;
+import com.fjhx.purchase.entity.purchase.po.PurchasePayRecord;
 import com.fjhx.purchase.entity.purchase.vo.PurchaseDocumentaryVo;
 import com.fjhx.purchase.entity.purchase.vo.PurchaseVo;
 import com.fjhx.purchase.entity.subscribe.po.Subscribe;
@@ -37,6 +38,7 @@ import com.fjhx.purchase.service.arrival.ArrivalService;
 import com.fjhx.purchase.service.invoice.InvoiceDetailsService;
 import com.fjhx.purchase.service.pay.PayDetailService;
 import com.fjhx.purchase.service.purchase.PurchaseDetailService;
+import com.fjhx.purchase.service.purchase.PurchasePayRecordService;
 import com.fjhx.purchase.service.purchase.PurchaseService;
 import com.fjhx.purchase.service.subscribe.SubscribeDetailService;
 import com.fjhx.purchase.service.subscribe.SubscribeService;
@@ -107,6 +109,8 @@ public class PurchaseServiceImpl extends ServiceImpl<PurchaseMapper, Purchase>
 
     @Autowired
     private CodingRuleService codingRuleService;
+    @Autowired
+    private PurchasePayRecordService purchasePayRecordService;
 
     /**
      * 列表
@@ -462,4 +466,23 @@ public class PurchaseServiceImpl extends ServiceImpl<PurchaseMapper, Purchase>
 
         return page;
     }
+
+    /**
+     * 维多利亚 采购付款
+     */
+    @Override
+    public void payByWdly(PurchaseDto purchaseDto) {
+        Purchase purchase = getById(purchaseDto.getId());
+        String victoriatouristJson = purchase.getVictoriatouristJson();
+        JSONObject json = ObjectUtil.isEmpty(victoriatouristJson) ? new JSONObject() : JSONObject.parseObject(victoriatouristJson);
+        BigDecimal paidAmount = ObjectUtil.isEmpty(json.getBigDecimal("paidAmount")) ? BigDecimal.ZERO : json.getBigDecimal("paidAmount");
+        //计算已付款金额
+        BigDecimal add = paidAmount.add(purchaseDto.getPaidAmount());
+        json.put("paidAmount", add);
+        purchase.setVictoriatouristJson(json.toJSONString());
+        //创建付款记录
+        PurchasePayRecord purchasePayRecord = new PurchasePayRecord();
+        purchasePayRecord.setPurchaseId(purchase.getId());
+        purchasePayRecord.setAmount(purchaseDto.getPaidAmount());
+    }
 }

+ 2 - 1
hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/SubscribeService.java

@@ -1,5 +1,6 @@
 package com.fjhx.purchase.service.subscribe;
 
+import com.fjhx.purchase.entity.subscribe.dto.SubscribeDetailDto;
 import com.fjhx.purchase.entity.subscribe.po.Subscribe;
 import com.ruoyi.common.core.domain.entity.SysDept;
 import com.ruoyi.common.core.service.BaseService;
@@ -54,5 +55,5 @@ public interface SubscribeService extends BaseService<Subscribe> {
      * 获取待采购所有产品的部门列表
      * @return
      */
-    List<SysDept> getDepts();
+    List<SysDept> getDepts(SubscribeDetailDto subscribeDetailDto);
 }

+ 3 - 2
hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/impl/SubscribeServiceImpl.java

@@ -16,6 +16,7 @@ import com.fjhx.common.service.coding.CodingRuleService;
 import com.fjhx.item.entity.product.po.ProductInfo;
 import com.fjhx.item.entity.product.vo.ProductInfoVo;
 import com.fjhx.item.service.product.ProductInfoService;
+import com.fjhx.purchase.entity.subscribe.dto.SubscribeDetailDto;
 import com.fjhx.purchase.entity.subscribe.dto.SubscribeDto;
 import com.fjhx.purchase.entity.subscribe.dto.SubscribeSelectDto;
 import com.fjhx.purchase.entity.subscribe.po.Subscribe;
@@ -167,9 +168,9 @@ public class SubscribeServiceImpl extends ServiceImpl<SubscribeMapper, Subscribe
     }
 
     @Override
-    public List<SysDept> getDepts() {
+    public List<SysDept> getDepts(SubscribeDetailDto subscribeDetailDto) {
         List<Long> deptIds = new ArrayList<>();
-        List<SubscribeDetail> list = subscribeDetailService.list();
+        List<SubscribeDetail> list = subscribeDetailService.list(q->q.eq(ObjectUtils.isNotEmpty(subscribeDetailDto.getStatus()),SubscribeDetail::getStatus,subscribeDetailDto.getStatus()));
         if(ObjectUtils.isEmpty(list)){
             return new ArrayList<>();
         }

+ 17 - 0
hx-purchase/src/main/resources/mapper/purchase/PurchasePayRecordMapper.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.purchase.mapper.purchase.PurchasePayRecordMapper">
+    <select id="getPage" resultType="com.fjhx.purchase.entity.purchase.vo.PurchasePayRecordVo">
+        select
+            ppr.id,
+            ppr.purchase_id,
+            ppr.amount,
+            ppr.create_user,
+            ppr.create_time,
+            ppr.update_user,
+            ppr.update_time
+        from purchase_pay_record ppr
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 66 - 1
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/deliver/impl/DeliverGoodsServiceImpl.java

@@ -39,13 +39,21 @@ import com.fjhx.victoriatourist.service.logistics.LogisticsDetailsService;
 import com.fjhx.victoriatourist.service.logistics.LogisticsInfosService;
 import com.fjhx.victoriatourist.service.purchase.PurchaseBackDetailsService;
 import com.fjhx.victoriatourist.service.purchase.PurchaseBackService;
+import com.fjhx.wms.entity.stock.po.StockJournal;
+import com.fjhx.wms.entity.stock.po.StockJournalDetails;
+import com.fjhx.wms.entity.stock.po.StockWait;
+import com.fjhx.wms.entity.stock.po.StockWaitDetails;
+import com.fjhx.wms.entity.stock.vo.StockJournalDetailsVo;
+import com.fjhx.wms.service.stock.StockJournalDetailsService;
+import com.fjhx.wms.service.stock.StockJournalService;
+import com.fjhx.wms.service.stock.StockWaitDetailsService;
+import com.fjhx.wms.service.stock.StockWaitService;
 import com.ruoyi.common.utils.wrapper.IWrapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.function.Function;
@@ -83,6 +91,14 @@ public class DeliverGoodsServiceImpl extends ServiceImpl<DeliverGoodsMapper, Del
     private PurchaseBackDetailsService purchaseBackDetailsService;
     @Autowired
     private PurchaseBackService purchaseBackService;
+    @Autowired
+    private StockWaitService stockWaitService;
+    @Autowired
+    private StockWaitDetailsService stockWaitDetailsService;
+    @Autowired
+    private StockJournalDetailsService stockJournalDetailsService;
+    @Autowired
+    private StockJournalService stockJournalService;
 
     @Override
     public Page<DeliverGoodsVo> getPage(DeliverGoodsSelectDto dto) {
@@ -305,6 +321,55 @@ public class DeliverGoodsServiceImpl extends ServiceImpl<DeliverGoodsMapper, Del
                 purchaseDetailVo.setPurchaseBackDetailsList(purchaseBackDetails);
             }
         }
+        //赋值已入库记录
+        for (PurchaseDetailVo purchaseDetailVo : purchaseDetailVoList) {
+            //根据采购明细id查到货明细
+            List<ArrivalDetail> arrivalDetailList = arrivalDetailService.list(q -> q.eq(ArrivalDetail::getPurchaseDetailId, purchaseDetailVo.getId()));
+            if (ObjectUtil.isEmpty(arrivalDetailList)) {
+                continue;
+            }
+            //根据到货明细id查待入库明细
+            List<Long> arrivalDetailIds = arrivalDetailList.stream().map(ArrivalDetail::getId).collect(Collectors.toList());
+            List<StockWaitDetails> stockWaitDetailsList = stockWaitDetailsService.list(q -> q.in(StockWaitDetails::getBusinessDetailsId, arrivalDetailIds));
+            if (ObjectUtil.isEmpty(stockWaitDetailsList)) {
+                continue;
+            }
+            //根据待入库id查出入库记录
+            List<Long> stockWaitId = stockWaitDetailsList.stream().map(StockWaitDetails::getStockWaitId).collect(Collectors.toList());
+            List<Long> stockJournalIds = stockJournalService.listObject(StockJournal::getId, q -> q.in(StockJournal::getBusinessId, stockWaitId));
+            if (ObjectUtil.isEmpty(stockJournalIds)) {
+                continue;
+            }
+            //查出产品的出入库明细
+            List<StockJournalDetails> stockJournalDetailsList = stockJournalDetailsService.list(q -> q.in(StockJournalDetails::getStockJournalId, stockJournalIds)
+                    .eq(StockJournalDetails::getProductId, purchaseDetailVo.getBussinessId()));
+            if (ObjectUtil.isEmpty(stockJournalDetailsList)) {
+                continue;
+            }
+            List<StockJournalDetailsVo> stockJournalDetailsVos = BeanUtil.copyToList(stockJournalDetailsList, StockJournalDetailsVo.class);
+            //对入库已入库列表赋值发货单号
+            Map<Long, String> dgdMap = list.stream().collect(Collectors.toMap(DeliverGoodsDetailsVo::getId, DeliverGoodsDetailsVo::getLogisticsCode));
+
+            for (StockJournalDetailsVo stockJournalDetailsVo : stockJournalDetailsVos) {
+                StockJournal stockJournal = stockJournalService.getById(stockJournalDetailsVo.getStockJournalId());
+                StockWaitDetails stockWaitDetails = stockWaitDetailsService.getOne(q -> q.eq(StockWaitDetails::getStockWaitId, stockJournal.getBusinessId()));
+
+                Long businessDetailsId = stockWaitDetails.getBusinessDetailsId();
+                ArrivalDetail arrivalDetail1 = arrivalDetailService.getById(businessDetailsId);
+
+                //赋值发货单号
+                stockJournalDetailsVo.setLogisticsCode(dgdMap.get(arrivalDetail1.getDeliverGoodsDetailsId()));
+            }
+
+            //对数量求和
+            BigDecimal receiptQuantity = stockJournalDetailsList.stream()
+                    .map(StockJournalDetails::getQuantity)
+                    .reduce(BigDecimal.ZERO, BigDecimal::add);
+            //赋值数量和记录
+            purchaseDetailVo.setReceiptQuantity(receiptQuantity);
+            purchaseDetailVo.setReceiptList(stockJournalDetailsVos);
+        }
+
         result.setPurchaseDetailVoList(purchaseDetailVoList);
         return result;
     }

+ 5 - 0
hx-wms/src/main/java/com/fjhx/wms/entity/stock/vo/StockJournalDetailsVo.java

@@ -70,4 +70,9 @@ public class StockJournalDetailsVo extends StockJournalDetails {
     /**仓库单号*/
     private String code;
 
+    /**
+     * 发货物流单号
+     */
+    private String logisticsCode;
+
 }