From b0fd64098134466414d22af52baa823245839070 Mon Sep 17 00:00:00 2001 From: kongdeqiang <123456> Date: 星期一, 31 三月 2025 16:48:18 +0800 Subject: [PATCH] fix: 年度投资计划接口 --- platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceLeasingLedgerServiceImpl.java | 36 ++++++++++++++++++++++++++++++++---- 1 files changed, 32 insertions(+), 4 deletions(-) diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceLeasingLedgerServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceLeasingLedgerServiceImpl.java index 0d15e4c..e3862fa 100644 --- a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceLeasingLedgerServiceImpl.java +++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceLeasingLedgerServiceImpl.java @@ -67,9 +67,20 @@ ) { for (DeviceLeasingLedgerItem item:deviceLeasingLedger.getLedgerItemList() ) { - if (contractItem.getDeviceId()==item.getDeviceId()){ - if (contractItem.getNum()!=item.getNum()) { - return R.failed("鍚堝悓涓�"+contract.getName()+"璁惧鏁伴噺涓庡彴璐︽槑缁嗕腑涓嶄竴鑷�"); + if (contractItem.getDeviceId().equals(item.getDeviceId())){ + if (contractItem.getNum()<item.getNum()) { + return R.failed("鍚堝悓涓�"+item.getDeviceName()+"璁惧鏁伴噺涓庡彴璐︽槑缁嗕腑涓嶄竴鑷达紝鏃犳硶寤虹珛鍙拌处"); + } + //鏌ヨ鏄惁鏈夊巻鍙插嚭璐� + QueryWrapper<DeviceLeasingLedgerItem> queryWrapperLedgerItem = new QueryWrapper<>(); + queryWrapperLedgerItem.eq("contract_id",contract.getId()); + queryWrapperLedgerItem.eq("device_id",contractItem.getDeviceId()); + List<DeviceLeasingLedgerItem> noteItemList = itemMapper.selectList(queryWrapperLedgerItem); + if (noteItemList != null&¬eItemList.size()>0) { + Integer deviceNum = noteItemList.stream().mapToInt(DeviceLeasingLedgerItem::getNum).sum(); + if (contractItem.getNum()<(item.getNum()+deviceNum)) { + return R.failed("鍚堝悓涓�"+item.getDeviceName()+"璁惧鏁伴噺鍑虹鍙拌处宸茶秴鍑鸿澶囧簱瀛橈紝鏃犳硶寤虹珛鍙拌处"); + } } } } @@ -102,6 +113,7 @@ //鍑哄簱鎿嶄綔 搴撳瓨鐘舵�佷负 绉熻祦涓� inventory.setInventoryStatus(2); } + inventory.setLedgerItemId(item.getId()); //搴撳瓨璋冩暣 inventoryMapper.insert(inventory); @@ -124,7 +136,23 @@ } } } - + //鍚堝悓鏄庣粏涓笌鍙拌处瀵规瘮 + for (ContractItem contractItem:list + ) { + //鏌ヨ瀹為檯鍙拌处鎯呭喌 + QueryWrapper<DeviceLeasingLedgerItem> queryWrapperLedgerItem = new QueryWrapper<>(); + queryWrapperLedgerItem.eq("contract_id",contract.getId()); + queryWrapperLedgerItem.eq("device_id",contractItem.getDeviceId()); + List<DeviceLeasingLedgerItem> ledgerItemList = itemMapper.selectList(queryWrapperLedgerItem); + if (ledgerItemList != null&&ledgerItemList.size()>0) { + Integer deviceNum = ledgerItemList.stream().mapToInt(DeviceLeasingLedgerItem::getNum).sum(); + if (contractItem.getNum()!=deviceNum) { + return R.ok(); + } + }else { + return R.ok(); + } + } //鏇存柊鍚堝悓鐘舵�佷负瀹屾垚 contract.setStatus(2); contractMapper.updateById(contract); -- Gitblit v1.9.1