Kaynağa Gözat

优化代码

java110 4 yıl önce
ebeveyn
işleme
257d5fcef2

+ 13 - 42
service-api/src/main/java/com/java110/api/listener/fee/ListFeeListener.java

@@ -1,10 +1,11 @@
-package com.java110.api.listener.fee;
+package com.java110.fee.cmd.fee;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.core.log.LoggerFactory;
 import com.java110.core.smo.IComputeFeeSMO;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.owner.OwnerCarDto;
@@ -13,7 +14,7 @@ import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
 import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
 import com.java110.intf.fee.IFeeInnerServiceSMO;
 import com.java110.intf.user.IOwnerCarInnerServiceSMO;
-import com.java110.utils.constant.ServiceCodeFeeConfigConstant;
+import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.DateUtil;
@@ -21,9 +22,7 @@ import com.java110.utils.util.StringUtil;
 import com.java110.vo.api.fee.ApiFeeDataVo;
 import com.java110.vo.api.fee.ApiFeeVo;
 import org.slf4j.Logger;
-import com.java110.core.log.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
@@ -34,13 +33,9 @@ import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
-/**
- * 查询小区侦听类
- */
-@Java110Listener("listFeeListener")
-public class ListFeeListener extends AbstractServiceApiListener {
-
-    private static Logger logger = LoggerFactory.getLogger(ListFeeListener.class);
+@Java110Cmd(serviceCode = "fee.listFee")
+public class ListFeeCmd extends AbstractServiceCmdListener {
+    private static Logger logger = LoggerFactory.getLogger(ListFeeCmd.class);
 
     @Autowired
     private IFeeConfigInnerServiceSMO feeConfigInnerServiceSMOImpl;
@@ -58,37 +53,13 @@ public class ListFeeListener extends AbstractServiceApiListener {
     private IComputeFeeSMO computeFeeSMOImpl;
 
     @Override
-    public String getServiceCode() {
-        return ServiceCodeFeeConfigConstant.LIST_FEE;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.GET;
-    }
-
-    @Override
-    public int getOrder() {
-        return DEFAULT_ORDER;
-    }
-
-
-    public IFeeConfigInnerServiceSMO getFeeConfigInnerServiceSMOImpl() {
-        return feeConfigInnerServiceSMOImpl;
-    }
-
-    public void setFeeConfigInnerServiceSMOImpl(IFeeConfigInnerServiceSMO feeConfigInnerServiceSMOImpl) {
-        this.feeConfigInnerServiceSMOImpl = feeConfigInnerServiceSMOImpl;
-    }
-
-    @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
+    public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         super.validatePageInfo(reqJson);
         Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区ID");
     }
 
     @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
+    public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
 
         FeeDto feeDto = BeanConvertUtil.covertBean(reqJson, FeeDto.class);
 
@@ -117,7 +88,7 @@ public class ListFeeListener extends AbstractServiceApiListener {
         apiFeeVo.setRecords((int) Math.ceil((double) count / (double) reqJson.getInteger("row")));
         apiFeeVo.setFees(fees);
         ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiFeeVo), HttpStatus.OK);
-        context.setResponseEntity(responseEntity);
+        cmdDataFlowContext.setResponseEntity(responseEntity);
     }
 
     private void freshFeeAttrs(List<ApiFeeDataVo> fees, List<FeeDto> feeDtos) {

+ 15 - 1
service-fee/src/main/java/com/java110/fee/cmd/fee/SaveParkingSpaceCreateFeeCmd.java

@@ -220,6 +220,9 @@ public class SaveParkingSpaceCreateFeeCmd extends AbstractServiceCmdListener {
         int curFailRoomCount = 0;
         //添加单元信息
         int saveFlag = 0;
+        List<ParkingSpaceDto> parkingSpaceDtos = null;
+        ParkingSpaceDto parkingSpaceDto = null;
+        String carName = "";
         for (int ownerCarIndex = 0; ownerCarIndex < ownerCarDtos.size(); ownerCarIndex++) {
             curFailRoomCount++;
             feePos.add(BeanConvertUtil.covertBean(feeBMOImpl.addFee(ownerCarDtos.get(ownerCarIndex), reqJson, context), PayFeePo.class));
@@ -233,9 +236,20 @@ public class SaveParkingSpaceCreateFeeCmd extends AbstractServiceCmdListener {
                 feeAttrsPos.add(feeBMOImpl.addFeeAttr(reqJson, context, FeeAttrDto.SPEC_CD_OWNER_NAME, ownerCarDtos.get(ownerCarIndex).getOwnerName()));
             }
 
+            parkingSpaceDto = new ParkingSpaceDto();
+            parkingSpaceDto.setCarNum(ownerCarDtos.get(ownerCarIndex).getCarNum());
+            parkingSpaceDto.setCommunityId(ownerCarDtos.get(0).getCommunityId());
+            parkingSpaceDtos = parkingSpaceInnerServiceSMOImpl.queryParkingSpaces(parkingSpaceDto);
+
+            if (parkingSpaceDtos != null && parkingSpaceDtos.size() > 0) {
+                carName = parkingSpaceDtos.get(0).getAreaNum() + parkingSpaceDtos.get(0).getNum() + "(" + ownerCarDtos.get(ownerCarIndex).getCarNum() + ")";
+            } else {
+                carName = ownerCarDtos.get(ownerCarIndex).getCarNum();
+            }
+
             //付费对象名称
             feeAttrsPos.add(feeBMOImpl.addFeeAttr(reqJson, context, FeeAttrDto.SPEC_CD_PAY_OBJECT_NAME,
-                    ownerCarDtos.get(ownerCarIndex).getAreaNum() + ownerCarDtos.get(ownerCarIndex).getNum() + "(" + ownerCarDtos.get(ownerCarIndex).getCarNum() + ")"));
+                    carName));
 
             if (ownerCarIndex % DEFAULT_ADD_FEE_COUNT == 0 && ownerCarIndex != 0) {
                 saveFlag = saveFeeAndAttrs(feePos, feeAttrsPos);