导航菜单

页面标题

页面副标题

自健身 v3.3.4 - PayOrderActivity.java 源代码

正在查看: 自健身 v3.3.4 应用的 PayOrderActivity.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.mu.gymtrain.Activity.MainPackage;

import android.app.Activity;
import android.app.Dialog;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.fragment.app.FragmentActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.OnClick;
import cn.jiguang.share.android.api.JShareInterface;
import cn.jiguang.share.android.api.PlatActionListener;
import cn.jiguang.share.android.api.Platform;
import cn.jiguang.share.android.api.ShareParams;
import cn.jiguang.share.wechat.Wechat;
import cn.jiguang.share.wechat.WechatMoments;
import com.blankj.utilcode.util.LogUtils;
import com.bumptech.glide.Glide;
import com.luck.picture.lib.PictureSelector;
import com.luck.picture.lib.config.PictureMimeType;
import com.makeramen.roundedimageview.RoundedImageView;
import com.mu.gymtrain.Adapter.PayFeeAdapter;
import com.mu.gymtrain.Base.BaseActivity;
import com.mu.gymtrain.Base.BaseModel;
import com.mu.gymtrain.Bean.PriveClassisSubBean;
import com.mu.gymtrain.Bean.YueKeSuccessBean;
import com.mu.gymtrain.Dialog.DialogUtils;
import com.mu.gymtrain.Dialog.OrderFailDialogHolder;
import com.mu.gymtrain.Dialog.OrderSuccessDialogHolder;
import com.mu.gymtrain.Fragment.PermissionFragment;
import com.mu.gymtrain.Http.CreatMap;
import com.mu.gymtrain.Http.HttpHelper;
import com.mu.gymtrain.Http.ResponseFunc;
import com.mu.gymtrain.R;
import com.mu.gymtrain.Utils.FinalTools;
import com.mu.gymtrain.Utils.GlideUtils;
import com.mu.gymtrain.Utils.JsonUtil;
import com.mu.gymtrain.Utils.PermissionUtils;
import com.mu.gymtrain.Utils.UrlConfig;
import com.mu.gymtrain.Utils.ViewBitmapUtils;
import com.mu.gymtrain.Utils.ViewUtils;
import com.mu.gymtrain.Widget.RatingBar;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import okhttp3.ResponseBody;
import org.greenrobot.eventbus.EventBus;
import org.json.JSONException;
import org.json.JSONObject;
import rx.Subscriber;
import rx.android.schedulers.AndroidSchedulers;
import rx.schedulers.Schedulers;

public class PayOrderActivity extends BaseActivity {
    private String className;
    private String compressPath;
    private Dialog dialog;
    OrderSuccessDialogHolder dialogHolder;
    PayFeeAdapter mAdapter;

    @BindView(R.id.recy_fee)
    RecyclerView recyFee;

    @BindView(R.id.rl_coupon)
    RelativeLayout rlCoupon;
    private ImageView shareAvatar;

    @BindView(R.id.title_left)
    ImageView titleLeft;

    @BindView(R.id.title_middle)
    TextView titleMiddle;
    private double totalPrice;

    @BindView(R.id.tv_allsave)
    TextView tvAllsave;

    @BindView(R.id.tv_classfee)
    TextView tvClassfee;

    @BindView(R.id.tv_classname)
    TextView tvClassname;

    @BindView(R.id.tv_couponnum)
    TextView tvCouponnum;

    @BindView(R.id.tv_money)
    TextView tvMoney;

    @BindView(R.id.tv_preprice)
    TextView tvPreprice;

    @BindView(R.id.tv_price)
    TextView tvPrice;

    @BindView(R.id.tvPrice)
    TextView tvPriceC;

    @BindView(R.id.tv_timefee)
    TextView tvTimefee;

    @BindView(R.id.tv_topay)
    TextView tvTopay;
    String class_id = "";
    List<PriveClassisSubBean.ClassReferencePricesBean> mList = new ArrayList();

    public int getContentLayout() {
        return R.layout.activity_payorderpriclass;
    }

