Просмотр исходного кода

优化 费用结束时不能再缴费问题

java110 лет назад: 5
Родитель
Сommit
0a0b9a53e1

+ 2 - 0
java110-bean/src/main/java/com/java110/dto/fee/FeeDto.java

@@ -15,6 +15,8 @@ import java.util.Date;
  **/
 public class FeeDto extends PageDto implements Serializable {
 
+    public static final String STATE_FINISH = "2009001"; // 收费结束
+
     private String amount;
     private String incomeObjId;
     private String feeTypeCd;

+ 24 - 6
service-api/src/main/java/com/java110/api/listener/fee/PayFeeListener.java

@@ -4,17 +4,18 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.fee.IFeeBMO;
 import com.java110.api.listener.AbstractServiceApiDataFlowListener;
-import com.java110.core.smo.community.IParkingSpaceInnerServiceSMO;
-import com.java110.utils.constant.CommonConstant;
-import com.java110.utils.constant.ServiceCodeConstant;
-import com.java110.utils.util.Assert;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
+import com.java110.core.event.service.api.ServiceDataFlowEvent;
+import com.java110.core.smo.community.IParkingSpaceInnerServiceSMO;
+import com.java110.core.smo.community.IRoomInnerServiceSMO;
 import com.java110.core.smo.fee.IFeeConfigInnerServiceSMO;
 import com.java110.core.smo.fee.IFeeInnerServiceSMO;
-import com.java110.core.smo.community.IRoomInnerServiceSMO;
+import com.java110.dto.fee.FeeDto;
 import com.java110.entity.center.AppService;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
+import com.java110.utils.constant.CommonConstant;
+import com.java110.utils.constant.ServiceCodeConstant;
+import com.java110.utils.util.Assert;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -22,6 +23,8 @@ import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.ResponseEntity;
 
+import java.util.List;
+
 /**
  * @ClassName PayFeeListener
  * @Description TODO 缴费侦听
@@ -88,6 +91,7 @@ public class PayFeeListener extends AbstractServiceApiDataFlowListener {
         dataFlowContext.setResponseEntity(responseEntity);
 
     }
+
     /**
      * 数据校验
      *
@@ -107,6 +111,20 @@ public class PayFeeListener extends AbstractServiceApiDataFlowListener {
         Assert.hasLength(paramInObj.getString("receivedAmount"), "实收金额不能为空");
         Assert.hasLength(paramInObj.getString("feeId"), "费用ID不能为空");
 
+        //判断是否 费用状态为缴费结束
+        FeeDto feeDto = new FeeDto();
+        feeDto.setFeeId(paramInObj.getString("feeId"));
+        feeDto.setCommunityId(paramInObj.getString("communityId"));
+        List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
+
+        Assert.listOnlyOne(feeDtos, "传入费用ID错误");
+
+        feeDto = feeDtos.get(0);
+
+        if (FeeDto.STATE_FINISH.equals(feeDto.getState())) {
+            throw new IllegalArgumentException("收费已经结束,不能再缴费");
+        }
+
     }
 
     @Override

+ 14 - 14
service-front/src/main/java/com/java110/front/components/org/DeleteOrgComponent.java

@@ -3,8 +3,8 @@ package com.java110.front.components.org;
 import com.java110.core.context.IPageData;
 import com.java110.front.smo.org.IDeleteOrgSMO;
 import org.springframework.beans.factory.annotation.Autowired;
-        import org.springframework.http.ResponseEntity;
-        import org.springframework.stereotype.Component;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Component;
 
 /**
  * 添加组织管理组件
@@ -13,24 +13,24 @@ import org.springframework.beans.factory.annotation.Autowired;
 public class DeleteOrgComponent {
 
 
+    @Autowired
+    private IDeleteOrgSMO deleteOrgSMOImpl;
 
-@Autowired
-private IDeleteOrgSMO deleteOrgSMOImpl;
-
-/**
- * 添加组织管理数据
- * @param pd 页面数据封装
- * @return ResponseEntity 对象
- */
-public ResponseEntity<String> delete(IPageData pd){
+    /**
+     * 添加组织管理数据
+     *
+     * @param pd 页面数据封装
+     * @return ResponseEntity 对象
+     */
+    public ResponseEntity<String> delete(IPageData pd) {
         return deleteOrgSMOImpl.deleteOrg(pd);
     }
 
-public IDeleteOrgSMO getDeleteOrgSMOImpl() {
+    public IDeleteOrgSMO getDeleteOrgSMOImpl() {
         return deleteOrgSMOImpl;
     }
 
-public void setDeleteOrgSMOImpl(IDeleteOrgSMO deleteOrgSMOImpl) {
+    public void setDeleteOrgSMOImpl(IDeleteOrgSMO deleteOrgSMOImpl) {
         this.deleteOrgSMOImpl = deleteOrgSMOImpl;
     }
-            }
+}

+ 5 - 0
service-job/src/main/java/com/java110/job/task/ownerToMachine/TranslateOwnerPhotoToMachineTemplate.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.core.smo.common.IMachineInnerServiceSMO;
 import com.java110.core.smo.common.IMachineTranslateInnerServiceSMO;
+import com.java110.core.smo.community.ICommunityLocationInnerServiceSMO;
 import com.java110.core.smo.order.IOrderInnerServiceSMO;
 import com.java110.core.smo.user.IOwnerInnerServiceSMO;
 import com.java110.core.smo.user.IOwnerRoomRelInnerServiceSMO;
@@ -59,6 +60,9 @@ public class TranslateOwnerPhotoToMachineTemplate extends TaskSystemQuartz {
     @Autowired
     private IRoomInnerServiceSMO roomInnerServiceSMOImpl;
 
+    @Autowired
+    private ICommunityLocationInnerServiceSMO communityLocationInnerServiceSMOImpl;
+
     @Autowired
     private IMachineTranslateInnerServiceSMO machineTranslateInnerServiceSMOImpl;
 
@@ -146,6 +150,7 @@ public class TranslateOwnerPhotoToMachineTemplate extends TaskSystemQuartz {
             locationObjIds.add(roomDto.getUnitId());
             locationObjIds.add(roomDto.getRoomId());
         }
+
         machineDto.setLocationObjIds(locationObjIds.toArray(new String[locationObjIds.size()]));
         List<MachineDto> machineDtos = machineInnerServiceSMOImpl.queryMachines(machineDto);