시리즈 상세, 채널 상세
- 19금 콘텐츠 보기 설정 적용
This commit is contained in:
@@ -9,9 +9,9 @@ import Foundation
|
||||
import Moya
|
||||
|
||||
enum SeriesApi {
|
||||
case getSeriesList(creatorId: Int, sortType: SeriesListAllViewModel.SeriesSortType, page: Int, size: Int)
|
||||
case getSeriesDetail(seriesId: Int)
|
||||
case getSeriesContentList(seriesId: Int, page: Int, size: Int, sortType: SeriesListAllViewModel.SeriesSortType)
|
||||
case getSeriesList(creatorId: Int, sortType: SeriesListAllViewModel.SeriesSortType, isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int)
|
||||
case getSeriesDetail(seriesId: Int, isAdultContentVisible: Bool, contentType: ContentType)
|
||||
case getSeriesContentList(seriesId: Int, isAdultContentVisible: Bool, contentType: ContentType, page: Int, size: Int, sortType: SeriesListAllViewModel.SeriesSortType)
|
||||
case getRecommendSeriesList(isAdultContentVisible: Bool, contentType: ContentType)
|
||||
}
|
||||
|
||||
@@ -25,10 +25,10 @@ extension SeriesApi: TargetType {
|
||||
case .getSeriesList:
|
||||
return "/audio-content/series"
|
||||
|
||||
case .getSeriesDetail(let seriesId):
|
||||
case .getSeriesDetail(let seriesId, _, _):
|
||||
return "/audio-content/series/\(seriesId)"
|
||||
|
||||
case .getSeriesContentList(let seriesId, _, _, _):
|
||||
case .getSeriesContentList(let seriesId, _, _, _, _, _):
|
||||
return "/audio-content/series/\(seriesId)/content"
|
||||
|
||||
case .getRecommendSeriesList:
|
||||
@@ -45,18 +45,25 @@ extension SeriesApi: TargetType {
|
||||
|
||||
var task: Moya.Task {
|
||||
switch self {
|
||||
case .getSeriesList(let creatorId, let sortType, let page, let size):
|
||||
case .getSeriesList(let creatorId, let sortType, let isAdultContentVisible, let contentType, let page, let size):
|
||||
let parameters = [
|
||||
"creatorId": creatorId,
|
||||
"sortType": sortType,
|
||||
"isAdultContentVisible": isAdultContentVisible,
|
||||
"contentType": contentType,
|
||||
"page": page - 1,
|
||||
"size": size
|
||||
] as [String : Any]
|
||||
|
||||
return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString)
|
||||
|
||||
case .getSeriesDetail:
|
||||
return .requestPlain
|
||||
case .getSeriesDetail(_, let isAdultContentVisible, let contentType):
|
||||
let parameters = [
|
||||
"isAdultContentVisible": isAdultContentVisible,
|
||||
"contentType": contentType
|
||||
] as [String : Any]
|
||||
|
||||
return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString)
|
||||
|
||||
case .getRecommendSeriesList(let isAdultContentVisible, let contentType):
|
||||
let parameters = [
|
||||
@@ -66,8 +73,10 @@ extension SeriesApi: TargetType {
|
||||
|
||||
return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString)
|
||||
|
||||
case .getSeriesContentList(_, let page, let size, let sortType):
|
||||
case .getSeriesContentList(_, let isAdultContentVisible, let contentType, let page, let size, let sortType):
|
||||
let parameters = [
|
||||
"isAdultContentVisible": isAdultContentVisible,
|
||||
"contentType": contentType,
|
||||
"page": page - 1,
|
||||
"size": size,
|
||||
"sortType": sortType
|
||||
|
@@ -14,15 +14,39 @@ class SeriesRepository {
|
||||
private let api = MoyaProvider<SeriesApi>()
|
||||
|
||||
func getSeriesList(creatorId: Int, sortType: SeriesListAllViewModel.SeriesSortType, page: Int, size: Int) -> AnyPublisher<Response, MoyaError> {
|
||||
return api.requestPublisher(.getSeriesList(creatorId: creatorId, sortType: sortType, page: page, size: size))
|
||||
return api.requestPublisher(
|
||||
.getSeriesList(
|
||||
creatorId: creatorId,
|
||||
sortType: sortType,
|
||||
isAdultContentVisible: UserDefaults.isAdultContentVisible(),
|
||||
contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL,
|
||||
page: page,
|
||||
size: size
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
func getSeriesDetail(seriesId: Int) -> AnyPublisher<Response, MoyaError> {
|
||||
return api.requestPublisher(.getSeriesDetail(seriesId: seriesId))
|
||||
return api.requestPublisher(
|
||||
.getSeriesDetail(
|
||||
seriesId: seriesId,
|
||||
isAdultContentVisible: UserDefaults.isAdultContentVisible(),
|
||||
contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
func getSeriesContentList(seriesId: Int, page: Int, size: Int, sortType: SeriesListAllViewModel.SeriesSortType) -> AnyPublisher<Response, MoyaError> {
|
||||
return api.requestPublisher(.getSeriesContentList(seriesId: seriesId, page: page, size: size, sortType: sortType))
|
||||
return api.requestPublisher(
|
||||
.getSeriesContentList(
|
||||
seriesId: seriesId,
|
||||
isAdultContentVisible: UserDefaults.isAdultContentVisible(),
|
||||
contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL,
|
||||
page: page,
|
||||
size: size,
|
||||
sortType: sortType
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
func getRecommendSeriesList() -> AnyPublisher<Response, MoyaError> {
|
||||
|
Reference in New Issue
Block a user