瀏覽代碼

Merge branch 'google' into swagoLite

honghengqiang 2 年之前
父節點
當前提交
0e592ec6ea

+ 2 - 2
app/build.gradle

@@ -15,8 +15,8 @@ android {
         applicationId "com.swago.app"
         minSdkVersion 21
         targetSdkVersion 30
-        versionCode 1130
-        versionName "1.1.3.0"
+        versionCode 1131
+        versionName "1.1.3.1"
         multiDexEnabled true
         testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
 

+ 2 - 0
app/src/main/java/com/swago/app/SplashVm.kt

@@ -106,6 +106,8 @@ class SplashVm(application: Application) : BaseViewModel(application) {
     private fun setBaseUrl(baseUrl: String) {
         if (BuildConfig.DEBUG) {
             UrlConstant.BASE_URL =   "http:test-api.swago.cn"
+//            UrlConstant.BASE_URL =   "http:huawei.swago.cn"
+//            UrlConstant.BASE_URL =    "https://api.swagobei.com"
 //            UrlConstant.BASE_URL =   "http://advance.swago.cn"
 //            UrlConstant.BASE_URL =   "https://pro-api.swago.cn"
         } else {

+ 2 - 0
baseswago/src/main/java/com/swago/baseswago/constant/UrlConstant.kt

@@ -15,6 +15,8 @@ object UrlConstant {
 
     var BASE_URL = if (BuildConfig.DEBUG) {
             "http:test-api.swago.cn"
+//            "http:huawei.swago.cn"
+//        "https://api.swagobei.com"
 //        "http://advance.swago.cn"
 //        "https://pro-api.swago.cn"
     } else {

+ 10 - 0
baseswago/src/main/java/com/swago/baseswago/model/live/gift/GiftSendModel.java

@@ -9,6 +9,8 @@ public class GiftSendModel {
     private int gift_batch;
     private String user_coins;
 
+    private IMGiftModel im_data;
+
 
     public int getGift_batch() {
         return gift_batch;
@@ -25,4 +27,12 @@ public class GiftSendModel {
     public void setUser_coins(String user_coins) {
         this.user_coins = user_coins;
     }
+
+    public IMGiftModel getIm_data() {
+        return im_data;
+    }
+
+    public void setIm_data(IMGiftModel im_data) {
+        this.im_data = im_data;
+    }
 }

+ 9 - 0
baseswago/src/main/java/com/swago/baseswago/model/live/gift/IMGiftModel.java

@@ -41,6 +41,7 @@ public class IMGiftModel implements IPiaoTiao {
     private String giftName;
     private String giftIcon;
     private String giftNum;
+    private int giftOneceNum;
     private int isCombo;
     private String svga;
     private String incomeCount;
@@ -151,6 +152,14 @@ public class IMGiftModel implements IPiaoTiao {
         this.giftNum = giftNum;
     }
 
+    public int getGiftOneceNum() {
+        return giftOneceNum;
+    }
+
+    public void setGiftOneceNum(int giftOneceNum) {
+        this.giftOneceNum = giftOneceNum;
+    }
+
     public int getIsCombo() {
         return isCombo;
     }

+ 13 - 1
room/src/main/java/com/swago/room/gift/GiftDialog.kt

@@ -28,6 +28,7 @@ import com.swago.room.databinding.DialogGiftBinding
 import com.swago.room.dialog.ReachLevelServiceDialog
 import com.swago.room.dialog.UnReachLevelDialog
 import com.swago.room.gift.GiftConfig.giftSelectedWhichType
+import com.swago.room.vm.MsgVm
 import net.lucode.hackware.magicindicator.ViewPagerHelper
 import net.lucode.hackware.magicindicator.buildins.commonnavigator.CommonNavigator
 import net.lucode.hackware.magicindicator.buildins.commonnavigator.abs.CommonNavigatorAdapter
@@ -43,6 +44,7 @@ class GiftDialog : BaseXDFragment<DialogGiftBinding>() {
 
     private val giftVm by viewModels<GiftVm>()
     private val payVm by viewModels<PayVm>()
+    private val msgVm by activityViewModels<MsgVm>()
     private var giftBatch = 0
     private var returnGiftBatch = 0
     private var receiveId = ""
@@ -378,10 +380,20 @@ class GiftDialog : BaseXDFragment<DialogGiftBinding>() {
         }
 
         giftVm.sendResultLiveData.observe(this) {
-            if (it != null && returnGiftBatch < it.gift_batch) {
+            if (it != null) {
+                if (it.im_data!=null){
+                    msgVm.showGiftDanDao?.invoke(it.im_data)
+                    msgVm.inComeChange?.invoke(it.im_data.incomeCount)
+                    if (it.im_data.multiple >= 500) {
+                        msgVm.waftFun?.invoke(it.im_data)
+                    }
+                }
+
+                if (returnGiftBatch < it.gift_batch){
                     UserInfo.getUserInfo()?.user_coins = it.user_coins
                     binding.tvCoins.text = it.user_coins ?: "0"
                     returnGiftBatch = it.gift_batch
+                }
             }
             if (type==2||type==3){
                 dismissAllowingStateLoss()

+ 15 - 7
room/src/main/java/com/swago/room/giftdandao/GiftDanDaoManager.kt

@@ -82,21 +82,29 @@ class GiftDanDaoManager  : IRoomActiveListener {
                             //判断当前正忙的礼物弹道跟新来的礼物是不是同一个
                             val imCurrentGiftModel = giftDanDaoViewList[index].imCurrentGiftModel
                             if (imCurrentGiftModel!=null){
-                                if (imCurrentGiftModel.giftId==imGiftModel.giftId&&imCurrentGiftModel.senderCode==imGiftModel.senderCode){
+                                if (imCurrentGiftModel.giftId==imGiftModel.giftId&&imCurrentGiftModel.senderCode==imGiftModel.senderCode&&imCurrentGiftModel.receiverUserId==imGiftModel.receiverUserId){
                                     giftDanDaoViewList[index].addData(imGiftModel)
                                     isSetData = true
                                     break
                                 }
                             }
-                        }else{
-                            //有空闲轨道
-                            LogUtil.d("giftDanDaoViewList","ddddd-$index")
-                            giftDanDaoViewList[index].addData(imGiftModel)
-                            isSetData = true
-                            break
                         }
                     }
 
+
+                    if(!isSetData){
+                        for (index in 0 until giftDanDaoViewList.size){
+                            if (!giftDanDaoViewList[index].isBusy){
+                                //有空闲轨道
+                                LogUtil.d("giftDanDaoViewList","ddddd-$index")
+                                giftDanDaoViewList[index].addData(imGiftModel)
+                                isSetData = true
+                                break
+                            }
+                        }
+                    }
+
+
                     if (!isSetData){
                         //表示此事所有飘条都在忙 那么按顺序添加
                         LogUtil.d("giftDanDaoViewList","${giftDanDaoViewCount%giftDanDaoViewList.size}----$giftDanDaoViewCount")

+ 5 - 4
room/src/main/java/com/swago/room/giftdandao/GiftDanDaoView.kt

@@ -29,6 +29,7 @@ class GiftDanDaoView : FrameLayout {
     var isBusy = false
     private var binding: ViewItemGiftBinding? = null
 
+    private var giftCount = 0
 
     var imCurrentGiftModel: IMGiftModel? = null
 
@@ -72,12 +73,14 @@ class GiftDanDaoView : FrameLayout {
                 tvSenderTo.isSelected = true
             }
             LogUtil.d("礼物个数", "x${imGiftModel.giftNum}")
-            tvNum.text = "x${imGiftModel.giftNum}"
             clItemGift.visibility = View.VISIBLE
             if (imCurrentGiftModel != null && imGiftModel.isCombo == 1) {
-
+                giftCount += imGiftModel.giftOneceNum
+                tvNum.text = "x${giftCount}"
             } else {
                 //执行进场动画
+                giftCount = imGiftModel.giftOneceNum
+                tvNum.text = "x${giftCount}"
                 giftEnterAnimator.start()
             }
             imCurrentGiftModel = imGiftModel
@@ -109,8 +112,6 @@ class GiftDanDaoView : FrameLayout {
                 clWinPrize.postDelayed(winPrizeRunnable, 1500)
             }
         }
-
-
     }
 
 

+ 9 - 5
room/src/main/java/com/swago/room/vm/MsgVm.kt

@@ -152,11 +152,15 @@ class MsgVm(application: Application) : AbsMsgVm(application) {
                 if (isReady) {
                     it.data?.let {
                         if (iRoomInfo.getRoomId() == (it.roomId ?: "")) {
-                            showGiftDanDao?.invoke(it)
-                            inComeChange?.invoke(it.incomeCount)
-                        }
-                        if (it.multiple >= 500) {
-                            waftFun?.invoke(it)
+                            UserInfo.getUserInfo()?.let {  userInfoModel ->
+                                if (userInfoModel.id != it.senderId){
+                                    showGiftDanDao?.invoke(it)
+                                    inComeChange?.invoke(it.incomeCount)
+                                    if (it.multiple >= 500) {
+                                        waftFun?.invoke(it)
+                                    }
+                                }
+                            }
                         }
                     }
                 }