History fragments

This commit is contained in:
renhaoting 2025-11-07 15:59:05 +08:00
parent c829fce8a7
commit 30e59cb250
6 changed files with 198 additions and 0 deletions

View File

@ -0,0 +1,41 @@
package com.remax.visualnovel.ui.main.history.fragments
import android.os.Bundle
import androidx.fragment.app.viewModels
import com.alibaba.android.arouter.facade.annotation.Route
import com.alibaba.android.arouter.launcher.ARouter
import com.dylanc.loadingstateview.BgColorType
import com.remax.visualnovel.app.base.BaseBindingFragment
import com.remax.visualnovel.databinding.FragmentMainBookBinding
import com.remax.visualnovel.utils.Routers
import dagger.hilt.android.AndroidEntryPoint
import kotlin.getValue
@AndroidEntryPoint
@Route(path = Routers.ROUTE_HISTORY_ACTOR)
class HistoryActorFragment : BaseBindingFragment<FragmentMainBookBinding>() {
private val mViewModel by viewModels<HistoryActorViewModel>()
override fun onCreated(bundle: Bundle?) {
setUI()
}
override fun backgroundColorType(): BgColorType {
return BgColorType.TRANSPARENT
}
private fun setUI() {
}
companion object {
fun newInstance(): HistoryMangaFragment {
return ARouter.getInstance().build(Routers.ROUTE_HISTORY_ACTOR)
.navigation() as HistoryMangaFragment
}
}
}

View File

@ -0,0 +1,25 @@
package com.remax.visualnovel.ui.main.history.fragments
import com.remax.visualnovel.entity.response.Book
import com.remax.visualnovel.app.viewmodel.base.BaseViewModel
import com.remax.visualnovel.entity.response.base.Response
import com.remax.visualnovel.repository.api.BooksRepository
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.asSharedFlow
import javax.inject.Inject
@HiltViewModel
class HistoryActorViewModel @Inject constructor(private val chatRepository: BooksRepository) : BaseViewModel() {
private val _msgStatFlow = MutableSharedFlow<Response<Book>>()
val msgStatFlow = _msgStatFlow.asSharedFlow()
suspend fun getMessageStat() {
_msgStatFlow.emit(chatRepository.getBooks())
}
}

View File

@ -0,0 +1,41 @@
package com.remax.visualnovel.ui.main.history.fragments
import android.os.Bundle
import androidx.fragment.app.viewModels
import com.alibaba.android.arouter.facade.annotation.Route
import com.alibaba.android.arouter.launcher.ARouter
import com.dylanc.loadingstateview.BgColorType
import com.remax.visualnovel.app.base.BaseBindingFragment
import com.remax.visualnovel.databinding.FragmentMainBookBinding
import com.remax.visualnovel.utils.Routers
import dagger.hilt.android.AndroidEntryPoint
import kotlin.getValue
@AndroidEntryPoint
@Route(path = Routers.ROUTE_HISTORY_COMIC)
class HistoryComicFragment : BaseBindingFragment<FragmentMainBookBinding>() {
private val mViewModel by viewModels<HistoryComicViewModel>()
override fun onCreated(bundle: Bundle?) {
setUI()
}
override fun backgroundColorType(): BgColorType {
return BgColorType.TRANSPARENT
}
private fun setUI() {
}
companion object {
fun newInstance(): HistoryComicFragment {
return ARouter.getInstance().build(Routers.ROUTE_HISTORY_COMIC)
.navigation() as HistoryComicFragment
}
}
}

View File

@ -0,0 +1,25 @@
package com.remax.visualnovel.ui.main.history.fragments
import com.remax.visualnovel.entity.response.Book
import com.remax.visualnovel.app.viewmodel.base.BaseViewModel
import com.remax.visualnovel.entity.response.base.Response
import com.remax.visualnovel.repository.api.BooksRepository
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.asSharedFlow
import javax.inject.Inject
@HiltViewModel
class HistoryComicViewModel @Inject constructor(private val chatRepository: BooksRepository) : BaseViewModel() {
private val _msgStatFlow = MutableSharedFlow<Response<Book>>()
val msgStatFlow = _msgStatFlow.asSharedFlow()
suspend fun getMessageStat() {
_msgStatFlow.emit(chatRepository.getBooks())
}
}

View File

@ -0,0 +1,41 @@
package com.remax.visualnovel.ui.main.history.fragments
import android.os.Bundle
import androidx.fragment.app.viewModels
import com.alibaba.android.arouter.facade.annotation.Route
import com.alibaba.android.arouter.launcher.ARouter
import com.dylanc.loadingstateview.BgColorType
import com.remax.visualnovel.app.base.BaseBindingFragment
import com.remax.visualnovel.databinding.FragmentMainBookBinding
import com.remax.visualnovel.utils.Routers
import dagger.hilt.android.AndroidEntryPoint
import kotlin.getValue
@AndroidEntryPoint
@Route(path = Routers.ROUTE_HISTORY_MANGA)
class HistoryMangaFragment : BaseBindingFragment<FragmentMainBookBinding>() {
private val mViewModel by viewModels<HistoryMangaViewModel>()
override fun onCreated(bundle: Bundle?) {
setUI()
}
override fun backgroundColorType(): BgColorType {
return BgColorType.TRANSPARENT
}
private fun setUI() {
}
companion object {
fun newInstance(): HistoryMangaFragment {
return ARouter.getInstance().build(Routers.ROUTE_HISTORY_MANGA)
.navigation() as HistoryMangaFragment
}
}
}

View File

@ -0,0 +1,25 @@
package com.remax.visualnovel.ui.main.history.fragments
import com.remax.visualnovel.entity.response.Book
import com.remax.visualnovel.app.viewmodel.base.BaseViewModel
import com.remax.visualnovel.entity.response.base.Response
import com.remax.visualnovel.repository.api.BooksRepository
import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableSharedFlow
import kotlinx.coroutines.flow.asSharedFlow
import javax.inject.Inject
@HiltViewModel
class HistoryMangaViewModel @Inject constructor(private val chatRepository: BooksRepository) : BaseViewModel() {
private val _msgStatFlow = MutableSharedFlow<Response<Book>>()
val msgStatFlow = _msgStatFlow.asSharedFlow()
suspend fun getMessageStat() {
_msgStatFlow.emit(chatRepository.getBooks())
}
}