From 0c8a2d35fdf8e402ad34355c545c69a1750d759c Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期二, 09 十二月 2025 17:26:04 +0800
Subject: [PATCH] yys 1.销售台账同步日期 2.销售台账返回车牌号 3.库存管理分组条件修改 4.排产增加产线字段 5.首页增加条幅提醒
---
src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java | 128 ++++++++++++++++++++++++++----------------
1 files changed, 79 insertions(+), 49 deletions(-)
diff --git a/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java b/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
index 7dea6df..1dddeb8 100644
--- a/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
+++ b/src/main/java/com/ruoyi/home/service/impl/HomeServiceImpl.java
@@ -4,14 +4,20 @@
import com.ruoyi.approve.mapper.ApproveProcessMapper;
import com.ruoyi.approve.pojo.ApproveProcess;
import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.device.mapper.DeviceMaintenanceMapper;
+import com.ruoyi.device.mapper.DeviceRepairMapper;
+import com.ruoyi.device.pojo.DeviceMaintenance;
+import com.ruoyi.device.pojo.DeviceRepair;
import com.ruoyi.dto.MapDto;
import com.ruoyi.framework.security.LoginUser;
import com.ruoyi.home.dto.*;
import com.ruoyi.home.service.HomeService;
import com.ruoyi.lavorissue.mapper.LavorIssueMapper;
import com.ruoyi.lavorissue.pojo.LaborIssue;
+import com.ruoyi.procurementrecord.mapper.CustomStorageMapper;
import com.ruoyi.procurementrecord.mapper.ProcurementRecordMapper;
import com.ruoyi.procurementrecord.mapper.ProcurementRecordOutMapper;
+import com.ruoyi.procurementrecord.pojo.CustomStorage;
import com.ruoyi.procurementrecord.pojo.ProcurementRecordOut;
import com.ruoyi.procurementrecord.pojo.ProcurementRecordStorage;
import com.ruoyi.project.system.domain.SysDept;
@@ -67,6 +73,9 @@
private ProcurementRecordMapper procurementRecordStorageMapper;
@Autowired
+ private CustomStorageMapper customStorageMapper;
+
+ @Autowired
private QualityInspectMapper qualityStatisticsMapper;
@Autowired
@@ -95,53 +104,56 @@
salesLedgerLambdaQueryWrapper.ge(SalesLedger::getEntryDate, currentMonth.atDay(1).atStartOfDay()) // 澶т簬绛変簬鏈湀绗竴澶�
.lt(SalesLedger::getEntryDate, currentMonth.plusMonths(1).atDay(1).atStartOfDay()); // 灏忎簬涓嬫湀绗竴澶�
List<SalesLedger> salesLedgers = salesLedgerMapper.selectList(salesLedgerLambdaQueryWrapper);
- if(CollectionUtils.isEmpty(salesLedgers)){
- return homeBusinessDto;
+ if(!CollectionUtils.isEmpty(salesLedgers)){
+ // 鍚堣鍚堝悓閲戦
+ BigDecimal contractAmount = salesLedgers.stream().map(SalesLedger::getContractAmount)
+ .filter(Objects::nonNull)
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
+ LambdaQueryWrapper<SalesLedgerProduct> salesLedgerProductMapperLambdaQueryWrapper = new LambdaQueryWrapper<SalesLedgerProduct>();
+ salesLedgerProductMapperLambdaQueryWrapper.eq(SalesLedgerProduct::getType, 1)
+ .in(SalesLedgerProduct::getSalesLedgerId, salesLedgers.stream().map(SalesLedger::getId).collect(Collectors.toList()));
+ List<SalesLedgerProduct> salesLedgerProducts = salesLedgerProductMapper.selectList(salesLedgerProductMapperLambdaQueryWrapper);
+ // 鏈紑绁ㄩ噾棰�
+ BigDecimal noInvoiceAmountTotal = salesLedgerProducts.stream().map(SalesLedgerProduct::getNoInvoiceAmount)
+ .filter(Objects::nonNull)
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
+ homeBusinessDto.setMonthSaleMoney(contractAmount.setScale(2, RoundingMode.HALF_UP).toString());
+ homeBusinessDto.setMonthSaleHaveMoney(noInvoiceAmountTotal.setScale(2, RoundingMode.HALF_UP).toString());
}
- // 鍚堣鍚堝悓閲戦
- BigDecimal contractAmount = salesLedgers.stream().map(SalesLedger::getContractAmount)
- .filter(Objects::nonNull)
- .reduce(BigDecimal.ZERO, BigDecimal::add);
- LambdaQueryWrapper<SalesLedgerProduct> salesLedgerProductMapperLambdaQueryWrapper = new LambdaQueryWrapper<SalesLedgerProduct>();
- salesLedgerProductMapperLambdaQueryWrapper.eq(SalesLedgerProduct::getType, 1)
- .in(SalesLedgerProduct::getSalesLedgerId, salesLedgers.stream().map(SalesLedger::getId).collect(Collectors.toList()));
- List<SalesLedgerProduct> salesLedgerProducts = salesLedgerProductMapper.selectList(salesLedgerProductMapperLambdaQueryWrapper);
- // 鏈紑绁ㄩ噾棰�
- BigDecimal noInvoiceAmountTotal = salesLedgerProducts.stream().map(SalesLedgerProduct::getNoInvoiceAmount)
- .filter(Objects::nonNull)
- .reduce(BigDecimal.ZERO, BigDecimal::add);
- homeBusinessDto.setMonthSaleMoney(contractAmount.setScale(2, RoundingMode.HALF_UP).toString());
- homeBusinessDto.setMonthSaleHaveMoney(noInvoiceAmountTotal.setScale(2, RoundingMode.HALF_UP).toString());
// 鍒涘缓LambdaQueryWrapper
LambdaQueryWrapper<PurchaseLedger> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.ge(PurchaseLedger::getEntryDate, currentMonth.atDay(1).atStartOfDay()) // 澶т簬绛変簬鏈湀绗竴澶�
.lt(PurchaseLedger::getEntryDate, currentMonth.plusMonths(1).atDay(1).atStartOfDay()); // 灏忎簬涓嬫湀绗竴澶�
-
// 鎵ц鏌ヨ骞惰绠楁�诲拰
List<PurchaseLedger> purchaseLedgers = purchaseLedgerMapper.selectList(queryWrapper);
- if(CollectionUtils.isEmpty(purchaseLedgers)){
- return homeBusinessDto;
+ if(!CollectionUtils.isEmpty(purchaseLedgers)){
+ LambdaQueryWrapper<SalesLedgerProduct> salesLedgerProductMapperLambdaQueryWrapperCopy = new LambdaQueryWrapper<SalesLedgerProduct>();
+ salesLedgerProductMapperLambdaQueryWrapperCopy.eq(SalesLedgerProduct::getType, 2)
+ .in(SalesLedgerProduct::getSalesLedgerId, purchaseLedgers.stream().map(PurchaseLedger::getId).collect(Collectors.toList()));
+ List<SalesLedgerProduct> salesLedgerProductsCopy = salesLedgerProductMapper.selectList(salesLedgerProductMapperLambdaQueryWrapperCopy);
+ // 鍚堣鍚堝悓閲戦
+ BigDecimal receiveAmount = purchaseLedgers.stream()
+ .map(PurchaseLedger::getContractAmount)
+ .filter(Objects::nonNull)
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
+ // 鏈紑绁ㄩ噾棰�
+ BigDecimal unReceiptPaymentAmount = salesLedgerProductsCopy.stream()
+ .map(SalesLedgerProduct::getNoInvoiceAmount)
+ .filter(Objects::nonNull)
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
+ homeBusinessDto.setMonthPurchaseMoney(receiveAmount.setScale(2, RoundingMode.HALF_UP).toString());
+ homeBusinessDto.setMonthPurchaseHaveMoney(unReceiptPaymentAmount.setScale(2, RoundingMode.HALF_UP).toString());
}
-
- LambdaQueryWrapper<SalesLedgerProduct> salesLedgerProductMapperLambdaQueryWrapperCopy = new LambdaQueryWrapper<SalesLedgerProduct>();
- salesLedgerProductMapperLambdaQueryWrapper.eq(SalesLedgerProduct::getType, 2)
- .in(SalesLedgerProduct::getSalesLedgerId, purchaseLedgers.stream().map(PurchaseLedger::getId).collect(Collectors.toList()));
- List<SalesLedgerProduct> salesLedgerProductsCopy = salesLedgerProductMapper.selectList(salesLedgerProductMapperLambdaQueryWrapperCopy);
- // 鍚堣鍚堝悓閲戦
- BigDecimal receiveAmount = purchaseLedgers.stream()
- .map(PurchaseLedger::getContractAmount)
- .filter(Objects::nonNull)
- .reduce(BigDecimal.ZERO, BigDecimal::add);
- // 鏈紑绁ㄩ噾棰�
- BigDecimal unReceiptPaymentAmount = salesLedgerProductsCopy.stream()
- .map(SalesLedgerProduct::getNoInvoiceAmount)
- .filter(Objects::nonNull)
- .reduce(BigDecimal.ZERO, BigDecimal::add);
-
// 缁熻搴撳瓨
List<ProcurementRecordStorage> procurementRecordStorages = procurementRecordStorageMapper.selectList(null);
BigDecimal stockAmount = procurementRecordStorages.stream()
.map(ProcurementRecordStorage::getInboundNum)
+ .filter(Objects::nonNull)
+ .reduce(BigDecimal.ZERO, BigDecimal::add);
+ // 鑷畾涔夊簱瀛�
+ List<CustomStorage> customStorages = customStorageMapper.selectList(null);
+ BigDecimal customStockAmount = customStorages.stream()
+ .map(CustomStorage::getInboundNum)
.filter(Objects::nonNull)
.reduce(BigDecimal.ZERO, BigDecimal::add);
List<ProcurementRecordOut> procurementRecordOuts = procurementRecordOutMapper.selectList(null);
@@ -149,7 +161,7 @@
.map(ProcurementRecordOut::getInboundNum)
.filter(Objects::nonNull)
.reduce(BigDecimal.ZERO, BigDecimal::add);
- BigDecimal stock = stockAmount.subtract(outboundAmount);
+ BigDecimal stock = stockAmount.add(customStockAmount).subtract(outboundAmount);
// 鑾峰彇褰撳ぉ鍏ュ簱鏁伴噺
LambdaQueryWrapper<ProcurementRecordStorage> procurementRecordStorageLambdaQueryWrapper = new LambdaQueryWrapper<>();
procurementRecordStorageLambdaQueryWrapper.ge(ProcurementRecordStorage::getCreateTime, now) // 澶т簬绛変簬褰撳ぉ
@@ -159,9 +171,6 @@
.map(ProcurementRecordStorage::getInboundNum)
.filter(Objects::nonNull)
.reduce(BigDecimal.ZERO, BigDecimal::add);
-
- homeBusinessDto.setMonthPurchaseMoney(receiveAmount.setScale(2, RoundingMode.HALF_UP).toString());
- homeBusinessDto.setMonthPurchaseHaveMoney(unReceiptPaymentAmount.setScale(2, RoundingMode.HALF_UP).toString());
homeBusinessDto.setInventoryNum(stock.setScale(2, RoundingMode.HALF_UP).toString());
homeBusinessDto.setTodayInventoryNum(stockAmount1.setScale(2, RoundingMode.HALF_UP).toString());
return homeBusinessDto;
@@ -374,32 +383,53 @@
}
// 搴旀敹
List<SalesLedger> salesLedgers = salesLedgerMapper.selectList(new LambdaQueryWrapper<SalesLedger>()
- .ge(SalesLedger::getEntryDate, startDate)
- .lt(SalesLedger::getEntryDate, endDate)
+// .ge(SalesLedger::getEntryDate, startDate)
+// .lt(SalesLedger::getEntryDate, endDate)
);
BigDecimal receivableMoney = salesLedgers.stream().map(SalesLedger::getContractAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
// 搴斾粯
List<PurchaseLedger> procurementRecords = purchaseLedgerMapper.selectList(new LambdaQueryWrapper<PurchaseLedger>()
- .ge(PurchaseLedger::getEntryDate, startDate)
- .lt(PurchaseLedger::getEntryDate, endDate)
+// .ge(PurchaseLedger::getEntryDate, startDate)
+// .lt(PurchaseLedger::getEntryDate, endDate)
);
BigDecimal payableMoney = procurementRecords.stream().map(PurchaseLedger::getContractAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
// 棰勬敹
List<ReceiptPayment> receiptPayments = receiptPaymentMapper.selectList(new LambdaQueryWrapper<ReceiptPayment>()
- .ge(ReceiptPayment::getReceiptPaymentDate, startDate)
- .lt(ReceiptPayment::getReceiptPaymentDate, endDate));
+// .ge(ReceiptPayment::getReceiptPaymentDate, startDate)
+// .lt(ReceiptPayment::getReceiptPaymentDate, endDate)
+ );
BigDecimal advanceMoney = receiptPayments.stream().map(ReceiptPayment::getReceiptPaymentAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
// 棰勪粯
List<PaymentRegistration> paymentRegistrations = paymentRegistrationMapper.selectList(new LambdaQueryWrapper<PaymentRegistration>()
- .ge(PaymentRegistration::getPaymentDate, startDate)
- .lt(PaymentRegistration::getPaymentDate, endDate));
+// .ge(PaymentRegistration::getPaymentDate, startDate)
+// .lt(PaymentRegistration::getPaymentDate, endDate)
+ );
BigDecimal prepayMoney = paymentRegistrations.stream().map(PaymentRegistration::getCurrentPaymentAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
StatisticsReceivablePayableDto statisticsReceivablePayableDto = new StatisticsReceivablePayableDto();
- statisticsReceivablePayableDto.setPayableMoney(payableMoney);
- statisticsReceivablePayableDto.setReceivableMoney(receivableMoney);
+ statisticsReceivablePayableDto.setPayableMoney(payableMoney.subtract(prepayMoney));
+ statisticsReceivablePayableDto.setReceivableMoney(receivableMoney.subtract(advanceMoney));
statisticsReceivablePayableDto.setAdvanceMoney(advanceMoney);
statisticsReceivablePayableDto.setPrepayMoney(prepayMoney);
return statisticsReceivablePayableDto;
}
+
+ @Autowired
+ private DeviceRepairMapper deviceRepairMapper;
+
+ @Override
+ public Map<String, Object> approveAndDeviceTodos() {
+ // 瀹℃壒鍗忓悓寰呭姙
+ Long aLong = approveProcessMapper.selectCount(new LambdaQueryWrapper<ApproveProcess>()
+ .eq(ApproveProcess::getApproveUserCurrentId, SecurityUtils.getUserId())
+ .in(ApproveProcess::getApproveStatus, 0, 1, 3));
+ // 璁惧鎶ヤ慨寰呭姙
+ Long aLong1 = deviceRepairMapper.selectCount(new LambdaQueryWrapper<DeviceRepair>()
+ .eq(DeviceRepair::getStatus, 0)
+ .eq(DeviceRepair::getRepairName, SecurityUtils.getLoginUser().getNickName()));
+ return new HashMap<String, Object>() {{
+ put("approveTodo", aLong);
+ put("deviceRepairTodo", aLong1);
+ }};
+ }
}
--
Gitblit v1.9.3