не удается разрешить ошибку символа для ответа конечной точки - PullRequest
0 голосов
/ 14 апреля 2020

enter image description here Я пытаюсь получить некоторую информацию от конечной точки. Я использую MVP (я все еще учусь), вот мой интерактивный код. Я также пытаюсь сделать почтовый запрос, но не могу определить свою ошибку. Я хочу получить баланс кошелька, но Ikeep не может разрешить ошибку символа, выделенную красным.

public class AgentWalletTransferInteractor {

    private AgentWalletTransferContract.WalletTransferListener walletTransferListener;

    final String WALLET_TRANSFER = "wallet_transfer";

    public AgentWalletTransferInteractor(AgentWalletTransferContract.WalletTransferListener walletTransferListener) {
        this.walletTransferListener = walletTransferListener;

    }

    public void validateWalletId(Context context, String header, WalletTransferRequest walletTransferRequest) {
        validateWalletIdObserver(header,walletTransferRequest).subscribeWith(validateWalletIdObservable(context));
    }


    public Observable<WalletTransferResponse> validateWalletIdObserver(String header, WalletTransferRequest walletTransferRequest) {

        return RetrofitInstance.getRetrofitInstance().create(NetworkService.class)
                .validateWallet("Token " + header, walletTransferRequest)
                .subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread());
    }


    public DisposableObserver<WalletTransferResponse> validateWalletIdObservable(final Context context){
        return new DisposableObserver<WalletTransferResponse>() {
            @Override
            public void onNext(WalletTransferResponse walletTransferResponse) {

                Log.d(WALLET_TRANSFER, "WALLET" + walletTransferResponse.getData());
                if(walletTransferResponse.getStatus().equalsIgnoreCase("Successful")){

                    walletTransferListener.onValidateSuccess(context, walletTransferResponse);

                }else{
                    walletTransferListener.onValidateFailure(walletTransferResponse.getMessage());
                }
            }

            @Override
            public void onError(Throwable e) {
                Log.d(WALLET_TRANSFER, "Error" + e);
                e.printStackTrace();
                walletTransferListener.onValidateFailure("Network Error, try again later");
            }

            @Override
            public void onComplete() {
                Log.d(WALLET_TRANSFER, "Completed");
            }


        };
    }
}

модели ответа на запрос

public class WalletTransferResponseData {

    @SerializedName("id")
    @Expose
    private Integer id;

    @SerializedName("is_nuban")
    @Expose
    private Integer isNuban;

    @SerializedName("current_bal")
    @Expose
    private Integer currentBal;

   @SerializedName("wallet_id")
    @Expose
    private String walletId;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getIsNuban() {
        return isNuban;
    }

    public void setIsNuban(Integer isNuban) {
        this.isNuban = isNuban;
    }

    public Integer getCurrentBal() {
        return currentBal;
    }

    public void setCurrentBal(Integer currentBal) {
        this.currentBal = currentBal;
    }

   public String getWalletId() {
        return walletId;
    }

    public void setWalletId(String walletId) {
        this.walletId = walletId;
    }

}


Это код в действии, где я есть ошибка.

  @Override
    public void walletValidationSuccess(WalletTransferResponse walletTransferResponse) {
        Bundle bundle = new Bundle();
        bundle.putString("wallet_id", walletId);
        bundle.putString("amount", walletTransferAmount);
        //I can not access getWalledId()
       bundle.putString("wallet_bal", String.valueOf(walletTransferResponse.getData().getWalletId()));

    }
...