浏览代码

Merge remote-tracking branch 'origin/dev' into dev

caozj 1 年之前
父节点
当前提交
54b7b67ca8

+ 5 - 0
hx-account/src/main/java/com/fjhx/account/entity/account/vo/AccountRunningWaterVo.java

@@ -97,4 +97,9 @@ public class AccountRunningWaterVo extends AccountRunningWater {
      * 订单编码集合
      */
     private String contractCodes;
+
+    /**
+     * 销售合同id集合
+     */
+    private String contractIds;
 }

+ 10 - 7
hx-account/src/main/java/com/fjhx/account/service/transaction/impl/TransactionServiceImpl.java

@@ -1,5 +1,6 @@
 package com.fjhx.account.service.transaction.impl;
 
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.account.entity.account.po.AccountManagement;
@@ -12,7 +13,6 @@ import com.fjhx.account.service.account.AccountManagementService;
 import com.fjhx.account.service.transaction.TransactionDepartmentService;
 import com.fjhx.account.service.transaction.TransactionService;
 import com.ruoyi.common.utils.wrapper.IWrapper;
-import com.ruoyi.common.utils.wrapper.SqlField;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -43,12 +43,15 @@ public class TransactionServiceImpl extends ServiceImpl<TransactionMapper, Trans
         wrapper.eq(Transaction::getDepartmentId, dto.getDepartmentId());
         wrapper.eq(Transaction::getType, dto.getType());
         //关键字搜索
-        List<Long> accountIds = accountManagementService.listObject(AccountManagement::getId,
-                q -> q.like(AccountManagement::getName, dto.getKeyword()));
-        wrapper.keyword(dto.getKeyword(),
-                new SqlField(Transaction::getAmount),
-                new SqlField(Transaction::getRemark)
-        ).or().in(Transaction::getAccountId, accountIds);
+        if (ObjectUtil.isNotEmpty(dto.getKeyword())) {
+            List<Long> accountIds = accountManagementService.listObject(AccountManagement::getId,
+                    q -> q.like(AccountManagement::getName, dto.getKeyword()));
+            wrapper.and(q -> q
+                    .like(Transaction::getAmount, dto.getKeyword())
+                    .or().like(Transaction::getRemark, dto.getKeyword())
+                    .or().in(Transaction::getAccountId, accountIds)
+            );
+        }
         //排序
         wrapper.orderByDesc("t", Transaction::getId);
         Page<TransactionVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);

+ 40 - 11
hx-account/src/main/resources/mapper/account/AccountRunningWaterMapper.xml

@@ -3,17 +3,46 @@
 <mapper namespace="com.fjhx.account.mapper.account.AccountRunningWaterMapper">
     <!--这段代码正常是不需要跨库查询的。但是一开始封装包的时候分装的不合理,pom里面包是不能互相引用的。account包继承sale包会出现依赖冲突,目前不好改动,只能跨库查询-->
     <select id="getPage" resultType="com.fjhx.account.entity.account.vo.AccountRunningWaterVo">
