From ffbddedac17c4a7d18d382c4917b3f375356e061 Mon Sep 17 00:00:00 2001 From: shiyunteng <shiyunteng@example.com> Date: 星期二, 01 四月 2025 10:23:47 +0800 Subject: [PATCH] 整体流程测试修改0401-1 --- platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryDetailVo.java | 2 platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml | 4 + platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryFlowWaterPageVo.java | 2 platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml | 2 platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml | 16 +++++ platformx-device-biz/src/main/resources/mapper/DeviceLeasingLedgerItemMapper.xml | 16 +++++ platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceLeasingLedger.java | 7 ++ platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceLeasingLedgerItemMapper.java | 2 platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceLeasingLedgerServiceImpl.java | 52 ++++------------- platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java | 2 platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java | 34 +++-------- 11 files changed, 71 insertions(+), 68 deletions(-) diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceLeasingLedger.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceLeasingLedger.java index f676182..cb36b9a 100644 --- a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceLeasingLedger.java +++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceLeasingLedger.java @@ -96,4 +96,11 @@ @Column(columnDefinition="datetime comment '鍑虹鏃ユ湡'") private Date deliveryDate; + + /** + * 鍚堝悓id + */ + @Schema(description = "鍚堝悓id") + @Column(columnDefinition="bigint comment '鍚堝悓id'") + private Long contractId; } diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryDetailVo.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryDetailVo.java index 371f3f4..3861361 100644 --- a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryDetailVo.java +++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryDetailVo.java @@ -14,7 +14,7 @@ private String contractName; @Schema(description = "绉熻祦鏂�") - private String partyb; + private String rentName; @Schema(description = "璁惧缂栧彿") private String deviceNumber; diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryFlowWaterPageVo.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryFlowWaterPageVo.java index cc6bbfe..1b0f3aa 100644 --- a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryFlowWaterPageVo.java +++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/vo/InventoryFlowWaterPageVo.java @@ -10,7 +10,7 @@ private Long id; - private String devicName; + private String deviceName; private String className; diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceLeasingLedgerItemMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceLeasingLedgerItemMapper.java index 5c623c1..a4c7ecf 100644 --- a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceLeasingLedgerItemMapper.java +++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceLeasingLedgerItemMapper.java @@ -3,9 +3,11 @@ import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper; import com.by4cloud.platformx.device.entity.DeviceLeasingLedgerItem; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; @Mapper public interface DeviceLeasingLedgerItemMapper extends PlatformxBaseMapper<DeviceLeasingLedgerItem> { + Integer selectDeviceNumByContractId(@Param("contractId") Long contractId,@Param("deviceId") Long deviceId); } \ No newline at end of file diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java index e3ec34a..a9b72d6 100644 --- a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java +++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java @@ -14,4 +14,6 @@ IPage<ReceivingNoteItemPageVo> pageNew(Page page, @Param("queryDTO") ReceivingNoteItemQueryDTO queryDTO); + + Integer selectDeviceNumByContractId(@Param("contractId") Long contractId,@Param("deviceId") Long deviceId); } 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 e3862fa..e468074 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 @@ -71,16 +71,10 @@ if (contractItem.getNum()<item.getNum()) { return R.failed("鍚堝悓涓�"+item.getDeviceName()+"璁惧鏁伴噺涓庡彴璐︽槑缁嗕腑涓嶄竴鑷达紝鏃犳硶寤虹珛鍙拌处"); } + Integer deviceNum = itemMapper.selectDeviceNumByContractId(contract.getId(),contractItem.getDeviceId()); //鏌ヨ鏄惁鏈夊巻鍙插嚭璐� - 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()+"璁惧鏁伴噺鍑虹鍙拌处宸茶秴鍑鸿澶囧簱瀛橈紝鏃犳硶寤虹珛鍙拌处"); - } + if (contractItem.getNum()<(item.getNum()+deviceNum)) { + return R.failed("鍚堝悓涓�"+item.getDeviceName()+"璁惧鏁伴噺鍑虹鍙拌处宸茶秴鍑鸿澶囧疄闄呭簱瀛橈紝鏃犳硶寤虹珛鍙拌处"); } } } @@ -95,27 +89,15 @@ for (String serialNo:item.getSerialNos() ) { Device device = deviceMapper.selectById(item.getDeviceId()); - if (device!=null) { - DeviceInventory inventory = new DeviceInventory(); - inventory.setDeviceId(item.getDeviceId()); - inventory.setDeviceNumber(item.getDeviceCode()); - inventory.setName(device.getName()); - inventory.setSerialNo(serialNo); - //鏍规嵁鍚堝悓绫诲瀷 璐拱 鎵跨 鍚堝悓绫诲瀷涓哄叆搴撴搷浣� - if (contract!=null&&(contract.getType()==1||contract.getType()==2)){ - inventory.setSource(1); - //鍏ュ簱鎿嶄綔 搴撳瓨鐘舵�佷负 鍙敤 - inventory.setInventoryStatus(1); - } - //鏍规嵁鍚堝悓绫诲瀷 绉熻祦 鍚堝悓绫诲瀷涓哄嚭搴撴搷浣� - if (contract!=null&&contract.getType()==0){ - inventory.setSource(0); - //鍑哄簱鎿嶄綔 搴撳瓨鐘舵�佷负 绉熻祦涓� - inventory.setInventoryStatus(2); - } + QueryWrapper<DeviceInventory> inventoryQueryWrapper = new QueryWrapper<>(); + inventoryQueryWrapper.eq("device_id",item.getDeviceId()); + inventoryQueryWrapper.eq("serial_no",serialNo); + DeviceInventory inventory = inventoryMapper.selectOne(inventoryQueryWrapper); + if (device!=null&&inventory!=null) { + inventory.setInventoryStatus(2); inventory.setLedgerItemId(item.getId()); //搴撳瓨璋冩暣 - inventoryMapper.insert(inventory); + inventoryMapper.updateById(inventory); //璁惧搴撳瓨娴佹按鍚屾鏂板 InventoryFlowWater flowWater = new InventoryFlowWater(); @@ -139,17 +121,9 @@ //鍚堝悓鏄庣粏涓笌鍙拌处瀵规瘮 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 { + Integer deviceNum = itemMapper.selectDeviceNumByContractId(contract.getId(),contractItem.getDeviceId()); + //鏌ヨ鏄惁鏈夊巻鍙插嚭璐� + if (contractItem.getNum()!=deviceNum) { return R.ok(); } } diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java index bba1fa4..f9bcaa3 100644 --- a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java +++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java @@ -69,19 +69,12 @@ for (ReceivingNoteItem item:entity.getNoteItemList() ) { if (contractItem.getDeviceId().equals(item.getDeviceId())){ - if (contractItem.getNum()>=item.getNum()) { + if (contractItem.getNum() < item.getNum()) { return R.failed("楠屾敹鏄庣粏涓�"+item.getDeviceName()+"璁惧鏁伴噺涓嶈兘瓒呰繃鍚堝悓鏄庣粏涓璁㈢殑璁惧鏁伴噺"); } - //鏌ヨ鏄惁鏈夊巻鍙查獙鏀� - QueryWrapper<ReceivingNoteItem> queryWrapperNoteItem = new QueryWrapper<>(); - queryWrapperNoteItem.eq("contract_id",contract.getId()); - queryWrapperNoteItem.eq("device_id",contractItem.getDeviceId()); - List<ReceivingNoteItem> noteItemList = itemMapper.selectList(queryWrapperNoteItem); - if (noteItemList != null&¬eItemList.size()>0) { - Integer deviceNum = noteItemList.stream().mapToInt(ReceivingNoteItem::getNum).sum(); - if (contractItem.getNum()>=(item.getNum()+deviceNum)) { - return R.failed("鍚堝悓涓�"+item.getDeviceName()+"璁惧鏁伴噺涓庡疄闄呴獙鏀舵槑缁嗕腑涓嶄竴鑷�"); - } + Integer deviceNum = itemMapper.selectDeviceNumByContractId(contractItem.getContractId(),item.getDeviceId()); + if (contractItem.getNum()<(deviceNum+item.getNum())){ + return R.failed("瀹為檯楠屾敹鏄庣粏涓�"+item.getDeviceName()+"璁惧鏁伴噺涓嶈兘瓒呰繃鍚堝悓鏄庣粏涓璁㈢殑璁惧鏁伴噺"); } } //璁惧搴忓垪鍙锋鏌ユ槸鍚︽湁鐩稿悓鐨勫瓨鍦� @@ -156,17 +149,8 @@ //鍚堝悓鏄庣粏涓笌瀹為檯楠屾敹瀵规瘮 for (ContractItem contractItem:list ) { - //鏌ヨ瀹為檯楠屾敹鎯呭喌 - QueryWrapper<ReceivingNoteItem> queryWrapperNoteItem = new QueryWrapper<>(); - queryWrapperNoteItem.eq("contract_id",contract.getId()); - queryWrapperNoteItem.eq("device_id",contractItem.getDeviceId()); - List<ReceivingNoteItem> noteItemList = itemMapper.selectList(queryWrapperNoteItem); - if (noteItemList != null&¬eItemList.size()>0) { - Integer deviceNum = noteItemList.stream().mapToInt(ReceivingNoteItem::getNum).sum(); - if (contractItem.getNum()!=deviceNum) { - return R.ok(); - } - }else { + Integer deviceNum = itemMapper.selectDeviceNumByContractId(contractItem.getContractId(),contractItem.getDeviceId()); + if (contractItem.getNum()!=deviceNum){ return R.ok(); } } @@ -204,8 +188,8 @@ } public static void main(String[] args) { - Long l1= 1905442028714270722l; - long l2 = 1905442028714270722l; - System.out.println(l1==l2); + int l1= 2; + int l2 = 3; + System.out.println(l1>=l2); } } diff --git a/platformx-device-biz/src/main/resources/mapper/DeviceLeasingLedgerItemMapper.xml b/platformx-device-biz/src/main/resources/mapper/DeviceLeasingLedgerItemMapper.xml index d75dbf0..e78d0a1 100644 --- a/platformx-device-biz/src/main/resources/mapper/DeviceLeasingLedgerItemMapper.xml +++ b/platformx-device-biz/src/main/resources/mapper/DeviceLeasingLedgerItemMapper.xml @@ -19,4 +19,20 @@ <result property="updateTime" column="update_time"/> <result property="delFlag" column="del_flag"/> </resultMap> + <select id="selectDeviceNumByContractId" resultType="java.lang.Integer"> + select + ifnull(sum(dlli.num),0) + from + device_leasing_ledger_item dlli + where + dlli.device_id = #{deviceId} + and exists ( + select + * + from + device_leasing_ledger dll + where + dll.contract_id = #{contractId} + and dll.id = dlli.ledger_id ) + </select> </mapper> \ No newline at end of file diff --git a/platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml b/platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml index 9248666..1e70e5c 100644 --- a/platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml +++ b/platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml @@ -21,7 +21,7 @@ <select id="pageNew" resultType="com.by4cloud.platformx.device.entity.vo.InventoryFlowWaterPageVo"> select ifw.id, - d.name devicName, + d.name deviceName, dc.name className, d.create_time , ifw.operate_type, diff --git a/platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml b/platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml index 4ff3176..b4908b6 100644 --- a/platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml +++ b/platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml @@ -39,4 +39,20 @@ and rni.note_id = #{queryDTO.noteId} </if> </select> + <select id="selectDeviceNumByContractId" resultType="java.lang.Integer"> + select + ifnull(sum(rni.num),0) + from + receiving_note_item rni + where + rni.device_id = #{deviceId} + and exists ( + select + * + from + receiving_note rn + where + rn.contract_id = #{contractId} + and rn.id = rni.note_id) + </select> </mapper> diff --git a/platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml b/platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml index ac2a1b0..e509be6 100644 --- a/platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml +++ b/platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml @@ -21,7 +21,7 @@ <select id="getReleaseDetail" resultType="com.by4cloud.platformx.device.entity.vo.InventoryDetailVo"> select c.name contractName, - c.partyb, + sd.name rentName, di.device_number, di.serial_no, dll.delivery_date @@ -33,6 +33,8 @@ dll.id = dlli.ledger_id join contract c on c.`number` = dll.contract_code + join platformxx_boot.sys_dept sd on + sd.dept_id = dll.lessee_contract_id where di.id =#{id} </select> -- Gitblit v1.9.1