    public void initData() {
        ViewUtils.showLoading(this, "加载中...");
        HttpHelper.getInstance().getRetrofitService(this).getOrderPage(new CreatMap.Builder().addParams("class_id", this.class_id).build().getParam()).observeOn(AndroidSchedulers.mainThread()).subscribeOn(Schedulers.io()).map(new ResponseFunc()).subscribe(new Subscriber<PriveClassisSubBean>() {
            public void onCompleted() {
            }

            public void onError(Throwable e) {
                ViewUtils.hideLoading();
            }

            public void onNext(PriveClassisSubBean o) {
                ViewUtils.hideLoading();
                PayOrderActivity.this.className = o.getClass_name();
                PayOrderActivity.this.tvClassname.setText("课程名称:" + PayOrderActivity.this.className);
                PayOrderActivity.this.tvPriceC.setText("已优惠¥" + (o.getClass_reference_prices().get(0).getPrice() - o.getClass_reference_prices().get(4).getPrice()));
                o.getClass_reference_prices().get(0).getPrice();
                o.getClass_price().getClassX();
                PayOrderActivity.this.tvPreprice.setText(o.getStart_time() + "-" + o.getEnd_time());
                PayOrderActivity.this.tvClassfee.setText(o.getClass_price().getClassX() + PayOrderActivity.this.getString(R.string.unit_rmb));
                PayOrderActivity.this.tvTimefee.setText(o.getClass_price().getIndoor() + PayOrderActivity.this.getString(R.string.unit_rmb));
                PayOrderActivity.this.mList.addAll(o.getClass_reference_prices());
                PayOrderActivity.this.mAdapter.notifyDataSetChanged();
                PayOrderActivity.this.totalPrice = o.getClass_price().getTotal();
                PayOrderActivity.this.tvPrice.setText(PayOrderActivity.this.totalPrice + PayOrderActivity.this.getString(R.string.unit_rmb));
                PayOrderActivity.this.tvMoney.setText(PayOrderActivity.this.totalPrice + PayOrderActivity.this.getString(R.string.unit_rmb));
            }
        });
        HttpHelper.getInstance().getRetrofitService(this).getUseCouponNum(new CreatMap.Builder().addParams("class_id", this.class_id).build().getParam()).observeOn(AndroidSchedulers.mainThread()).subscribeOn(Schedulers.io()).subscribe(new Subscriber<BaseModel>() {
            public void onCompleted() {
            }

            public void onError(Throwable e) {
            }

            public void onNext(BaseModel o) {
                if (o.getCode() == 1000) {
                    PayOrderActivity.this.tvCouponnum.setText(o.getMessage() + "个可用");
                    return;
                }
                PayOrderActivity.this.tvCouponnum.setText("0个可用");
            }
        });
    }

    public void initView() {
        this.class_id = getIntent().getStringExtra(FinalTools.INTENT_COMMON);
        this.titleMiddle.setText(getString(R.string.arrange_pay));
        LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
        linearLayoutManager.setOrientation(0);
        this.recyFee.setLayoutManager(linearLayoutManager);
        PayFeeAdapter payFeeAdapter = new PayFeeAdapter(this.mList, this);
        this.mAdapter = payFeeAdapter;
        this.recyFee.setAdapter(payFeeAdapter);
        this.tvAllsave.setText("合计优惠¥0");
    }

