From b2f7736d17699f006445ec792512ca4e3ffc6b77 Mon Sep 17 00:00:00 2001
From: nilupeng <qingingrunt2010@qq.com>
Date: Thu, 11 Aug 2022 09:49:13 +0000
Subject: [PATCH] 金币记录
---
app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java | 2
app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailActivity.java | 2
app/src/main/java/com/runt/open/mvvm/ui/adapter/CoinTransAdapter.java | 68 +++++++++++++++++
app/src/main/java/com/runt/open/mvvm/ui/adapter/MsgAdapter.java | 2
app/src/main/java/com/runt/open/mvvm/data/Results.java | 15 +++
app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageActivitys.java | 14 +++
app/src/main/java/com/runt/open/mvvm/retrofit/api/CommonApiCenter.java | 9 ++
app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageViewModels.java | 7 +
app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailViewModel.java | 2
app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageFragments.java | 2
app/src/main/res/layout/item_coin_report.xml | 72 ++++++++++++++++++
app/src/main/java/com/runt/open/mvvm/ui/main/mine/MineFragment.java | 11 ++
12 files changed, 199 insertions(+), 7 deletions(-)
diff --git a/app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java b/app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java
index 35e5ca6..40cb405 100644
--- a/app/src/main/java/com/runt/open/mvvm/base/activities/LoadPageActivity.java
+++ b/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 {
diff --git a/app/src/main/java/com/runt/open/mvvm/data/Results.java b/app/src/main/java/com/runt/open/mvvm/data/Results.java
index b9fc8b6..a5a5143 100644
--- a/app/src/main/java/com/runt/open/mvvm/data/Results.java
+++ b/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;
+ }
}
diff --git a/app/src/main/java/com/runt/open/mvvm/retrofit/api/CommonApiCenter.java b/app/src/main/java/com/runt/open/mvvm/retrofit/api/CommonApiCenter.java
index f8ad90d..22ddc5f 100644
--- a/app/src/main/java/com/runt/open/mvvm/retrofit/api/CommonApiCenter.java
+++ b/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);
}
diff --git a/app/src/main/java/com/runt/open/mvvm/ui/adapter/CoinTransAdapter.java b/app/src/main/java/com/runt/open/mvvm/ui/adapter/CoinTransAdapter.java
new file mode 100644
index 0000000..96bf470
--- /dev/null
+++ b/app/src/main/java/com/runt/open/mvvm/ui/adapter/CoinTransAdapter.java
@@ -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));
+ }
+}
diff --git a/app/src/main/java/com/runt/open/mvvm/ui/main/home/MsgAdapter.java b/app/src/main/java/com/runt/open/mvvm/ui/adapter/MsgAdapter.java
similarity index 96%
rename from app/src/main/java/com/runt/open/mvvm/ui/main/home/MsgAdapter.java
rename to app/src/main/java/com/runt/open/mvvm/ui/adapter/MsgAdapter.java
index 725df50..55b2ca8 100644
--- a/app/src/main/java/com/runt/open/mvvm/ui/main/home/MsgAdapter.java
+++ b/app/src/main/java/com/runt/open/mvvm/ui/adapter/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;
diff --git a/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageActivitys.java b/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageActivitys.java
index 8d057a0..d3cd5ce 100644
--- a/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageActivitys.java
+++ b/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 "金币记录";
+ }
+ }
+
}
diff --git a/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageFragments.java b/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageFragments.java
index dd5d361..1adcdb2 100644
--- a/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageFragments.java
+++ b/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.
diff --git a/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageViewModels.java b/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageViewModels.java
index b054b54..994ee5e 100644
--- a/app/src/main/java/com/runt/open/mvvm/ui/loadpage/PageViewModels.java
+++ b/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]);
+ }
+ }
}
diff --git a/app/src/main/java/com/runt/open/mvvm/ui/main/mine/MineFragment.java b/app/src/main/java/com/runt/open/mvvm/ui/main/mine/MineFragment.java
index fb6b3ce..428d272 100644
--- a/app/src/main/java/com/runt/open/mvvm/ui/main/mine/MineFragment.java
+++ b/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;
}
}
diff --git a/app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailActivity.java b/app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailActivity.java
index 68f16fd..bb1f58b 100644
--- a/app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailActivity.java
+++ b/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
diff --git a/app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailViewModel.java b/app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailViewModel.java
index 59fa1a2..6841156 100644
--- a/app/src/main/java/com/runt/open/mvvm/ui/msg/MsgDetailViewModel.java
+++ b/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 {
diff --git a/app/src/main/res/layout/item_coin_report.xml b/app/src/main/res/layout/item_coin_report.xml
new file mode 100644
index 0000000..baa7b1a
--- /dev/null
+++ b/app/src/main/res/layout/item_coin_report.xml
@@ -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>
\ No newline at end of file
--
Gitblit v1.9.1