diff --git a/app/src/main/java/com/yizhuan/erban/utils/UserUtils.java b/app/src/main/java/com/yizhuan/erban/utils/UserUtils.java index 94e965300..33f9bb095 100644 --- a/app/src/main/java/com/yizhuan/erban/utils/UserUtils.java +++ b/app/src/main/java/com/yizhuan/erban/utils/UserUtils.java @@ -27,4 +27,12 @@ public class UserUtils { return AvRoomDataManager.get().mCurrentRoomInfo.getRoomId(); } + public static int getExpLevel() { + UserInfo userInfo = UserModel.get().getCacheLoginUserInfo(); + if (userInfo != null && userInfo.getUserLevelVo() != null) { + return userInfo.getUserLevelVo().getExperLevelSeq(); + } + return 0; + } + } diff --git a/app/src/module_treasure_box/java/com/yizhuan/erban/treasure_box/activity/TreasureBoxActivity.java b/app/src/module_treasure_box/java/com/yizhuan/erban/treasure_box/activity/TreasureBoxActivity.java index a0015fd50..58609c745 100644 --- a/app/src/module_treasure_box/java/com/yizhuan/erban/treasure_box/activity/TreasureBoxActivity.java +++ b/app/src/module_treasure_box/java/com/yizhuan/erban/treasure_box/activity/TreasureBoxActivity.java @@ -50,15 +50,16 @@ import io.reactivex.android.schedulers.AndroidSchedulers; @ActLayoutRes(R.layout.activity_treasure_box) public class TreasureBoxActivity extends BaseBindingActivity implements View.OnClickListener { + private final Runnable removeRunnable = () -> mBinding.llPrizeHint.removeAllViews(); private int price = 20; private volatile int keyNum; private ArrayList cacheList = new ArrayList<>(); private ArrayList hintPrizeCacheList = new ArrayList<>(); - private ObjectAnimator translationXAnimator; private ObjectAnimator translationYAnimator; private int boxType = IBoxModel.BOX_TYPE_NORMAL; private int height; + private int sendMessageSwitchLevel; public static void start(Context context) { Intent starter = new Intent(context, TreasureBoxActivity.class); @@ -123,6 +124,7 @@ public class TreasureBoxActivity extends BaseBindingActivity { changeKeyNum(keyInfo.getKeyNum()); price = keyInfo.getKeyPrice(); + sendMessageSwitchLevel = keyInfo.getSendMessageSwitchLevel(); }); } @@ -133,7 +135,7 @@ public class TreasureBoxActivity extends BaseBindingActivity hintPrizeCacheList.add(prizeInfo)); } - @SuppressLint("CheckResult") private void looperPrize() { Observable.interval(0, 100, TimeUnit.MILLISECONDS) @@ -231,8 +232,6 @@ public class TreasureBoxActivity extends BaseBindingActivity mBinding.llPrizeHint.removeAllViews(); - @SuppressLint("CheckResult") private void looperHintPrize() { Observable.interval(0, 250, TimeUnit.MILLISECONDS) @@ -262,7 +261,7 @@ public class TreasureBoxActivity extends BaseBindingActivity 6) { mBinding.llPrizeHint.removeViewAt(0); diff --git a/app/src/module_treasure_box/java/com/yizhuan/erban/treasure_box/activity/TreasureBoxHonourActivity.java b/app/src/module_treasure_box/java/com/yizhuan/erban/treasure_box/activity/TreasureBoxHonourActivity.java index 073c59535..ca929cf30 100644 --- a/app/src/module_treasure_box/java/com/yizhuan/erban/treasure_box/activity/TreasureBoxHonourActivity.java +++ b/app/src/module_treasure_box/java/com/yizhuan/erban/treasure_box/activity/TreasureBoxHonourActivity.java @@ -58,6 +58,7 @@ public class TreasureBoxHonourActivity extends BaseBindingActivity { changeKeyNum(keyInfo.getKeyNum()); price = keyInfo.getKeyPrice(); + sendMessageSwitchLevel = keyInfo.getSendMessageSwitchLevel(); }); } @@ -131,7 +133,7 @@ public class TreasureBoxHonourActivity extends BaseBindingActivity { + private int sendMessageSwitchLevel; - public BoxMoreDialog(Context context) { + public BoxMoreDialog(Context context, int sendMessageSwitchLevel) { super(context); width = WindowManager.LayoutParams.MATCH_PARENT; height = WindowManager.LayoutParams.WRAP_CONTENT; + this.sendMessageSwitchLevel = sendMessageSwitchLevel; } @Override @@ -50,12 +55,17 @@ public class BoxMoreDialog extends BaseBindingDialog { closeDialog(); }); - updateMsgSwitch(DemoCache.readBoolean(DemoCache.KEY_BOX_MESSAGE, true)); - binding.ivSwitch.setOnClickListener(v -> { - boolean sendMsg = !DemoCache.readBoolean(DemoCache.KEY_BOX_MESSAGE, true); - updateMsgSwitch(sendMsg); - DemoCache.saveBoolean(DemoCache.KEY_BOX_MESSAGE, sendMsg); - }); + if (sendMessageSwitchLevel != 0 && UserUtils.getExpLevel() >= sendMessageSwitchLevel) { + binding.ivSwitch.setVisibility(View.VISIBLE); + updateMsgSwitch(DemoCache.readBoolean(DemoCache.KEY_BOX_MESSAGE, true)); + binding.ivSwitch.setOnClickListener(v -> { + boolean sendMsg = !DemoCache.readBoolean(DemoCache.KEY_BOX_MESSAGE, true); + updateMsgSwitch(sendMsg); + DemoCache.saveBoolean(DemoCache.KEY_BOX_MESSAGE, sendMsg); + }); + } else { + binding.ivSwitch.setVisibility(View.GONE); + } } private void updateMsgSwitch(boolean sendMsg) { diff --git a/core/src/model_treasure_box/java/com/yizhuan/treasure_box/bean/KeyInfo.java b/core/src/model_treasure_box/java/com/yizhuan/treasure_box/bean/KeyInfo.java index 4a664657b..5d02cfacf 100644 --- a/core/src/model_treasure_box/java/com/yizhuan/treasure_box/bean/KeyInfo.java +++ b/core/src/model_treasure_box/java/com/yizhuan/treasure_box/bean/KeyInfo.java @@ -12,6 +12,7 @@ public class KeyInfo implements Serializable { private int keyPrice; private int keyNum; private int goldNum;//用户余额 + private int sendMessageSwitchLevel; public int getKeyPrice() { return keyPrice; @@ -36,4 +37,12 @@ public class KeyInfo implements Serializable { public void setGoldNum(int goldNum) { this.goldNum = goldNum; } + + public int getSendMessageSwitchLevel() { + return sendMessageSwitchLevel; + } + + public void setSendMessageSwitchLevel(int sendMessageSwitchLevel) { + this.sendMessageSwitchLevel = sendMessageSwitchLevel; + } }