package com.edufound.reader.activity.payactivity; import android.app.Activity; import android.view.KeyEvent; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.Toast; import com.baidu.duer.bot.directive.payload.AmountInfo; import com.baidu.duer.botsdk.BotIntent; import com.edufound.reader.R; import com.edufound.reader.annotation.BindView; import com.edufound.reader.base.BaseActivity; import com.edufound.reader.base.BaseMvpActivity; import com.edufound.reader.contract.PayContract; import com.edufound.reader.popwindow.PopWindowUtil; import com.edufound.reader.presenter.PayPresenter; import com.edufound.reader.util.GlideUtils; import com.edufound.reader.util.QRCodeUtil; import com.edufound.reader.util.SizeUtils; import com.orhanobut.logger.Logger; import java.util.HashMap; import androidx.annotation.NonNull; import io.reactivex.rxjava3.annotations.Nullable; import io.reactivex.rxjava3.functions.Consumer; /** * 普通支付的界面 * */ public class PayActivity extends BaseMvpActivity implements PayContract.View { Activity mActivity; @BindView(id = R.id.activity_pay_tomyorder) ImageView mToMyOrder; @BindView(id = R.id.activity_pay_back) ImageView mBack; @BindView(id = R.id.activity_pay_item_layouts) LinearLayout mItemFrame; @BindView(id = R.id.activity_pay_qrcode) ImageView mQRCode; @Override public int getLayoutId() { return R.layout.activity_pay; } @Override public void initView() { mActivity = this; mPresenter = new PayPresenter(); mPresenter.attachView(this); addUiClickListener(mBack, o -> { mActivity.finish(); }); addUiClickListener(mToMyOrder, o -> { PopWindowUtil.showMyOrderWindow(mActivity, getRootView()); }); mPresenter.getProductInfo(); } @Override public void onGetDisconnect() { } @Override public void onGetMobileConnect() { } @Override public void onGetWifiConnect() { } @Override public void showLoading() { } @Override public void hideLoading() { } @Override public void onError(String errMessage) { } @Override public Activity getActivity() { return mActivity; } @Override public ViewGroup getRootView() { return findViewById(android.R.id.content); } @Override public void getProductSuccess() { mPresenter.initPayItem(mItemFrame); } @Override public void addUiClick(View view, View.OnClickListener listener) { addUiClickListener(view, listener); } @Override public void isPaySuccess() { Toast.makeText(getActivity(), "支付成功", Toast.LENGTH_SHORT).show(); } @Override public void setQRCode(String obj) { // mQRCode GlideUtils.loadImageSizeKipMemoryCache(getActivity(), obj, mQRCode); } @Override protected void botHandleIntent(BotIntent intent, String customData) { super.botHandleIntent(intent, customData); Logger.e("botHandleIntent"); } @Override protected void botOnClickLink(String url, HashMap paramMap) { super.botOnClickLink(url, paramMap); Logger.e("botOnClickLink"); } @Override protected void botOnHandleScreenNavigatorEvent(int event) { super.botOnHandleScreenNavigatorEvent(event); Logger.e("botOnHandleScreenNavigatorEvent"); } @Override protected void botOnLinkAccountSucceed(String s, String s1) { super.botOnLinkAccountSucceed(s, s1); Logger.e("botOnLinkAccountSucceed"); } @Override protected void botOnChargeStatusUpdated(String purchaseResult, AmountInfo authorizationAmount, AmountInfo capturedAmount, long creationTimestamp, String baiduOrderReferenceId, String sellerOrderId, String msg) { super.botOnChargeStatusUpdated(purchaseResult, authorizationAmount, capturedAmount, creationTimestamp, baiduOrderReferenceId, sellerOrderId, msg); Logger.e("botOnChargeStatusUpdated"); String intentResult = "botOnChargeStatusUpdated:" + "\n支付状态更新:%s\n订单金额信息:%s\n" + "实收金额信息:%s\n订单时间戳:%d\n" + "百度侧订单号:%s\n卖方生成的订单号:%s\n订单备注信息:%s"; Logger.e("intentResult:" + intentResult); } @Override protected void botOnBuyStatusUpdated(@NonNull String purchaseResult, @NonNull String productId, @NonNull String baiduOrderId, @NonNull String sellerOrderId, @Nullable String msg, String token) { Logger.e("botOnBuyStatusUpdated"); super.botOnBuyStatusUpdated(purchaseResult, productId, baiduOrderId, sellerOrderId, msg, token); String intentResult = "botOnBuyStatusUpdated:" + "\n支付状态更新:%s\n商品id:%s\n" + "百度侧订单号:%s\n卖方生成的订单号:%s\n订单备注信息:%s"; Logger.e("intentResult:" + intentResult); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { return true; } @Override protected void onDestroy() { mPresenter.activityDestory(); super.onDestroy(); } }