app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java
@@ -28,6 +28,8 @@ //适配器 protected A adapter; protected abstract String initTitle(); @Override public void initViews() { try { app/src/main/java/com/runt/open/mvvm/data/Results.java
@@ -1,5 +1,9 @@ package com.runt.open.mvvm.data; import com.runt.open.mvvm.ui.login.UserBean; import java.util.Date; /** * My father is Object, ites purpose of * @@ -23,4 +27,15 @@ public String version,detail,access; } //金币记录 public class CustomCoin{ public String id; public UserBean toUser,fromUser; public int count,after,before,type; public Date cTime; /** * 备注 **/ public Object remark; } } app/src/main/java/com/runt/open/mvvm/retrofit/api/CommonApiCenter.java
@@ -79,4 +79,13 @@ */ @GET("getMsgDetail") Observable<HttpApiResult<Results.Message>> getMsgDetail(@Query("id") String id); /** * 获取金币记录 * @param pageNum 页数 * @param pageSize 每页数量 * @return */ @GET("coinRecord") Observable<HttpApiResult<PageResult<Results.CustomCoin>>> getCoinRecord(@Query("page") int pageNum, @Query("size") int pageSize, @Query("inOrOut") int inOrOut); } app/src/main/java/com/runt/open/mvvm/ui/adapter/CoinTransAdapter.java
New file @@ -0,0 +1,68 @@ package com.runt.open.mvvm.ui.adapter; import android.content.Context; import com.bumptech.glide.Glide; import com.bumptech.glide.request.RequestOptions; import com.runt.open.mvvm.BuildConfig; import com.runt.open.mvvm.R; import com.runt.open.mvvm.base.adapter.BaseAdapter; import com.runt.open.mvvm.data.Results; import com.runt.open.mvvm.databinding.ItemCoinReportBinding; import com.runt.open.mvvm.ui.login.UserBean; import com.runt.open.mvvm.util.HandleDate; /** * @purpose Created by Runt (qingingrunt2010@qq.com) on 2020-10-29. */ public class CoinTransAdapter extends BaseAdapter<Results.CustomCoin, ItemCoinReportBinding> { @Override protected void onBindView(ItemCoinReportBinding binding, int position, Results.CustomCoin data) { Context context = binding.getRoot().getContext(); RequestOptions options = new RequestOptions() .placeholder(R.mipmap.default_head)//图片加载出来前,显示的图片 .fallback(R.mipmap.default_head) //url为空的时候,显示的图片 .error(R.mipmap.default_head);//图片加载失败后,显示的图片 boolean isOut = data.fromUser != null && data.fromUser.getId().equals(UserBean.getUser().getId()); String type = ""; switch (data.type) { case 0: type = "赠送"; break; case 1: type = "每日登录"; break; case 2: type = "签到赠送"; break; case 3: type = "广告赠送"; break; case 4: type = "激励广告赠送"; break; case 5: type = "转帐"; break; case 6: type = "提现"; break; case 7: type = "注册赠送"; break; } if (isOut) { binding.txtName.setText((data.type == 5?"":"转账到-")+(data.toUser == null ? type : data.toUser.getUsername())); binding.txtCount.setText("-" + data.count); binding.txtCount.setTextColor(context.getResources().getColor(R.color.holo_red_light)); Glide.with(binding.getRoot().getContext()).load(BuildConfig.HOST_IP_ADDR + (data.toUser == null ? "" : data.toUser.getHead())).apply(options).into(binding.imgHead); } else { binding.txtName.setText((data.fromUser == null ? type : data.fromUser.getUsername())+(data.type == 5?"-转账":"")); binding.txtCount.setTextColor(context.getResources().getColor(R.color.green)); binding.txtCount.setText("+" + data.count); Glide.with(binding.getRoot().getContext()).load(BuildConfig.HOST_IP_ADDR + (data.fromUser == null ? "" : data.fromUser.getHead())).apply(options).into(binding.imgHead); } binding.txtTime.setText(HandleDate.getTimeStateNew(data.cTime)); } } app/src/main/java/com/runt/open/mvvm/ui/adapter/MsgAdapter.java
File was renamed from app/src/main/java/com/runt/open/mvvm/ui/main/home/MsgAdapter.java @@ -1,4 +1,4 @@ package com.runt.open.mvvm.ui.main.home; package com.runt.open.mvvm.ui.adapter; import android.content.Intent; import android.view.View; app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageActivitys.java
@@ -1,7 +1,21 @@ package com.runt.open.mvvm.ui.loadpage; import com.runt.open.mvvm.base.activities.LoadPageActivity; import com.runt.open.mvvm.data.Results; import com.runt.open.mvvm.databinding.RefreshRecyclerBinding; import com.runt.open.mvvm.ui.adapter.CoinTransAdapter; /** * @purpose Created by Runt (qingingrunt2010@qq.com) on 2020-9-17. */ public class PageActivitys { //金币记录 public class CoinRecordActivity extends LoadPageActivity<RefreshRecyclerBinding, PageViewModels.CoinRecordViewModel, CoinTransAdapter, Results.CustomCoin>{ @Override protected String initTitle() { return "金币记录"; } } } app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageFragments.java
@@ -3,7 +3,7 @@ import com.runt.open.mvvm.base.fragments.LoadPageFragment; import com.runt.open.mvvm.data.Results; import com.runt.open.mvvm.databinding.RefreshRecyclerBinding; import com.runt.open.mvvm.ui.main.home.MsgAdapter; import com.runt.open.mvvm.ui.adapter.MsgAdapter; /** * @purpose Created by Runt (qingingrunt2010@qq.com) on 2020-9-17. app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageViewModels.java
@@ -17,4 +17,11 @@ return commonApi.getMsgList(page,SIZE); } } public static class CoinRecordViewModel extends LoadPageViewModel<Results.CustomCoin>{ @Override public Observable<HttpApiResult<PageResult<Results.CustomCoin>>> request(int page, Object... objects) { return commonApi.getCoinRecord(page,SIZE,(int)objects[0]); } } } app/src/main/java/com/runt/open/mvvm/ui/main/mine/MineFragment.java
@@ -4,6 +4,7 @@ import android.content.Intent; import android.content.pm.ActivityInfo; import android.view.View; import android.widget.TextView; import com.bumptech.glide.Glide; import com.bumptech.glide.request.RequestOptions; import com.luck.picture.lib.PictureSelector; @@ -14,10 +15,14 @@ import com.runt.open.mvvm.R; import com.runt.open.mvvm.base.fragments.BaseFragment; import com.runt.open.mvvm.databinding.FragmentMineBinding; import com.runt.open.mvvm.listener.ResPonse; import com.runt.open.mvvm.retrofit.observable.HttpObserver; import com.runt.open.mvvm.ui.loadpage.PageActivitys; import com.runt.open.mvvm.ui.login.UserBean; import com.runt.open.mvvm.util.GlideEngine; import com.runt.open.mvvm.util.MyLog; import sakura.bottommenulibrary.bottompopfragmentmenu.BottomMenuFragment; import sakura.bottommenulibrary.bottompopfragmentmenu.MenuItem; import java.io.File; import java.util.List; @@ -73,7 +78,7 @@ } }); break; /* case R.id.lin_coin://金币 case R.id.lin_coin://金币 new BottomMenuFragment(getActivity()) .addMenuItems(new MenuItem("查看记录")) .addMenuItems(new MenuItem("申请提现")) @@ -81,7 +86,7 @@ @Override public void onItemClick(TextView menu_item, int position) { if(position == 0){ startActivity(new Intent(mActivity, CoinRecordActivity.class) ); startActivity(new Intent(mActivity, PageActivitys.CoinRecordActivity.class) ); }else { if(mActivity.isNull(UserBean.getUser().getAlipay())){ mActivity.showDialog("设置支付宝", "您还没有设置支付宝账号", "设置", "取消", new ResPonse() { @@ -107,7 +112,7 @@ break; case R.id.lin_sign://签到 startActivityForResult(new Intent(getContext(), SignInActivity.class),REQUEST_CODE_SIGN); break;*/ break; } } app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailActivity.java
@@ -7,7 +7,7 @@ import com.runt.open.mvvm.util.HandleDate; /** * @purpose Created by Runt (qingingrunt2010@qq.com) on 2022/8/11. * @purpose Created by Runt (qingingrunt2010@qq.com) on 2020-10-29. */ public class MsgDetailActivity extends BaseActivity<ActivityMsgDetailBinding,MsgDetailViewModel> { @Override app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailViewModel.java
@@ -7,7 +7,7 @@ import com.runt.open.mvvm.retrofit.observable.HttpObserver; /** * @purpose Created by Runt (qingingrunt2010@qq.com) on 2022/8/11. * @purpose Created by Runt (qingingrunt2010@qq.com) on 2020-10-29. */ public class MsgDetailViewModel extends BaseViewModel { app/src/main/res/layout/item_coin_report.xml
New file @@ -0,0 +1,72 @@ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:elevation="3dp" android:background="@drawable/white_corner_border" android:layout_marginTop="@dimen/default_margin_td" android:layout_marginLeft="@dimen/default_margin_lr" android:layout_marginRight="@dimen/default_margin_lr" android:padding="@dimen/normal_padding" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <!--设备类型 横屏 竖屏--> <com.runt.open.mvvm.widgets.CircleImageView android:id="@+id/img_head" android:layout_width="wrap_content" android:layout_height="50dp" android:layout_gravity="center" android:src="@mipmap/default_head" android:layout_marginRight="@dimen/large_margin"/> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="vertical"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:id="@+id/txt_name" style="@style/txt_normal" android:text="用户名" /> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/normal_margin" android:orientation="horizontal"> <TextView android:id="@+id/txt_time" style="@style/txt_normal" android:textSize="12sp" android:textColor="@color/gray_normal" android:text="时间" /> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/normal_margin" android:orientation="horizontal"> <TextView android:id="@+id/txt_count" style="@style/txt_normal" android:text="-20" /> </LinearLayout> </LinearLayout> </LinearLayout>