From 9637082376d3aabe54759d34d02b72e9a53e676c Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期六, 29 四月 2023 05:00:07 +0800
Subject: [PATCH] 优化代码
---
service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java | 102 +++++++++++++++++++++++++++++++++++----------------
1 files changed, 70 insertions(+), 32 deletions(-)
diff --git a/service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java
index 3e82feb..e203489 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/fee/ListFeeCmd.java
@@ -44,6 +44,9 @@
import java.util.List;
import java.util.Map;
+/**
+ * 鏌ヨ 璐圭敤淇℃伅
+ */
@Java110Cmd(serviceCode = "fee.listFee")
public class ListFeeCmd extends Cmd {
@@ -99,39 +102,14 @@
@Override
public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
- if (reqJson.containsKey("roomNum") && !StringUtil.isEmpty(reqJson.getString("roomNum"))) {
- String[] roomNums = reqJson.getString("roomNum").split("-", 3);
- if (roomNums == null || roomNums.length != 3) {
- throw new IllegalArgumentException("鎴垮眿缂栧彿鏍煎紡閿欒锛�");
- }
- String floorNum = roomNums[0];
- String unitNum = roomNums[1];
- String roomNum = roomNums[2];
- FloorDto floorDto = new FloorDto();
- floorDto.setFloorNum(floorNum);
- floorDto.setCommunityId(reqJson.getString("communityId"));
- List<FloorDto> floorDtos = floorInnerServiceSMOImpl.queryFloors(floorDto);
- if (floorDtos != null && floorDtos.size() > 0) {
- for (FloorDto floor : floorDtos) {
- UnitDto unitDto = new UnitDto();
- unitDto.setFloorId(floor.getFloorId());
- unitDto.setUnitNum(unitNum);
- List<UnitDto> unitDtos = unitInnerServiceSMOImpl.queryUnits(unitDto);
- if (unitDtos != null && unitDtos.size() > 0) {
- for (UnitDto unit : unitDtos) {
- RoomDto roomDto = new RoomDto();
- roomDto.setUnitId(unit.getUnitId());
- roomDto.setRoomNum(roomNum);
- roomDto.setCommunityId(reqJson.getString("communityId"));
- List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
- Assert.listOnlyOne(roomDtos, "鏌ヨ涓嶅埌鎴垮眿锛�");
- reqJson.put("payerObjId", roomDtos.get(0).getRoomId());
- }
- }
- }
- }
- }
+ // todo 鎴垮眿鍚嶇О 鍒峰叆 鎴垮眿ID
+ freshPayerObjIdByRoomNum(reqJson);
+
FeeDto feeDto = BeanConvertUtil.covertBean(reqJson, FeeDto.class);
+
+ // todo 澶勭悊 澶氫釜鎴垮眿
+ morePayerObjIds(reqJson, feeDto);
+
List<ApiFeeDataVo> fees = new ArrayList<>();
if (reqJson.containsKey("ownerId") && !StringUtil.isEmpty(reqJson.getString("ownerId"))) {
OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();
@@ -172,6 +150,66 @@
cmdDataFlowContext.setResponseEntity(responseEntity);
}
+ /**
+ * 澶勭悊 澶氬璞� 璐圭敤
+ *
+ * @param reqJson
+ * @param feeDto
+ */
+ private void morePayerObjIds(JSONObject reqJson, FeeDto feeDto) {
+ if (!reqJson.containsKey("payerObjIds") || StringUtil.isEmpty(reqJson.getString("payerObjIds"))) {
+ return;
+ }
+
+ String payerObjIds = reqJson.getString("payerObjIds");
+ feeDto.setPayerObjIds(payerObjIds.split(","));
+ }
+
+ /**
+ * 鏍规嵁鎴垮眿鍚嶇О 鍒峰叆 payerObjId
+ *
+ * @param reqJson
+ */
+ private void freshPayerObjIdByRoomNum(JSONObject reqJson) {
+ if (!reqJson.containsKey("roomNum") || StringUtil.isEmpty(reqJson.getString("roomNum"))) {
+ return;
+ }
+
+ String[] roomNums = reqJson.getString("roomNum").split("-", 3);
+ if (roomNums == null || roomNums.length != 3) {
+ throw new IllegalArgumentException("鎴垮眿缂栧彿鏍煎紡閿欒锛�");
+ }
+
+ String floorNum = roomNums[0];
+ String unitNum = roomNums[1];
+ String roomNum = roomNums[2];
+ FloorDto floorDto = new FloorDto();
+ floorDto.setFloorNum(floorNum);
+ floorDto.setCommunityId(reqJson.getString("communityId"));
+ List<FloorDto> floorDtos = floorInnerServiceSMOImpl.queryFloors(floorDto);
+ if (floorDtos == null || floorDtos.size() < 1) {
+ return;
+ }
+ for (FloorDto floor : floorDtos) {
+ UnitDto unitDto = new UnitDto();
+ unitDto.setFloorId(floor.getFloorId());
+ unitDto.setUnitNum(unitNum);
+ List<UnitDto> unitDtos = unitInnerServiceSMOImpl.queryUnits(unitDto);
+ if (unitDtos == null || unitDtos.size() < 1) {
+ continue;
+ }
+ for (UnitDto unit : unitDtos) {
+ RoomDto roomDto = new RoomDto();
+ roomDto.setUnitId(unit.getUnitId());
+ roomDto.setRoomNum(roomNum);
+ roomDto.setCommunityId(reqJson.getString("communityId"));
+ List<RoomDto> roomDtos = roomInnerServiceSMOImpl.queryRooms(roomDto);
+ Assert.listOnlyOne(roomDtos, "鏌ヨ涓嶅埌鎴垮眿锛�");
+ reqJson.put("payerObjId", roomDtos.get(0).getRoomId());
+ }
+ }
+ }
+
private void freshFeeAttrs(List<ApiFeeDataVo> fees, List<FeeDto> feeDtos) {
String link = "";
for (ApiFeeDataVo apiFeeDataVo : fees) {
--
Gitblit v1.8.0