From af8adaa08baf7bed865434317931741b69c0a78d Mon Sep 17 00:00:00 2001
From: maven <2163098428@qq.com>
Date: 星期五, 14 十一月 2025 15:34:50 +0800
Subject: [PATCH] yys 1.仓储物流增加分类管理 2.仓储物流分类管理导出接口 4.新疆生产管控定制化
---
src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java | 17 +++++++++++++++--
src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java | 4 ++--
src/main/java/com/ruoyi/production/service/impl/SalesLedgerProductionAccountingServiceImpl.java | 15 ++++++++++++++-
src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java | 4 ++--
src/main/java/com/ruoyi/production/controller/SalesLedgerSchedulingController.java | 3 ++-
5 files changed, 35 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
index 420ed9a..58569db 100644
--- a/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/device/service/impl/DeviceLedgerServiceImpl.java
@@ -48,9 +48,9 @@
@Override
public AjaxResult saveDeviceLedger(DeviceLedger deviceLedger) {
LambdaQueryWrapper<DeviceLedger> deviceLedgerLambdaQueryWrapper = new LambdaQueryWrapper<>();
- deviceLedgerLambdaQueryWrapper.eq(DeviceLedger::getDeviceModel,deviceLedger.getDeviceModel());
+ deviceLedgerLambdaQueryWrapper.eq(DeviceLedger::getDeviceName,deviceLedger.getDeviceName());
if (this.count(deviceLedgerLambdaQueryWrapper) > 0) {
- return AjaxResult.error("璁惧鍨嬪彿宸插瓨鍦�");
+ return AjaxResult.error("璁惧鍚嶇О宸插瓨鍦�");
}
boolean save = this.save(deviceLedger);
if (save){
diff --git a/src/main/java/com/ruoyi/production/controller/SalesLedgerSchedulingController.java b/src/main/java/com/ruoyi/production/controller/SalesLedgerSchedulingController.java
index 51b5f0d..ae73e64 100644
--- a/src/main/java/com/ruoyi/production/controller/SalesLedgerSchedulingController.java
+++ b/src/main/java/com/ruoyi/production/controller/SalesLedgerSchedulingController.java
@@ -1,5 +1,6 @@
package com.ruoyi.production.controller;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.utils.poi.ExcelUtil;
@@ -53,7 +54,7 @@
@Log(title = "鐢熶骇绠$悊-鐢熶骇娲惧伐-鎹熻�楃巼", businessType = BusinessType.OTHER)
@ApiOperation("鐢熶骇绠$悊-鐢熶骇娲惧伐-鎹熻�楃巼")
public AjaxResult loss() {
- return AjaxResult.success(lossMapper.selectList(null));
+ return AjaxResult.success(lossMapper.selectOne(new LambdaQueryWrapper<Loss>().last("limit 1")));
}
@PostMapping("/addLoss")
diff --git a/src/main/java/com/ruoyi/production/service/impl/SalesLedgerProductionAccountingServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/SalesLedgerProductionAccountingServiceImpl.java
index 5a7fe76..3fcb8f2 100644
--- a/src/main/java/com/ruoyi/production/service/impl/SalesLedgerProductionAccountingServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/SalesLedgerProductionAccountingServiceImpl.java
@@ -29,11 +29,24 @@
IPage<SalesLedgerProductionAccountingDto> list = salesLedgerProductionAccountingMapper.listPage(page, salesLedgerProductionAccountingDto);
list.getRecords().forEach(item -> {
String[] split = item.getSpecificationModel().split("\\*");
- if(split.length == 2){
+ if(split.length == 2 && isNumeric(split[1])){
// 璁$畻宸ヨ祫 = 宸ユ椂瀹氶 * 鏁伴噺 * 瑙勬牸
item.setWages(item.getWages().multiply(new BigDecimal(split[1])));
}
});
return list;
}
+
+ public static boolean isNumeric(String str) {
+ if (str == null || str.isEmpty()) {
+ return false;
+ }
+ // 閬嶅巻瀛楃涓茬殑姣忎釜瀛楃锛屾鏌ユ槸鍚︿负鏁板瓧
+ for (int i = 0; i < str.length(); i++) {
+ if (!Character.isDigit(str.charAt(i))) {
+ return false;
+ }
+ }
+ return true;
+ }
}
diff --git a/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
index 96be320..873bd1d 100644
--- a/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/SalesLedgerSchedulingServiceImpl.java
@@ -82,7 +82,7 @@
}
// 璁$畻鐢熶骇鎬婚噺 = 瑙勬牸 * 鏁伴噺 / 1000
String[] split = i.getSpecificationModel().split("\\*");
- if(split.length == 2){
+ if(split.length == 2 && isNumeric(split[0]) && isNumeric(split[1])){
BigDecimal multiply = new BigDecimal(split[0])
.multiply(new BigDecimal(split[1])
.multiply(i.getQuantity()).divide(new BigDecimal(1000),2, RoundingMode.CEILING));
@@ -91,6 +91,19 @@
});
return list;
+ }
+
+ public static boolean isNumeric(String str) {
+ if (str == null || str.isEmpty()) {
+ return false;
+ }
+ // 閬嶅巻瀛楃涓茬殑姣忎釜瀛楃锛屾鏌ユ槸鍚︿负鏁板瓧
+ for (int i = 0; i < str.length(); i++) {
+ if (!Character.isDigit(str.charAt(i))) {
+ return false;
+ }
+ }
+ return true;
}
@Override
@@ -277,7 +290,7 @@
list.getRecords().forEach(i -> {
// 璁$畻鐢熶骇鎬婚噺 = 瑙勬牸 * 鏁伴噺 / 1000
String[] split = i.getSpecificationModel().split("\\*");
- if(split.length == 2){
+ if(split.length == 2 && isNumeric(split[0]) && isNumeric(split[1])){
BigDecimal multiply = new BigDecimal(split[0])
.multiply(new BigDecimal(split[1])
.multiply(i.getSuccessNum()).divide(new BigDecimal(1000),2, RoundingMode.CEILING));
diff --git a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
index d06132c..083feea 100644
--- a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
+++ b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
@@ -206,7 +206,6 @@
List<Long> salesLedgerIds = iPage.getRecords().stream().map(SalesLedger::getId).collect(Collectors.toList());
List<InvoiceLedgerDto> invoiceLedgerDtoList = invoiceLedgerMapper.invoicedTotal(salesLedgerIds);
if(CollectionUtils.isEmpty(invoiceLedgerDtoList)){
- iPage.setTotal(iPage.getRecords().size());
return iPage;
}
// 璁$畻鍥炴閲戦锛屽緟鍥炴閲戦
@@ -262,9 +261,10 @@
if (ObjectUtils.isNotEmpty(salesLedgerDto.getStatus())) {
if (salesLedgerDto.getStatus()) {
iPage.getRecords().removeIf(salesLedger -> Objects.equals(salesLedger.getNoInvoiceAmountTotal(), new BigDecimal("0.00")));
+ iPage.setTotal(iPage.getRecords().size());
}
}
- iPage.setTotal(iPage.getTotal());
+
return iPage;
}
}
--
Gitblit v1.9.3