16 次代码提交 6696691582 ... f5a7821b47

作者 SHA1 备注 提交日期
  Vincent Hu f5a7821b47 优化简况页面 2 周之前
  Vincent Hu 6696691582 优化简况页面 2 周之前
  culturetown c51d227987 异常账号不能买期权。产品详情处买入卖出增加账号异常判断 2 周之前
  culturetown b5edfee3af Merge branch '推广版' of https://git.jdnx.me/tomy/JD_iOS into 推广版 2 周之前
  culturetown 950edaf5f6 获取工单接口类型值传校正。 2 周之前
  lintong 0cae4b718c Merge branch '推广版' of http://156.254.127.134:3000/tomy/JD_iOS into 推广版 2 周之前
  lintong 5ad8518069 修复A股资金转出显示USD的bug 2 周之前
  culturetown e2830b014d Merge branch '推广版' of https://git.jdnx.me/tomy/JD_iOS into 推广版 2 周之前
  culturetown 23be2496e1 身份证类型选择优化 2 周之前
  lintong 840d75fd91 Merge branch '推广版' of http://156.254.127.134:3000/tomy/JD_iOS into 推广版 2 周之前
  lintong 7e0ac5d927 新交易画面更新买卖状态 2 周之前
  culturetown ae350aca15 Merge branch '推广版' of https://git.jdnx.me/tomy/JD_iOS into 推广版 2 周之前
  culturetown e4fed30d0d 账户划转-申请兑换限制连续多次点击申请。资金不足弹窗提示立即存款点击闪退。 2 周之前
  lintong 2861f1b040 买卖画面进入时选中状态修复 2 周之前
  culturetown 0ff334a422 Merge branch '推广版' of https://git.jdnx.me/tomy/JD_iOS into 推广版 2 周之前
  culturetown 20f8a9f029 号码不存在优化。 2 周之前
共有 27 个文件被更改,包括 291 次插入60 次删除
  1. 二进制
      .DS_Store
  2. 6 2
      Koala/Koala.xcodeproj/project.pbxproj
  3. 3 3
      Koala/Koala.xcworkspace/xcuserdata/mac.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
  4. 2 2
      Koala/Koala/FX/Macro/PublicMethod.swift
  5. 5 1
      Koala/Koala/FX/NetClass/Network.swift
  6. 5 5
      Koala/Koala/Modular/Deal/V/Deal/DealSimCell.swift
  7. 6 6
      Koala/Koala/Modular/Deal/V/Deal/DealSimplenessCell.swift
  8. 1 0
      Koala/Koala/Modular/Deal/V/Deal/DealTableSectionView.swift
  9. 11 0
      Koala/Koala/Modular/Deal/V/Deal/DealView.swift
  10. 1 1
      Koala/Koala/Modular/Deal/VC/DealViewController.swift
  11. 1 1
      Koala/Koala/Modular/Deal/VM/DealViewModel.swift
  12. 1 1
      Koala/Koala/Modular/JDAssets/V/JDFuncLimitPopView.swift
  13. 27 9
      Koala/Koala/Modular/JDAssets/V/JDIdentityProofInputCell.swift
  14. 10 1
      Koala/Koala/Modular/JDAssets/VC/JDAFiatExchangeViewController.swift
  15. 7 0
      Koala/Koala/Modular/Market/V/MarketDetailView/MDOptionsView/MDOptionsOrderCell.swift
  16. 8 0
      Koala/Koala/Modular/Market/V/MarketDetailView/MDOptionsView/MDOptionsOrderNoQuoteCell.swift
  17. 2 1
      Koala/Koala/Modular/Market/VC/MarketDetailViewController.swift
  18. 17 1
      Koala/Koala/Modular/MarketDetail/C/MarketAuoteViewController.swift
  19. 25 8
      Koala/Koala/Modular/Mine/V/RealName/JDRealNameCell.swift
  20. 79 0
      Koala/Koala/Modular/Mine/V/RealName/JDSelectIdentityTypePopView.swift
  21. 14 6
      Koala/Koala/Modular/PopUpView/LackOfFundsPopUpView.swift
  22. 10 2
      Koala/Koala/Other/Language_CH.plist
  23. 10 2
      Koala/Koala/Other/Language_CHF.plist
  24. 10 2
      Koala/Koala/Other/Language_EN.plist
  25. 10 2
      Koala/Koala/Other/Language_RU.plist
  26. 10 2
      Koala/Koala/Other/Language_TH.plist
  27. 10 2
      Koala/Koala/Other/Language_VT.plist

二进制
.DS_Store


+ 6 - 2
Koala/Koala.xcodeproj/project.pbxproj