    @OnClick({R.id.title_left, R.id.rl_coupon, R.id.tv_topay})
    public void onViewClicked(View view) {
        switch (view.getId()) {
            case R.id.imgAvatar:
                PermissionUtils.requestPermission((FragmentActivity) this, PermissionUtils.CAMEAR_PERMISSION, new PermissionFragment.IPermissionListener() {
                    @Override
                    public void granted() {
                        PayOrderActivity.this.takePhoto();
                    }
                });
                break;
            case R.id.rl_coupon:
                startActivityForResult(new Intent((Context) this, (Class<?>) SelectCouponActivity.class).putExtra(FinalTools.INTENT_COMMON, this.class_id), 100);
                break;
            case R.id.title_left:
                finish();
                break;
            case R.id.tv_topay:
                orderClass();
                break;
        }
    }

    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == 188 && resultCode == -1) {
            this.compressPath = PictureSelector.obtainMultipleResult(data).get(0).getCompressPath();
            Glide.with(this).load(this.compressPath).into(this.shareAvatar);
        }
    }

    private void orderClass() {
        ViewUtils.showLoading(this, "加载中...");
        HttpHelper.getInstance().getRetrofitService(this).getOrdertopay(new CreatMap.Builder().addParams("class_id", this.class_id).addParams("Class_total_price", this.totalPrice + "").build().getParam()).observeOn(AndroidSchedulers.mainThread()).subscribeOn(Schedulers.io()).subscribe(new Subscriber<ResponseBody>() {
            public void onCompleted() {
            }

            public void onError(Throwable e) {
                LogUtils.i(new Object[]{e.getMessage()});
                ViewUtils.hideLoading();
                PayOrderActivity.this.showToast(e.getMessage());
            }

            public void onNext(ResponseBody body) {
                ViewUtils.hideLoading();
                if (body != null) {
                    try {
                        String string = body.string();
                        JSONObject jSONObject = new JSONObject(string);
                        if (jSONObject.getInt("code") == 10000) {
                            final YueKeSuccessBean yueKeSuccessBean = (YueKeSuccessBean) JsonUtil.json2Bean(string, YueKeSuccessBean.class);
                            PermissionUtils.requestPermission((FragmentActivity) PayOrderActivity.this, PermissionUtils.FILE_PERMISSION, new PermissionFragment.IPermissionListener() {
                                @Override
                                public void granted() {
                                    PayOrderActivity.this.showShare(yueKeSuccessBean.getData());
                                }
                            });
                        } else {
                            String string2 = jSONObject.getString("data");
                            final OrderFailDialogHolder orderFailDialogHolder = new OrderFailDialogHolder(PayOrderActivity.this.mActivity);
                            orderFailDialogHolder.mIvClose.setOnClickListener(new View.OnClickListener() {
                                @Override
                                public void onClick(View v) {
                                    orderFailDialogHolder.mDialog.dismiss();
                                    PayOrderActivity.this.finish();
                                }
                            });
                            orderFailDialogHolder.mText.setText(string2);
                            orderFailDialogHolder.mDialog.setCanceledOnTouchOutside(false);
                            orderFailDialogHolder.mDialog.show();
                        }
                    } catch (IOException | JSONException e) {
                        e.printStackTrace();
                    }
                }
            }
        });
    }

    private void oldShare() {
        OrderSuccessDialogHolder orderSuccessDialogHolder = new OrderSuccessDialogHolder(this.mActivity);
        this.dialogHolder = orderSuccessDialogHolder;
        orderSuccessDialogHolder.ivClose.setOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                PayOrderActivity.this.lambda$oldShare$0$PayOrderActivity(view);
            }
        });
        this.dialogHolder.mDialog.setCanceledOnTouchOutside(false);
        this.dialogHolder.mDialog.show();
    }

    public void lambda$oldShare$0$PayOrderActivity(View view) {
        this.dialogHolder.mDialog.dismiss();
        EventBus.getDefault().post("1");
        EventBus.getDefault().post("5");
        finish();
    }

    public void showShare(YueKeSuccessBean.Data bean) {
        View inflate = LayoutInflater.from(this).inflate(R.layout.dialog_yueke_success_layout, (ViewGroup) null, false);
        this.dialog = DialogUtils.createDialog(this, inflate);
        RoundedImageView roundedImageView = (RoundedImageView) inflate.findViewById(R.id.imgHead);
        RatingBar ratingBar = (RatingBar) inflate.findViewById(R.id.rtv_coach);
        final View findViewById = inflate.findViewById(R.id.clShare);
        ImageView imageView = (ImageView) inflate.findViewById(R.id.imgAvatar);
        this.shareAvatar = imageView;
        imageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                PayOrderActivity.this.onViewClicked(view);
            }
        });
        TextView textView = (TextView) inflate.findViewById(R.id.tvName);
        TextView textView2 = (TextView) inflate.findViewById(R.id.title3);
        TextView textView3 = (TextView) inflate.findViewById(R.id.title5);
        View findViewById2 = inflate.findViewById(R.id.tv_share_wxchat);
        View findViewById3 = inflate.findViewById(R.id.tv_share_wxzone);
        final ImageView imageView2 = (ImageView) inflate.findViewById(R.id.imgTakePhoto);
        final ImageView imageView3 = (ImageView) inflate.findViewById(R.id.imgLogo);
        TextView textView4 = (TextView) inflate.findViewById(R.id.tvClassName);
        GlideUtils.withReplace(UrlConfig.Path.IMG_URL + bean.getCoach_avatar(), roundedImageView, this);
        ratingBar.setStar((float) bean.getCoach_degree());
        textView.setText(bean.getCoach_name() + "教练");
        textView2.setText("参加" + bean.getCoach_name().substring(0, 1) + "教练的");
        textView3.setText("累计燃烧" + bean.getCalori() + "千卡");
        textView4.setText("第" + bean.getClassnumber() + "节" + this.className);
        inflate.findViewById(R.id.imgClose).setOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                PayOrderActivity.this.lambda$showShare$1$PayOrderActivity(view);
            }
        });
        findViewById2.setOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                PayOrderActivity.this.lambda$showShare$4$PayOrderActivity(imageView2, imageView3, findViewById, view);
            }
        });
        findViewById3.setOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                PayOrderActivity.this.lambda$showShare$7$PayOrderActivity(imageView2, imageView3, findViewById, view);
            }
        });
        this.dialog.show();
    }

    public void lambda$showShare$1$PayOrderActivity(View view) {
        this.dialog.dismiss();
        EventBus.getDefault().post("1");
        EventBus.getDefault().post("5");
        finish();
    }

    public void lambda$showShare$4$PayOrderActivity(ImageView imageView, ImageView imageView2, final View view, View view2) {
        if (TextUtils.isEmpty(this.compressPath)) {
            showToast("请选拍照后再选择分享");
            return;
        }
        imageView.setVisibility(8);
        imageView2.setVisibility(0);
        imageView2.postDelayed(new Runnable() {
            @Override
            public final void run() {
                PayOrderActivity.this.lambda$showShare$3$PayOrderActivity(view);
            }
        }, 100L);
    }

    public void lambda$showShare$3$PayOrderActivity(View view) {
        Bitmap cacheBitmapFromView = ViewBitmapUtils.getCacheBitmapFromView(view);
        final String saveBitmapToSdCard = ViewBitmapUtils.saveBitmapToSdCard(getApplicationContext(), cacheBitmapFromView, System.currentTimeMillis() + "");
        PermissionUtils.requestPermission((FragmentActivity) this, PermissionUtils.FILE_PERMISSION, new PermissionFragment.IPermissionListener() {
            @Override
            public final void granted() {
                PayOrderActivity.this.lambda$showShare$2$PayOrderActivity(saveBitmapToSdCard);
            }
        });
    }

    public void lambda$showShare$2$PayOrderActivity(String str) {
        this.dialog.dismiss();
        EventBus.getDefault().post("1");
        EventBus.getDefault().post("5");
        finish();
        shareWx(str, Wechat.Name);
    }

    public void lambda$showShare$7$PayOrderActivity(ImageView imageView, ImageView imageView2, final View view, View view2) {
        if (TextUtils.isEmpty(this.compressPath)) {
            showToast("请选拍照后再选择分享");
            return;
        }
        imageView.setVisibility(8);
        imageView2.setVisibility(0);
        imageView2.postDelayed(new Runnable() {
            @Override
            public final void run() {
                PayOrderActivity.this.lambda$showShare$6$PayOrderActivity(view);
            }
        }, 100L);
    }

    public void lambda$showShare$6$PayOrderActivity(View view) {
        Bitmap cacheBitmapFromView = ViewBitmapUtils.getCacheBitmapFromView(view);
        final String saveBitmapToSdCard = ViewBitmapUtils.saveBitmapToSdCard(getApplicationContext(), cacheBitmapFromView, System.currentTimeMillis() + "");
        PermissionUtils.requestPermission((FragmentActivity) this, PermissionUtils.FILE_PERMISSION, new PermissionFragment.IPermissionListener() {
            @Override
            public final void granted() {
                PayOrderActivity.this.lambda$showShare$5$PayOrderActivity(saveBitmapToSdCard);
            }
        });
    }

    public void lambda$showShare$5$PayOrderActivity(String str) {
        this.dialog.dismiss();
        EventBus.getDefault().post("1");
        EventBus.getDefault().post("5");
        finish();
        shareWx(str, WechatMoments.Name);
    }

    private void shareWx(String bitmap, String to) {
        ShareParams shareParams = new ShareParams();
        shareParams.setTitle("自健身");
        shareParams.setText("快来健身吧\n美好一天从健身开始!");
        shareParams.setShareType(2);
        shareParams.setImagePath(bitmap);
        JShareInterface.share(to, shareParams, new PlatActionListener() {
            public void onComplete(Platform platform, int i, HashMap<String, Object> hashMap) {
                LogUtils.i(new Object[]{"分享成功"});
            }

            public void onError(Platform platform, int i, int i1, Throwable throwable) {
                LogUtils.i(new Object[]{throwable.getMessage()});
            }

            public void onCancel(Platform platform, int i) {
                LogUtils.i(new Object[]{"取消分享了"});
            }
        });
    }

    public void takePhoto() {
        PictureSelector.create((Activity) this).openGallery(PictureMimeType.ofImage()).maxSelectNum(1).minSelectNum(1).imageSpanCount(4).selectionMode(1).previewImage(true).isCamera(false).isZoomAnim(true).compress(true).glideOverride(400, 400).isGif(true).compress(true).enableCrop(true).showCropGrid(false).withAspectRatio(1, 1).rotateEnabled(false).freeStyleCropEnabled(false).cropCompressQuality(50).previewVideo(true).forResult(188);
    }
}