java110 пре 5 година
родитељ
комит
0015349711

+ 10 - 0
java110-bean/src/main/java/com/java110/dto/owner/OwnerCarDto.java

@@ -51,6 +51,8 @@ public class OwnerCarDto extends PageDto implements Serializable {
 
     private String statusCd = "0";
 
+    private String valid;
+
 
     public String getCarColor() {
         return carColor;
@@ -252,4 +254,12 @@ public class OwnerCarDto extends PageDto implements Serializable {
     public void setStateName(String stateName) {
         this.stateName = stateName;
     }
+
+    public String getValid() {
+        return valid;
+    }
+
+    public void setValid(String valid) {
+        this.valid = valid;
+    }
 }

+ 3 - 0
java110-db/src/main/resources/mapper/user/OwnerCarServiceDaoImplMapper.xml

@@ -168,6 +168,9 @@
         <if test="state !=null and state != ''">
             and t.state= #{state}
         </if>
+        <if test="valid == '1'">
+            and t.end_time &gt; now()
+        </if>
         order by t.create_time desc
         <if test="page != -1 and page != null ">
             limit #{page}, #{row}

+ 2 - 1
service-api/src/main/java/com/java110/api/bmo/fee/IFeeBMO.java

@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
 import com.java110.api.bmo.IApiBaseBMO;
 import com.java110.core.context.DataFlowContext;
 import com.java110.dto.RoomDto;
+import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.parking.ParkingSpaceDto;
 
 /**
@@ -104,7 +105,7 @@ public interface IFeeBMO extends IApiBaseBMO {
      * @param dataFlowContext 数据上下文
      * @return 订单服务能够接受的报文
      */
-    public JSONObject addFee(ParkingSpaceDto parkingSpaceDto, JSONObject paramInJson, DataFlowContext dataFlowContext);
+    public JSONObject addFee(OwnerCarDto ownerCarDto, JSONObject paramInJson, DataFlowContext dataFlowContext);
 
     /**
      * 添加物业费用

+ 4 - 3
service-api/src/main/java/com/java110/api/bmo/fee/impl/FeeBMOImpl.java

@@ -9,6 +9,7 @@ import com.java110.dto.RoomDto;
 import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.machine.CarInoutDto;
+import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.parking.ParkingSpaceDto;
 import com.java110.intf.common.ICarInoutInnerServiceSMO;
 import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
@@ -534,7 +535,7 @@ public class FeeBMOImpl extends ApiBaseBMO implements IFeeBMO {
      * @param dataFlowContext 数据上下文
      * @return 订单服务能够接受的报文
      */
-    public JSONObject addFee(ParkingSpaceDto parkingSpaceDto, JSONObject paramInJson, DataFlowContext dataFlowContext) {
+    public JSONObject addFee(OwnerCarDto ownerCarDto, JSONObject paramInJson, DataFlowContext dataFlowContext) {
 
 
         JSONObject business = JSONObject.parseObject("{\"datas\":{}}");
@@ -550,8 +551,8 @@ public class FeeBMOImpl extends ApiBaseBMO implements IFeeBMO {
         businessUnit.put("startTime", DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
         businessUnit.put("endTime", DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
         businessUnit.put("communityId", paramInJson.getString("communityId"));
-        businessUnit.put("payerObjId", parkingSpaceDto.getPsId());
-        businessUnit.put("payerObjType", "6666");
+        businessUnit.put("payerObjId", ownerCarDto.getCarId());
+        businessUnit.put("payerObjType", FeeDto.PAYER_OBJ_TYPE_CAR);
         businessUnit.put("feeFlag", paramInJson.getString("feeFlag"));
         businessUnit.put("state", "2008001");
         businessUnit.put("userId", dataFlowContext.getRequestCurrentHeaders().get(CommonConstant.HTTP_USER_ID));

+ 22 - 27
service-api/src/main/java/com/java110/api/listener/fee/SaveParkingSpaceCreateFeeListener.java

@@ -7,11 +7,13 @@ 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.dto.owner.OwnerCarDto;
 import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
 import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
 import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.parking.ParkingSpaceDto;
 import com.java110.entity.center.AppService;
+import com.java110.intf.user.IOwnerCarInnerServiceSMO;
 import com.java110.utils.constant.CommonConstant;
 import com.java110.utils.constant.ServiceCodeConstant;
 import com.java110.utils.util.Assert;
@@ -46,6 +48,9 @@ public class SaveParkingSpaceCreateFeeListener extends AbstractServiceApiListene
     @Autowired
     private IParkingSpaceInnerServiceSMO parkingSpaceInnerServiceSMOImpl;
 
+    @Autowired
+    private IOwnerCarInnerServiceSMO ownerCarInnerServiceSMOImpl;
+
     @Autowired
     private IFeeConfigInnerServiceSMO feeConfigInnerServiceSMOImpl;
 
@@ -72,7 +77,7 @@ public class SaveParkingSpaceCreateFeeListener extends AbstractServiceApiListene
     @Override
     protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
         logger.debug("ServiceDataFlowEvent : {}", event);
-        List<ParkingSpaceDto> parkingSpaceDtos = null;
+        List<OwnerCarDto> ownerCarDtos = null;
         FeeConfigDto feeConfigDto = new FeeConfigDto();
         feeConfigDto.setCommunityId(reqJson.getString("communityId"));
         feeConfigDto.setConfigId(reqJson.getString("configId"));
@@ -81,39 +86,29 @@ public class SaveParkingSpaceCreateFeeListener extends AbstractServiceApiListene
         reqJson.put("feeTypeCd", feeConfigDtos.get(0).getFeeTypeCd());
         reqJson.put("feeFlag", feeConfigDtos.get(0).getFeeFlag());
         //判断收费范围
-        ParkingSpaceDto parkingSpaceDto = new ParkingSpaceDto();
-        parkingSpaceDto.setState(reqJson.containsKey("parkingSpaceState") ? reqJson.getString("parkingSpaceState") : "");
-        if (reqJson.containsKey("parkingSpaceState") && "SH".equals(reqJson.getString("parkingSpaceState"))) {
-            parkingSpaceDto.setState("");
-            parkingSpaceDto.setStates(new String[]{"S", "H"});
-        }
-        if ("1000".equals(reqJson.getString("locationTypeCd"))) {//小区
-            parkingSpaceDto.setCommunityId(reqJson.getString("communityId"));
-            parkingSpaceDtos = parkingSpaceInnerServiceSMOImpl.queryParkingSpaces(parkingSpaceDto);
+        OwnerCarDto ownerCarDto = new OwnerCarDto();
 
+        if ("1000".equals(reqJson.getString("locationTypeCd"))) {//小区
+            ownerCarDto.setCommunityId(reqJson.getString("communityId"));
+            ownerCarDto.setValid("1");
+            ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
         } else if ("2000".equals(reqJson.getString("locationTypeCd"))) {//停车场
             //ParkingSpaceDto parkingSpaceDto = new ParkingSpaceDto();
-            parkingSpaceDto.setCommunityId(reqJson.getString("communityId"));
-            parkingSpaceDto.setPaId(reqJson.getString("locationObjId"));
-            parkingSpaceDtos = parkingSpaceInnerServiceSMOImpl.queryParkingSpaces(parkingSpaceDto);
-
-        } else if ("3000".equals(reqJson.getString("locationTypeCd"))) {//停车位
-            //ParkingSpaceDto parkingSpaceDto = new ParkingSpaceDto();
-            parkingSpaceDto.setCommunityId(reqJson.getString("communityId"));
-            parkingSpaceDto.setPsId(reqJson.getString("locationObjId"));
-            parkingSpaceDtos = parkingSpaceInnerServiceSMOImpl.queryParkingSpaces(parkingSpaceDto);
+            ownerCarDto.setCommunityId(reqJson.getString("communityId"));
+            ownerCarDto.setCarId(reqJson.getString("locationObjId"));
+            ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
         } else {
             throw new IllegalArgumentException("收费范围错误");
         }
 
-        if (parkingSpaceDtos == null || parkingSpaceDtos.size() < 1) {
+        if (ownerCarDtos == null || ownerCarDtos.size() < 1) {
             throw new IllegalArgumentException("未查到需要付费的车位");
         }
 
-        dealParkingSpaceFee(parkingSpaceDtos, context, reqJson, event);
+        dealParkingSpaceFee(ownerCarDtos, context, reqJson, event);
     }
 
-    private void dealParkingSpaceFee(List<ParkingSpaceDto> parkingSpaceDtos, DataFlowContext context, JSONObject reqJson, ServiceDataFlowEvent event) {
+    private void dealParkingSpaceFee(List<OwnerCarDto> ownerCarDtos, DataFlowContext context, JSONObject reqJson, ServiceDataFlowEvent event) {
 
         AppService service = event.getAppService();
 
@@ -125,11 +120,11 @@ public class SaveParkingSpaceCreateFeeListener extends AbstractServiceApiListene
         ResponseEntity<String> responseEntity = null;
         int failParkingSpaces = 0;
         //添加单元信息
-        for (int parkingSpaceIndex = 0; parkingSpaceIndex < parkingSpaceDtos.size(); parkingSpaceIndex++) {
+        for (int ownerCarIndex = 0; ownerCarIndex < ownerCarDtos.size(); ownerCarIndex++) {
 
-            businesses.add(feeBMOImpl.addFee(parkingSpaceDtos.get(parkingSpaceIndex), reqJson, context));
+            businesses.add(feeBMOImpl.addFee(ownerCarDtos.get(ownerCarIndex), reqJson, context));
 
-            if (parkingSpaceIndex % DEFAULT_ADD_FEE_COUNT == 0 && parkingSpaceIndex != 0) {
+            if (ownerCarIndex % DEFAULT_ADD_FEE_COUNT == 0 && ownerCarIndex != 0) {
 
                 responseEntity = feeBMOImpl.callService(context, service.getServiceCode(), businesses);
 
@@ -149,8 +144,8 @@ public class SaveParkingSpaceCreateFeeListener extends AbstractServiceApiListene
         }
 
         JSONObject paramOut = new JSONObject();
-        paramOut.put("totalParkingSpace", parkingSpaceDtos.size());
-        paramOut.put("successParkingSpace", parkingSpaceDtos.size() - failParkingSpaces);
+        paramOut.put("totalParkingSpace", ownerCarDtos.size());
+        paramOut.put("successParkingSpace", ownerCarDtos.size() - failParkingSpaces);
         paramOut.put("errorParkingSpace", failParkingSpaces);
 
         responseEntity = new ResponseEntity<>(paramOut.toJSONString(), HttpStatus.OK);