@@ -116,6 +116,7 @@
 		0452E22F2B146C5C00F3C2E1 /* MDOptionsPrincipalNoQuoteCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0452E22E2B146C5C00F3C2E1 /* MDOptionsPrincipalNoQuoteCell.swift */; };
 		0452E2312B14700700F3C2E1 /* MDOptionsContactsNoQuoteCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0452E2302B14700700F3C2E1 /* MDOptionsContactsNoQuoteCell.swift */; };
 		0452E2332B147C2B00F3C2E1 /* MDOptionsOrderNoQuoteCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0452E2322B147C2B00F3C2E1 /* MDOptionsOrderNoQuoteCell.swift */; };
+		045BE0ED2C86D2DC00F92EF4 /* JDSelectIdentityTypePopView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 045BE0EC2C86D2DC00F92EF4 /* JDSelectIdentityTypePopView.swift */; };
 		045E7DD32B57EEC6008987BA /* JDMessageCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 045E7DD22B57EEC6008987BA /* JDMessageCell.swift */; };
 		045E7DD82B592C95008987BA /* JDLoginViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 045E7DD72B592C95008987BA /* JDLoginViewController.swift */; };
 		045E7DDA2B5A674D008987BA /* JDLoginNewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 045E7DD92B5A674D008987BA /* JDLoginNewCell.swift */; };
@@ -1302,6 +1303,7 @@
 		0452E22E2B146C5C00F3C2E1 /* MDOptionsPrincipalNoQuoteCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MDOptionsPrincipalNoQuoteCell.swift; sourceTree = "<group>"; };
 		0452E2302B14700700F3C2E1 /* MDOptionsContactsNoQuoteCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MDOptionsContactsNoQuoteCell.swift; sourceTree = "<group>"; };
 		0452E2322B147C2B00F3C2E1 /* MDOptionsOrderNoQuoteCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MDOptionsOrderNoQuoteCell.swift; sourceTree = "<group>"; };
+		045BE0EC2C86D2DC00F92EF4 /* JDSelectIdentityTypePopView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JDSelectIdentityTypePopView.swift; sourceTree = "<group>"; };
 		045E7DD22B57EEC6008987BA /* JDMessageCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JDMessageCell.swift; sourceTree = "<group>"; };
 		045E7DD72B592C95008987BA /* JDLoginViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JDLoginViewController.swift; sourceTree = "<group>"; };
 		045E7DD92B5A674D008987BA /* JDLoginNewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JDLoginNewCell.swift; sourceTree = "<group>"; };
@@ -4049,6 +4051,7 @@
 				04BBF5DF2C479B32003137FE /* JDRealNameFileNewCell.swift */,
 				6C031B1D2962C4DA0043BECF /* RealNameFileCell.swift */,
 				6C031B1E2962C4DA0043BECF /* RealNameFileCell.xib */,
+				045BE0EC2C86D2DC00F92EF4 /* JDSelectIdentityTypePopView.swift */,
 			);
 			path = RealName;
 			sourceTree = "<group>";
@@ -5928,6 +5931,7 @@
 				04BAACF52ADE944A00454882 /* JDCashRecordModel.swift in Sources */,
 				65609AE42B9CA32D00085687 /* HorizontalLabelsView.swift in Sources */,
 				65011A2E2B3FF1250046FB03 /* DealTableSectionView.swift in Sources */,
+				045BE0ED2C86D2DC00F92EF4 /* JDSelectIdentityTypePopView.swift in Sources */,
 				04BE17DB2B0C897C006B8FB2 /* SPIndicatorView.swift in Sources */,
 				049416712B887C9D00903BF5 /* JDDepositNewRecordCell.swift in Sources */,
 				6CDC5B0229CF140500E60730 /* AHistoryDetailsViewController.swift in Sources */,
@@ -6681,7 +6685,7 @@
 				PRODUCT_BUNDLE_IDENTIFIER = jd.trader.inc;
 				PRODUCT_NAME = "$(TARGET_NAME)";
 				PROVISIONING_PROFILE_SPECIFIER = "";
-				"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = tomyCreated;
+				"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = TomyPushCreate;
 				SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
 				SUPPORTS_MACCATALYST = NO;
 				SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;
@@ -6724,7 +6728,7 @@
 				PRODUCT_BUNDLE_IDENTIFIER = jd.trader.inc;
 				PRODUCT_NAME = "$(TARGET_NAME)";
 				PROVISIONING_PROFILE_SPECIFIER = "";
-				"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = tomyCreated;
+				"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = TomyPushCreate;
 				SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
 				SUPPORTS_MACCATALYST = NO;
 				SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = YES;

+ 3 - 3
Koala/Koala.xcworkspace/xcuserdata/mac.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist

@@ -526,8 +526,8 @@
             filePath = "Koala/Modular/Mine/V/RealName/JDRealNameCell.swift"
             startingColumnNumber = "9223372036854775807"
             endingColumnNumber = "9223372036854775807"
-            startingLineNumber = "602"
-            endingLineNumber = "602"
+            startingLineNumber = "619"
+            endingLineNumber = "619"
             landmarkName = "clickSubmitBtnAction()"
             landmarkType = "7">
          </BreakpointContent>
@@ -1360,7 +1360,7 @@
          BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
          <BreakpointContent
             uuid = "FDF9CEC9-88E3-4632-AE60-4B7465FB6961"
-            shouldBeEnabled = "Yes"
+            shouldBeEnabled = "No"
             ignoreCount = "0"
             continueAfterRunningActions = "No"
             filePath = "Koala/Modular/Login/VM/ForgotPasswordViewModel.swift"

+ 2 - 2
Koala/Koala/FX/Macro/PublicMethod.swift

@@ -1265,11 +1265,11 @@ func currencyForMarket(market: String) -> String {
 }
 
 func currencyForMTCode(mtCode: String, market: String) -> String {
-    if mtCode == "SH" {
+    if mtCode == "CN" {
         return "CNY"
     } else if mtCode == "US" {
         return "USD"
-    } else if mtCode == "SZ" {
+    } else if mtCode == "CN" {
         return "CNY"
     } else if mtCode == "HK" {
         return "HKD"

+ 5 - 1
Koala/Koala/FX/NetClass/Network.swift

@@ -911,7 +911,11 @@ extension NetWork {
         case 1001:
             return switchLanguage("该帐号24小时内修改过重要信息,暂时无法进行该操作")
         case 1002:
-            return switchLanguage("账号、密码有误")
+            return switchLanguage("密码有误")
+        case 1011:
+            return switchLanguage("手机号码不存在")
+        case 1012:
+            return switchLanguage("邮箱号码不存在")
         case 1003:
             return switchLanguage("密码不符合规则")
         case 1004:

+ 5 - 5
Koala/Koala/Modular/Deal/V/Deal/DealSimCell.swift

@@ -220,7 +220,7 @@ class DealSimCell: BaseTableViewCell {
     func updateCellWith(vm: DealViewModel) {
         self.VM = vm
         
-        self.updateBuySell(isSell: vm.isSell)
+        self.updateBuySell(isSell: vm.isSell.value)
         
         if vm.isMarket {
             self.typeLab.text = switchLanguage("市价单")
@@ -276,12 +276,12 @@ class DealSimCell: BaseTableViewCell {
 
 extension DealSimCell {
     @objc func clickBuyBtnAction() {
-        self.VM?.isSell = false
+        self.VM?.isSell.value = false
         self.updateBuySell(isSell: false)
     }
     
     @objc func clickSellBtnAction() {
-        self.VM?.isSell = true
+        self.VM?.isSell.value = true
         self.updateBuySell(isSell: true)
     }
     
@@ -407,7 +407,7 @@ extension DealSimCell {
         }
         /// 是否是市单价
         if self.VM?.isMarket == true {
-            if self.VM?.isSell == true {
+            if self.VM?.isSell.value == true {
                 self.VM?.selectOrderType = 1
             } else {
                 self.VM?.selectOrderType = 0
@@ -433,7 +433,7 @@ extension DealSimCell {
 //            let double_price = Double(self.VM.price) ?? 0.0
             let double_price = Double(self.VM?.enterPrice ?? "0.00") ?? 0.0
             /// 是否是卖
-            if self.VM?.isSell == true {
+            if self.VM?.isSell.value == true {
                 // 卖出
                 if double_price > market_price {
                     // 3-高价做空(挂单卖出,挂单价比当前价格高)

+ 6 - 6
Koala/Koala/Modular/Deal/V/Deal/DealSimplenessCell.swift

@@ -442,7 +442,7 @@ extension DealSimplenessCell {
         
         let pop = KMenuPopupMenuView()
         var list = [(UIImage, String, Bool)]()
-        if self.VM?.isSell == true {
+        if self.VM?.isSell.value == true {
             list = [
                 (UIImage(), switchLanguage("高价挂单卖出"), true),
                 (UIImage(), switchLanguage("低价挂单卖出"), true),
@@ -457,7 +457,7 @@ extension DealSimplenessCell {
         pop.showRelyPopupView(view: self.limitView, source: list, sStr: self.limitTypeLab.text ?? "") { [weak self] index in
             if index >= 0 {
                 self?.limitTypeLab.text = list[index].1
-                if self!.VM?.isSell == true {
+                if self!.VM?.isSell.value == true {
                     if index == 0 {
                         self?.VM?.selectOrderType = 3
                     } else {
@@ -504,14 +504,14 @@ extension DealSimplenessCell {
     
     @objc func clickSellBtnAction() {
         self.endEditing(true)
-        self.VM?.isSell = true
+        self.VM?.isSell.value = true
         self.updateLayer()
         self.clickRefreshBlock?()
     }
     
     @objc func clickBuyBtnAction() {
         self.endEditing(true)
-        self.VM?.isSell = false
+        self.VM?.isSell.value = false
         self.updateLayer()
         self.clickRefreshBlock?()
     }
@@ -528,7 +528,7 @@ extension DealSimplenessCell {
         }
        
         if self.VM?.isMarket == true {
-            if self.VM?.isSell == true {
+            if self.VM?.isSell.value == true {
                 self.VM?.selectOrderType = 1
             } else {
                 self.VM?.selectOrderType = 0
@@ -579,7 +579,7 @@ extension DealSimplenessCell {
             self.cashBgView.isHidden = true
         }
         
-        if VM.isSell {
+        if VM.isSell.value {
             self.sellBtn.backgroundColor = exchangeColorAndImage(increase: -1).0
             self.sellTitleLab.textColor = WhiteTextColor
             self.sellLab.textColor = WhiteTextColor

+ 1 - 0
Koala/Koala/Modular/Deal/V/Deal/DealTableSectionView.swift

@@ -486,6 +486,7 @@ extension DealTableSectionView {
                     }
                     else {
                         liteInfoView.vm = vm
+                        self.dealSimCell.updateBuySell(isSell: vm.isSell.value)
                     }
                 }
             }

+ 11 - 0
Koala/Koala/Modular/Deal/V/Deal/DealView.swift

@@ -12,6 +12,7 @@ import SkeletonView
 
 class DealView: BaseView {
     weak var VM: DealViewModel?
+    
     lazy var tipsView: ClosedMarketTipsView = {
         let tipsView = ClosedMarketTipsView.showTips()
         return tipsView
@@ -1039,6 +1040,16 @@ class DealView: BaseView {
                 }
             }
         }
+        
+        
+        self.VM?.isSell.producer
+            .skipRepeats()
+            .delay(1.0, on: QueueScheduler.main)
+            .take(during: lifetime).startWithValues({[weak self] newflag in
+                self?.tabHeaderView.updateSimData()
+                self?.tabHeaderView.liteInfoView.submitView.direction = newflag == true ? .ASK : .BID
+                self?.tabHeaderView.liteInfoView.directView.directionButton.update(direction: newflag == true ? .ASK : .BID)
+            })
     }
     
     func clearData() {

+ 1 - 1
Koala/Koala/Modular/Deal/VC/DealViewController.swift

@@ -77,7 +77,7 @@ class DealViewController: BaseViewController {
         }
         
         if DealBuySell > -1 {
-            self.viewModel.isSell = DealBuySell == 1
+            self.viewModel.isSell.value = DealBuySell == 1
             DealBuySell = -1
         }
         

+ 1 - 1
Koala/Koala/Modular/Deal/VM/DealViewModel.swift

@@ -177,7 +177,7 @@ class DealViewModel: BaseViewModel {
     
     var isUpdateKline = true // 是否
     var isSimpleness = true // 是否
-    var isSell = false // 是否
+    let isSell =  MutableProperty<Bool>(false) // 是否
     var isMarket = true // 是否
     var isShowKline = false // 是否
     var isDayLimit = true // 是否

+ 1 - 1
Koala/Koala/Modular/JDAssets/V/JDFuncLimitPopView.swift

@@ -168,7 +168,7 @@ class JDFuncLimitPopView: BaseAlertView {
     
     func requestWorkOrderList() {
         let param: [String: Any] = [
-            "type" : 2,
+            "type" : 100,
             "pageNum": "1",
             "pageSize": "10",
             "status": ""

+ 27 - 9
Koala/Koala/Modular/JDAssets/V/JDIdentityProofInputCell.swift

@@ -157,6 +157,8 @@ class JDIdentityProofInputCell: BaseTableViewCell {
     required init?(coder aDecoder: NSCoder) {
         fatalError("init(coder:) has not been implemented")
     }
+    
+    var selectTypeIndex: Int = -1
 }
 
 
@@ -251,24 +253,40 @@ extension JDIdentityProofInputCell {
     func showSelectTypePopView() {
         self.typeInputView.bgView.removeErrorView()
         self.typeInputView.downArrowsOpenAction()
-        let pop = KMenuPopupMenuView()
+//        let pop = KMenuPopupMenuView()
+        
+        let pop = JDSelectIdentityTypePopView(containerViewHeight: 220)
+        
         var list = [(UIImage, String, Bool)]()
         list = [
             (UIImage(), self.funcLimitVM!.getTypeStr(index: 0).1, true),
             (UIImage(), self.funcLimitVM!.getTypeStr(index: 1).1, true),
             (UIImage(), self.funcLimitVM!.getTypeStr(index: 2).1, true)
         ]
-        
-        pop.showRelyPopupView(view: self.typeInputView.textField, source: list) { [weak self] index in
+  
+        pop.showPopupView(source: list, index: selectTypeIndex) { index, title in
             if index >= 0 {
-                self?.funcLimitVM?.type = (self?.funcLimitVM!.getTypeStr(index: index).0)!
-                self?.funcLimitVM?.typeStr = (self?.funcLimitVM!.getTypeStr(index: index).1)!
-
-                self?.typeInputView.textField.text = self?.funcLimitVM?.typeStr
+                self.funcLimitVM?.type = (self.funcLimitVM!.getTypeStr(index: index).0)
+                self.funcLimitVM?.typeStr = (self.funcLimitVM!.getTypeStr(index: index).1)
+                
+                self.typeInputView.textField.text = self.funcLimitVM?.typeStr
+                
+                self.selectTypeIndex = index
             }
-           
-            self?.typeInputView.downArrowsCloseAction()
+            
+            self.typeInputView.downArrowsCloseAction()
         }
+        
+//        pop.showRelyPopupView(view: self.typeInputView.textField, source: list) { [weak self] index in
+//            if index >= 0 {
+//                self?.funcLimitVM?.type = (self?.funcLimitVM!.getTypeStr(index: index).0)!
+//                self?.funcLimitVM?.typeStr = (self?.funcLimitVM!.getTypeStr(index: index).1)!
+//
+//                self?.typeInputView.textField.text = self?.funcLimitVM?.typeStr
+//            }
+//           
+//            self?.typeInputView.downArrowsCloseAction()
+//        }
     }
     
 }

+ 10 - 1
Koala/Koala/Modular/JDAssets/VC/JDAFiatExchangeViewController.swift

@@ -293,6 +293,8 @@ extension JDAFiatExchangeViewController {
             
             print(param)
             
+            self.submitBtn.isEnabled = false
+            
             NetWork.NetWorkInstance.requestData(requestType: .Post, URLString: netForCashToTransaction, parameters: param as [String: Any], success: { _, _ in
                 ProgressHUD.showSuccess(status: switchLanguage("操作成功"))
                 // 划转成功通知
@@ -301,8 +303,12 @@ extension JDAFiatExchangeViewController {
                 DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
                     self.navigationController?.popViewController(animated: true)
                 }
+                
+                
             }) { _, result in
                 ProgressHUD.showError(status: result as! String)
+                
+                self.submitBtn.isEnabled = true
             }
         } else {
             let fromAccountModel = self.accountList[self.selectFromAccountIndex]
@@ -313,7 +319,7 @@ extension JDAFiatExchangeViewController {
                 "account": fromAccountModel.account
                 // "input_currency" :getCashUnitByAccount(model: fromAccountModel)
             ]
-
+            self.submitBtn.isEnabled = false
             NetWork.NetWorkInstance.requestData(requestType: .Post, URLString: netForTransactionToCash, parameters: param as [String: Any], success: { _, _ in
                 ProgressHUD.showSuccess(status: switchLanguage("操作成功"))
                 
@@ -325,6 +331,9 @@ extension JDAFiatExchangeViewController {
                 }
             }) { _, result in
                 ProgressHUD.showError(status: result as! String)
+                
+                self.submitBtn.isEnabled = true
+                
             }
         }
     }

+ 7 - 0
Koala/Koala/Modular/Market/V/MarketDetailView/MDOptionsView/MDOptionsOrderCell.swift

@@ -455,6 +455,13 @@ extension MDOptionsOrderCell {
         if OperationalUserInfoData.getLogin() {
 //            self.VM.netInsertOptionOrder()
             
+            if OperationalUserInfoData.getUserInfoDataModel().group == "9999" {
+                let pop = JDFuncLimitPopView()
+                pop.showPopupView(title: "", detail: "") { _ in }
+                        
+                return
+            }
+            
             guard VM.selectPeriodModel.timer.length > 0 else {
                 ProgressHUD.showInfo(status: switchLanguage("请选择时间周期"))
                 return

+ 8 - 0
Koala/Koala/Modular/Market/V/MarketDetailView/MDOptionsView/MDOptionsOrderNoQuoteCell.swift

@@ -53,6 +53,14 @@ class MDOptionsOrderNoQuoteCell: BaseTableViewCell {
     
     @objc func clickOrderBtnAction() {
         if OperationalUserInfoData.getLogin() {
+            
+            if OperationalUserInfoData.getUserInfoDataModel().group == "9999" {
+                let pop = JDFuncLimitPopView()
+                pop.showPopupView(title: "", detail: "") { _ in }
+                        
+                return
+            }
+            
             VM.netInsertOptionInquiry()
             
         } else {

+ 2 - 1
Koala/Koala/Modular/Market/VC/MarketDetailViewController.swift

@@ -102,7 +102,8 @@ class MarketDetailViewController: BaseViewController {
                 dealVC.viewModel.updateSymbols(symbol: symbolModel)
                 dealVC.viewModel.curSymbol = symbolModel.symbol
                 dealVC.viewModel.selectSymbolModel = symbolModel
-                dealVC.viewModel.isSell = true
+                dealVC.viewModel.isSell.value = true
+                dealVC.viewModel.direction.value = .ASK
                 dealVC.viewModel.server = symbolModel.market
                 OperationalSymbolSocketManager.shared().skipSymbolDisconnect = true
                 OperationalSymbolSocketManager.shared().skipTradeDisconnect = true

+ 17 - 1
Koala/Koala/Modular/MarketDetail/C/MarketAuoteViewController.swift

@@ -23,6 +23,13 @@ class MarketAuoteViewController: BaseViewController {
                 return
             }
             
+            if OperationalUserInfoData.getUserInfoDataModel().group == "9999" {
+                let pop = JDFuncLimitPopView()
+                pop.showPopupView(title: "", detail: "") { _ in }
+                        
+                return
+            }
+            
             // 检查是否需要签署交易协议
             if(OperationalUserInfoData.needTradeProtocolSignStatus()){
                 let user = OperationalUserInfoData.getUserInfoDataModel()
@@ -61,6 +68,7 @@ class MarketAuoteViewController: BaseViewController {
         }
         view.clickSellBlock = { [weak self] in
             guard let self = self else { return }
+            
             if self.symbolModel.enable == "0" {
                 self.analyzePutOption?()
                 return
@@ -70,6 +78,13 @@ class MarketAuoteViewController: BaseViewController {
                 return
             }
             
+            if OperationalUserInfoData.getUserInfoDataModel().group == "9999" {
+                let pop = JDFuncLimitPopView()
+                pop.showPopupView(title: "", detail: "") { _ in }
+                        
+                return
+            }
+            
             // 检查是否需要签署交易协议
             if(OperationalUserInfoData.needTradeProtocolSignStatus()){
                 let user = OperationalUserInfoData.getUserInfoDataModel()
@@ -103,9 +118,10 @@ class MarketAuoteViewController: BaseViewController {
             dealVC.viewModel.updateSymbols(symbol: symbolModel)
             dealVC.viewModel.curSymbol = symbolModel.symbol
             dealVC.viewModel.selectSymbolModel = symbolModel
-            dealVC.viewModel.isSell = true
             dealVC.viewModel.server = symbolModel.market
             self.navigationController?.pushViewController(dealVC, animated: true)
+            dealVC.viewModel.isSell.value = true
+            dealVC.viewModel.direction.value = .ASK
         }
         return view
     }()

+ 25 - 8
Koala/Koala/Modular/Mine/V/RealName/JDRealNameCell.swift

@@ -413,6 +413,8 @@ class JDRealNameCell: BaseTableViewCell {
     required init?(coder aDecoder: NSCoder) {
         fatalError("init(coder:) has not been implemented")
     }
+    
+    var selectTypeIndex: Int = -1
 }
 
 extension JDRealNameCell: UITextFieldDelegate {
@@ -514,7 +516,8 @@ extension JDRealNameCell {
     func showSelectTypePopView() {
         self.typeInputView.bgView.removeErrorView()
         self.typeInputView.downArrowsOpenAction()
-        let pop = KMenuPopupMenuView()
+//        let pop = KMenuPopupMenuView()
+        let pop = JDSelectIdentityTypePopView(containerViewHeight: 220)
         var list = [(UIImage, String, Bool)]()
         list = [
             (UIImage(), self.realNameVM!.getTypeStr(index: 0).1, true),
@@ -522,16 +525,30 @@ extension JDRealNameCell {
             (UIImage(), self.realNameVM!.getTypeStr(index: 2).1, true)
         ]
         
-        pop.showRelyPopupView(view: self.typeInputView.textField, source: list) { [weak self] index in
+        
+        pop.showPopupView(source: list, index: selectTypeIndex) { index, title in
             if index >= 0 {
-                self?.realNameVM?.type = (self?.realNameVM!.getTypeStr(index: index).0)!
-                self?.realNameVM?.typeStr = (self?.realNameVM!.getTypeStr(index: index).1)!
-
-                self?.typeInputView.textField.text = self?.realNameVM?.typeStr
+                self.realNameVM?.type = (self.realNameVM!.getTypeStr(index: index).0)
+                self.realNameVM?.typeStr = (self.realNameVM!.getTypeStr(index: index).1)
+            
+                self.typeInputView.textField.text = self.realNameVM?.typeStr
+                
+                self.selectTypeIndex = index
             }
-           
-            self?.typeInputView.downArrowsCloseAction()
+            
+            self.typeInputView.downArrowsCloseAction()
         }
+        
+//        pop.showRelyPopupView(view: self.typeInputView.textField, source: list) { [weak self] index in
+//            if index >= 0 {
+//                self?.realNameVM?.type = (self?.realNameVM!.getTypeStr(index: index).0)!
+//                self?.realNameVM?.typeStr = (self?.realNameVM!.getTypeStr(index: index).1)!
+//
+//                self?.typeInputView.textField.text = self?.realNameVM?.typeStr
+//            }
+//           
+//            self?.typeInputView.downArrowsCloseAction()
+//        }
     }
 }
 

+ 79 - 0
Koala/Koala/Modular/Mine/V/RealName/JDSelectIdentityTypePopView.swift

@@ -0,0 +1,79 @@
+//
+//  JDSelectIdentityTypePopView.swift
+//  Koala
+//
+//  Created by mac on 2024/9/3.
+//  Copyright © 2024 Koala. All rights reserved.
+//
+
+
+import UIKit
+
+class JDSelectIdentityTypePopView: JDBaseTableAlertView {
+    var sourceArray: [(UIImage, String, Bool)] = .init()
+    var selectTitle: String = switchLanguage("身份证")
+
+    var myCompletion: ((_ index: Int, _ title: String) -> Void)?
+
+    override init(containerViewHeight: CGFloat) {
+        super.init(containerViewHeight: containerViewHeight)
+        
+        tableView.rowHeight = 60
+        tableView.register(JDFinancialStatusCell.self, forCellReuseIdentifier: JDFinancialStatusCell.description())
+    }
+
+    @objc func confirmBtnAction() {
+        if let block = myCompletion {
+            block(selectedIndex, selectTitle)
+        }
+        dismissAlert()
+    }
+}
+
+extension JDSelectIdentityTypePopView {
+    func showPopupView(source: [(UIImage, String, Bool)], index: Int, completion: @escaping (_ index: Int, _ title: String) -> Void) {
+        sourceArray = source
+        myCompletion = completion
+        
+        super.showPopupView(selectIndex: index, completion: convertCompletion(completion: completion))
+    }
+    
+    func convertCompletion(completion: @escaping (_ index: Int, _ title: String) -> Void) -> (_ index: Int) -> Void {
+        return { index in
+            completion(index, "")
+        }
+    }
+}
+
+extension JDSelectIdentityTypePopView {
+    override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
+        return sourceArray.count
+    }
+    
+    override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
+        let cell = tableView.dequeueReusableCell(withIdentifier: JDFinancialStatusCell.description()) as! JDFinancialStatusCell
+        
+        cell.statusLb.text = sourceArray[indexPath.row].1
+
+        if selectedIndex == indexPath.row {
+            cell.bgView.backgroundColor = .white
+            cell.bgView.layer.borderColor = _color("#858585&#858585").cgColor
+            cell.iconIv.isHidden = false
+        } else {
+            cell.bgView.backgroundColor = .white
+            cell.bgView.layer.borderColor = _color("#FFFFFF&#FFFFFF").cgColor
+            cell.iconIv.isHidden = true
+        }
+        
+        return cell
+    }
+    
+    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
+        selectedIndex = indexPath.row
+        selectTitle = sourceArray[indexPath.row].1
+        
+        self.tableView.reloadData()
+        
+        confirmBtnAction()
+    }
+}

+ 14 - 6
Koala/Koala/Modular/PopUpView/LackOfFundsPopUpView.swift

@@ -183,30 +183,38 @@ class LackOfFundsPopUpView: UIView {
     @objc func depositClick() {
         self.dismissAnimated()
 
+        
+        print(self.server)
         if self.server == "US" {
             let vc = JDAFiatDepositsViewController()
 
-            vc.selectAccountIndex = 4
+            vc.selectAccountIndex = 3
             currentVc()?.navigationController?.pushViewController(vc, animated: true)
         } else if self.server == "HK" {
             let vc = JDAFiatDepositsViewController()
 
-            vc.selectAccountIndex = 1
+            vc.selectAccountIndex = 2
             currentVc()?.navigationController?.pushViewController(vc, animated: true)
         } else if self.server == "SH" {
             let vc = JDAFiatDepositsViewController()
 
-            vc.selectAccountIndex = 2
+            vc.selectAccountIndex = 1
             currentVc()?.navigationController?.pushViewController(vc, animated: true)
         } else if self.server == "SZ" {
             let vc = JDAFiatDepositsViewController()
 
-            vc.selectAccountIndex = 3
+            vc.selectAccountIndex = 1
             currentVc()?.navigationController?.pushViewController(vc, animated: true)
-        } else if self.server == "CFD" {
+        }else if self.server == "CN" {
             let vc = JDAFiatDepositsViewController()
 
-            vc.selectAccountIndex = 5
+            vc.selectAccountIndex = 1
+            currentVc()?.navigationController?.pushViewController(vc, animated: true)
+        }
+        else if self.server == "CFD" {
+            let vc = JDAFiatDepositsViewController()
+
+            vc.selectAccountIndex = 4
             currentVc()?.navigationController?.pushViewController(vc, animated: true)
         } else {
             // 存入

+ 10 - 2
Koala/Koala/Other/Language_CH.plist

@@ -2862,9 +2862,9 @@
 	<array>
 		<string>该帐号24小时内修改过重要信息,暂时无法进行该操作</string>
 	</array>
-	<key>账号、密码有误</key>
+	<key>密码有误</key>
 	<array>
-		<string>账号、密码有误</string>
+		<string>密码有误</string>
 	</array>
 	<key>密码不符合规则</key>
 	<array>
@@ -4118,5 +4118,13 @@
 	<array>
 		<string>签名与实名不一致</string>
 	</array>
+    <key>手机号码不存在</key>
+    <array>
+        <string>手机号码不存在</string>
+    </array>
+    <key>邮箱号码不存在</key>
+    <array>
+        <string>邮箱号码不存在</string>
+    </array>
 </dict>
 </plist>

+ 10 - 2
Koala/Koala/Other/Language_CHF.plist

@@ -2884,9 +2884,9 @@
 	<array>
 		<string>該帳號24小時內修改過重要信息,暫時無法進行該操作</string>
 	</array>
-	<key>账号、密码有误</key>
+	<key>密码有误</key>
 	<array>
-		<string>賬號、密碼有誤</string>
+		<string>密碼有誤</string>
 	</array>
 	<key>密码不符合规则</key>
 	<array>
@@ -4164,5 +4164,13 @@
     <array>
         <string>簽名與實名不一致</string>
     </array>
+    <key>手机号码不存在</key>
+    <array>
+        <string>手機號碼不存在</string>
+    </array>
+    <key>邮箱号码不存在</key>
+    <array>
+        <string>郵箱號碼不存在</string>
+    </array>
 </dict>
 </plist>

+ 10 - 2
Koala/Koala/Other/Language_EN.plist

@@ -3272,9 +3272,9 @@
 	<array>
 		<string>Important information of this account has been modified within 24 hours. Therefore, this operation cannot be performed temporarily</string>
 	</array>
-	<key>账号、密码有误</key>
+	<key>密码有误</key>
 	<array>
-		<string>The account or password is incorrect</string>
+		<string>The password is incorrect</string>
 	</array>
 	<key>密码不符合规则</key>
 	<array>
@@ -4656,5 +4656,13 @@
     <array>
         <string>The signature is inconsistent with the real name</string>
     </array>
+    <key>手机号码不存在</key>
+    <array>
+        <string>Mobile number does not exist</string>
+    </array>
+    <key>邮箱号码不存在</key>
+    <array>
+        <string>Email number does not exist</string>
+    </array>
 </dict>
 </plist>

+ 10 - 2
Koala/Koala/Other/Language_RU.plist

@@ -3058,9 +3058,9 @@
 	<array>
 		<string>Ключевые финансовые показатели</string>
 	</array>
-	<key>账号、密码有误</key>
+	<key>密码有误</key>
 	<array>
-		<string>Номер учетной записи и пароль неверны</string>
+		<string>Неправильный пароль.</string>
 	</array>
 	<key>账号已存在</key>
 	<array>
@@ -4422,5 +4422,13 @@
     <array>
         <string>Подпись не совпадает с настоящим именем</string>
     </array>
+    <key>手机号码不存在</key>
+    <array>
+        <string>Номер мобильного телефона не существует</string>
+    </array>
+    <key>邮箱号码不存在</key>
+    <array>
+        <string>Номер электронной почты не существует</string>
+    </array>
 </dict>
 </plist>

+ 10 - 2
Koala/Koala/Other/Language_TH.plist

@@ -2975,9 +2975,9 @@
 	<array>
 		<string>ตัวชี้วัดสำคัญทางการเงิน</string>
 	</array>
-	<key>账号、密码有误</key>
+	<key>密码有误</key>
 	<array>
-		<string>บัญชีและรหัสผ่านไม่ถูกต้อง</string>
+		<string>รหัสผ่านไม่ถูกต้อง</string>
 	</array>
 	<key>账号已存在</key>
 	<array>
@@ -4243,5 +4243,13 @@
     <array>
         <string>ลายเซ็นไม่สอดคล้องกับชื่อจริง</string>
     </array>
+    <key>手机号码不存在</key>
+    <array>
+        <string>ไม่มีหมายเลขโทรศัพท์มือถือ</string>
+    </array>
+    <key>邮箱号码不存在</key>
+    <array>
+        <string>ไม่มีหมายเลขอีเมล</string>
+    </array>
 </dict>
 </plist>

+ 10 - 2
Koala/Koala/Other/Language_VT.plist

@@ -2980,9 +2980,9 @@ Công thức tính tỷ lệ ký quỹ: </string>
 	<array>
 		<string>Các chỉ số tài chính quan trọng</string>
 	</array>
-	<key>账号、密码有误</key>
+	<key>密码有误</key>
 	<array>
-		<string>Tài khoản và mật khẩu không chính xác</string>
+		<string>Mật khẩu là sai</string>
 	</array>
 	<key>账号已存在</key>
 	<array>
@@ -4236,5 +4236,13 @@ Công thức tính tỷ lệ ký quỹ: </string>
     <array>
         <string>Chữ ký không phù hợp với tên thật</string>
     </array>
+    <key>手机号码不存在</key>
+    <array>
+        <string>Số điện thoại di động không tồn tại</string>
+    </array>
+    <key>邮箱号码不存在</key>
+    <array>
+        <string>Số email không tồn tại</string>
+    </array>
 </dict>
 </plist>