diff --git a/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java b/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java index cd4c68a3e..b7304757f 100644 --- a/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java +++ b/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java @@ -1,15 +1,5 @@ package com.yizhuan.erban.base; -import static com.yizhuan.xchat_android_core.Constants.DEBUG_MAX_UID; -import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_HEAD_NOBLE; -import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_OPENNOBLE; -import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_RENEWNOBLE; -import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MSG_RED_PACKAGE; -import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MSG_SUB_RED_PACKAGE_RECEIVE_ALL_DIAMOND; -import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MSG_VIP; -import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MSG_VIP_USER_ALL_UPGRADE; -import static com.yizhuan.xchat_android_library.utils.UIUtils.getActivityByContext; - import android.annotation.SuppressLint; import android.app.ActivityManager; import android.content.ComponentName; @@ -67,7 +57,6 @@ import com.yizhuan.erban.common.widget.dialog.DialogUiHelper; import com.yizhuan.erban.ui.im.avtivity.NimP2PMessageActivity; import com.yizhuan.erban.ui.login.AddUserInfoActivity; import com.yizhuan.erban.ui.login.LoginCodeActivity; -import com.yizhuan.erban.ui.login.LoginPhoneActivity; import com.yizhuan.erban.ui.pay.ChargeActivity; import com.yizhuan.erban.ui.setting.ResetPasswordActivity; import com.yizhuan.erban.ui.webview.CommonWebViewActivity; @@ -115,12 +104,20 @@ import java.lang.reflect.Method; import java.util.ArrayList; import java.util.List; -import com.yizhuan.xchat_android_library.common.fragmentation.ISupportActivity; -import com.yizhuan.xchat_android_library.common.fragmentation.SupportActivityDelegate; import io.reactivex.Observable; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.CompositeDisposable; +import static com.yizhuan.xchat_android_core.Constants.DEBUG_MAX_UID; +import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_HEAD_NOBLE; +import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_OPENNOBLE; +import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MESS_SUB_RENEWNOBLE; +import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MSG_RED_PACKAGE; +import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MSG_SUB_RED_PACKAGE_RECEIVE_ALL_DIAMOND; +import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MSG_VIP; +import static com.yizhuan.xchat_android_core.im.custom.bean.CustomAttachment.CUSTOM_MSG_VIP_USER_ALL_UPGRADE; +import static com.yizhuan.xchat_android_library.utils.UIUtils.getActivityByContext; + /** * @author alvin hwang @@ -974,7 +971,7 @@ public abstract class BaseActivity extends RxAppCompatActivity */ private boolean isNeedToHandleBroadcastMessageActivity() { List acts = new ArrayList<>(); - acts.add(LoginPhoneActivity.class); +// acts.add(LoginPhoneActivity.class); acts.add(LoginCodeActivity.class); acts.add(ResetPasswordActivity.class); acts.add(AddUserInfoActivity.class); diff --git a/app/src/main/java/com/yizhuan/erban/earn/EarnRecordViewModel.kt b/app/src/main/java/com/yizhuan/erban/earn/EarnRecordViewModel.kt index 1893431fd..98b57ee48 100644 --- a/app/src/main/java/com/yizhuan/erban/earn/EarnRecordViewModel.kt +++ b/app/src/main/java/com/yizhuan/erban/earn/EarnRecordViewModel.kt @@ -49,22 +49,16 @@ class EarnRecordViewModel : BaseViewModel() { */ private var mWeekChooseDay: Long = 0 - /** - * 日范围内选中的日期 - */ - private var mDay: Long = 0 - fun initCurrentDay() { - mWeekChooseDay = System.currentTimeMillis() - mDay = mWeekChooseDay + mWeekChooseDay = System.currentTimeMillis() - TimeUtils.MILLIS_OF_A_DAY * 7 val calendar = Calendar.getInstance() - calendar.timeInMillis = mDay + calendar.timeInMillis = mWeekChooseDay val curWeekDay = calendar[Calendar.DAY_OF_WEEK] //周一的时间 val firstDayTime: Long = if (curWeekDay == 1) { //周日 - calendar.timeInMillis - TimeUtils.MILLIS_OF_A_DAY * (14 - curWeekDay) + calendar.timeInMillis - TimeUtils.MILLIS_OF_A_DAY * (7 - curWeekDay) } else { - calendar.timeInMillis - TimeUtils.MILLIS_OF_A_DAY * ((curWeekDay - 2) + 7) + calendar.timeInMillis - TimeUtils.MILLIS_OF_A_DAY * (curWeekDay - 2) } //周日 val lastDayTime = firstDayTime + TimeUtils.MILLIS_OF_A_DAY * 6 @@ -152,7 +146,7 @@ class EarnRecordViewModel : BaseViewModel() { /** * 提现 */ - fun exchange(goldNum: Long, payPwd: String) { + fun exchange(goldNum: Double, payPwd: String) { safeLaunch( true, block = { diff --git a/app/src/main/java/com/yizhuan/erban/earn/activity/EarnWithdrawActivity.kt b/app/src/main/java/com/yizhuan/erban/earn/activity/EarnWithdrawActivity.kt index 4412d6ef1..fa1b0dd2e 100644 --- a/app/src/main/java/com/yizhuan/erban/earn/activity/EarnWithdrawActivity.kt +++ b/app/src/main/java/com/yizhuan/erban/earn/activity/EarnWithdrawActivity.kt @@ -117,9 +117,9 @@ class EarnWithdrawActivity : BaseViewBindingActivity it.maxGolds) { + } else if (binding.edGold.text.toString().toDouble() > it.maxGolds.toString().toDouble()) { toast("提現不能超過${it.maxGolds}金幣") } else { GiveGoldPassWordFragment.newInstance( @@ -154,7 +154,7 @@ class EarnWithdrawActivity : BaseViewBindingActivity(), private val earnRecordModel: EarnRecordViewModel by viewModels() - private val mIncomeAdapter: GoldDetailAdapter by lazy { GoldDetailAdapter() } + private val mGoldDetailAdapter: GoldDetailAdapter by lazy { GoldDetailAdapter() } private lateinit var rvDelegate: RVDelegate + private lateinit var roomPopupWindow: PopupWindow + + private var settlementList : List ?= null + companion object { @JvmStatic @@ -59,13 +70,16 @@ class GoldDetailActivity : BaseViewBindingActivity(), getString(R.string.empty_data) ) ) - .setAdapter(mIncomeAdapter) + .setAdapter(mGoldDetailAdapter) .build() } private fun initListener() { - binding.ivRoomDown.setOnClickListener{ - + binding.tvBelongRoom.setOnClickListener { + showRoomPopup() + } + binding.ivRoomDown.setOnClickListener { + showRoomPopup() } binding.llDate.setOnClickListener { val builder = TimePickerDialog.Builder() @@ -94,6 +108,52 @@ class GoldDetailActivity : BaseViewBindingActivity(), } } + private fun showRoomPopup() { + val contentView = + LayoutInflater.from(context).inflate(R.layout.layout_belong_room_view, null) + roomPopupWindow = + PopupWindow( + contentView, + ScreenUtil.dip2px(100f), + WindowManager.LayoutParams.WRAP_CONTENT + ) + roomPopupWindow.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)) + roomPopupWindow.isOutsideTouchable = true + roomPopupWindow.isFocusable = true + + val list = settlementList?.map { it.hallName }?.toMutableList() + list?.add(0, getString(R.string.all)) + val recyclerview = contentView.findViewById(R.id.mRecyclerView) + val goldRoomAdapter = GoldRoomAdapter() + recyclerview.adapter = goldRoomAdapter + recyclerview.addItemDecoration( + ColorDecoration( + ContextCompat.getColor( + this, + R.color.color_F7F7F7 + ), 0, 2, false + ) + ) + + goldRoomAdapter.setOnItemClickListener { adapter, view, position -> + if(position == 0){ + mGoldDetailAdapter.setNewData(settlementList) + }else{ + val settlementList = settlementList?.filter { it.hallName == goldRoomAdapter.data[position] }?.toMutableList() + mGoldDetailAdapter.setNewData(settlementList) + } + roomPopupWindow.dismiss() + } + + goldRoomAdapter.setNewData(list) + + try { + roomPopupWindow.showAsDropDown(binding.tvBelongRoom, -40, 0, Gravity.BOTTOM) + } catch (e: Exception) { + e.printStackTrace() + } + } + private fun initModel() { getWeekIncomeTotal(earnRecordModel.getWeekFirstDay(), earnRecordModel.getWeekLastDay()) @@ -101,6 +161,7 @@ class GoldDetailActivity : BaseViewBindingActivity(), it?.let { binding.tvTotalGold.text = it.total.toString() rvDelegate.setNewData(it.memberSettlement) + settlementList = it.memberSettlement } } } diff --git a/app/src/main/java/com/yizhuan/erban/earn/adapter/GoldRoomAdapter.java b/app/src/main/java/com/yizhuan/erban/earn/adapter/GoldRoomAdapter.java new file mode 100644 index 000000000..7728373bb --- /dev/null +++ b/app/src/main/java/com/yizhuan/erban/earn/adapter/GoldRoomAdapter.java @@ -0,0 +1,20 @@ +package com.yizhuan.erban.earn.adapter; + +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.yizhuan.erban.R; + +import org.jetbrains.annotations.NotNull; + +public class GoldRoomAdapter extends BaseQuickAdapter { + + public GoldRoomAdapter() { + super(R.layout.item_gold_room_popwindow); + } + + @Override + protected void convert(@NotNull BaseViewHolder helper, String item) { + helper.setText(R.id.tv_content, item); + } + +} diff --git a/app/src/main/java/com/yizhuan/erban/home/fragment/RecommendFragment.kt b/app/src/main/java/com/yizhuan/erban/home/fragment/RecommendFragment.kt index 598306efa..00b95fca8 100644 --- a/app/src/main/java/com/yizhuan/erban/home/fragment/RecommendFragment.kt +++ b/app/src/main/java/com/yizhuan/erban/home/fragment/RecommendFragment.kt @@ -15,11 +15,14 @@ import com.yizhuan.erban.home.adapter.HomeChatAdapter import com.yizhuan.erban.home.adapter.HomeHotAdapter import com.yizhuan.erban.home.helper.BannerHelper import com.yizhuan.erban.home.helper.OpenRoomHelper +import com.yizhuan.xchat_android_core.Constants +import com.yizhuan.xchat_android_core.auth.AuthModel import com.yizhuan.xchat_android_core.home.bean.HomeRoomInfo import com.yizhuan.xchat_android_core.home.event.RefreshHomeDataEvent import com.yizhuan.xchat_android_core.statistic.StatisticManager import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol import com.yizhuan.xchat_android_core.user.UserModel +import com.yizhuan.xchat_android_core.user.event.LoginUserInfoUpdateEvent import com.yizhuan.xchat_android_library.utils.ResUtil import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.Subscribe @@ -63,12 +66,6 @@ class RecommendFragment : BaseViewBindingFragment() { } } - val userInfo = UserModel.get().cacheLoginUserInfo - if (userInfo?.isHasPermitRoom == true) { - binding.ivGameGuide.visibility = View.GONE - } else { - binding.ivGameGuide.visibility = View.VISIBLE - } binding.ivGameGuide.setOnClickListener { CreateRoomDialog().apply { setGameVisible() }.show(context) } @@ -151,6 +148,16 @@ class RecommendFragment : BaseViewBindingFragment() { homeViewModel.getHotRoom() } + @Subscribe(threadMode = ThreadMode.MAIN) + fun onLoginUserInfoUpdateEvent(event: LoginUserInfoUpdateEvent?) { + val userInfo = UserModel.get().cacheLoginUserInfo + if (userInfo?.isHasPermitRoom == true) { + binding.ivGameGuide.visibility = View.GONE + } else { + binding.ivGameGuide.visibility = View.VISIBLE + } + } + @Subscribe(threadMode = ThreadMode.MAIN) fun onRefreshHomeDataEvent(event: RefreshHomeDataEvent?) { if (isResumed) { diff --git a/app/src/main/java/com/yizhuan/erban/ui/login/BindPhoneActivity.java b/app/src/main/java/com/yizhuan/erban/ui/login/BindPhoneActivity.java index f6a55e6e2..d4ba91804 100644 --- a/app/src/main/java/com/yizhuan/erban/ui/login/BindPhoneActivity.java +++ b/app/src/main/java/com/yizhuan/erban/ui/login/BindPhoneActivity.java @@ -26,7 +26,7 @@ import com.yizhuan.xchat_android_library.utils.TextWatcherWrapper; */ public class BindPhoneActivity extends BaseActivity implements View.OnClickListener { - private static final String TAG = "LoginPhoneActivity"; + private static final String TAG = "BindPhoneActivity"; private EditText accountEt; private Button btnNext; diff --git a/app/src/main/java/com/yizhuan/erban/ui/login/LoginActivity.java b/app/src/main/java/com/yizhuan/erban/ui/login/LoginActivity.java index b1c0b3eb0..a0718905a 100644 --- a/app/src/main/java/com/yizhuan/erban/ui/login/LoginActivity.java +++ b/app/src/main/java/com/yizhuan/erban/ui/login/LoginActivity.java @@ -79,6 +79,7 @@ public class LoginActivity extends BaseActivity implements View.OnClickListener findViewById(R.id.tv_facebook).setOnClickListener(this); findViewById(R.id.tv_line).setOnClickListener(this); findViewById(R.id.tv_google).setOnClickListener(this); + findViewById(R.id.tv_phone).setOnClickListener(this); findViewById(R.id.tv_others).setOnClickListener(this); } @@ -216,6 +217,9 @@ public class LoginActivity extends BaseActivity implements View.OnClickListener } }); + break; + case R.id.tv_phone: + break; case R.id.tv_others: LoginPasswordActivity.start(LoginActivity.this); diff --git a/app/src/main/java/com/yizhuan/erban/ui/login/LoginPhoneActivity.java b/app/src/main/java/com/yizhuan/erban/ui/login/LoginPhoneActivity.java deleted file mode 100644 index b4be8ad54..000000000 --- a/app/src/main/java/com/yizhuan/erban/ui/login/LoginPhoneActivity.java +++ /dev/null @@ -1,174 +0,0 @@ -package com.yizhuan.erban.ui.login; - -import android.app.Activity; -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.text.Editable; -import android.text.TextUtils; -import android.text.TextWatcher; -import android.view.MotionEvent; -import android.view.View; -import android.view.WindowManager; -import android.widget.Button; -import android.widget.EditText; -import android.widget.ImageView; - -import com.netease.nim.uikit.StatusBarUtil; -import com.yizhuan.erban.R; -import com.yizhuan.erban.base.BaseActivity; -import com.yizhuan.xchat_android_core.auth.event.LoginEvent; -import com.yizhuan.xchat_android_library.utils.NetworkUtils; -import com.yizhuan.xchat_android_library.utils.TextWatcherWrapper; - -import org.greenrobot.eventbus.EventBus; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; - -/** - * @author zhouxiangfeng - * @date 17/2/26 - */ -public class LoginPhoneActivity extends BaseActivity implements View.OnClickListener { - - private static final String TAG = "LoginPhoneActivity"; - - private EditText accountEt; - private Button btnNext; - private ImageView ivBack; - - private AccountValidator accountValidator = new AccountValidator(); - private TextWatcher textWatcher = new TextWatcherWrapper() { - @Override - public void afterTextChanged(Editable s) { - checkInput(); - } - }; - - - public static void start(Context context) { - Intent intent = new Intent(context, LoginPhoneActivity.class); - context.startActivity(intent); - } - - public static void startForResult(Activity context, int requestCode) { - Intent intent = new Intent(context, LoginPhoneActivity.class); - context.startActivityForResult(intent, requestCode); // - } - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - setContentView(R.layout.activity_login_phone); - EventBus.getDefault().register(this); - onFindViews(); - onSetListener(); - - accountEt.setFocusable(true); - accountEt.setFocusableInTouchMode(true); - accountEt.requestFocus(); - this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE); - - } - - private void onFindViews() { - accountEt = findViewById(R.id.et_account); - btnNext = findViewById(R.id.btn_next); - ivBack = findViewById(R.id.iv_back); - } - - private void onSetListener() { - btnNext.setOnClickListener(this); - btnNext.setEnabled(false); - accountEt.addTextChangedListener(textWatcher); - ivBack.setOnClickListener(this); - findViewById(R.id.tv_password_login).setOnClickListener(v -> LoginPasswordActivity.start(this)); - } - - private void checkInput() { - if (!TextUtils.isEmpty(accountEt.getText().toString()) && accountEt.getText().toString().length() >= 7) { - btnNext.setEnabled(true); - } else { - btnNext.setEnabled(false); - } - } - - @Override - public void onClick(View v) { - switch (v.getId()) { - case R.id.btn_next: - if (!NetworkUtils.isNetworkStrictlyAvailable(this)) { - checkNetToast(); - return; - } - if (!accountValidator.isValid(accountEt.getText().toString())) { - toast(accountValidator.getErrorMessage()); - return; - } - LoginCodeActivity.start(LoginPhoneActivity.this, accountEt.getText().toString()); - break; - - case R.id.iv_back: - handleFinish(); - break; - default: - break; - } - } - - - @Override - protected boolean needSteepStateBar() { - return true; - } - - @Override - protected void setStatusBar() { - StatusBarUtil.transparencyBar(this); - StatusBarUtil.StatusBarLightMode(this); - } - - - @Override - protected void onDestroy() { - accountEt = null; - super.onDestroy(); - EventBus.getDefault().unregister(this); - } - - - @Override - public boolean onTouchEvent(MotionEvent event) { - View view = getCurrentFocus(); - boolean isPressEdit = false; - if (view instanceof EditText) { - if (event.getRawX() >= view.getX() && event.getRawX() <= view.getX() + view.getWidth() && event.getRawY() >= view.getY() && event.getRawY() <= view.getY() + view.getHeight()) { - isPressEdit = true; - } - } - if (!isPressEdit) { - hideIME(); - } - return super.onTouchEvent(event); - } - - /** - * 注册成功后发送过来的事件 - */ - @Subscribe(threadMode = ThreadMode.MAIN) - public void onLoginEvent(LoginEvent event) { - getDialogManager().dismissDialog(); - setResult(RESULT_OK); - finish(); - } - - @Override - public void onBackPressed() { - handleFinish(); - } - - private void handleFinish() { - finish(); - } - -} diff --git a/app/src/main/res/drawable-xhdpi/ic_login_phone.png b/app/src/main/res/drawable-xhdpi/ic_login_phone.png deleted file mode 100644 index dd3e91005..000000000 Binary files a/app/src/main/res/drawable-xhdpi/ic_login_phone.png and /dev/null differ diff --git a/app/src/main/res/drawable-xhdpi/ic_login_phone.webp b/app/src/main/res/drawable-xhdpi/ic_login_phone.webp new file mode 100644 index 000000000..6401e8878 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_login_phone.webp differ diff --git a/app/src/main/res/drawable/bg_ffffff_8_stroke_1.xml b/app/src/main/res/drawable/bg_ffffff_8_stroke_1.xml new file mode 100644 index 000000000..a4d32e847 --- /dev/null +++ b/app/src/main/res/drawable/bg_ffffff_8_stroke_1.xml @@ -0,0 +1,11 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_gold_detail.xml b/app/src/main/res/layout/activity_gold_detail.xml index bfb217ef6..92e0be194 100644 --- a/app/src/main/res/layout/activity_gold_detail.xml +++ b/app/src/main/res/layout/activity_gold_detail.xml @@ -116,6 +116,7 @@ android:layout_weight="1" /> @@ -58,13 +58,14 @@ android:layout_height="63dp" android:layout_marginTop="30dp" android:background="@drawable/shape_login_btn_bg" - android:drawableStart="@drawable/ic_login_facebook" android:drawablePadding="35dp" android:gravity="center_vertical" android:paddingStart="25dp" + android:paddingEnd="0dp" android:text="@string/login_facebook" android:textColor="@color/text_title_color" - android:textSize="16sp" /> + android:textSize="16sp" + app:drawableStartCompat="@drawable/ic_login_facebook" /> + android:textSize="16sp" + app:drawableStartCompat="@drawable/ic_login_line" /> + + - - - - - - - - - - - - - - - - - - -