From ac84f81ca2311300b431c1bfb9f71253b59073f2 Mon Sep 17 00:00:00 2001
From: 杨锴 <841720330@qq.com>
Date: 星期三, 04 六月 2025 00:16:22 +0800
Subject: [PATCH] 修改部分

---
 DolphinEnglishLearnStudent/Services/NetworkRequest.swift |  384 +++++++++++++++++++++++++++---------------------------
 1 files changed, 192 insertions(+), 192 deletions(-)

diff --git a/DolphinEnglishLearnStudent/Services/NetworkRequest.swift b/DolphinEnglishLearnStudent/Services/NetworkRequest.swift
index a9903f4..bd4567d 100644
--- a/DolphinEnglishLearnStudent/Services/NetworkRequest.swift
+++ b/DolphinEnglishLearnStudent/Services/NetworkRequest.swift
@@ -16,24 +16,24 @@
 
 // 假设这是服务端返回的统一定义的response格式
 struct BaseResponse<T :HandyJSON>: HandyJSON {
-				var sysTime: Int = 0
-				var code: Int = -1 // 服务端返回码
-				var data: T? = nil // 具体的data的格式和业务相关,故用泛型定义
-				var msg: String = ""
+    var sysTime: Int = 0
+    var code: Int = -1 // 服务端返回码
+    var data: T? = nil // 具体的data的格式和业务相关,故用泛型定义
+    var msg: String = ""
 }
 
 struct BaseData<T: HandyJSON>: HandyJSON {
-				var records = [T]()
+    var records = [T]()
 }
 
 struct SimpleModel: HandyJSON {
 
 }
 struct HtmlModel: HandyJSON {
-				var  content = ""
-				var  content1 = ""
-				var id = 0
-				var type =  0
+    var  content = ""
+    var  content1 = ""
+    var id = 0
+    var type =  0
 }
 
 extension String: HandyJSON{
@@ -53,227 +53,227 @@
 let SHAKEY = ""
 
 class ParamsAppender: NSObject {
-				var url: URL
-				var params:Dictionary = [String: Any]()
+    var url: URL
+    var params:Dictionary = [String: Any]()
 
-				private init(url: String){
-								self.url = URL(string: url)!
-				}
+    private init(url: String){
+        self.url = URL(string: url)!
+    }
 
-				@discardableResult
-				func interface(url: String) -> ParamsAppender {
-								self.url.appendPathComponent(url)
-								return self
-				}
+    @discardableResult
+    func interface(url: String) -> ParamsAppender {
+        self.url.appendPathComponent(url)
+        return self
+    }
 
-				@discardableResult
-				func append(key: String,value: Bool) -> ParamsAppender {
-								params += ["\(key)":"\(value)"]
-								return self
-				}
+    @discardableResult
+    func append(key: String,value: Bool) -> ParamsAppender {
+        params += ["\(key)":"\(value)"]
+        return self
+    }
 
-				@discardableResult
-				func append(key: String,value: String?) -> ParamsAppender {
-								if value != nil && value?.isEmpty == false {
-												params += ["\(key)":"\(value!)"]
-								}
-								return self
-				}
+    @discardableResult
+    func append(key: String,value: String?) -> ParamsAppender {
+        if value != nil && value?.isEmpty == false {
+            params += ["\(key)":"\(value!)"]
+        }
+        return self
+    }
 
-				@discardableResult
-				func append(key: String,value: Array<String>) -> ParamsAppender {
-								if value.isEmpty == false {
-												params += ["\(key)":value]
-								}
-								return self
-				}
+    @discardableResult
+    func append(key: String,value: Array<String>) -> ParamsAppender {
+        if value.isEmpty == false {
+            params += ["\(key)":value]
+        }
+        return self
+    }
 
 
-				@discardableResult
-				func append(key: String, value: Int?) -> ParamsAppender {
-								if value != nil{
-												params += ["\(key)":value!]
-								}
-								return self
-				}
+    @discardableResult
+    func append(key: String, value: Int?) -> ParamsAppender {
+        if value != nil{
+            params += ["\(key)":value!]
+        }
+        return self
+    }
 
-				@discardableResult
-				func append(key: String, value: Int64) -> ParamsAppender {
-								params += ["\(key)":value]
-								return self
-				}
+    @discardableResult
+    func append(key: String, value: Int64) -> ParamsAppender {
+        params += ["\(key)":value]
+        return self
+    }
 
-				@discardableResult
-				func append(key: String, value: Double?) -> ParamsAppender {
-								if value != nil{
-												params += ["\(key)":value!]
-								}
-								return self
-				}
+    @discardableResult
+    func append(key: String, value: Double?) -> ParamsAppender {
+        if value != nil{
+            params += ["\(key)":value!]
+        }
+        return self
+    }
 
-				@discardableResult
-				func append(key: String,data: Data?) -> ParamsAppender {
-								if data != nil{
-												params += ["\(key)": data!]
-								}
-								return self
-				}
+    @discardableResult
+    func append(key: String,data: Data?) -> ParamsAppender {
+        if data != nil{
+            params += ["\(key)": data!]
+        }
+        return self
+    }
 
-				@discardableResult
-				func append(key: String,url: URL) -> ParamsAppender {
-								params += ["\(key)":"\(url)"]
-								return self
-				}
+    @discardableResult
+    func append(key: String,url: URL) -> ParamsAppender {
+        params += ["\(key)":"\(url)"]
+        return self
+    }
 
-				@discardableResult
-				func append(dic: [String : Any]) -> ParamsAppender {
-								params += dic
-								return self
-				}
+    @discardableResult
+    func append(dic: [String : Any]) -> ParamsAppender {
+        params += dic
+        return self
+    }
 
-				/// 参数加密
-				@discardableResult
-				func done() -> Parameters {
-								var paramsArray: [String] = []
-								// 排序
-								let sortedArray: [String] = Array(params.keys).sorted()
+    /// 参数加密
+    @discardableResult
+    func done() -> Parameters {
+        var paramsArray: [String] = []
+        // 排序
+        let sortedArray: [String] = Array(params.keys).sorted()
 
-								//防止自签名而错误
-								if !sortedArray.contains("sign"){
-												for item in sortedArray{
-																// 拼接字符串
-																if params.has(key: item){
-																				paramsArray.append("\(item)=\(params[item]!)")
-																}
-												}
-												let content = paramsArray.joined(separator: "&")
-												params += ["sign": "\(content.jq_hmacBase64(algorithm: .SHA1, key: SHAKEY))"]
+        //防止自签名而错误
+        if !sortedArray.contains("sign"){
+            for item in sortedArray{
+                // 拼接字符串
+                if params.has(key: item){
+                    paramsArray.append("\(item)=\(params[item]!)")
+                }
+            }
+            let content = paramsArray.joined(separator: "&")
+            params += ["sign": "\(content.jq_hmacBase64(algorithm: .SHA1, key: SHAKEY))"]
 
 #if DEBUG
-												LogInfo("签名:\(content) ----- \(content.jq_hmacBase64(algorithm: .SHA1, key: SHAKEY))")
+            LogInfo("签名:\(content) ----- \(content.jq_hmacBase64(algorithm: .SHA1, key: SHAKEY))")
 #endif
-								}
-								return self.params
-				}
+        }
+        return self.params
+    }
 
-				class func build(url: String) -> ParamsAppender {
-								return ParamsAppender(url: url)
-				}
+    class func build(url: String) -> ParamsAppender {
+        return ParamsAppender(url: url)
+    }
 
 }
 class NetworkRequest {
 
-				static let sharedSessionManager: Alamofire.Session = {
-								let configuration = URLSessionConfiguration.default
-								configuration.timeoutIntervalForRequest = 10
-								return Alamofire.Session(configuration: configuration)
-				}()
-				enum NetRequestError: Error {
-								case Other(Int,String)
-								case URLNotFound
-								case DownloadFailed
-								case InvaildSession
-								case ModelError(String)
-								case DataAnalysis(String)
-				}
+    static let sharedSessionManager: Alamofire.Session = {
+        let configuration = URLSessionConfiguration.default
+        configuration.timeoutIntervalForRequest = 10
+        return Alamofire.Session(configuration: configuration)
+    }()
+    enum NetRequestError: Error {
+        case Other(Int,String)
+        case URLNotFound
+        case DownloadFailed
+        case InvaildSession
+        case ModelError(String)
+        case DataAnalysis(String)
+    }
 
-				class func request<T: HandyJSON>(params: ParamsAppender, method: HTTPMethod,  encoding: ParameterEncoding? = nil, progress: Bool = true,ignoreAlert:Bool = false) -> Observable<BaseResponse<T>>{
+    class func request<T: HandyJSON>(params: ParamsAppender, method: HTTPMethod,  encoding: ParameterEncoding? = nil, progress: Bool = true,ignoreAlert:Bool = false) -> Observable<BaseResponse<T>>{
 
-								return Observable<BaseResponse<T>>.create{ ob in
-												guard NetworkReachabilityManager.init(host: All_Url)!.isReachable else {
-																alertError(msg: "当前网络不可用")
-																ob.onError(AFError.invalidURL(url: params.url))
-																return Disposables.create{}
-												}
+        return Observable<BaseResponse<T>>.create{ ob in
+            guard NetworkReachabilityManager.init(host: All_Url)!.isReachable else {
+                alertError(msg: "当前网络不可用")
+                ob.onError(AFError.invalidURL(url: params.url))
+                return Disposables.create{}
+            }
 
-												if progress {showHUD()}
+            if progress {showHUD()}
 
-												var headers = HTTPHeaders()
+            var headers = HTTPHeaders()
 
-												if let token = LoginTokenModel.getToken()?.access_token{
-																headers.add(name: "Authorization", value: "Bearer" + " " + token)
-																LogInfo("USER_token:Bearer \(token)")
-												}
+            if let token = LoginTokenModel.getToken()?.access_token{
+                headers.add(name: "Authorization", value: "Bearer" + " " + token)
+                LogInfo("USER_token:Bearer \(token)")
+            }
 
-												if encoding is JSONEncoding {
-																headers.add(name: "Content-Type", value: "application/json;charset=UTF-8")
-												}
+            if encoding is JSONEncoding {
+                headers.add(name: "Content-Type", value: "application/json;charset=UTF-8")
+            }
 
-												var newEncoding: ParameterEncoding
-												if encoding != nil {
-																newEncoding = encoding!
-												} else {
-																newEncoding = method == .post ? URLEncoding.httpBody : URLEncoding.queryString
-												}
+            var newEncoding: ParameterEncoding
+            if encoding != nil {
+                newEncoding = encoding!
+            } else {
+                newEncoding = method == .post ? URLEncoding.httpBody : URLEncoding.queryString
+            }
 
-												sharedSessionManager.request(params.url.absoluteString, method: method, parameters:params.done(), encoding: newEncoding, headers:headers).validate().responseData{response in
-																LogInfo("请求地址:\(params.url)")
-																LogInfo("请求参数:\(params.params)")
-																if progress{hiddenHUD()}
+            sharedSessionManager.request(params.url.absoluteString, method: method, parameters:params.done(), encoding: newEncoding, headers:headers).validate().responseData{response in
+                LogInfo("请求地址:\(params.url)")
+                LogInfo("请求参数:\(params.params)")
+                if progress{hiddenHUD()}
 
-																guard response.error == nil else {
-																				LogError("\(response.error!)")
+                guard response.error == nil else {
+                    LogError("\(response.error!)")
 
-																				var errorString = ""
-																				errorString.append("服务器故障:\(response.error!.localizedDescription)")
-																				if let code = response.error?.responseCode{
-																								errorString.append("\n【错误码:\(code)】")
-																				}
-																				if !ignoreAlert{
-																								alert(msg: errorString)
-																				}
-																				ob.onError(response.error!)
-																				return
-																}
-																if let data = response.data,let jsonString = String(data: data, encoding: String.Encoding.utf8){
-																				LogResponse(try! JSONSerialization.jsonObject(with: data))
-																				if let next = BaseResponse<T>.deserialize(from: jsonString){
-																								switch next.code{
-																												case 200:ob.onNext(next)
-																												case 506:
-																																ob.onError(NetRequestError.Other(next.code,next.msg))
-																												case 502: //登录被冻结
-																																CommonAlertView.show(isSinple: true, content: next.msg)
-																												case 501:
-																																CommonAlertView.show(content: "以下内容仅限会员查看,请先成为会员!", completeTitle: "成为会员") {
-																																				 let vc = VIPCenterVC()
-																																				vc.title = "会员中心"
-																																				JQ_currentNavigationController().pushViewController(vc)
+                    var errorString = ""
+                    errorString.append("服务器故障:\(response.error!.localizedDescription)")
+                    if let code = response.error?.responseCode{
+                        errorString.append("\n【错误码:\(code)】")
+                    }
+                    if !ignoreAlert{
+                        alert(msg: errorString)
+                    }
+                    ob.onError(response.error!)
+                    return
+                }
+                if let data = response.data,let jsonString = String(data: data, encoding: String.Encoding.utf8){
+                    LogResponse(try! JSONSerialization.jsonObject(with: data))
+                    if let next = BaseResponse<T>.deserialize(from: jsonString){
+                        switch next.code{
+                        case 200:ob.onNext(next)
+                        case 506:
+                            ob.onError(NetRequestError.Other(next.code,next.msg))
+                        case 502: //登录被冻结
+                            CommonAlertView.show(isSinple: true, content: next.msg)
+                        case 501:
+                            CommonAlertView.show(content: "以下内容仅限会员查看,请先成为会员!", completeTitle: "成为会员") {
+                                let vc = VIPCenterVC()
+                                vc.title = "会员中心"
+                                JQ_currentNavigationController().pushViewController(vc)
 
-																																} cancelClouse: {
+                            } cancelClouse: {
 
-																																}
-																												case 401,505,600:
-																																if !ignoreAlert{
-																																				alertError(msg: "登录失效,请重新登录");ob.onError(NetRequestError.InvaildSession)
-																																}
-																																sceneDelegate?.needLogin()
-																												default:
-																																//503是手机验证码错误
-																																if !ignoreAlert{
-																																				DispatchQueue.main.async {
-																																								alertError(msg: "\(next.msg)")
-																																				}
-																																}
-																																ob.onError(NetRequestError.Other(next.code,next.msg))
-																								}
-																				}
-																}
-																ob.onCompleted()
-												}
-												return Disposables.create{}
-								}
-				}
+                            }
+                        case 401,505,600:
+                            if !ignoreAlert{
+                                alertError(msg: "登录失效,请重新登录");ob.onError(NetRequestError.InvaildSession)
+                            }
+                            sceneDelegate?.needLogin()
+                        default:
+                            //503是手机验证码错误
+                            if !ignoreAlert{
+                                DispatchQueue.main.async {
+                                    alertError(msg: "\(next.msg)")
+                                }
+                            }
+                            ob.onError(NetRequestError.Other(next.code,next.msg))
+                        }
+                    }
+                }
+                ob.onCompleted()
+            }
+            return Disposables.create{}
+        }
+    }
 }
 extension Dictionary {
-				mutating func append(dict: Dictionary) {
-								dict.forEach { (key, value) in
-												self.updateValue(value, forKey: key)
-								}
-				}
+    mutating func append(dict: Dictionary) {
+        dict.forEach { (key, value) in
+            self.updateValue(value, forKey: key)
+        }
+    }
 }
 
 
 func createError(text:String,code:Int)->AFError{
-				return AFError.createURLRequestFailed(error: NSError(domain: text, code: code))
+    return AFError.createURLRequestFailed(error: NSError(domain: text, code: code))
 }

--
Gitblit v1.7.1