Commit 4802f89b authored by David黄金龙's avatar David黄金龙

工程代码整理

parent 3e734b05
...@@ -25,7 +25,6 @@ ...@@ -25,7 +25,6 @@
A5ACE92F2B4564F7002C94D2 /* YHMyViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8EA2B4564F7002C94D2 /* YHMyViewController.swift */; }; A5ACE92F2B4564F7002C94D2 /* YHMyViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8EA2B4564F7002C94D2 /* YHMyViewController.swift */; };
A5ACE9302B4564F7002C94D2 /* Algorithm.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8EC2B4564F7002C94D2 /* Algorithm.swift */; }; A5ACE9302B4564F7002C94D2 /* Algorithm.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8EC2B4564F7002C94D2 /* Algorithm.swift */; };
A5ACE9312B4564F7002C94D2 /* YHPersonalCenterCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8ED2B4564F7002C94D2 /* YHPersonalCenterCell.swift */; }; A5ACE9312B4564F7002C94D2 /* YHPersonalCenterCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8ED2B4564F7002C94D2 /* YHPersonalCenterCell.swift */; };
A5ACE9322B4564F7002C94D2 /* YHConfig.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8F02B4564F7002C94D2 /* YHConfig.swift */; };
A5ACE9332B4564F7002C94D2 /* NetBaseModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8F22B4564F7002C94D2 /* NetBaseModel.swift */; }; A5ACE9332B4564F7002C94D2 /* NetBaseModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8F22B4564F7002C94D2 /* NetBaseModel.swift */; };
A5ACE9342B4564F7002C94D2 /* YHAllApiName.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8F32B4564F7002C94D2 /* YHAllApiName.swift */; }; A5ACE9342B4564F7002C94D2 /* YHAllApiName.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8F32B4564F7002C94D2 /* YHAllApiName.swift */; };
A5ACE9352B4564F7002C94D2 /* YHNetRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8F42B4564F7002C94D2 /* YHNetRequest.swift */; }; A5ACE9352B4564F7002C94D2 /* YHNetRequest.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5ACE8F42B4564F7002C94D2 /* YHNetRequest.swift */; };
...@@ -110,7 +109,6 @@ ...@@ -110,7 +109,6 @@
A5ACE8EA2B4564F7002C94D2 /* YHMyViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHMyViewController.swift; sourceTree = "<group>"; }; A5ACE8EA2B4564F7002C94D2 /* YHMyViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHMyViewController.swift; sourceTree = "<group>"; };
A5ACE8EC2B4564F7002C94D2 /* Algorithm.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Algorithm.swift; sourceTree = "<group>"; }; A5ACE8EC2B4564F7002C94D2 /* Algorithm.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Algorithm.swift; sourceTree = "<group>"; };
A5ACE8ED2B4564F7002C94D2 /* YHPersonalCenterCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHPersonalCenterCell.swift; sourceTree = "<group>"; }; A5ACE8ED2B4564F7002C94D2 /* YHPersonalCenterCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHPersonalCenterCell.swift; sourceTree = "<group>"; };
A5ACE8F02B4564F7002C94D2 /* YHConfig.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHConfig.swift; sourceTree = "<group>"; };
A5ACE8F22B4564F7002C94D2 /* NetBaseModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NetBaseModel.swift; sourceTree = "<group>"; }; A5ACE8F22B4564F7002C94D2 /* NetBaseModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NetBaseModel.swift; sourceTree = "<group>"; };
A5ACE8F32B4564F7002C94D2 /* YHAllApiName.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHAllApiName.swift; sourceTree = "<group>"; }; A5ACE8F32B4564F7002C94D2 /* YHAllApiName.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHAllApiName.swift; sourceTree = "<group>"; };
A5ACE8F42B4564F7002C94D2 /* YHNetRequest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHNetRequest.swift; sourceTree = "<group>"; }; A5ACE8F42B4564F7002C94D2 /* YHNetRequest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHNetRequest.swift; sourceTree = "<group>"; };
...@@ -342,7 +340,6 @@ ...@@ -342,7 +340,6 @@
A5ACE8EE2B4564F7002C94D2 /* Tools */ = { A5ACE8EE2B4564F7002C94D2 /* Tools */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
A5ACE8EF2B4564F7002C94D2 /* Config */,
A5ACE8F12B4564F7002C94D2 /* NetWork */, A5ACE8F12B4564F7002C94D2 /* NetWork */,
A5ACE8F72B4564F7002C94D2 /* Extention */, A5ACE8F72B4564F7002C94D2 /* Extention */,
A5ACE9052B4564F7002C94D2 /* Helper */, A5ACE9052B4564F7002C94D2 /* Helper */,
...@@ -350,14 +347,6 @@ ...@@ -350,14 +347,6 @@
path = Tools; path = Tools;
sourceTree = "<group>"; sourceTree = "<group>";
}; };
A5ACE8EF2B4564F7002C94D2 /* Config */ = {
isa = PBXGroup;
children = (
A5ACE8F02B4564F7002C94D2 /* YHConfig.swift */,
);
path = Config;
sourceTree = "<group>";
};
A5ACE8F12B4564F7002C94D2 /* NetWork */ = { A5ACE8F12B4564F7002C94D2 /* NetWork */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
...@@ -504,6 +493,7 @@ ...@@ -504,6 +493,7 @@
A5ACE9592B457113002C94D2 /* Home(首页) */ = { A5ACE9592B457113002C94D2 /* Home(首页) */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
A5D6AB192B465DFF001C10A5 /* VM */,
A5ACE95C2B457133002C94D2 /* C */, A5ACE95C2B457133002C94D2 /* C */,
A5ACE95B2B45712D002C94D2 /* V */, A5ACE95B2B45712D002C94D2 /* V */,
A5ACE95A2B457128002C94D2 /* M */, A5ACE95A2B457128002C94D2 /* M */,
...@@ -533,6 +523,13 @@ ...@@ -533,6 +523,13 @@
path = C; path = C;
sourceTree = "<group>"; sourceTree = "<group>";
}; };
A5D6AB192B465DFF001C10A5 /* VM */ = {
isa = PBXGroup;
children = (
);
path = VM;
sourceTree = "<group>";
};
/* End PBXGroup section */ /* End PBXGroup section */
/* Begin PBXNativeTarget section */ /* Begin PBXNativeTarget section */
...@@ -729,7 +726,6 @@ ...@@ -729,7 +726,6 @@
A5ACE94B2B4564F7002C94D2 /* BsHUDRotatingImageView.swift in Sources */, A5ACE94B2B4564F7002C94D2 /* BsHUDRotatingImageView.swift in Sources */,
A5ACE94F2B4564F7002C94D2 /* YhOverlayView.swift in Sources */, A5ACE94F2B4564F7002C94D2 /* YhOverlayView.swift in Sources */,
A5ACE92E2B4564F7002C94D2 /* YHValidateCodeInputView.swift in Sources */, A5ACE92E2B4564F7002C94D2 /* YHValidateCodeInputView.swift in Sources */,
A5ACE9322B4564F7002C94D2 /* YHConfig.swift in Sources */,
A5ACE94E2B4564F7002C94D2 /* AlignedCollectionViewFlowLayout.swift in Sources */, A5ACE94E2B4564F7002C94D2 /* AlignedCollectionViewFlowLayout.swift in Sources */,
A5ACE93B2B4564F7002C94D2 /* UIFont+Extension.swift in Sources */, A5ACE93B2B4564F7002C94D2 /* UIFont+Extension.swift in Sources */,
A5ACE9282B4564F7002C94D2 /* YHSmsCodeView.swift in Sources */, A5ACE9282B4564F7002C94D2 /* YHSmsCodeView.swift in Sources */,
......
//
// YHConfig.swift
// galaxy
//
// Created by EDY on 2023/12/26.
//
import Foundation
import UIKit
let APP_NAME = Bundle.main.infoDictionary!["CFBundleName"] as! String
func YHLOG<T>(message:T,file:String = #file,funcName:String = #function,lineName:Int = #line){
//这个DEBUG 是一个debug时候的一个flag需要自己去xcode设置项设置。
#if DEBUG
let flieName = (file as NSString).lastPathComponent
print("\(APP_NAME)/\(flieName)/\(funcName)/\(lineName):\(message)")
#endif
}
///屏幕宽度
let KScreenWidth = UIScreen.main.bounds.size.width
///屏幕高度
let KScreenHeight = UIScreen.main.bounds.size.height
///导航栏高度
let k_Height_NavContentBar :CGFloat = 44.0
/** 状态栏高度 */
let k_Height_StatusBar :CGFloat = k_Height_statusBar()
/** 状态栏+导航栏的高度 */
let k_Height_NavigationtBarAndStatuBar: CGFloat = k_Height_NavContentBar + k_Height_StatusBar
/** 底部tabBar栏高度(不包含安全区,即:在 iphoneX 之前的手机) */
let k_TabBar_Height :CGFloat = 49.0
/** 底部导航栏高度(包括安全区),一般使用这个值 */
let k_Height_TabBar :CGFloat = k_Height_safeAreaInsetsBottom() + k_TabBar_Height
// MARK: - 尺寸信息: -
/* 状态栏高度 20 或 44 */
// 然而从iOS 14开始,全面屏iPhone的状态栏高度不一定是 44 或 20 了,比如下面就是这些设备在iOS 14.1上的状态栏高度。(还可能时47、48)
/// ①、顶部状态栏高度(包括安全区)
func k_Height_statusBar() -> CGFloat {
var statusBarHeight: CGFloat = 0;
if #available(iOS 13.0, *) {
let scene = UIApplication.shared.connectedScenes.first
guard let windowScene = scene as? UIWindowScene else {return 0};
guard let statusBarManager = windowScene.statusBarManager else {return 0}
statusBarHeight = statusBarManager.statusBarFrame.height
} else {
statusBarHeight = UIApplication.shared.statusBarFrame.height
}
return statusBarHeight;
}
/// ②、顶部安全区高度 k_Height_safeAreaInsetsTop
func k_Height_safeAreaInsetsTop() -> CGFloat {
if #available(iOS 13.0, *) {
let scene = UIApplication.shared.connectedScenes.first
guard let windowScene = scene as? UIWindowScene else {return 0} // guard:如果 expression 值计算为false,则执行代码块内的 guard 语句。(必须包含一个控制语句: return、 break、 continue 或 throw。)。as?:类型转换,(还有这两种:as、as!)
guard let window = windowScene.windows.first else {return 0};
return window.safeAreaInsets.top;
}
return 0
}
/// ③、底部安全区高度
func k_Height_safeAreaInsetsBottom() -> CGFloat {
if #available(iOS 13.0, *) {
let scene = UIApplication.shared.connectedScenes.first;
guard let windowScene = scene as? UIWindowScene else {return 0};
guard let window = windowScene.windows.first else {return 0};
return window.safeAreaInsets.bottom;
}
return 0;
}
///获取系统版本号
func IOSVersion() -> Double {
return (UIDevice.current.systemVersion as NSString).doubleValue
}
///组件化用类名创建控制器
func ClassFromString(className: String) -> UIViewController? {
let appName = Bundle.main.object(forInfoDictionaryKey: "CFBundleName")
let name = "\(appName!).\(className)"
if let tmpClass = NSClassFromString(name) as? UIViewController.Type {
return tmpClass.init()
} else {
return nil
}
}
/** 判断字符串是否为空 */
func kIsEmpty(string: String) -> Bool {
if string.isEmpty || string == "" {
return true
}else {
return false
}
}
/** 文字大小设置
* parameter name 字体名字 (为空时默认字体)
* parameter size 字体大小
*/
func kFont(name: String = "", size: CGFloat) -> UIFont {
if !kIsEmpty(string: name) {
return UIFont.init(name: name, size: size)!
}else {
return UIFont.systemFont(ofSize: size)
}
}
func kBoldFont(name: String = "", size: CGFloat) -> UIFont {
if !kIsEmpty(string: name) {
return UIFont.init(name: name, size: size)!
}else {
return UIFont.boldSystemFont(ofSize: size)
}
}
/// 版本号相同:
func systemVersionEqual(version:String) -> Bool {
return UIDevice.current.systemVersion == version
}
/// 系统版本高于等于该version 测试发现只能传入带一位小数点的版本号 不然会报错 具体原因待探究
func systemVersionGreaterThan(version:String) -> Bool {
return UIDevice.current.systemVersion.compare(version, options: .numeric, range: version.startIndex..<version.endIndex, locale: Locale(identifier:version)) != ComparisonResult.orderedAscending
}
//判断是否是 x、及x以上 系列
func isIphoneX() -> Bool {
return k_Height_safeAreaInsetsBottom() > 0.0 // 底部安全区 > 0 时,
}
/// 根据RGBA生成颜色(格式为:22,22,22,0.5)
var YHRGBAColor: (CGFloat, CGFloat, CGFloat, CGFloat) -> UIColor = {red, green, blue, alpha in
return UIColor(red: red / 255, green: green / 255, blue: blue / 255, alpha: alpha)
}
/// 根据RGB生成颜色(格式为:22,22,22)
var YHRGBColor: (CGFloat, CGFloat, CGFloat) -> UIColor = {red, green, blue in
return UIColor(red: red / 255, green: green / 255, blue: blue / 255, alpha: 1)
}
/// 根据色值生成颜色(无透明度)(格式为0xffffff)
var YHColorWithHex: (NSInteger) -> UIColor = {hex in
return UIColor(red: ((CGFloat)((hex & 0xFF0000) >> 16)) / 255.0, green: ((CGFloat)((hex & 0xFF00) >> 8)) / 255.0, blue: ((CGFloat)(hex & 0xFF)) / 255.0, alpha: 1)
}
...@@ -9,14 +9,14 @@ ...@@ -9,14 +9,14 @@
import UIKit import UIKit
extension String { extension String {
/// JSONString转换为字典 /// JSONString转换为字典
func toDictionary() -> Dictionary<String, Any>? { func toDictionary() -> Dictionary<String, Any> {
guard let jsonData:Data = data(using: .utf8) else { return nil } guard let jsonData:Data = data(using: .utf8) else { return [String:Any]() }
if let dict = try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers) { if let dict = try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers) {
if let temp = dict as? Dictionary<String, Any> { if let temp = dict as? Dictionary<String, Any> {
return temp return temp
} }
} }
return nil return [String:Any]()
} }
/// JSONString转换为数组 /// JSONString转换为数组
......
...@@ -12,6 +12,7 @@ extension UIImage { ...@@ -12,6 +12,7 @@ extension UIImage {
return UIImage(named: "default-head-image") return UIImage(named: "default-head-image")
} }
//颜色 转换成 图片
static func from(color: UIColor, static func from(color: UIColor,
rect: CGRect = CGRect(origin: CGPoint.zero ,size: CGSize(width: 4, height: 4))) -> UIImage { rect: CGRect = CGRect(origin: CGPoint.zero ,size: CGSize(width: 4, height: 4))) -> UIImage {
UIGraphicsBeginImageContext(rect.size) UIGraphicsBeginImageContext(rect.size)
...@@ -141,5 +142,4 @@ extension UIImage { ...@@ -141,5 +142,4 @@ extension UIImage {
UIGraphicsEndImageContext() UIGraphicsEndImageContext()
return newImage return newImage
} }
} }
...@@ -9,6 +9,146 @@ ...@@ -9,6 +9,146 @@
import UIKit import UIKit
// MARK: - 工程中的 常量定义 // MARK: - 工程中的 常量定义
let APP_NAME = Bundle.main.infoDictionary!["CFBundleName"] as! String
func YHLOG<T>(message:T,file:String = #file,funcName:String = #function,lineName:Int = #line){
//这个DEBUG 是一个debug时候的一个flag需要自己去xcode设置项设置。
#if DEBUG
let flieName = (file as NSString).lastPathComponent
print("\(APP_NAME)/\(flieName)/\(funcName)/\(lineName):\(message)")
#endif
}
///屏幕宽度
let KScreenWidth = UIScreen.main.bounds.size.width
///屏幕高度
let KScreenHeight = UIScreen.main.bounds.size.height
///导航栏高度
let k_Height_NavContentBar :CGFloat = 44.0
/** 状态栏高度 */
let k_Height_StatusBar :CGFloat = k_Height_statusBar()
/** 状态栏+导航栏的高度 */
let k_Height_NavigationtBarAndStatuBar: CGFloat = k_Height_NavContentBar + k_Height_StatusBar
/** 底部tabBar栏高度(不包含安全区,即:在 iphoneX 之前的手机) */
let k_TabBar_Height :CGFloat = 49.0
/** 底部导航栏高度(包括安全区),一般使用这个值 */
let k_Height_TabBar :CGFloat = k_Height_safeAreaInsetsBottom() + k_TabBar_Height
// MARK: - 尺寸信息: -
/* 状态栏高度 20 或 44 */
// 然而从iOS 14开始,全面屏iPhone的状态栏高度不一定是 44 或 20 了,比如下面就是这些设备在iOS 14.1上的状态栏高度。(还可能时47、48)
/// ①、顶部状态栏高度(包括安全区)
func k_Height_statusBar() -> CGFloat {
var statusBarHeight: CGFloat = 0;
if #available(iOS 13.0, *) {
let scene = UIApplication.shared.connectedScenes.first
guard let windowScene = scene as? UIWindowScene else {return 0};
guard let statusBarManager = windowScene.statusBarManager else {return 0}
statusBarHeight = statusBarManager.statusBarFrame.height
} else {
statusBarHeight = UIApplication.shared.statusBarFrame.height
}
return statusBarHeight;
}
/// ②、顶部安全区高度 k_Height_safeAreaInsetsTop
func k_Height_safeAreaInsetsTop() -> CGFloat {
if #available(iOS 13.0, *) {
let scene = UIApplication.shared.connectedScenes.first
guard let windowScene = scene as? UIWindowScene else {return 0} // guard:如果 expression 值计算为false,则执行代码块内的 guard 语句。(必须包含一个控制语句: return、 break、 continue 或 throw。)。as?:类型转换,(还有这两种:as、as!)
guard let window = windowScene.windows.first else {return 0};
return window.safeAreaInsets.top;
}
return 0
}
/// ③、底部安全区高度
func k_Height_safeAreaInsetsBottom() -> CGFloat {
if #available(iOS 13.0, *) {
let scene = UIApplication.shared.connectedScenes.first;
guard let windowScene = scene as? UIWindowScene else {return 0};
guard let window = windowScene.windows.first else {return 0};
return window.safeAreaInsets.bottom;
}
return 0;
}
///获取系统版本号
func IOSVersion() -> Double {
return (UIDevice.current.systemVersion as NSString).doubleValue
}
///组件化用类名创建控制器
func ClassFromString(className: String) -> UIViewController? {
let appName = Bundle.main.object(forInfoDictionaryKey: "CFBundleName")
let name = "\(appName!).\(className)"
if let tmpClass = NSClassFromString(name) as? UIViewController.Type {
return tmpClass.init()
} else {
return nil
}
}
/** 判断字符串是否为空 */
func kIsEmpty(string: String) -> Bool {
if string.isEmpty || string == "" {
return true
}else {
return false
}
}
/** 文字大小设置
* parameter name 字体名字 (为空时默认字体)
* parameter size 字体大小
*/
func kFont(name: String = "", size: CGFloat) -> UIFont {
if !kIsEmpty(string: name) {
return UIFont.init(name: name, size: size)!
}else {
return UIFont.systemFont(ofSize: size)
}
}
func kBoldFont(name: String = "", size: CGFloat) -> UIFont {
if !kIsEmpty(string: name) {
return UIFont.init(name: name, size: size)!
}else {
return UIFont.boldSystemFont(ofSize: size)
}
}
/// 版本号相同:
func systemVersionEqual(version:String) -> Bool {
return UIDevice.current.systemVersion == version
}
/// 系统版本高于等于该version 测试发现只能传入带一位小数点的版本号 不然会报错 具体原因待探究
func systemVersionGreaterThan(version:String) -> Bool {
return UIDevice.current.systemVersion.compare(version, options: .numeric, range: version.startIndex..<version.endIndex, locale: Locale(identifier:version)) != ComparisonResult.orderedAscending
}
//判断是否是 x、及x以上 系列
func isIphoneX() -> Bool {
return k_Height_safeAreaInsetsBottom() > 0.0 // 底部安全区 > 0 时,
}
/// 根据RGBA生成颜色(格式为:22,22,22,0.5)
var YHRGBAColor: (CGFloat, CGFloat, CGFloat, CGFloat) -> UIColor = {red, green, blue, alpha in
return UIColor(red: red / 255, green: green / 255, blue: blue / 255, alpha: alpha)
}
/// 根据RGB生成颜色(格式为:22,22,22)
var YHRGBColor: (CGFloat, CGFloat, CGFloat) -> UIColor = {red, green, blue in
return UIColor(red: red / 255, green: green / 255, blue: blue / 255, alpha: 1)
}
/// 根据色值生成颜色(无透明度)(格式为0xffffff)
var YHColorWithHex: (NSInteger) -> UIColor = {hex in
return UIColor(red: ((CGFloat)((hex & 0xFF0000) >> 16)) / 255.0, green: ((CGFloat)((hex & 0xFF00) >> 8)) / 255.0, blue: ((CGFloat)(hex & 0xFF)) / 255.0, alpha: 1)
}
class YhConstant { class YhConstant {
// MARK: - URL 相关 // MARK: - URL 相关
struct URL { struct URL {
......
...@@ -12,7 +12,7 @@ class YHNetRequest: NSObject { ...@@ -12,7 +12,7 @@ class YHNetRequest: NSObject {
///成功回调 ///成功回调
typealias SuccessHandlerType = (([String:Any],Int) ->Void) typealias SuccessHandlerType = (([String:Any],Int) ->Void)
///失败回调 ///失败回调
typealias FailureHandlerType = ((YHNetError) -> Void) typealias FailureHandlerType = ((YHNetErrorModel) -> Void)
///请求类型 ///请求类型
private var requestType: HTTPMethod = .post private var requestType: HTTPMethod = .post
///  URL ///  URL
...@@ -87,7 +87,7 @@ class YHNetRequest: NSObject { ...@@ -87,7 +87,7 @@ class YHNetRequest: NSObject {
let errorResponseMsg = string.error?.localizedDescription ?? "" let errorResponseMsg = string.error?.localizedDescription ?? ""
_ = string.error?._code _ = string.error?._code
let resultValue = string.value ?? "" let resultValue = string.value ?? ""
let serverDict = self.converStringToMap(fromStr: resultValue) let serverDict = resultValue.toDictionary()
switch responseResult { switch responseResult {
case .success: case .success:
// resultFlag = true // resultFlag = true
...@@ -112,12 +112,16 @@ class YHNetRequest: NSObject { ...@@ -112,12 +112,16 @@ class YHNetRequest: NSObject {
} }
break break
} }
if statusCode == 200 { if statusCode == 200 {
if let suclock = self.success { if let suclock = self.success {
suclock(serverDict,statusCode) suclock(serverDict,statusCode)
} }
} else { } else {
let errorModel = YHNetError.init() let errorModel = YHNetErrorModel.init()
errorModel.responseErrorType = .failType errorModel.responseErrorType = .failType
if let errorBlock = self.failure { if let errorBlock = self.failure {
errorModel.responseStatusCode = statusCode errorModel.responseStatusCode = statusCode
...@@ -127,16 +131,6 @@ class YHNetRequest: NSObject { ...@@ -127,16 +131,6 @@ class YHNetRequest: NSObject {
} }
} }
} }
func converStringToMap(fromStr: String = "") -> [String:Any] {
let serverData = fromStr.data(using:String.Encoding.utf8)
do{
let serverDict = try JSONSerialization.jsonObject(with:serverData!,options:JSONSerialization.ReadingOptions.mutableContainers) as? [String:Any]
return serverDict!
} catch {
return [String:Any]()
}
}
} }
extension YHNetRequest { extension YHNetRequest {
...@@ -149,7 +143,7 @@ extension YHNetRequest { ...@@ -149,7 +143,7 @@ extension YHNetRequest {
} }
} }
class YHNetError: NSObject { class YHNetErrorModel {
var responseStatusCode: Int = 0 var responseStatusCode: Int = 0
var responseStatusCodeStr: String = "" var responseStatusCodeStr: String = ""
var errResponseMsg: String = "" var errResponseMsg: String = ""
...@@ -166,6 +160,6 @@ enum NetResponseErrorType: Int { ...@@ -166,6 +160,6 @@ enum NetResponseErrorType: Int {
// //
//   print(succeseResponse,responseCode) //   print(succeseResponse,responseCode)
// //
//   } failBlock: { MiruairNetError in //   } failBlock: { errorModel in
// //
//} //}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment