Commit 7f88fdd58dedf9dc90c76ca73f3074b4d4532089
1 parent
f4d34a7a
店铺分类bug修复
Showing
3 changed files
with
54 additions
and
62 deletions
metaCode/Classes/Main/HomePage/Controller/GoodsManager/CNLiveGoodsCategoryController.swift
| ... | ... | @@ -105,8 +105,8 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 105 | 105 | } |
| 106 | 106 | |
| 107 | 107 | //临时选中一级分类 |
| 108 | - var _temp_selectFirCategoryModel : CNLiveShopGoodsManageDetailsGoodsCategoryModel? | |
| 109 | - var temp_selectFirCategoryModel : CNLiveShopGoodsManageDetailsGoodsCategoryModel? { | |
| 108 | + var _temp_selectFirCategoryModel :CNLiveShopClassifyModel? | |
| 109 | + var temp_selectFirCategoryModel :CNLiveShopClassifyModel?{ | |
| 110 | 110 | get{ |
| 111 | 111 | _temp_selectFirCategoryModel |
| 112 | 112 | } |
| ... | ... | @@ -116,7 +116,7 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 116 | 116 | }else{ |
| 117 | 117 | return |
| 118 | 118 | } |
| 119 | - if _temp_selectFirCategoryModel?.id ?? 0 > 0{ | |
| 119 | + if Int(_temp_selectFirCategoryModel?.id ?? "0")! > 0{ | |
| 120 | 120 | self.firCategoryBtn?.setTitle(_temp_selectFirCategoryModel?.title, for: .normal) |
| 121 | 121 | }else{ |
| 122 | 122 | self.firCategoryBtn?.setTitle("请选择", for: .normal) |
| ... | ... | @@ -124,8 +124,8 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 124 | 124 | } |
| 125 | 125 | } |
| 126 | 126 | //临时选中二级分类 |
| 127 | - var _temp_selectSecCategoryModel : CNLiveShopGoodsManageDetailsGoodsCategoryModel? | |
| 128 | - var temp_selectSecCategoryModel : CNLiveShopGoodsManageDetailsGoodsCategoryModel? { | |
| 127 | + var _temp_selectSecCategoryModel :CNLiveShopClassifyModel? | |
| 128 | + var temp_selectSecCategoryModel :CNLiveShopClassifyModel?{ | |
| 129 | 129 | get{ |
| 130 | 130 | _temp_selectSecCategoryModel |
| 131 | 131 | } |
| ... | ... | @@ -135,7 +135,7 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 135 | 135 | }else{ |
| 136 | 136 | return |
| 137 | 137 | } |
| 138 | - if _temp_selectSecCategoryModel?.id ?? 0 > 0{ | |
| 138 | + if Int(_temp_selectSecCategoryModel?.id ?? "0")! > 0{ | |
| 139 | 139 | self.secCategoryBtn?.setTitle(_temp_selectSecCategoryModel?.title, for: .normal) |
| 140 | 140 | self.secCategoryBtn?.setTitleColor(HexColor("#333333"), for: .normal) |
| 141 | 141 | }else{ |
| ... | ... | @@ -149,8 +149,8 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 149 | 149 | } |
| 150 | 150 | } |
| 151 | 151 | //临时选中三级分类 |
| 152 | - var _temp_selectThiCategoryModel : CNLiveShopGoodsManageDetailsGoodsCategoryModel? | |
| 153 | - var temp_selectThiCategoryModel : CNLiveShopGoodsManageDetailsGoodsCategoryModel? { | |
| 152 | + var _temp_selectThiCategoryModel :CNLiveShopClassifyModel? | |
| 153 | + var temp_selectThiCategoryModel :CNLiveShopClassifyModel?{ | |
| 154 | 154 | get{ |
| 155 | 155 | _temp_selectThiCategoryModel |
| 156 | 156 | } |
| ... | ... | @@ -160,7 +160,7 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 160 | 160 | }else{ |
| 161 | 161 | return |
| 162 | 162 | } |
| 163 | - if _temp_selectThiCategoryModel!.id > 0{ | |
| 163 | + if Int(_temp_selectThiCategoryModel!.id ?? "0")! > 0{ | |
| 164 | 164 | self.thiCategoryBtn?.setTitle(_temp_selectThiCategoryModel?.title, for: .normal) |
| 165 | 165 | self.thiCategoryBtn?.setTitleColor(HexColor("#333333"), for: .normal) |
| 166 | 166 | }else{ |
| ... | ... | @@ -320,7 +320,8 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 320 | 320 | return cell |
| 321 | 321 | } |
| 322 | 322 | if self.displayLevel == 1{ |
| 323 | - let model = self.firCategoryDataArr[indexPath.row] as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 323 | + let model = self.firCategoryDataArr[indexPath.row] as! CNLiveShopClassifyModel | |
| 324 | + | |
| 324 | 325 | cell.titleLabel.text = model.title |
| 325 | 326 | if model.id == self.temp_selectFirCategoryModel?.id{ |
| 326 | 327 | cell.titleLabel.textColor = HexColor("#FC1541") |
| ... | ... | @@ -328,7 +329,8 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 328 | 329 | cell.titleLabel.textColor = HexColor("#666666") |
| 329 | 330 | } |
| 330 | 331 | }else if (self.displayLevel == 2) { |
| 331 | - let model = self.secCategoryDataArr[indexPath.row] as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 332 | + let model = self.secCategoryDataArr[indexPath.row] as! CNLiveShopClassifyModel | |
| 333 | + | |
| 332 | 334 | cell.titleLabel.text = model.title |
| 333 | 335 | if model.id == self.temp_selectSecCategoryModel?.id{ |
| 334 | 336 | cell.titleLabel.textColor = HexColor("#FC1541") |
| ... | ... | @@ -336,7 +338,7 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 336 | 338 | cell.titleLabel.textColor = HexColor("#666666") |
| 337 | 339 | } |
| 338 | 340 | }else if (self.displayLevel == 3) { |
| 339 | - let model = self.thiCategoryDataArr[indexPath.row] as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 341 | + let model = self.thiCategoryDataArr[indexPath.row] as! CNLiveShopClassifyModel | |
| 340 | 342 | cell.titleLabel.text = model.title |
| 341 | 343 | if model.id == self.temp_selectThiCategoryModel?.id{ |
| 342 | 344 | cell.titleLabel.textColor = HexColor("#FC1541") |
| ... | ... | @@ -352,30 +354,29 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 352 | 354 | func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { |
| 353 | 355 | if self.categoryType == .goods{ |
| 354 | 356 | if self.displayLevel == 1{ |
| 355 | - let model = self.firCategoryDataArr[indexPath.row] as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 356 | - self.postDataWithPid(pid: String(format: "%d", model.id), level: 2) { | |
| 357 | + let model = self.firCategoryDataArr[indexPath.row] as! CNLiveShopClassifyModel | |
| 358 | + self.postDataWithPid(pid: model.id ?? "", level: 2) { | |
| 359 | +// self.postDataWithPid(pid: String(format: "%d", model.id), level: 2) { | |
| 357 | 360 | self.temp_selectFirCategoryModel = model |
| 358 | 361 | self.temp_selectSecCategoryModel = nil |
| 359 | 362 | self.temp_selectThiCategoryModel = nil |
| 360 | 363 | } |
| 361 | 364 | }else if (self.displayLevel == 2) { |
| 362 | - let model = self.secCategoryDataArr[indexPath.row] as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 363 | - self.postDataWithPid(pid: String(format: "%d", model.id), level: 3) { | |
| 365 | + let model = self.secCategoryDataArr[indexPath.row] as! CNLiveShopClassifyModel | |
| 366 | + self.postDataWithPid(pid: model.id ?? "", level: 3) { | |
| 367 | +// self.postDataWithPid(pid: String(format: "%d", model.id), level: 3) { | |
| 364 | 368 | self.temp_selectSecCategoryModel = model |
| 365 | 369 | self.temp_selectThiCategoryModel = nil |
| 366 | 370 | } |
| 367 | 371 | }else if (self.displayLevel == 3) { |
| 368 | - let model = self.thiCategoryDataArr[indexPath.row] as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 372 | + let model = self.thiCategoryDataArr[indexPath.row] as! CNLiveShopClassifyModel | |
| 369 | 373 | self.temp_selectThiCategoryModel = model |
| 370 | 374 | self.tableView.reloadData() |
| 371 | 375 | } |
| 372 | 376 | }else if self.categoryType == .shop{ |
| 373 | 377 | if (self.displayLevel == 1) { |
| 374 | 378 | let model = self.firCategoryDataArr[indexPath.row] as! CNLiveShopClassifyModel |
| 375 | - let tempFirMdl = CNLiveShopGoodsManageDetailsGoodsCategoryModel() | |
| 376 | - tempFirMdl.id = Int(model.id ?? "0")! | |
| 377 | - tempFirMdl.title = model.title | |
| 378 | - self.temp_selectFirCategoryModel = tempFirMdl | |
| 379 | + self.temp_selectFirCategoryModel = model | |
| 379 | 380 | self.temp_selectSecCategoryModel = nil |
| 380 | 381 | if (model.child.count == 0) { |
| 381 | 382 | self.tableView.reloadData() |
| ... | ... | @@ -386,10 +387,7 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 386 | 387 | self.tableView.reloadData() |
| 387 | 388 | }else if (self.displayLevel == 2){ |
| 388 | 389 | let model = self.secCategoryDataArr[indexPath.row] as! CNLiveShopClassifyModel |
| 389 | - let tempFirMdl = CNLiveShopGoodsManageDetailsGoodsCategoryModel() | |
| 390 | - tempFirMdl.id = Int(model.id ?? "0")! | |
| 391 | - tempFirMdl.title = model.title | |
| 392 | - self.temp_selectSecCategoryModel = tempFirMdl | |
| 390 | + self.temp_selectSecCategoryModel = model | |
| 393 | 391 | self.tableView.reloadData() |
| 394 | 392 | } |
| 395 | 393 | } |
| ... | ... | @@ -411,20 +409,19 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 411 | 409 | showMessage(message: "请选择级分类") |
| 412 | 410 | return |
| 413 | 411 | } |
| 414 | - //需要看能不能转成功 | |
| 415 | - let classModel = self.temp_selectFirCategoryModel as? CNLiveShopClassifyModel | |
| 416 | - //DSShopClassifyModel *classModel = (DSShopClassifyModel *)self.temp_selectFirCategoryModel; | |
| 417 | - if classModel!.child.count > 0 && self.temp_selectSecCategoryModel == nil{ | |
| 418 | - showMessage(message: "未选择二级分类") | |
| 419 | - return | |
| 412 | + if let classModel = self.temp_selectFirCategoryModel{ | |
| 413 | + if classModel.child.count > 0 && self.temp_selectSecCategoryModel == nil{ | |
| 414 | + showMessage(message: "未选择二级分类") | |
| 415 | + return | |
| 416 | + } | |
| 420 | 417 | } |
| 421 | 418 | } |
| 422 | 419 | |
| 423 | - self.firCategoryId = self.temp_selectFirCategoryModel?.id ?? 0 | |
| 420 | + self.firCategoryId = Int(self.temp_selectFirCategoryModel?.id ?? "0")! | |
| 424 | 421 | self.firCategoryName = self.temp_selectFirCategoryModel?.title |
| 425 | - self.secCategoryId = self.temp_selectSecCategoryModel?.id ?? 0 | |
| 422 | + self.secCategoryId = Int(self.temp_selectSecCategoryModel?.id ?? "0")! | |
| 426 | 423 | self.secCategoryName = self.temp_selectSecCategoryModel?.title |
| 427 | - self.thiCategoryId = self.temp_selectThiCategoryModel?.id ?? 0 | |
| 424 | + self.thiCategoryId = Int(self.temp_selectThiCategoryModel?.id ?? "0")! | |
| 428 | 425 | self.thiCategoryName = self.temp_selectThiCategoryModel?.title |
| 429 | 426 | self.finishBlock!() |
| 430 | 427 | self.hide() |
| ... | ... | @@ -449,8 +446,7 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 449 | 446 | |
| 450 | 447 | @objc func secCategoryBtnClick(){ |
| 451 | 448 | if self.categoryType == .shop{ |
| 452 | - //需要看能不能转成功 | |
| 453 | - let model = self.temp_selectFirCategoryModel as? CNLiveShopClassifyModel | |
| 449 | + let model = self.temp_selectFirCategoryModel | |
| 454 | 450 | if model?.child.count == 0 { |
| 455 | 451 | showMessage(message: "该分类暂没有添加子分类") |
| 456 | 452 | return |
| ... | ... | @@ -501,7 +497,7 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 501 | 497 | hiddenLoading() |
| 502 | 498 | if status == .success{ |
| 503 | 499 | |
| 504 | - let dataArr = result as! [CNLiveShopGoodsManageDetailsGoodsCategoryModel] | |
| 500 | + let dataArr = result as! [CNLiveShopClassifyModel] | |
| 505 | 501 | self.displayLevel = level |
| 506 | 502 | if level == 1{ |
| 507 | 503 | self.firCategoryDataArr = NSMutableArray(array: dataArr) |
| ... | ... | @@ -513,8 +509,8 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 513 | 509 | |
| 514 | 510 | let tempDataArr = Array(self.firCategoryDataArr) |
| 515 | 511 | for (_,mdl) in tempDataArr.enumerated() { |
| 516 | - let model = mdl as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 517 | - if model.id == self.firCategoryId{ | |
| 512 | + let model = mdl as! CNLiveShopClassifyModel | |
| 513 | + if Int(model.id ?? "0")! == self.firCategoryId{ | |
| 518 | 514 | self.temp_selectFirCategoryModel = model |
| 519 | 515 | break |
| 520 | 516 | } |
| ... | ... | @@ -528,8 +524,8 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 528 | 524 | if self.secCategoryId > 0{ |
| 529 | 525 | let tempDataArr = Array(self.thiCategoryDataArr) |
| 530 | 526 | for (_,mdl) in tempDataArr.enumerated() { |
| 531 | - let model = mdl as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 532 | - if model.id == self.secCategoryId{ | |
| 527 | + let model = mdl as! CNLiveShopClassifyModel | |
| 528 | + if Int(model.id ?? "0")! == self.secCategoryId{ | |
| 533 | 529 | self.temp_selectSecCategoryModel = model |
| 534 | 530 | break |
| 535 | 531 | } |
| ... | ... | @@ -543,8 +539,8 @@ class CNLiveGoodsCategoryController: CNLiveBaseViewController, UITableViewDataSo |
| 543 | 539 | if self.thiCategoryId > 0{ |
| 544 | 540 | let tempDataArr = Array(self.thiCategoryDataArr) |
| 545 | 541 | for (_,mdl) in tempDataArr.enumerated() { |
| 546 | - let model = mdl as! CNLiveShopGoodsManageDetailsGoodsCategoryModel | |
| 547 | - if model.id == self.thiCategoryId{ | |
| 542 | + let model = mdl as! CNLiveShopClassifyModel | |
| 543 | + if Int(model.id ?? "0")! == self.thiCategoryId{ | |
| 548 | 544 | self.temp_selectThiCategoryModel = model |
| 549 | 545 | break |
| 550 | 546 | } | ... | ... |
metaCode/Classes/Main/HomePage/View/GoodsManager/CNLiveAddGoodsSelectUploadImageView.swift
| ... | ... | @@ -403,7 +403,9 @@ class CNLiveAddGoodsSelectUploadImageView: UIView,UIImagePickerControllerDelegat |
| 403 | 403 | } |
| 404 | 404 | super.frame = CGRect(x: frame.origin.x, y: frame.origin.y, width: frame.size.width, height: height == 0 ? frame.size.height : height) |
| 405 | 405 | if isNeedCallBack{ |
| 406 | - self.changeFrameCallBack!() | |
| 406 | + if (self.changeFrameCallBack?()) != nil{ | |
| 407 | + self.changeFrameCallBack!() | |
| 408 | + } | |
| 407 | 409 | } |
| 408 | 410 | }else{ |
| 409 | 411 | super.frame = frame |
| ... | ... | @@ -596,24 +598,27 @@ class CNLiveAddGoodsSelectUploadImageView: UIView,UIImagePickerControllerDelegat |
| 596 | 598 | } |
| 597 | 599 | UIApplication.shared.keyWindow?.endEditing(true) |
| 598 | 600 | if (model.isVideo == true){ |
| 601 | + //视频 | |
| 599 | 602 | if (model.localVideoUrl != nil){ |
| 600 | - CNLiveCommonManager.shared.skipPlayerVCWithPlayURL(playURL: URL(string: model.videoUrl ?? "")!, coverImage: model.image!, coverImageUrl: nil) | |
| 603 | + CNLiveCommonManager.shared.skipPlayerVCWithPlayURL(playURL:model.localVideoUrl!, coverImage: model.image!, coverImageUrl: nil) | |
| 601 | 604 | }else if model.videoUrl?.count ?? 0 > 0{ |
| 602 | - CNLiveCommonManager.shared.skipPlayerVCWithPlayURL(playURL: model.localVideoUrl!, coverImage: nil, coverImageUrl: model.imageUrl) | |
| 605 | + CNLiveCommonManager.shared.skipPlayerVCWithPlayURL(playURL: URL(string: model.videoUrl!)!, coverImage: nil, coverImageUrl: model.imageUrl) | |
| 603 | 606 | }else{ |
| 604 | 607 | //TODO:后面再调整具体的配置 |
| 605 | 608 | // 设置与微信主题一致的配置 |
| 606 | 609 | let config = PhotoTools.getWXPickerConfig() |
| 607 | 610 | config.selectOptions = [.video] |
| 608 | 611 | config.previewView.bottomView.editButtonHidden = false |
| 612 | + config.maximumSelectedVideoCount = 1 | |
| 609 | 613 | let pickerController = PhotoPickerController(picker: config) |
| 610 | 614 | pickerController.pickerDelegate = self |
| 611 | 615 | // 是否选中原图 |
| 612 | - pickerController.isOriginal = true | |
| 616 | + pickerController.isOriginal = false | |
| 613 | 617 | pickerController.modalPresentationStyle = .fullScreen |
| 614 | 618 | currentViewController()?.present(pickerController, animated: true) |
| 615 | 619 | } |
| 616 | 620 | }else{ |
| 621 | + //图片 | |
| 617 | 622 | if (model.isSelectPhotoPlaceholder != nil) && (model.isSelectPhotoPlaceholder == true){ |
| 618 | 623 | if self.uploadImageUrls.count >= self.maxSelectImageCount{ |
| 619 | 624 | let message = String(format: "最多只能选取%ld张图片", self.maxSelectImageCount) |
| ... | ... | @@ -674,20 +679,7 @@ class CNLiveAddGoodsSelectUploadImageView: UIView,UIImagePickerControllerDelegat |
| 674 | 679 | |
| 675 | 680 | if (model.imageUrl?.count ?? 0 > 0) && (singleImageView.model?.imageUrl?.count ?? 0 > 0){ |
| 676 | 681 | if model.imageUrl == singleImageView.model?.imageUrl{ |
| 677 | - if singleImageView.model?.isVideo == true{ | |
| 678 | - //subview是视频 | |
| 679 | - if singleImageView.model?.isUploading == true{ | |
| 680 | - //subview正在上传中 | |
| 681 | - UploadManager.shared.cancelUploadKey(key: singleImageView.model!.uploadKey!) | |
| 682 | - }else{ | |
| 683 | - //subview上传完成 | |
| 684 | - //标记当前有视频,并替换model | |
| 685 | - self.replaceVideoUrls.append(singleImageView.model!) | |
| 686 | - let videoModel = CNLiveSelectUploadImageModel() | |
| 687 | - videoModel.isVideo = true | |
| 688 | - self.uploadVideoModel = videoModel | |
| 689 | - } | |
| 690 | - }else{ | |
| 682 | + if singleImageView.model?.isVideo == false{ | |
| 691 | 683 | //subview是纯图片 |
| 692 | 684 | if singleImageView.model?.isUploading == true{ |
| 693 | 685 | //上传中 |
| ... | ... | @@ -705,6 +697,7 @@ class CNLiveAddGoodsSelectUploadImageView: UIView,UIImagePickerControllerDelegat |
| 705 | 697 | } |
| 706 | 698 | }else{ |
| 707 | 699 | //imageUrl有空值 |
| 700 | + //有视频 有图片 | |
| 708 | 701 | if model.videoUrl?.count ?? 0 > 0 && self.uploadVideoModel?.videoUrl?.count ?? 0 > 0 && model.videoUrl == self.uploadVideoModel?.videoUrl{ |
| 709 | 702 | //当前要删除的是视频 |
| 710 | 703 | if self.uploadVideoModel?.isVideo == true{ |
| ... | ... | @@ -924,6 +917,8 @@ class CNLiveAddGoodsSelectUploadImageView: UIView,UIImagePickerControllerDelegat |
| 924 | 917 | splitCompleteClosure(isSuccess, splitImages) |
| 925 | 918 | print("completed") |
| 926 | 919 | } |
| 920 | + @unknown default: break | |
| 921 | + | |
| 927 | 922 | } |
| 928 | 923 | } |
| 929 | 924 | } | ... | ... |
metaCode/Classes/Main/HomePage/ViewModel/GoodsManager/CNLiveShopGoodListViewModel.swift
| ... | ... | @@ -275,7 +275,8 @@ class CNLiveShopGoodListViewModel:NSObject{ |
| 275 | 275 | CNLiveNetworking.requestNetwork(with: .GET, urlString: APPBaseWjjBUrl+"/api/v1/cateList", param: param as! [String : String], cacheType: .networkOnly) { task, result, error in |
| 276 | 276 | hiddenLoading() |
| 277 | 277 | if (error == nil) { |
| 278 | - let resp = result as! NSDictionary | |
| 278 | + let respDic = result as! NSDictionary | |
| 279 | + let resp = respDic["data"] as! NSDictionary | |
| 279 | 280 | let listModel = newDictionaryToModel(resp as! [String : Any], CNLiveShopClassifyListModel.self) |
| 280 | 281 | resultBlock(listModel,.success) |
| 281 | 282 | }else{ | ... | ... |