oc的若干方法转为swift 请求不执行

server/2024/11/29 3:41:05/

GPT帮忙翻译的代码,就是不执行某句话

  if let maxPageDic = UserDefaults.standard.object(forKey: KDocumentProgressTecentMaxPage) as? [String: Any],

             

             !maxPageDic.isEmpty {

              if let maxPage = maxPageDic["maxPage"] {

                  if type(of: maxPage) == Int.self {

                      print("maxPage 是 Int")

                  } else {

                      print("maxPage 不是 Int,实际类型是 \(type(of: maxPage))")

                  }

              }

              if let total = maxPageDic["total"] {

                  if type(of: total) == Int.self {

                      print("total 是 Int")

                  } else {

                      print("total 不是 Int,实际类型是 \(type(of: total))")

                  }

              }

              if let learnID = maxPageDic["learnID"] {

                  if type(of: learnID) == Int.self {

                      print("learnID 是 Int")

                  } else {

                      print("learnID 不是 Int,实际类型是 \(type(of: learnID))")

                  }

              }

              if let relation_id = maxPageDic["relation_id"] {

                  if type(of: relation_id) == Int.self {

                      print("relation_id 是 Int")

                  } else {

                      print("relation_id 不是 Int,实际类型是 \(type(of: relation_id))")

                  }

              }

              if let maxPage = maxPageDic["maxPage"] as? NSNumber,

                 let learnID = maxPageDic["learnID"] as? String,

                 let totalNum = maxPageDic["total"] as? NSNumber,

                 let relationId = maxPageDic["relation_id"] as? NSNumber {

                  

                  var progress = (maxPage.intValue * 100) / totalNum.intValue

                  

                  if maxPage.intValue >= totalNum.intValue - 3 {

                      progress = 100

                  }

          

                  if maxPage.intValue > 0 {

                      let parameters: [String: Any] = [

                          "learn_id": learnID ,

                          "progress": progress,

                          "last_learn": maxPage

                      ]

                      

                      // 使用 weak self 避免循环引用

                      let weakSelf = self

                      

                      let urlString = String(format: "client/plan/learn/progress/%@", relationId)

                      let task = LMSNewAPIClient.apiManager()?.putRequestAPI(urlString, parameters: parameters, success: { (dataTask, json) in

                          

                          if let jsonDict = json as? [String: Any],

                             let status = jsonDict["status"] as? Int, status == 1 {

  //                            weakSelf?.updateProgress?(NSNumber(value: progress))

                          }

                          

                          UserDefaults.standard.removeObject(forKey: KDocumentProgressTecentMaxPage)

                          

                      }, failure: { (dataTask, error) in

                          // 处理错误

                      })

                      

  //                    self.autoCancelRequestOnDealloc(task)

                  }

              }

          }

      }


http://www.ppmy.cn/server/137654.html

相关文章

为什么音频采样率通常是44.1kHz?

计算机中操作和存储只能是类似10101011这样的二进制数字,对于自然界中音频原始信号则为模拟信号,如下一个1kHz的音频信号,如果要转化为数字音频信号,则需要采样, 通常我们会采用44.1kHz的频率来进行采样,在…

【进阶sql】复杂sql收集及解析【mysql】

开发时会出现,必须写一些较复杂sql的场景 可能是给会sql的客户 提供一些统计sql 或是临时需要统计数据信息但是 开发一个统计功能有来不及的情况 也可能是报表系统组件 只支持 sql统计的情况 特地记录下这些sql 作为积累 substring 截取查询出的字符串&#xff…

JavaScript网页设计案例:智慧社区可视化大屏的实现

智慧社区作为城市智能化的重要体现,通过数据可视化大屏能够直观地展示社区内的各种信息,提高管理效率和居民生活质量。本文将详细介绍如何使用JavaScript结合HTML和CSS开发一个智慧社区可视化大屏的案例。 项目背景 智慧社区可视化大屏主要用于展示社区…

Lucene数据写入流程

Lucene数据写入及倒排数据缓存组织是一个复杂但有序的过程,它涉及到多个组件和内存结构的高效利用。以下是对Lucene数据写入和倒排数据缓存组织的详细解析。 Lucene数据写入流程 Lucene的数据写入流程主要涉及到文档的创建、索引的添加以及最终写入磁盘的过程。以…

Android 利用责任链模式来实现 解析不同的json对象

1. 创建解析类 class WebSocketParserChain {private val parsers mutableListOf<WebSocketDataParser>()fun addParser(parser: WebSocketDataParser): WebSocketParserChain {parsers.add(parser)return this}fun parse(text: String): WebSocketResponseBaseBean<…

从0到1搭建flink程序-WordCount(图文/详细/mac)

目录 一、目标以及前置资料 1.1 目标 1.2 前置资料 二、实现 2.1 搭建流程 2.2 调试 参考 一、目标以及前置资料 1.1 目标 初步感受flink任务&#xff0c;从0到1快速搭建一个flink程序 1.2 前置资料 1、下载jdk&#xff1a;Mac 安装jdk_mac 安装jdk 1.8-CSDN博客 2、…

vue 果蔬识别系统百度AI识别vue+springboot java开发、elementui+ echarts+ vant开发

编号&#xff1a;R03-果蔬识别系统 简介&#xff1a;vuespringboot百度AI实现的果蔬识别系统 版本&#xff1a;2025版 视频介绍&#xff1a; vuespringboot百度AI实现的果蔬识别系统前后端java开发&#xff0c;百度识别&#xff0c;带H5移动端&#xff0c;mysql数据库可视化 1 …

Nginx负载均衡配置详解

Nginx 是一个高性能的 HTTP 和反向代理服务器&#xff0c;广泛用于负载均衡。它支持多种负载均衡策略&#xff0c;可以根据不同的需求进行配置。以下是 Nginx 负载均衡的详细配置和使用示例。 一、负载均衡基本概念 负载均衡是将请求分配到多个后端服务器上&#xff0c;以提高…