Browse Source

fix:收款管理导入修改

ly 9 months ago
parent
commit
0fae653de6

+ 8 - 3
src/main/java/cn/ezhizao/project/business/collection/service/impl/BizCollectionServiceImpl.java

@@ -14,12 +14,14 @@ import cn.ezhizao.project.business.collection.mapper.BizCollectionMapper;
 import cn.ezhizao.project.business.collection.service.IBizCollectionService;
 import cn.ezhizao.project.business.company.domain.BizCompany;
 import cn.ezhizao.project.business.company.service.IBizCompanyService;
+import cn.ezhizao.project.business.invoice.domain.BizInvoice;
 import cn.ezhizao.project.business.order.domain.BizArchiveInput;
 import cn.ezhizao.project.business.order.domain.BizArchiveInputDetail;
 import cn.ezhizao.project.business.order.service.IBizArchiveInputDetailService;
 import cn.ezhizao.project.business.order.service.IBizArchiveInputService;
 import cn.ezhizao.project.system.service.ISysUserService;
 import cn.hutool.core.date.DateTime;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
@@ -141,9 +143,12 @@ public class BizCollectionServiceImpl extends ServiceImpl<BizCollectionMapper, B
                 continue;
             }
             //查询收款记录
-            List<BizCollection> collected = this.query().eq("contract_id", archiveInput.getId()).eq("status", 1).eq("status", 0).list();
+            LambdaQueryWrapper<BizCollection> wrapper = new LambdaQueryWrapper<>();
+            wrapper.eq(BizCollection::getContractId, archiveInput.getId());
+            wrapper.and(con -> con.eq(BizCollection::getStatus, 0).or().eq(BizCollection::getStatus, 1));
+            List<BizCollection> collected = this.list(wrapper);
             BigDecimal collectedAmount = BigDecimal.valueOf(collected.stream().mapToDouble(v -> v.getArriveAmount().doubleValue()).sum());
-            if(item.getAmount().subtract(archiveInput.getTrueAmount().subtract(collectedAmount)).compareTo(BigDecimal.ZERO) >0){
+            if(null == item.getAmount() && item.getAmount().subtract(archiveInput.getTrueAmount().subtract(collectedAmount)).compareTo(BigDecimal.ZERO) >0){
                 failureNum++;
                 failureMsg.append("<br/>").append(failureNum).append("、订单 ").append(item.getContractNo()).append("收款金额不能大于未收款金额");
                 continue;
@@ -314,7 +319,7 @@ public class BizCollectionServiceImpl extends ServiceImpl<BizCollectionMapper, B
             List<BizCollection> collected = this.query().eq("contract_id", archiveInput.getId()).eq("status", 1).eq("status", 0).list();
             BigDecimal collectedAmount = BigDecimal.valueOf(collected.stream().mapToDouble(v -> v.getArriveAmount().doubleValue()).sum());
 
-            if(item.getAmount().subtract(archiveInput.getTrueAmount().subtract(collectedAmount)).compareTo(BigDecimal.ZERO) >0){
+            if(null == item.getAmount() && item.getAmount().subtract(archiveInput.getTrueAmount().subtract(collectedAmount)).compareTo(BigDecimal.ZERO) >0){
                 failureNum++;
                 failureMsg.append("<br/>").append(failureNum).append("、订单 ").append(item.getContractNo()).append("收款金额不能大于未收款金额");
                 continue;