feat : 首页UI配置 接入 接口

This commit is contained in:
eggmanQQQ
2024-11-07 16:12:06 +08:00
parent 4dbba76ead
commit e5794630c7
18 changed files with 310 additions and 143 deletions

View File

@@ -0,0 +1,35 @@
package com.chwl.core.home.bean;
public class ConfigAppUI {
// {
// "headIcon": "https://image.pekolive.com/7388@3x.png",
// "navbar": "https://image.pekolive.com/7393@3x.png",
// "backgroundColor": "#E44CD6",
// "homeSelectIcon": "https://image.pekolive.com/7661@3x(1).png",
// "homeUnSelectIcon": "https://image.pekolive.com/7661@3x(4).png",
// "gameSelectIcon": "https://image.pekolive.com/7662@3x.png",
// "gameUnSelectIcon": "https://image.pekolive.com/7662@3x(1).png",
// "dynamicSelectIcon": "https://image.pekolive.com/7661@3x.png",
// "dynamicUnSelectIcon": "https://image.pekolive.com/7661@3x(3).png",
// "msgSelectIcon": "https://image.pekolive.com/7661@3x(2).png",
// "msgUnSelectIcon": "https://image.pekolive.com/7661@3x(5).png",
// "mineSelectIcon": "https://image.pekolive.com/7661@3x(1).png",
// "mineUnSelectIcon": "https://image.pekolive.com/7661@3x(4).png",
// "selectBar": ""
// }
public String headIcon ;
public String navbar;
public String backgroundColor;
public String homeSelectIcon;
public String homeUnSelectIcon;
public String gameSelectIcon;
public String gameUnSelectIcon;
public String dynamicSelectIcon;
public String dynamicUnSelectIcon;
public String msgSelectIcon;
public String msgUnSelectIcon;
public String mineSelectIcon;
public String mineUnSelectIcon;
public String selectBar;
}

View File

@@ -0,0 +1,27 @@
package com.chwl.core.home.bean;
public class ConfigInfo {
//{
// "appUiSetting": {
// "headIcon": "https://image.pekolive.com/7388@3x.png",
// "navbar": "https://image.pekolive.com/7393@3x.png",
// "backgroundColor": "#E44CD6",
// "homeSelectIcon": "https://image.pekolive.com/7661@3x(1).png",
// "homeUnSelectIcon": "https://image.pekolive.com/7661@3x(4).png",
// "gameSelectIcon": "https://image.pekolive.com/7662@3x.png",
// "gameUnSelectIcon": "https://image.pekolive.com/7662@3x(1).png",
// "dynamicSelectIcon": "https://image.pekolive.com/7661@3x.png",
// "dynamicUnSelectIcon": "https://image.pekolive.com/7661@3x(3).png",
// "msgSelectIcon": "https://image.pekolive.com/7661@3x(2).png",
// "msgUnSelectIcon": "https://image.pekolive.com/7661@3x(5).png",
// "mineSelectIcon": "https://image.pekolive.com/7661@3x(1).png",
// "mineUnSelectIcon": "https://image.pekolive.com/7661@3x(4).png",
// "selectBar": ""
// }
//}
public ConfigAppUI appUiSetting;
}

View File

@@ -4,12 +4,11 @@ import lombok.Data
@Data
data class MainTabInfo(
val tabIcon: String = "",
val tabSelectedIcon: String = "",
var tabIcon: String = "",
var tabSelectedIcon: String = "",
val tabName: String = "",
val tabType: Int = 0,
val tabSelectedAnimation: String? = null
)
//todo do 首頁UI自定義

View File

@@ -6,6 +6,7 @@ import androidx.annotation.Nullable;
import androidx.lifecycle.LiveData;
import com.chwl.core.base.IModel;
import com.chwl.core.home.bean.ConfigInfo;
import com.chwl.core.home.bean.MainTabInfo;
import com.chwl.core.initial.bean.FairyOpenInfo;
import com.chwl.core.initial.bean.InitInfo;
@@ -50,4 +51,6 @@ public interface IInitialModel extends IModel {
void regionCheck();
String getPublicChatSessionId();
Single<ConfigInfo> loadConfig();
}

View File

@@ -14,37 +14,38 @@ import androidx.lifecycle.MutableLiveData;
import com.bumptech.glide.request.FutureTarget;
import com.bumptech.glide.request.target.Target;
import com.chwl.core.initial.bean.SplashComponent;
import com.chwl.core.user.UserModel;
import com.chwl.core.user.bean.UserInfo;
import com.chwl.library.language.LanguageHelper;
import com.example.lib_utils.TelephonyUtils;
import com.netease.nim.uikit.support.glide.GlideApp;
import com.chwl.core.R;
import com.chwl.core.DemoCache;
import com.chwl.core.R;
import com.chwl.core.auth.event.LogoutEvent;
import com.chwl.core.base.BaseModel;
import com.chwl.core.bean.response.ServiceResult;
import com.chwl.core.certification.CertificationModel;
import com.chwl.core.home.bean.ConfigInfo;
import com.chwl.core.home.bean.MainTabInfo;
import com.chwl.core.home.bean.MainTabType;
import com.chwl.core.initial.bean.BoxInfo;
import com.chwl.core.initial.bean.FairyOpenInfo;
import com.chwl.core.initial.bean.InitInfo;
import com.chwl.core.initial.bean.SplashComponent;
import com.chwl.core.manager.AvRoomDataManager;
import com.chwl.core.noble.NobleDataManager;
import com.chwl.core.public_chat_hall.manager.PublicChatHallDataManager;
import com.chwl.core.room.face.DynamicFaceModel;
import com.chwl.core.user.UserModel;
import com.chwl.core.user.bean.UserInfo;
import com.chwl.core.user.event.LoadLoginUserInfoEvent;
import com.chwl.core.utils.CurrentTimeUtils;
import com.chwl.core.utils.SharedPreferenceUtils;
import com.chwl.core.utils.net.RxHelper;
import com.chwl.library.language.LanguageHelper;
import com.chwl.library.net.rxnet.RxNet;
import com.chwl.library.utils.JavaUtil;
import com.chwl.library.utils.ListUtils;
import com.chwl.library.utils.NetworkUtils;
import com.chwl.library.utils.ResUtil;
import com.chwl.library.utils.config.BasicConfig;
import com.example.lib_utils.TelephonyUtils;
import com.netease.nim.uikit.support.glide.GlideApp;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
@@ -390,6 +391,13 @@ public class InitialModel extends BaseModel implements IInitialModel {
.observeOn(AndroidSchedulers.mainThread());
}
@Override
public Single<ConfigInfo> loadConfig() {
return api.loadConfig()
.compose(RxHelper.handleBeanData())
.compose(RxHelper.handleSchedulers());
}
private List<MainTabInfo> getDefaultMainTab() {
return new ArrayList<>(Arrays.asList(
new MainTabInfo(
@@ -513,6 +521,14 @@ public class InitialModel extends BaseModel implements IInitialModel {
@GET("/client/init")
Single<ServiceResult<InitInfo>> init();
/**
* 客户端初始化
*
* @return -
*/
@GET("/client/config")
Single<ServiceResult<ConfigInfo>> loadConfig();
/**
* 夺宝精灵开放状态
*