Ver código fonte

优化 支付预存bug

Your Name 2 anos atrás
pai
commit
c98a5b0cc4

+ 10 - 2
service-acct/src/main/java/com/java110/acct/payment/adapt/plutus/PlutusPaymentFactoryAdapt.java

@@ -19,6 +19,7 @@ import com.java110.utils.cache.MappingCache;
 import com.java110.utils.cache.UrlCache;
 import com.java110.utils.constant.MappingConstant;
 import com.java110.utils.constant.WechatConstant;
+import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.PayUtil;
@@ -109,8 +110,15 @@ public class PlutusPaymentFactoryAdapt implements IPaymentFactoryAdapt {
             ownerAppUserDto.setAppType(appType);
             List<OwnerAppUserDto> ownerAppUserDtos = ownerAppUserInnerServiceSMOImpl.queryOwnerAppUsers(ownerAppUserDto);
 
-            Assert.listOnlyOne(ownerAppUserDtos, "未找到开放账号信息");
-            openId = ownerAppUserDtos.get(0).getOpenId();
+            if(ownerAppUserDtos == null || ownerAppUserDtos.size() < 1){
+                throw new IllegalArgumentException("未找到开放账号信息");
+            }
+            for(OwnerAppUserDto tmpOwnerAppUserDto : ownerAppUserDtos){
+                if(!StringUtil.isEmpty(tmpOwnerAppUserDto.getOpenId())){
+                    openId = tmpOwnerAppUserDto.getOpenId();
+                }
+            }
+            //openId = ownerAppUserDtos.get(0).getOpenId();
         }
 
 

+ 14 - 0
service-acct/src/main/java/com/java110/acct/payment/business/meter/PreStoreMeterPaymentBusiness.java

@@ -13,9 +13,11 @@ import com.java110.dto.fee.FeeDto;
 import com.java110.dto.meter.MeterMachineDto;
 import com.java110.dto.owner.OwnerRoomRelDto;
 import com.java110.dto.payment.PaymentOrderDto;
+import com.java110.dto.room.RoomDto;
 import com.java110.intf.common.IMeterMachineV1InnerServiceSMO;
 import com.java110.intf.community.ICommunityMemberV1InnerServiceSMO;
 import com.java110.intf.community.ICommunityV1InnerServiceSMO;
+import com.java110.intf.community.IRoomV1InnerServiceSMO;
 import com.java110.intf.fee.IFeeAttrInnerServiceSMO;
 import com.java110.intf.fee.IFeeDetailInnerServiceSMO;
 import com.java110.intf.fee.IFeeInnerServiceSMO;
@@ -71,6 +73,9 @@ public class PreStoreMeterPaymentBusiness implements IPaymentBusiness {
     @Autowired
     private IFeeDetailInnerServiceSMO feeDetailInnerServiceSMOImpl;
 
+    @Autowired
+    private IRoomV1InnerServiceSMO roomV1InnerServiceSMOImpl;
+
 
     @Override
     public PaymentOrderDto unified(ICmdDataFlowContext context, JSONObject reqJson) {
@@ -155,6 +160,15 @@ public class PreStoreMeterPaymentBusiness implements IPaymentBusiness {
         List<FeeAttrPo> feeAttrsPos = new ArrayList<>();
         feeAttrsPos.add(addFeeAttr(payFeePo, FeeAttrDto.SPEC_CD_PROXY_CONSUMPTION, receivedAmountDec.doubleValue() + ""));
 
+        //todo 查询房屋信息
+        RoomDto roomDto = new RoomDto();
+        roomDto.setCommunityId(meterMachineDtos.get(0).getCommunityId());
+        roomDto.setRoomId(reqJson.getString("roomId"));
+        List<RoomDto> roomDtos = roomV1InnerServiceSMOImpl.queryRooms(roomDto);
+        if(roomDtos != null && roomDtos.size() > 0){
+            feeAttrsPos.add(addFeeAttr(payFeePo, FeeAttrDto.SPEC_CD_PAY_OBJECT_NAME,
+                    roomDtos.get(0).getFloorNum() + "-" + roomDtos.get(0).getUnitNum() + "-" + roomDtos.get(0).getRoomNum()));
+        }
 
         //todo 查询业主信息
         OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto();

+ 2 - 2
service-community/src/main/java/com/java110/community/cmd/communitySpace/DeleteCommunitySpacePersonCmd.java

@@ -74,14 +74,14 @@ public class DeleteCommunitySpacePersonCmd extends Cmd {
     @Java110Transactional
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
 
-        // 是否线上支付
+        // todo 是否线上支付
         CommunitySpacePersonDto communitySpacePersonDto = new CommunitySpacePersonDto();
         communitySpacePersonDto.setCspId(reqJson.getString("cspId"));
         communitySpacePersonDto.setState(CommunitySpacePersonDto.STATE_S);
         List<CommunitySpacePersonDto> communitySpacePersonDtos = communitySpacePersonV1InnerServiceSMOImpl.queryCommunitySpacePersons(communitySpacePersonDto);
 
         Assert.listOnlyOne(communitySpacePersonDtos, "预约订单不存在");
-
+        //todo 线上支付 自动退款
         returnOnlinePayMoney(communitySpacePersonDtos);
 
         if(!StringUtil.isEmpty(communitySpacePersonDtos.get(0).getOrderId()) &&

+ 1 - 0
service-job/src/main/java/com/java110/job/adapt/returnMoney/wechat/ReturnPayFeeMoneyAdapt.java

@@ -138,6 +138,7 @@ public class ReturnPayFeeMoneyAdapt extends DatabusAdaptImpl {
             }
         }
 
+        System.out.println("------------------------------证书地址:"+certData);
 
         SortedMap<String, String> parameters = new TreeMap<String, String>();
         String paySwitch = MappingCache.getValue(DOMAIN_WECHAT_PAY, WECHAT_SERVICE_PAY_SWITCH);