-        select arw.*,
-               (select GROUP_CONCAT(t4.`code`) from account_payment t1
-                LEFT JOIN account_request_funds t2 ON t1.business_id = t2.id
-                LEFT JOIN account_request_funds_detail t3 ON t2.id = t3.account_request_funds_id
-                LEFT JOIN `bytesailing_sale`.contract t4 ON t3.contract_id = t4.id
-                WHERE t1.id = arw.business_id
-               ) AS contractCodes,
-               am.alias accountManagementName,
-               am.corporation_id
-        from account_running_water arw
-                 left join account_management am on arw.account_management_id = am.id
+        SELECT arw.*,
+               (SELECT IF
+                           (t1.type = 20, GROUP_CONCAT(c.`code`), GROUP_CONCAT(t4.`code`)) contractCodes
+                FROM account_payment t1
+                         LEFT JOIN account_request_funds t2 ON t1.business_id = t2.id
+                         LEFT JOIN account_request_funds_detail t3 ON t2.id = t3.account_request_funds_id
+                         LEFT JOIN `bytesailing_sale`.contract t4 ON t3.contract_id = t4.id
+                    --采购付款来源
+                         LEFT JOIN bytesailing_purchase.pay pa ON t1.business_id = pa.id
+                         LEFT JOIN bytesailing_purchase.pay_detail pad
+        ON pad.pay_id = pa.id
+            LEFT JOIN bytesailing_purchase.purchase p ON pad.purchase_id = p.id
+            LEFT JOIN bytesailing_sale.contract c ON p.data_resource_id = c.id
+        WHERE
+            t1.id = arw.business_id
+            ) AS contractCodes
+            , (
+        SELECT
+            IF
+            ( t1.type = 20, GROUP_CONCAT( c.id ), GROUP_CONCAT( t4.id ) ) contractIds
+        FROM
+            account_payment t1
+            LEFT JOIN account_request_funds t2
+        ON t1.business_id = t2.id
+            LEFT JOIN account_request_funds_detail t3 ON t2.id = t3.account_request_funds_id
+            LEFT JOIN `bytesailing_sale`.contract t4 ON t3.contract_id = t4.id
+            --采购付款来源
+            LEFT JOIN bytesailing_purchase.pay pa ON t1.business_id = pa.id
+            LEFT JOIN bytesailing_purchase.pay_detail pad ON pad.pay_id = pa.id
+            LEFT JOIN bytesailing_purchase.purchase p ON pad.purchase_id = p.id
+            LEFT JOIN bytesailing_sale.contract c ON p.data_resource_id = c.id
+        WHERE
+            t1.id = arw.business_id
+            ) AS contractIds
+            , am.alias accountManagementName
+            , am.corporation_id
+        FROM
+            account_running_water arw
+            LEFT JOIN account_management am
+        ON arw.account_management_id = am.id
             ${ew.customSqlSegment}
     </select>
     <select id="getDetail" resultType="com.fjhx.account.entity.account.vo.AccountRunningWaterVo">

+ 1 - 1
hx-sale/src/main/java/com/fjhx/sale/service/intermediate/impl/IntermediateContractServiceImpl.java

@@ -91,7 +91,7 @@ public class IntermediateContractServiceImpl extends ServiceImpl<IntermediateCon
     public void edit(IntermediateContractDto intermediateContractDto) {
         intermediateContractDto.setId(null);
         Assert.notEmpty(intermediateContractDto.getDocumentsId(), "单证id不能为空");
-        IntermediateContract intermediateContract = this.getOne(q -> q.eq(IntermediateContract::getDocumentsId, intermediateContractDto.getId()));
+        IntermediateContract intermediateContract = this.getOne(q -> q.eq(IntermediateContract::getDocumentsId, intermediateContractDto.getDocumentsId()));
         if (ObjectUtil.isNotEmpty(intermediateContract)) {
             //编辑 赋值id
             intermediateContractDto.setId(intermediateContract.getId());

+ 16 - 0
hx-sale/src/main/resources/mapper/contract/ContractMapper.xml

@@ -190,6 +190,22 @@
                  JOIN bytesailing_account.account_running_water arw ON arw.business_id = ap.id
                  LEFT JOIN bytesailing_account.account_management am ON arw.account_management_id = am.id
         WHERE c.id = #{contractId}
+        UNION ALL
+        SELECT arw.id,
+               arw.create_time,
+               30                 type,
+               arw.currency,
+               clc.money,
+               arw.remarks,
+               am.`name`          accountManagementName,
+               am.account_opening accountManagementOpening,
+               arw.`name`
+        FROM bytesailing_account.account_running_water arw
+                 JOIN claim cl ON cl.business_id = arw.id
+                 JOIN claim_contract clc ON clc.claim_id = cl.id
+                 JOIN contract c ON clc.contract_id = c.id
+                 LEFT JOIN bytesailing_account.account_management am ON arw.account_management_id = am.id
+        WHERE c.id = #{contractId}
     </select>
 
 </mapper>

+ 14 - 14
hx-sale/src/main/resources/mapper/pack/PackShipmentMapper.xml

@@ -24,6 +24,20 @@
     </select>
     <select id="productDetailList" resultType="java.util.Map">
         SELECT
+        id as businessId,
+        remark,
+        null as subDescription,
+        null as customsCode,
+        quantity,
+        null as price,
+        10 as type
+        FROM
+        pack_detail_goods dg
+        <where>
+            <include refid="productDetail"/>
+        </where>
+        UNION
+        SELECT
         dg.id AS businessId,
         json_unquote( pi.standard_json -> '$.englishName' ) remark,
         dg.product_name AS subDescription,
@@ -38,20 +52,6 @@
         <where>
             <include refid="productDetail"/>
         </where>
-        UNION
-        SELECT
-            id  as businessId,
-            product_name remark,
-            null as subDescription,
-            null as customsCode,
-            quantity,
-            null as price,
-            20 as type
-        FROM
-            pack_detail_product dg
-        <where>
-            <include refid="productDetail"/>
-        </where>
     </select>
 
     <sql id="productDetail">

+ 5 - 0
hx-wms/src/main/java/com/fjhx/wms/entity/stock/po/StockWaitDetails.java

@@ -55,4 +55,9 @@ public class StockWaitDetails extends BasePo {
      */
     private BigDecimal purchaseQuantity;
 
+    /**
+     * 待入库明细状态 0待入库 1部分入库 2入库完成
+     */
+    private Integer status;
+
 }

+ 8 - 5
hx-wms/src/main/java/com/fjhx/wms/service/stock/impl/StockWaitDetailsServiceImpl.java

@@ -53,9 +53,9 @@ public class StockWaitDetailsServiceImpl extends ServiceImpl<StockWaitDetailsMap
         wrapper.eq("sw", StockWait::getBusinessType, dto.getBusinessType());
 
         if (ObjectUtil.isEmpty(dto.getStatus())) {
-            wrapper.in("sw", StockWait::getStatus, 0, 1);
+            wrapper.in("swd", StockWait::getStatus, 0, 1);
         } else {
-            wrapper.eq("sw", StockWait::getStatus, dto.getStatus());
+            wrapper.eq("swd", StockWait::getStatus, dto.getStatus());
         }
 
         Page<StockWaitDetailsVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
@@ -125,9 +125,12 @@ public class StockWaitDetailsServiceImpl extends ServiceImpl<StockWaitDetailsMap
             BigDecimal receiptQuantity = stockWaitDetails.getReceiptQuantity();
             receiptQuantity = ObjectUtil.isEmpty(receiptQuantity) ? BigDecimal.ZERO : receiptQuantity;
             stockWaitDetails.setReceiptQuantity(receiptQuantity.add(stockWaitDetailsDto.getQuantity()));
-//            if (stockWaitDetails.getReceiptQuantity().compareTo(stockWaitDetails.getQuantity()) > 0) {
-//                throw new ServiceException("出库数量+已出库数量不能大于待出库数量");
-//            }
+            //修改明细状态
+            if (stockWaitDetails.getReceiptQuantity().compareTo(stockWaitDetails.getQuantity()) >= 0) {
+                stockWaitDetails.setStatus(2);
+            } else {
+                stockWaitDetails.setStatus(1);
+            }
             updateById(stockWaitDetails);
         }
 

+ 1 - 1
hx-wms/src/main/resources/mapper/stock/StockWaitDetailsMapper.xml

@@ -7,7 +7,7 @@
             sw.business_code,
             sw.business_id,
             sw.business_type,
-            sw.`status`,
+            swd.`status`,
             swd.stock_wait_id,
             swd.product_id,
             swd.quantity,