Commit af1d9fdc9cf9c09f669edecdfa41cdf069701bef
Merge branch 'master' of http://bj.gitlab.cnlive.com/ios-team/CNLiveMateCode
Showing
34 changed files
with
1061 additions
and
66 deletions
metaCode.xcodeproj/project.pbxproj
| @@ -21,6 +21,9 @@ | @@ -21,6 +21,9 @@ | ||
| 21 | 19565ECD2AF8D256007D6727 /* CNLiveShopGoodsListClassifyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19565ECC2AF8D256007D6727 /* CNLiveShopGoodsListClassifyView.swift */; }; | 21 | 19565ECD2AF8D256007D6727 /* CNLiveShopGoodsListClassifyView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19565ECC2AF8D256007D6727 /* CNLiveShopGoodsListClassifyView.swift */; }; |
| 22 | 19565ECF2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19565ECE2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift */; }; | 22 | 19565ECF2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19565ECE2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift */; }; |
| 23 | 19565ED42AF9FEB4007D6727 /* CNLiveShopAddEditGoodsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19565ED32AF9FEB4007D6727 /* CNLiveShopAddEditGoodsModel.swift */; }; | 23 | 19565ED42AF9FEB4007D6727 /* CNLiveShopAddEditGoodsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19565ED32AF9FEB4007D6727 /* CNLiveShopAddEditGoodsModel.swift */; }; |
| 24 | + 1965FA3E2AFB176E00F0F435 /* CNLiveShopAddGoodsSingleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1965FA3D2AFB176E00F0F435 /* CNLiveShopAddGoodsSingleView.swift */; }; | ||
| 25 | + 1965FA402AFB38AA00F0F435 /* CNLiveAddGoodsSelectUploadImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1965FA3F2AFB38AA00F0F435 /* CNLiveAddGoodsSelectUploadImageView.swift */; }; | ||
| 26 | + 1965FA422AFB79EA00F0F435 /* CNLiveGoodsCategoryController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1965FA412AFB79EA00F0F435 /* CNLiveGoodsCategoryController.swift */; }; | ||
| 24 | 19BB1FDF2AEA3A450094D962 /* CNSlideBaseNavigationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19BB1FDE2AEA3A450094D962 /* CNSlideBaseNavigationController.swift */; }; | 27 | 19BB1FDF2AEA3A450094D962 /* CNSlideBaseNavigationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19BB1FDE2AEA3A450094D962 /* CNSlideBaseNavigationController.swift */; }; |
| 25 | 19BB1FE12AEB5C220094D962 /* CNLiveShopConsoleController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19BB1FE02AEB5C220094D962 /* CNLiveShopConsoleController.swift */; }; | 28 | 19BB1FE12AEB5C220094D962 /* CNLiveShopConsoleController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19BB1FE02AEB5C220094D962 /* CNLiveShopConsoleController.swift */; }; |
| 26 | 19BB1FE32AEB8B7C0094D962 /* CNLiveShopConsoleViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19BB1FE22AEB8B7C0094D962 /* CNLiveShopConsoleViewModel.swift */; }; | 29 | 19BB1FE32AEB8B7C0094D962 /* CNLiveShopConsoleViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 19BB1FE22AEB8B7C0094D962 /* CNLiveShopConsoleViewModel.swift */; }; |
| @@ -179,6 +182,9 @@ | @@ -179,6 +182,9 @@ | ||
| 179 | 19565ECC2AF8D256007D6727 /* CNLiveShopGoodsListClassifyView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopGoodsListClassifyView.swift; sourceTree = "<group>"; }; | 182 | 19565ECC2AF8D256007D6727 /* CNLiveShopGoodsListClassifyView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopGoodsListClassifyView.swift; sourceTree = "<group>"; }; |
| 180 | 19565ECE2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopGoodsListCell.swift; sourceTree = "<group>"; }; | 183 | 19565ECE2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopGoodsListCell.swift; sourceTree = "<group>"; }; |
| 181 | 19565ED32AF9FEB4007D6727 /* CNLiveShopAddEditGoodsModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopAddEditGoodsModel.swift; sourceTree = "<group>"; }; | 184 | 19565ED32AF9FEB4007D6727 /* CNLiveShopAddEditGoodsModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopAddEditGoodsModel.swift; sourceTree = "<group>"; }; |
| 185 | + 1965FA3D2AFB176E00F0F435 /* CNLiveShopAddGoodsSingleView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopAddGoodsSingleView.swift; sourceTree = "<group>"; }; | ||
| 186 | + 1965FA3F2AFB38AA00F0F435 /* CNLiveAddGoodsSelectUploadImageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveAddGoodsSelectUploadImageView.swift; sourceTree = "<group>"; }; | ||
| 187 | + 1965FA412AFB79EA00F0F435 /* CNLiveGoodsCategoryController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveGoodsCategoryController.swift; sourceTree = "<group>"; }; | ||
| 182 | 19BB1FDE2AEA3A450094D962 /* CNSlideBaseNavigationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNSlideBaseNavigationController.swift; sourceTree = "<group>"; }; | 188 | 19BB1FDE2AEA3A450094D962 /* CNSlideBaseNavigationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNSlideBaseNavigationController.swift; sourceTree = "<group>"; }; |
| 183 | 19BB1FE02AEB5C220094D962 /* CNLiveShopConsoleController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopConsoleController.swift; sourceTree = "<group>"; }; | 189 | 19BB1FE02AEB5C220094D962 /* CNLiveShopConsoleController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopConsoleController.swift; sourceTree = "<group>"; }; |
| 184 | 19BB1FE22AEB8B7C0094D962 /* CNLiveShopConsoleViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopConsoleViewModel.swift; sourceTree = "<group>"; }; | 190 | 19BB1FE22AEB8B7C0094D962 /* CNLiveShopConsoleViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CNLiveShopConsoleViewModel.swift; sourceTree = "<group>"; }; |
| @@ -348,17 +354,20 @@ | @@ -348,17 +354,20 @@ | ||
| 348 | children = ( | 354 | children = ( |
| 349 | 19565EC42AF8AD1F007D6727 /* CNLiveShopProductManagerController.swift */, | 355 | 19565EC42AF8AD1F007D6727 /* CNLiveShopProductManagerController.swift */, |
| 350 | 19565EC62AF8AD38007D6727 /* CNLiveShopNewProductController.swift */, | 356 | 19565EC62AF8AD38007D6727 /* CNLiveShopNewProductController.swift */, |
| 357 | + 1965FA412AFB79EA00F0F435 /* CNLiveGoodsCategoryController.swift */, | ||
| 351 | ); | 358 | ); |
| 352 | path = GoodsManager; | 359 | path = GoodsManager; |
| 353 | sourceTree = "<group>"; | 360 | sourceTree = "<group>"; |
| 354 | }; | 361 | }; |
| 355 | - 19565ED02AF8D904007D6727 /* GoodsList */ = { | 362 | + 19565ED02AF8D904007D6727 /* GoodsManager */ = { |
| 356 | isa = PBXGroup; | 363 | isa = PBXGroup; |
| 357 | children = ( | 364 | children = ( |
| 358 | 19565ECC2AF8D256007D6727 /* CNLiveShopGoodsListClassifyView.swift */, | 365 | 19565ECC2AF8D256007D6727 /* CNLiveShopGoodsListClassifyView.swift */, |
| 359 | 19565ECE2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift */, | 366 | 19565ECE2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift */, |
| 367 | + 1965FA3D2AFB176E00F0F435 /* CNLiveShopAddGoodsSingleView.swift */, | ||
| 368 | + 1965FA3F2AFB38AA00F0F435 /* CNLiveAddGoodsSelectUploadImageView.swift */, | ||
| 360 | ); | 369 | ); |
| 361 | - path = GoodsList; | 370 | + path = GoodsManager; |
| 362 | sourceTree = "<group>"; | 371 | sourceTree = "<group>"; |
| 363 | }; | 372 | }; |
| 364 | 19565ED12AF9FE56007D6727 /* GoodsManager */ = { | 373 | 19565ED12AF9FE56007D6727 /* GoodsManager */ = { |
| @@ -769,7 +778,7 @@ | @@ -769,7 +778,7 @@ | ||
| 769 | 7CD675232A26F8F8008354C1 /* View */ = { | 778 | 7CD675232A26F8F8008354C1 /* View */ = { |
| 770 | isa = PBXGroup; | 779 | isa = PBXGroup; |
| 771 | children = ( | 780 | children = ( |
| 772 | - 19565ED02AF8D904007D6727 /* GoodsList */, | 781 | + 19565ED02AF8D904007D6727 /* GoodsManager */, |
| 773 | 7CD675372A2740B0008354C1 /* CNUpSlideViewRemindView.swift */, | 782 | 7CD675372A2740B0008354C1 /* CNUpSlideViewRemindView.swift */, |
| 774 | 7CD6753B2A2740B0008354C1 /* CNDownSlideView.swift */, | 783 | 7CD6753B2A2740B0008354C1 /* CNDownSlideView.swift */, |
| 775 | 7CD675382A2740B0008354C1 /* CNMainView.swift */, | 784 | 7CD675382A2740B0008354C1 /* CNMainView.swift */, |
| @@ -1171,6 +1180,7 @@ | @@ -1171,6 +1180,7 @@ | ||
| 1171 | 793CAF522A58FCA200882EF4 /* CNLiveMineExchangeViewController.swift in Sources */, | 1180 | 793CAF522A58FCA200882EF4 /* CNLiveMineExchangeViewController.swift in Sources */, |
| 1172 | 7CD675522A29C04B008354C1 /* CNLiveConfigstant.swift in Sources */, | 1181 | 7CD675522A29C04B008354C1 /* CNLiveConfigstant.swift in Sources */, |
| 1173 | 79282A402A2F055100B5F8CF /* CNLiveConfigUserInfo.swift in Sources */, | 1182 | 79282A402A2F055100B5F8CF /* CNLiveConfigUserInfo.swift in Sources */, |
| 1183 | + 1965FA402AFB38AA00F0F435 /* CNLiveAddGoodsSelectUploadImageView.swift in Sources */, | ||
| 1174 | 7C83B43E2A52B8BA004BF4A4 /* CNHomePageViewModel.swift in Sources */, | 1184 | 7C83B43E2A52B8BA004BF4A4 /* CNHomePageViewModel.swift in Sources */, |
| 1175 | 19BB1FDF2AEA3A450094D962 /* CNSlideBaseNavigationController.swift in Sources */, | 1185 | 19BB1FDF2AEA3A450094D962 /* CNSlideBaseNavigationController.swift in Sources */, |
| 1176 | 19BB1FE12AEB5C220094D962 /* CNLiveShopConsoleController.swift in Sources */, | 1186 | 19BB1FE12AEB5C220094D962 /* CNLiveShopConsoleController.swift in Sources */, |
| @@ -1178,6 +1188,7 @@ | @@ -1178,6 +1188,7 @@ | ||
| 1178 | 7CD6753E2A2740B0008354C1 /* CNUpSlideView.swift in Sources */, | 1188 | 7CD6753E2A2740B0008354C1 /* CNUpSlideView.swift in Sources */, |
| 1179 | 7CD675402A2740B0008354C1 /* CNDownSlideView.swift in Sources */, | 1189 | 7CD675402A2740B0008354C1 /* CNDownSlideView.swift in Sources */, |
| 1180 | 19BB1FE32AEB8B7C0094D962 /* CNLiveShopConsoleViewModel.swift in Sources */, | 1190 | 19BB1FE32AEB8B7C0094D962 /* CNLiveShopConsoleViewModel.swift in Sources */, |
| 1191 | + 1965FA422AFB79EA00F0F435 /* CNLiveGoodsCategoryController.swift in Sources */, | ||
| 1181 | 792E57D92A3AA2F2005834DB /* CNLiveCommonBaseModel.swift in Sources */, | 1192 | 792E57D92A3AA2F2005834DB /* CNLiveCommonBaseModel.swift in Sources */, |
| 1182 | 791C1C862AFB2EB4003E6362 /* CNLiveShopOrderExpressViewController.swift in Sources */, | 1193 | 791C1C862AFB2EB4003E6362 /* CNLiveShopOrderExpressViewController.swift in Sources */, |
| 1183 | 7CD6753E2A2740B0008354C1 /* CNUpSlideView.swift in Sources */, | 1194 | 7CD6753E2A2740B0008354C1 /* CNUpSlideView.swift in Sources */, |
| @@ -1233,6 +1244,7 @@ | @@ -1233,6 +1244,7 @@ | ||
| 1233 | 791C1C8A2AFB84EE003E6362 /* CNLiveShopOrderExpressListViewController.swift in Sources */, | 1244 | 791C1C8A2AFB84EE003E6362 /* CNLiveShopOrderExpressListViewController.swift in Sources */, |
| 1234 | 7CD6753F2A2740B0008354C1 /* CNDownSlideViewRemindView.swift in Sources */, | 1245 | 7CD6753F2A2740B0008354C1 /* CNDownSlideViewRemindView.swift in Sources */, |
| 1235 | 19565ECF2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift in Sources */, | 1246 | 19565ECF2AF8D8F6007D6727 /* CNLiveShopGoodsListCell.swift in Sources */, |
| 1247 | + 1965FA3E2AFB176E00F0F435 /* CNLiveShopAddGoodsSingleView.swift in Sources */, | ||
| 1236 | 7CD6753C2A2740B0008354C1 /* CNUpSlideViewRemindView.swift in Sources */, | 1248 | 7CD6753C2A2740B0008354C1 /* CNUpSlideViewRemindView.swift in Sources */, |
| 1237 | 19BB1FEC2AF0AB8E0094D962 /* CNLiveDownShopDetailController.swift in Sources */, | 1249 | 19BB1FEC2AF0AB8E0094D962 /* CNLiveDownShopDetailController.swift in Sources */, |
| 1238 | 798A44E82A30134400815935 /* CNLiveMineHeaderView.swift in Sources */, | 1250 | 798A44E82A30134400815935 /* CNLiveMineHeaderView.swift in Sources */, |
metaCode/Classes/Main/HomePage/Controller/CNLiveShopConsoleController.swift
| @@ -112,7 +112,7 @@ class CNLiveShopConsoleController: CNLiveBaseViewController, UICollectionViewDel | @@ -112,7 +112,7 @@ class CNLiveShopConsoleController: CNLiveBaseViewController, UICollectionViewDel | ||
| 112 | 112 | ||
| 113 | }else if itemModel.type == CNLiveShopConsoleType.DDGL.rawValue{ | 113 | }else if itemModel.type == CNLiveShopConsoleType.DDGL.rawValue{ |
| 114 | //订单管理 | 114 | //订单管理 |
| 115 | - | 115 | + currentViewController()?.navigationController?.pushViewController(CNLiveShopOrderViewController.init(), animated: true) |
| 116 | } | 116 | } |
| 117 | // else if itemModel.type == CNLiveShopConsoleType.SH.rawValue{ | 117 | // else if itemModel.type == CNLiveShopConsoleType.SH.rawValue{ |
| 118 | // //退款/售后 | 118 | // //退款/售后 |
metaCode/Classes/Main/HomePage/Controller/CNMetaCodeHomePageController.swift
| @@ -390,9 +390,10 @@ class CNMetaCodeHomePageController:CNLiveBaseViewController, NewPagedFlowViewDel | @@ -390,9 +390,10 @@ class CNMetaCodeHomePageController:CNLiveBaseViewController, NewPagedFlowViewDel | ||
| 390 | if (identityModel.auth == true){ | 390 | if (identityModel.auth == true){ |
| 391 | bannerView?.baseScrollView.isScrollEnabled = true | 391 | bannerView?.baseScrollView.isScrollEnabled = true |
| 392 | }else{ | 392 | }else{ |
| 393 | + //未认证 | ||
| 393 | if (identityModel.downType == 3 || identityModel.downType == 4 || identityModel.upType == 3 || identityModel.upType == 4) | 394 | if (identityModel.downType == 3 || identityModel.downType == 4 || identityModel.upType == 3 || identityModel.upType == 4) |
| 394 | - { | ||
| 395 | -// bannerView?.baseScrollView.isScrollEnabled = false | 395 | + {//电商工作台和详情页 禁止滑动 |
| 396 | + bannerView?.baseScrollView.isScrollEnabled = false | ||
| 396 | }else{ | 397 | }else{ |
| 397 | bannerView?.baseScrollView.isScrollEnabled = true | 398 | bannerView?.baseScrollView.isScrollEnabled = true |
| 398 | } | 399 | } |
metaCode/Classes/Main/HomePage/Controller/GoodsManager/CNLiveGoodsCategoryController.swift
0 → 100644
metaCode/Classes/Main/HomePage/Controller/GoodsManager/CNLiveShopNewProductController.swift
| @@ -30,28 +30,433 @@ class CNLiveShopNewProductController:CNLiveBaseViewController{ | @@ -30,28 +30,433 @@ class CNLiveShopNewProductController:CNLiveBaseViewController{ | ||
| 30 | return dataModel | 30 | return dataModel |
| 31 | }() | 31 | }() |
| 32 | 32 | ||
| 33 | + var selectCategoryVC = CNLiveGoodsCategoryController() | ||
| 34 | + lazy var bottomNavView :UIView = { | ||
| 35 | + let bottomNavView = UIView(frame: CGRect(x: 0, y: KSreenHeight-KTabBarHeight, width: self.view.width, height: KTabBarHeight)) | ||
| 36 | + bottomNavView.backgroundColor = HexColor("F2F2F2") | ||
| 37 | + return bottomNavView | ||
| 38 | + }() | ||
| 39 | + | ||
| 33 | override func viewDidLoad() { | 40 | override func viewDidLoad() { |
| 34 | super.viewDidLoad() | 41 | super.viewDidLoad() |
| 35 | self.setUI() | 42 | self.setUI() |
| 36 | - self.bgScrollView.backgroundColor = .red | 43 | + self.bgScrollView.backgroundColor = .white |
| 37 | self.view.addSubview(self.bgScrollView) | 44 | self.view.addSubview(self.bgScrollView) |
| 38 | - self.type = .add | 45 | + self.initBgScrollViewContentView() |
| 39 | } | 46 | } |
| 47 | + | ||
| 48 | + override func viewWillLayoutSubviews() { | ||
| 49 | + super.viewWillLayoutSubviews() | ||
| 50 | + self.bgScrollView.frame = CGRect(x: 0, y: KNavigationHeight, width: KSreenWidth, height: KSreenHeight-KNavigationHeight-KTabBarHeight) | ||
| 51 | + var lastView:UIView? = nil | ||
| 52 | + for i in 0..<self.dataModel.list.count{ | ||
| 53 | + let singleView = self.view.viewWithTag(i+1) as! CNLiveShopAddGoodsSingleView | ||
| 54 | + singleView.frame = CGRect(x: 0, y: lastView?.bottom ?? 0, width: self.bgScrollView.width, height: singleView.height) | ||
| 55 | + if i+1 == 15{ | ||
| 56 | + singleView.frame = CGRect(x: 0, y: lastView?.bottom ?? 0, width: self.bgScrollView.width, height: 0.001) | ||
| 57 | + } | ||
| 58 | + lastView = singleView | ||
| 59 | + } | ||
| 60 | + self.bgScrollView.contentSize = CGSize(width: self.bgScrollView.width, height: lastView?.bottom ?? 0) | ||
| 61 | + self.selectCategoryVC.view.frame = CGRect(x: 0, y: 0, width: self.view.width, height: self.view.height) | ||
| 62 | + } | ||
| 63 | + | ||
| 40 | func setUI(){ | 64 | func setUI(){ |
| 41 | navigationBarHidden = false | 65 | navigationBarHidden = false |
| 42 | titleName = "新增商品" | 66 | titleName = "新增商品" |
| 67 | + self.initBottomView() | ||
| 68 | + } | ||
| 69 | + func initBottomView(){ | ||
| 70 | + self.view.addSubview(self.bottomNavView) | ||
| 71 | + self.bottomNavView.backgroundColor = .white | ||
| 72 | + let previewBtn = UIButton(type: .custom) | ||
| 73 | + previewBtn.frame = CGRect(x: 0, y: 0, width: 130, height: KTabBarHeight) | ||
| 74 | + previewBtn.setTitle("预览", for: .normal) | ||
| 75 | + previewBtn.setTitleColor(HexColor("#3A3A3A"), for: .normal) | ||
| 76 | + previewBtn.titleLabel?.font = Font_15 | ||
| 77 | + previewBtn.addTarget(self, action: #selector(previewBtnClick), for: .touchUpInside) | ||
| 78 | + self.bottomNavView.addSubview(previewBtn) | ||
| 43 | 79 | ||
| 80 | + let saveBtn = UIButton(type: .custom) | ||
| 81 | + saveBtn.frame = CGRect(x: previewBtn.right, y: 0, width: self.view.width - previewBtn.right, height: KTabBarHeight) | ||
| 82 | + saveBtn.setTitle("保存", for: .normal) | ||
| 83 | + saveBtn.setTitleColor(HexColor("#FFFFFF"), for: .normal) | ||
| 84 | + saveBtn.titleLabel?.font = Font_15 | ||
| 85 | + saveBtn.addTarget(self, action: #selector(saveBtnClick), for: .touchUpInside) | ||
| 86 | + saveBtn.backgroundColor = UIColor(hue:0.31, saturation:0.39, brightness:0.77, alpha:1.00) | ||
| 87 | + self.bottomNavView.addSubview(saveBtn) | ||
| 44 | } | 88 | } |
| 89 | + | ||
| 45 | func initBgScrollViewContentView(){ | 90 | func initBgScrollViewContentView(){ |
| 46 | - if self.type == .add{ | ||
| 47 | -// self.dataModel.initDataSource() | ||
| 48 | -// self.dataModel.list | ||
| 49 | - }else if self.type == .edit{ | 91 | + if self.type == .edit{ |
| 50 | 92 | ||
| 51 | - }else{ | 93 | + } |
| 94 | + self.dataModel.initDataSource() | ||
| 95 | + for i in 0..<self.dataModel.list.count { | ||
| 96 | + let model = self.dataModel.list[i] | ||
| 97 | + let singleView = CNLiveShopAddGoodsSingleView.init(frame: CGRect(x: 0, y: 0, width: KSreenWidth, height: 50)) | ||
| 98 | + singleView.addEditGoodsListModel = model | ||
| 99 | + singleView.tag = i+1 | ||
| 100 | + //完成frame更新通知 | ||
| 101 | + singleView.updateFrameBlock = { | ||
| 102 | + self.viewWillLayoutSubviews() | ||
| 103 | + } | ||
| 104 | + singleView.tapBlock = { single in | ||
| 105 | + // TODO: | ||
| 106 | +// if (single.tag == 1) { | ||
| 107 | +// //点击了商品分类 | ||
| 108 | +// | ||
| 109 | +// if (self.type == DSShopGoodsManageDetailsVCTypeEdit) { | ||
| 110 | +// DS_showMessage(@"商品分类不能修改"); | ||
| 111 | +// return; | ||
| 112 | +// } | ||
| 113 | +// [weakSelf displaySelectCategoryVC]; | ||
| 114 | +// } | ||
| 115 | +// else if([single.addEditGoodsListModel.title isEqualToString:@"店铺分类"]) | ||
| 116 | +// { | ||
| 117 | +// //点击了店铺分类 | ||
| 118 | +// [weakSelf displaySelectShopClassifyVC]; | ||
| 119 | +// } | ||
| 120 | + } | ||
| 52 | 121 | ||
| 122 | + self.bgScrollView.addSubview(singleView) | ||
| 53 | } | 123 | } |
| 54 | - | ||
| 55 | } | 124 | } |
| 56 | 125 | ||
| 126 | + // MARK: - BtnAction | ||
| 127 | + @objc func previewBtnClick(){ | ||
| 128 | + /* | ||
| 129 | + //商品轮播 | ||
| 130 | + let singleView4 = self.bgScrollView.viewWithTag(4) as! CNLiveShopAddGoodsSingleView | ||
| 131 | + //商品名称 | ||
| 132 | + let singleView5 = self.bgScrollView.viewWithTag(5) as! CNLiveShopAddGoodsSingleView | ||
| 133 | + //商品副标题 | ||
| 134 | + let singleView6 = self.bgScrollView.viewWithTag(6) as! CNLiveShopAddGoodsSingleView | ||
| 135 | + //本店售价 | ||
| 136 | + let singleView7 = self.bgScrollView.viewWithTag(7) as! CNLiveShopAddGoodsSingleView | ||
| 137 | + //市场售价 | ||
| 138 | + let singleView8 = self.bgScrollView.viewWithTag(8) as! CNLiveShopAddGoodsSingleView | ||
| 139 | + //商品详情图 | ||
| 140 | + let singleView13 = self.bgScrollView.viewWithTag(13) as! CNLiveShopAddGoodsSingleView | ||
| 141 | + //品名 | ||
| 142 | + let singleView18 = self.bgScrollView.viewWithTag(18) as! CNLiveShopAddGoodsSingleView | ||
| 143 | + //规格 | ||
| 144 | + let singleView19 = self.bgScrollView.viewWithTag(19) as! CNLiveShopAddGoodsSingleView | ||
| 145 | + //寄送区域 | ||
| 146 | + let singleView20 = self.bgScrollView.viewWithTag(20) as! CNLiveShopAddGoodsSingleView | ||
| 147 | + //发货时效 | ||
| 148 | + let singleView21 = self.bgScrollView.viewWithTag(21) as! CNLiveShopAddGoodsSingleView | ||
| 149 | +// let bannersSelectImageUrls = singleView4.uploadImageView.getCurrentSelectImageUrls | ||
| 150 | +// let bannersSelectImageUrls = singleView4.uploadImageView.getCurrentSelectVideoUrl | ||
| 151 | +// let bannerSelectVideoImage = singleView4.uploadImageView.getCurrentSelectLocalVideoUrlFirstImage | ||
| 152 | +// let contentDetailsSelectImageUrls = singleView13.uploadImageView.getCurrentSelectImageUrls | ||
| 153 | + | ||
| 154 | + if (bannersSelectImageUrls.count == 0 && bannerSelectVideoUrl.count == 0) { | ||
| 155 | + showMessage(message: "请选择商品轮播") | ||
| 156 | + return | ||
| 157 | + }else if (singleView5.contentTextField.text?.count == 0) { | ||
| 158 | + showMessage(message: "请输入商品名称") | ||
| 159 | + return | ||
| 160 | + }else if (singleView7.contentTextField.text?.count == 0) { | ||
| 161 | + showMessage(message: "请输入本店售价") | ||
| 162 | + return | ||
| 163 | + }else if (contentDetailsSelectImageUrls.count == 0) { | ||
| 164 | + showMessage(message: "请选择商品详情图") | ||
| 165 | + return | ||
| 166 | + } | ||
| 167 | + else if (self.selectShopClassifyVC.firCategoryId.count == 0) { | ||
| 168 | + showMessage(message: "请选择店铺分类") | ||
| 169 | + return | ||
| 170 | + } | ||
| 171 | + | ||
| 172 | + BKShopGoodsDetailsModel * goodsDetailsModel = [[BKShopGoodsDetailsModel alloc] init]; | ||
| 173 | + NSMutableArray * bannerImage = [NSMutableArray array]; | ||
| 174 | + for (NSString * imageUrl in bannersSelectImageUrls) { | ||
| 175 | + BKGoodsDetailsImageModel * model = [[BKGoodsDetailsImageModel alloc] init]; | ||
| 176 | + model.simg = imageUrl; | ||
| 177 | + [bannerImage addObject:model]; | ||
| 178 | + } | ||
| 179 | + goodsDetailsModel.image = [bannerImage copy]; | ||
| 180 | + DSGoodsDetailsBannerVideosModel * banner_video = [[DSGoodsDetailsBannerVideosModel alloc] init]; | ||
| 181 | + if (bannerSelectVideoImage) { | ||
| 182 | + banner_video.video_image = bannerSelectVideoImage; | ||
| 183 | + }else { | ||
| 184 | + banner_video.video_img = self.shopGoodsDetailsModel.video.video_img; | ||
| 185 | + } | ||
| 186 | + banner_video.video_url = bannerSelectVideoUrl; | ||
| 187 | + goodsDetailsModel.video = banner_video; | ||
| 188 | + goodsDetailsModel.title = singleView5.contentTextField.text; | ||
| 189 | + goodsDetailsModel.ads = singleView6.contentTextView.text; | ||
| 190 | + goodsDetailsModel.price = singleView7.contentTextField.text; | ||
| 191 | + goodsDetailsModel.prices = singleView8.contentTextField.text; | ||
| 192 | + goodsDetailsModel.category_id = self.selectShopClassifyVC.firCategoryId; | ||
| 193 | + goodsDetailsModel.category_id2 = self.selectShopClassifyVC.secCategoryId; | ||
| 194 | + | ||
| 195 | + NSMutableArray * contentDetailsImage = [NSMutableArray array]; | ||
| 196 | + for (NSString * imageUrl in contentDetailsSelectImageUrls) { | ||
| 197 | + BKGoodsDetailsContentModel * model = [[BKGoodsDetailsContentModel alloc] init]; | ||
| 198 | + model.simg = imageUrl; | ||
| 199 | + [contentDetailsImage addObject:model]; | ||
| 200 | + } | ||
| 201 | + goodsDetailsModel.detail_img = [contentDetailsImage copy]; | ||
| 202 | + | ||
| 203 | + NSMutableArray * kvArray = [[NSMutableArray alloc] init]; | ||
| 204 | + [kvArray addObject:@{@"k":@"品名",@"v":singleView18.contentTextField.text}]; | ||
| 205 | + [kvArray addObject:@{@"k":@"规格",@"v":singleView19.contentTextField.text}]; | ||
| 206 | + [kvArray addObject:@{@"k":@"寄送区域",@"v":singleView20.contentTextView.text}]; | ||
| 207 | + [kvArray addObject:@{@"k":@"发货时效",@"v":singleView21.contentTextField.text}]; | ||
| 208 | + | ||
| 209 | + NSMutableArray * tempArray = [self.bgScrollView.subviews mutableCopy]; | ||
| 210 | + [tempArray removeObjectsInRange:NSMakeRange(0, [tempArray indexOfObject:singleView19])]; | ||
| 211 | + if (tempArray.count > 2) { | ||
| 212 | + for (DSShopGoodsManageDetailsSingleView * singleView in tempArray) { | ||
| 213 | + if ([singleView isKindOfClass:DSShopGoodsManageDetailsSingleView.class]) { | ||
| 214 | + if (singleView.contentTextField.text.length > 0 && ![kvArray containsObject:@{@"k":singleView.model.title,@"v":singleView.contentTextField.text}]) { | ||
| 215 | + [kvArray addObject:@{@"k":singleView.model.title,@"v":singleView.contentTextField.text}]; | ||
| 216 | + } | ||
| 217 | + } | ||
| 218 | + } | ||
| 219 | + } | ||
| 220 | + goodsDetailsModel.attrArray = kvArray; | ||
| 221 | + | ||
| 222 | + BKShopGoodsDetailsViewController * vc = [[BKShopGoodsDetailsViewController alloc] init]; | ||
| 223 | + vc.type = BKShopGoodsDetailsVCTypePreview; | ||
| 224 | + vc.detailsModel = goodsDetailsModel; | ||
| 225 | + vc.goodsId = self.goodsId; | ||
| 226 | + [self dsPushViewController:vc animated:YES]; | ||
| 227 | + */ | ||
| 228 | + } | ||
| 229 | + @objc func saveBtnClick(){ | ||
| 230 | + /* | ||
| 231 | + DSShopGoodsManageDetailsSingleView * singleView4 = [self.bgScrollView viewWithTag:4];//商品轮播 | ||
| 232 | + DSShopGoodsManageDetailsSingleView * singleView5 = [self.bgScrollView viewWithTag:5];//商品名称 | ||
| 233 | + DSShopGoodsManageDetailsSingleView * singleView6 = [self.bgScrollView viewWithTag:6];//商品副标题 | ||
| 234 | + DSShopGoodsManageDetailsSingleView * singleView7 = [self.bgScrollView viewWithTag:7];//本店售价 | ||
| 235 | + DSShopGoodsManageDetailsSingleView * singleView8 = [self.bgScrollView viewWithTag:8];//市场售价 | ||
| 236 | + DSShopGoodsManageDetailsSingleView * singleView9 = [self.bgScrollView viewWithTag:9];//商品重量 | ||
| 237 | + DSShopGoodsManageDetailsSingleView * singleView10 = [self.bgScrollView viewWithTag:10];//最低起售 | ||
| 238 | + DSShopGoodsManageDetailsSingleView * singleView11 = [self.bgScrollView viewWithTag:11];//上架 | ||
| 239 | + | ||
| 240 | + DSShopGoodsManageDetailsSingleView * singleView13 = [self.bgScrollView viewWithTag:13];//商品详情图 | ||
| 241 | + DSShopGoodsManageDetailsSingleView * singleView14 = [self.bgScrollView viewWithTag:14];//商品运费 | ||
| 242 | + DSShopGoodsManageDetailsSingleView * singleView15 = [self.bgScrollView viewWithTag:15];//是否支持退货 | ||
| 243 | + DSShopGoodsManageDetailsSingleView * singleView16 = [self.bgScrollView viewWithTag:16];//商品单位 | ||
| 244 | + | ||
| 245 | + DSShopGoodsManageDetailsSingleView * singleView18 = [self.bgScrollView viewWithTag:18];//品名 | ||
| 246 | + DSShopGoodsManageDetailsSingleView * singleView19 = [self.bgScrollView viewWithTag:19];//规格 | ||
| 247 | + DSShopGoodsManageDetailsSingleView * singleView20 = [self.bgScrollView viewWithTag:20];//寄送区域 | ||
| 248 | + DSShopGoodsManageDetailsSingleView * singleView21 = [self.bgScrollView viewWithTag:21];//发货时效 | ||
| 249 | + | ||
| 250 | + | ||
| 251 | + NSArray * bannersSelectImageUrls = [singleView4.uploadImageView getCurrentSelectImageUrls]; | ||
| 252 | + NSMutableArray * bannerImage = [NSMutableArray array]; | ||
| 253 | + for (NSString * imageUrl in bannersSelectImageUrls) { | ||
| 254 | + [bannerImage addObject:@{@"img":imageUrl, @"ord":@"99"}]; | ||
| 255 | + } | ||
| 256 | + NSData * bannerImageData = [NSJSONSerialization dataWithJSONObject:bannerImage options:NSJSONWritingPrettyPrinted error:nil]; | ||
| 257 | + NSString * bannerImageStr = [[NSString alloc] initWithData:bannerImageData encoding:NSUTF8StringEncoding]; | ||
| 258 | + bannerImageStr = [bannerImageStr stringByReplacingOccurrencesOfString:@"\\n" withString:@""]; | ||
| 259 | + bannerImageStr = [bannerImageStr stringByReplacingOccurrencesOfString:@"\n" withString:@""]; | ||
| 260 | + bannerImageStr = [bannerImageStr stringByReplacingOccurrencesOfString:@"\\" withString:@""]; | ||
| 261 | + bannerImageStr = [bannerImageStr stringByReplacingOccurrencesOfString:@" " withString:@""]; | ||
| 262 | + | ||
| 263 | + NSString * bannerSelectVideoUrl = [singleView4.uploadImageView getCurrentSelectVideoUrl]; | ||
| 264 | + | ||
| 265 | + NSArray * contentDetailsSelectImageUrls = [singleView13.uploadImageView getCurrentSelectImageUrls]; | ||
| 266 | + NSMutableArray * contentDetailsImage = [NSMutableArray array]; | ||
| 267 | + for (NSString * imageUrl in contentDetailsSelectImageUrls) { | ||
| 268 | + [contentDetailsImage addObject:@{@"img":imageUrl, @"ord":@"99"}]; | ||
| 269 | + } | ||
| 270 | + NSData * contentDetailsImageData = [NSJSONSerialization dataWithJSONObject:contentDetailsImage options:NSJSONWritingPrettyPrinted error:nil]; | ||
| 271 | + NSString * contentDetailsImageStr = [[NSString alloc] initWithData:contentDetailsImageData encoding:NSUTF8StringEncoding]; | ||
| 272 | + contentDetailsImageStr = [contentDetailsImageStr stringByReplacingOccurrencesOfString:@"\\n" withString:@""]; | ||
| 273 | + contentDetailsImageStr = [contentDetailsImageStr stringByReplacingOccurrencesOfString:@"\n" withString:@""]; | ||
| 274 | + contentDetailsImageStr = [contentDetailsImageStr stringByReplacingOccurrencesOfString:@"\\" withString:@""]; | ||
| 275 | + contentDetailsImageStr = [contentDetailsImageStr stringByReplacingOccurrencesOfString:@" " withString:@""]; | ||
| 276 | + | ||
| 277 | + if (self.type == DSShopGoodsManageDetailsVCTypeAdd && [self.selectCategoryVC.thiCategoryId length] == 0) { | ||
| 278 | + DS_showMessage(@"请选择商品分类"); | ||
| 279 | + return; | ||
| 280 | + } | ||
| 281 | + else if (!self.selectShopClassifyVC.firCategoryId ||[DS_ToString(self.selectShopClassifyVC.firCategoryId) length] == 0 | ||
| 282 | + || [DS_ToString(self.selectShopClassifyVC.firCategoryId) isEqualToString:@"0"]) { | ||
| 283 | + DS_showMessage(@"请选择店铺分类"); | ||
| 284 | + return; | ||
| 285 | + } | ||
| 286 | + else if ([bannersSelectImageUrls count] == 0 && [bannerSelectVideoUrl length] == 0) { | ||
| 287 | + DS_showMessage(@"请选择商品轮播"); | ||
| 288 | + return; | ||
| 289 | + }else if ([[self strimStr:singleView5.contentTextField.text] length] == 0) { | ||
| 290 | + DS_showMessage(@"请输入商品名称"); | ||
| 291 | + return; | ||
| 292 | + } | ||
| 293 | + else if ([singleView5.contentTextField.text length] > 50) { | ||
| 294 | + DS_showMessage(@"商品名称最多支持50个字"); | ||
| 295 | + return; | ||
| 296 | + } | ||
| 297 | + else if ([singleView6.contentTextView.text length] > 30) | ||
| 298 | + { | ||
| 299 | + DS_showMessage(@"副商品名称最多支持30个字"); | ||
| 300 | + return; | ||
| 301 | + }else if ([singleView7.contentTextField.text length] == 0) { | ||
| 302 | + DS_showMessage(@"请输入本店售价"); | ||
| 303 | + return; | ||
| 304 | + }else if ([singleView7.contentTextField.text onlyNumber] && [singleView7.contentTextField.text length] >= DSMaxPrice) { | ||
| 305 | + DS_showMessage(@"请输入正确的售价"); | ||
| 306 | + return; | ||
| 307 | + }else if ([singleView8.contentTextField.text onlyNumber] && [singleView8.contentTextField.text length] >= DSMaxPrice) { | ||
| 308 | + DS_showMessage(@"请输入正确的市场售价"); | ||
| 309 | + return; | ||
| 310 | + }else if ([singleView8.contentTextField.text length] == 0) { | ||
| 311 | + DS_showMessage(@"请输入的市场售价"); | ||
| 312 | + return; | ||
| 313 | + }else if ([singleView10.countTF.text length] >= 5) { | ||
| 314 | + DS_showMessage(@"请输入正确的起售件数"); | ||
| 315 | + return; | ||
| 316 | + }else if ([contentDetailsSelectImageUrls count] == 0) { | ||
| 317 | + DS_showMessage(@"请选择商品详情图"); | ||
| 318 | + return; | ||
| 319 | + }else if ([[self strimStr:singleView18.contentTextField.text] length] == 0) { | ||
| 320 | + DS_showMessage(@"请输入品名"); | ||
| 321 | + return; | ||
| 322 | + }else if ([[self strimStr:singleView19.contentTextField.text] length] == 0) { | ||
| 323 | + DS_showMessage(@"请输入规格"); | ||
| 324 | + return; | ||
| 325 | + }else if ([[self strimStr:singleView20.contentTextView.text] length] == 0) { | ||
| 326 | + DS_showMessage(@"请输入寄送区域"); | ||
| 327 | + return; | ||
| 328 | + }else if ([singleView21.contentTextField.text length] == 0) { | ||
| 329 | + DS_showMessage(@"请输入发货时效"); | ||
| 330 | + return; | ||
| 331 | + } | ||
| 332 | + | ||
| 333 | + | ||
| 334 | + NSMutableArray * kvArray = [[NSMutableArray alloc] init]; | ||
| 335 | + [kvArray addObject:@{@"k":@"品名",@"v":singleView18.contentTextField.text}]; | ||
| 336 | + [kvArray addObject:@{@"k":@"规格",@"v":singleView19.contentTextField.text}]; | ||
| 337 | + [kvArray addObject:@{@"k":@"寄送区域",@"v":singleView20.contentTextView.text}]; | ||
| 338 | + [kvArray addObject:@{@"k":@"发货时效",@"v":singleView21.contentTextField.text}]; | ||
| 339 | + | ||
| 340 | + NSMutableArray * tempArray = [self.bgScrollView.subviews mutableCopy]; | ||
| 341 | + [tempArray removeObjectsInRange:NSMakeRange(0, [tempArray indexOfObject:singleView21])]; | ||
| 342 | + if (tempArray.count > 2) { | ||
| 343 | + for (DSShopGoodsManageDetailsSingleView * singleView in tempArray) { | ||
| 344 | + if ([singleView isKindOfClass:DSShopGoodsManageDetailsSingleView.class]) { | ||
| 345 | + if (singleView.contentTextField.text.length > 0 && ![kvArray containsObject:@{@"k":singleView.model.title,@"v":singleView.contentTextField.text}]) { | ||
| 346 | + [kvArray addObject:@{@"k":singleView.model.title,@"v":singleView.contentTextField.text}]; | ||
| 347 | + } | ||
| 348 | + } | ||
| 349 | + } | ||
| 350 | + } | ||
| 351 | + | ||
| 352 | + for (int i = 4; i < 20; i ++) { | ||
| 353 | + if (i == 11 || i == 16) continue; | ||
| 354 | + DSShopGoodsManageDetailsSingleView * singleView = [self.bgScrollView viewWithTag:i]; | ||
| 355 | + NSString * content = [singleView.contentTextField.text isNotBlank] ? singleView.contentTextField.text : singleView.contentTextView.text; | ||
| 356 | + if ([self stringContainsEmoji:content]) { | ||
| 357 | + DS_showMessage(@"参数不能添加表情"); | ||
| 358 | + return; | ||
| 359 | + } | ||
| 360 | + } | ||
| 361 | + | ||
| 362 | + | ||
| 363 | + for (NSDictionary * subDict in kvArray) { | ||
| 364 | + if ([self stringContainsEmoji:[subDict objectForKey:@"k"]]) { | ||
| 365 | + DS_showMessage(@"规格参数不能添加表情"); | ||
| 366 | + return; | ||
| 367 | + } | ||
| 368 | + if ([self stringContainsEmoji:[subDict objectForKey:@"v"]]) { | ||
| 369 | + DS_showMessage(@"规格参数不能添加表情"); | ||
| 370 | + return; | ||
| 371 | + } | ||
| 372 | + } | ||
| 373 | + | ||
| 374 | + NSString *category_id = @""; | ||
| 375 | + if (![NSString isEmpty:self.selectShopClassifyVC.secCategoryId]) { | ||
| 376 | + category_id = self.selectShopClassifyVC.secCategoryId; | ||
| 377 | + } | ||
| 378 | + else | ||
| 379 | + { | ||
| 380 | + category_id = self.selectShopClassifyVC.firCategoryId; | ||
| 381 | + } | ||
| 382 | + | ||
| 383 | + | ||
| 384 | + [self.view showLoading]; | ||
| 385 | + if (self.type == DSShopGoodsManageDetailsVCTypeAdd) { | ||
| 386 | + [DSShopRequest postGoodsAddWithUid:DS_USER_MODEL.uid | ||
| 387 | + groupid3:self.selectCategoryVC.thiCategoryId | ||
| 388 | + bannerImg:bannerImageStr | ||
| 389 | + simg:[bannersSelectImageUrls firstObject] | ||
| 390 | + video:bannerSelectVideoUrl | ||
| 391 | + title:singleView5.contentTextField.text | ||
| 392 | + ads:singleView6.contentTextView.text | ||
| 393 | + price:singleView7.contentTextField.text | ||
| 394 | + prices:singleView8.contentTextField.text | ||
| 395 | + kg:singleView9.contentTextField.text | ||
| 396 | + unit:singleView16.contentTextField.text | ||
| 397 | + state:singleView11.contentSwitch.on ? @"2" : @"1" | ||
| 398 | + storage:[kvArray mj_JSONString] | ||
| 399 | + infoImg:contentDetailsImageStr | ||
| 400 | + yunfei:singleView14.contentTextField.text | ||
| 401 | + min_count:singleView10.countTF.text | ||
| 402 | + isRefund:@"0"//singleView15.contentSwitch.on ? @"0" : @"1" | ||
| 403 | + category_id:category_id | ||
| 404 | + result:^(NSDictionary * _Nonnull jsonData, NSString * _Nonnull errorMessage) { | ||
| 405 | + [self.view hideLoading]; | ||
| 406 | + if (errorMessage) { | ||
| 407 | + DS_showMessage(errorMessage); | ||
| 408 | + return; | ||
| 409 | + } | ||
| 410 | + DS_showMessage(@"发布成功"); | ||
| 411 | + [[NSNotificationCenter defaultCenter] postNotificationName:kDSGoodsManageAddNotification object:nil]; | ||
| 412 | + | ||
| 413 | + for (int i = 0; i < [self.disposeDataModel.list count]; i++) { | ||
| 414 | + DSShopGoodsManageDetailsSingleView * singleView = (DSShopGoodsManageDetailsSingleView*)[self.view viewWithTag:i+1]; | ||
| 415 | + if (singleView.model.style == 3) { | ||
| 416 | + [singleView.uploadImageView deleteReplaceImageUrlAfterSuccessUploadThings]; | ||
| 417 | + } | ||
| 418 | + } | ||
| 419 | + | ||
| 420 | + [self dsPopViewControllerAnimated:YES]; | ||
| 421 | + }]; | ||
| 422 | + }else { | ||
| 423 | + [DSShopRequest postGoodsEditWithGoodsId:self.goodsId | ||
| 424 | + uid:DS_USER_MODEL.uid | ||
| 425 | + bannerImg:bannerImageStr | ||
| 426 | + simg:[bannersSelectImageUrls firstObject] | ||
| 427 | + video:bannerSelectVideoUrl | ||
| 428 | + title:singleView5.contentTextField.text | ||
| 429 | + ads:singleView6.contentTextView.text | ||
| 430 | + price:singleView7.contentTextField.text | ||
| 431 | + prices:singleView8.contentTextField.text | ||
| 432 | + kg:singleView9.contentTextField.text | ||
| 433 | + unit:singleView16.contentTextField.text | ||
| 434 | + state:singleView11.contentSwitch.on ? @"2" : @"1" | ||
| 435 | + storage:[kvArray mj_JSONString] | ||
| 436 | + infoImg:contentDetailsImageStr | ||
| 437 | + yunfei:singleView14.contentTextField.text | ||
| 438 | + min_count:singleView10.countTF.text | ||
| 439 | + isRefund:@"0"//singleView15.contentSwitch.on ? @"0" : @"1" | ||
| 440 | + category_id:category_id | ||
| 441 | + result:^(NSDictionary * _Nonnull jsonData, NSString * _Nonnull errorMessage) { | ||
| 442 | + [self.view hideLoading]; | ||
| 443 | + if (errorMessage) { | ||
| 444 | + DS_showMessage(errorMessage); | ||
| 445 | + return; | ||
| 446 | + } | ||
| 447 | + DS_showMessage(@"修改成功"); | ||
| 448 | + [[NSNotificationCenter defaultCenter] postNotificationName:kDSGoodsManageEditNotification object:nil userInfo:jsonData]; | ||
| 449 | + | ||
| 450 | + for (int i = 0; i < [self.disposeDataModel.list count]; i++) { | ||
| 451 | + DSShopGoodsManageDetailsSingleView * singleView = (DSShopGoodsManageDetailsSingleView*)[self.view viewWithTag:i+1]; | ||
| 452 | + if (singleView.model.style == 3) { | ||
| 453 | + [singleView.uploadImageView deleteReplaceImageUrlAfterSuccessUploadThings]; | ||
| 454 | + } | ||
| 455 | + } | ||
| 456 | + | ||
| 457 | + [self dsPopViewControllerAnimated:YES]; | ||
| 458 | + }]; | ||
| 459 | + }*/ | ||
| 460 | + } | ||
| 57 | } | 461 | } |
| 462 | + |
metaCode/Classes/Main/HomePage/Controller/GoodsManager/CNLiveShopProductManagerController.swift
| @@ -50,7 +50,7 @@ class CNLiveShopProductManagerController:CNLiveBaseViewController, UITableViewDa | @@ -50,7 +50,7 @@ class CNLiveShopProductManagerController:CNLiveBaseViewController, UITableViewDa | ||
| 50 | func setUI(){ | 50 | func setUI(){ |
| 51 | navigationBarHidden = false | 51 | navigationBarHidden = false |
| 52 | titleName = "商品管理" | 52 | titleName = "商品管理" |
| 53 | - rightNavBtns = [self.addBtn] | 53 | +// rightNavBtns = [self.addBtn] |
| 54 | self.view.addSubview(self.classifyView) | 54 | self.view.addSubview(self.classifyView) |
| 55 | self.view.addSubview(tableView) | 55 | self.view.addSubview(tableView) |
| 56 | tableView.frame = CGRect(x: 0, y:self.classifyView.bottom , width: KSreenWidth, height: KSreenHeight - self.classifyView.bottom) | 56 | tableView.frame = CGRect(x: 0, y:self.classifyView.bottom , width: KSreenWidth, height: KSreenHeight - self.classifyView.bottom) |
metaCode/Classes/Main/HomePage/View/CNLiveShopDetailBtnsCell.swift
| @@ -35,12 +35,14 @@ class CNLiveShopDetailBtnsCell: UICollectionViewCell { | @@ -35,12 +35,14 @@ class CNLiveShopDetailBtnsCell: UICollectionViewCell { | ||
| 35 | self.backgroundColor = .white | 35 | self.backgroundColor = .white |
| 36 | var titlesArr:Array<String> = [] | 36 | var titlesArr:Array<String> = [] |
| 37 | if DSUserInfoManager.shared.dsUserInfo.type != "3" { | 37 | if DSUserInfoManager.shared.dsUserInfo.type != "3" { |
| 38 | - titlesArr = ["发布动态", "商品管理", "订单管理", "交易记录"] | 38 | + titlesArr = [ "商品管理", "订单管理"] |
| 39 | +// titlesArr = ["发布动态", "商品管理", "订单管理", "交易记录"] | ||
| 39 | }else{ | 40 | }else{ |
| 40 | //健康餐桌 不处理 | 41 | //健康餐桌 不处理 |
| 41 | } | 42 | } |
| 42 | //替换icon | 43 | //替换icon |
| 43 | - let icons = ["ds_Up_Btn", "ds_Up_Btn", "ds_Up_Btn", "ds_Up_Btn"] | 44 | + let icons = ["ds_Up_Btn", "ds_Up_Btn"] |
| 45 | +// let icons = ["ds_Up_Btn", "ds_Up_Btn", "ds_Up_Btn", "ds_Up_Btn"] | ||
| 44 | if titlesArr.count > 0 { | 46 | if titlesArr.count > 0 { |
| 45 | for i in 0..<titlesArr.count { | 47 | for i in 0..<titlesArr.count { |
| 46 | let titleStr = titlesArr[i] | 48 | let titleStr = titlesArr[i] |
| @@ -71,18 +73,25 @@ class CNLiveShopDetailBtnsCell: UICollectionViewCell { | @@ -71,18 +73,25 @@ class CNLiveShopDetailBtnsCell: UICollectionViewCell { | ||
| 71 | let tag = sender.tag | 73 | let tag = sender.tag |
| 72 | ///push VC | 74 | ///push VC |
| 73 | if tag == 100 { | 75 | if tag == 100 { |
| 74 | - //发布动态 | ||
| 75 | - }else if tag == 101 { | ||
| 76 | //商品管理 | 76 | //商品管理 |
| 77 | - let webVC = CNWebViewController() | ||
| 78 | - webVC.url = URL(string:"https://www.baidu.com") | ||
| 79 | - currentViewController()?.navigationController?.pushViewController(webVC, animated: true) | ||
| 80 | - | ||
| 81 | - }else if tag == 102 { | 77 | + currentViewController()?.navigationController?.pushViewController(CNLiveShopProductManagerController.init(), animated: true) |
| 78 | + }else if tag == 101 { | ||
| 82 | //订单管理 | 79 | //订单管理 |
| 83 | - }else if tag == 103 { | ||
| 84 | - //交易记录 | 80 | + currentViewController()?.navigationController?.pushViewController(CNLiveShopOrderViewController.init(), animated: true) |
| 85 | } | 81 | } |
| 82 | +// if tag == 100 { | ||
| 83 | +// //发布动态 | ||
| 84 | +// }else if tag == 101 { | ||
| 85 | +// //商品管理 | ||
| 86 | +// let webVC = CNWebViewController() | ||
| 87 | +// webVC.url = URL(string:"https://www.baidu.com") | ||
| 88 | +// currentViewController()?.navigationController?.pushViewController(webVC, animated: true) | ||
| 89 | +// | ||
| 90 | +// }else if tag == 102 { | ||
| 91 | +// //订单管理 | ||
| 92 | +// }else if tag == 103 { | ||
| 93 | +// //交易记录 | ||
| 94 | +// } | ||
| 86 | 95 | ||
| 87 | } | 96 | } |
| 88 | } | 97 | } |
metaCode/Classes/Main/HomePage/View/CNLiveShopDetailOrderAssetCell.swift
| @@ -68,6 +68,11 @@ class CNLiveShopDetailOrderAssetCell:UICollectionViewCell{ | @@ -68,6 +68,11 @@ class CNLiveShopDetailOrderAssetCell:UICollectionViewCell{ | ||
| 68 | self.navsubBtn.setTitle("订单明细", for: .normal) | 68 | self.navsubBtn.setTitle("订单明细", for: .normal) |
| 69 | self.navsubBtn.setupButtonImageAndTitlePossitionWith(padding: 4, style:.right) | 69 | self.navsubBtn.setupButtonImageAndTitlePossitionWith(padding: 4, style:.right) |
| 70 | self.contentView.addSubview(self.navsubBtn) | 70 | self.contentView.addSubview(self.navsubBtn) |
| 71 | + if self.displayType == .CNLiveShopDetailDisplayTypeOrder{ | ||
| 72 | + | ||
| 73 | + }else if self.displayType == .CNLiveShopDetailDisplayTypeAsset{ | ||
| 74 | + self.navsubBtn.isHidden = true | ||
| 75 | + } | ||
| 71 | 76 | ||
| 72 | var imgName = "" | 77 | var imgName = "" |
| 73 | if self.displayType == .CNLiveShopDetailDisplayTypeOrder{ | 78 | if self.displayType == .CNLiveShopDetailDisplayTypeOrder{ |
| @@ -120,6 +125,7 @@ class CNLiveShopDetailOrderAssetCell:UICollectionViewCell{ | @@ -120,6 +125,7 @@ class CNLiveShopDetailOrderAssetCell:UICollectionViewCell{ | ||
| 120 | @objc func navsubBtnAction(_ sender: UIButton){ | 125 | @objc func navsubBtnAction(_ sender: UIButton){ |
| 121 | if self.displayType == .CNLiveShopDetailDisplayTypeOrder{ | 126 | if self.displayType == .CNLiveShopDetailDisplayTypeOrder{ |
| 122 | //push订单VC | 127 | //push订单VC |
| 128 | + currentViewController()?.navigationController?.pushViewController(CNLiveShopOrderViewController.init(), animated: true) | ||
| 123 | }else if self.displayType == .CNLiveShopDetailDisplayTypeAsset{ | 129 | }else if self.displayType == .CNLiveShopDetailDisplayTypeAsset{ |
| 124 | //push余额VC | 130 | //push余额VC |
| 125 | } | 131 | } |
metaCode/Classes/Main/HomePage/View/CNMainView.swift
| @@ -199,7 +199,16 @@ class CNFrontMainView : UIView{ | @@ -199,7 +199,16 @@ class CNFrontMainView : UIView{ | ||
| 199 | //跳转到添加身份页面 | 199 | //跳转到添加身份页面 |
| 200 | // currentViewController()?.navigationController?.pushViewController(CNLiveMineInputViewController.init(listModel: _idModel!), animated: false) | 200 | // currentViewController()?.navigationController?.pushViewController(CNLiveMineInputViewController.init(listModel: _idModel!), animated: false) |
| 201 | // DispatchQueue.main.asyncAfter(deadline: .now()+0.25){ | 201 | // DispatchQueue.main.asyncAfter(deadline: .now()+0.25){ |
| 202 | - currentViewController()?.navigationController?.pushViewController(CNLiveMineInputViewController.init(listModel: self._idModel!), animated: false) | 202 | + if _idModel!.id == 9 { |
| 203 | + showLoading(message: "") | ||
| 204 | + CNLiveMineViewModel.requestApplyShopInfo { [weak self] result, respStatue in | ||
| 205 | + | ||
| 206 | + if respStatue == .success { | ||
| 207 | + currentViewController()?.navigationController?.pushViewController(CNLiveMineShopViewController.init(showType: .one, listModel: (self?.idModel)!, tempArray: []), animated: true) | ||
| 208 | + } | ||
| 209 | + } | ||
| 210 | + } | ||
| 211 | +// currentViewController()?.navigationController?.pushViewController(CNLiveMineInputViewController.init(listModel: self._idModel!), animated: false) | ||
| 203 | // } | 212 | // } |
| 204 | 213 | ||
| 205 | } | 214 | } |
metaCode/Classes/Main/HomePage/View/CNUpSlideView.swift
| @@ -54,6 +54,7 @@ class CNUpSlideView:UIView{ | @@ -54,6 +54,7 @@ class CNUpSlideView:UIView{ | ||
| 54 | else if(type == UpDownTypePage){ | 54 | else if(type == UpDownTypePage){ |
| 55 | 55 | ||
| 56 | }else if(type == UpDownTypeShopDetail){ | 56 | }else if(type == UpDownTypeShopDetail){ |
| 57 | + currentViewController()?.addChild(self.upSlideVC)//看行不行 | ||
| 57 | self.addSubview(self.upSlideVC.view) | 58 | self.addSubview(self.upSlideVC.view) |
| 58 | }else if(type == UpDownTypeShopControlConsole){ | 59 | }else if(type == UpDownTypeShopControlConsole){ |
| 59 | 60 |
metaCode/Classes/Main/HomePage/View/GoodsManager/CNLiveAddGoodsSelectUploadImageView.swift
0 → 100644
| 1 | +// | ||
| 2 | +// CNLiveAddGoodsSelectUploadImageView.swift | ||
| 3 | +// metaCode | ||
| 4 | +// | ||
| 5 | +// Created by zx on 2023/11/8. | ||
| 6 | +// | ||
| 7 | + | ||
| 8 | +import Foundation | ||
| 9 | + | ||
| 10 | +class CNLiveAddGoodsSelectUploadImageView: UIView { | ||
| 11 | + override init(frame: CGRect) { | ||
| 12 | + super.init(frame: frame) | ||
| 13 | + } | ||
| 14 | + | ||
| 15 | + required init?(coder: NSCoder) { | ||
| 16 | + fatalError("init(coder:) has not been implemented") | ||
| 17 | + } | ||
| 18 | +} |
metaCode/Classes/Main/HomePage/View/GoodsManager/CNLiveShopAddGoodsSingleView.swift
0 → 100644
| 1 | +// | ||
| 2 | +// CNLiveShopAddGoodsSingleView.swift | ||
| 3 | +// metaCode | ||
| 4 | +// | ||
| 5 | +// Created by zx on 2023/11/8. | ||
| 6 | +// | ||
| 7 | + | ||
| 8 | +import Foundation | ||
| 9 | + | ||
| 10 | +///回调 | ||
| 11 | +typealias updateBlock = ()->Void | ||
| 12 | +typealias tapClickBlock = (_ singleView:CNLiveShopAddGoodsSingleView)->Void | ||
| 13 | + | ||
| 14 | +class CNLiveShopAddGoodsSingleView: UIView, UITextFieldDelegate { | ||
| 15 | + /// | ||
| 16 | + var updateFrameBlock:updateBlock? | ||
| 17 | + // | ||
| 18 | + var tapBlock:tapClickBlock? | ||
| 19 | + //model | ||
| 20 | + var _addEditGoodsListModel : CNLiveShopAddEditGoodsListModel? | ||
| 21 | + var addEditGoodsListModel : CNLiveShopAddEditGoodsListModel? { | ||
| 22 | + get{ | ||
| 23 | + _addEditGoodsListModel | ||
| 24 | + } | ||
| 25 | + set{ | ||
| 26 | + _addEditGoodsListModel = newValue! | ||
| 27 | + self.setupNewUI(model: _addEditGoodsListModel!) | ||
| 28 | + } | ||
| 29 | + } | ||
| 30 | + | ||
| 31 | + ///标题 | ||
| 32 | + lazy var titleLabel: UILabel = { | ||
| 33 | + let titleLabel = UILabel.init(frame: CGRectMake(15 , 15, 145, 20)) | ||
| 34 | +// titleLabel.textColor = HexColor("#333333") | ||
| 35 | +// titleLabel.textAlignment = .left | ||
| 36 | +// titleLabel.font = Font_15 | ||
| 37 | +// titleLabel.adjustsFontSizeToFitWidth=true | ||
| 38 | +// titleLabel.text = "啊啊啊啊啊" | ||
| 39 | + return titleLabel | ||
| 40 | + }() | ||
| 41 | + //副标题 | ||
| 42 | + var subButton = UIButton() | ||
| 43 | + var contentTextField = UITextField() | ||
| 44 | + var delectButton = UIButton() | ||
| 45 | + var rightImageView = UIImageView() | ||
| 46 | + var contentSwitch = UISwitch() | ||
| 47 | + var uploadImageView = CNLiveAddGoodsSelectUploadImageView(frame: CGRectZero) | ||
| 48 | + var contentTextBgView = UIView() | ||
| 49 | + var contentTextView = UITextView()// | ||
| 50 | + var addBtn = UIButton() | ||
| 51 | + var subtractBtn = UIButton() | ||
| 52 | + var countTF = UITextField() | ||
| 53 | + var descLab = UILabel() | ||
| 54 | + var line = UIImageView() | ||
| 55 | + var starImageView = UIImageView() | ||
| 56 | + | ||
| 57 | + | ||
| 58 | + | ||
| 59 | + override init(frame: CGRect) { | ||
| 60 | + super.init(frame: frame) | ||
| 61 | + self.setUI() | ||
| 62 | + } | ||
| 63 | + | ||
| 64 | + func setUI(){ | ||
| 65 | + | ||
| 66 | + } | ||
| 67 | + | ||
| 68 | + func setupNewUI(model:CNLiveShopAddEditGoodsListModel){ | ||
| 69 | + self.backgroundColor = model.style == "2" ? HexColor("#F6F6F6") : HexColor("#FFFFFF") | ||
| 70 | + if (model.isHaveTo ?? false) { | ||
| 71 | + self.starImageView = UIImageView() | ||
| 72 | + self.starImageView.image = UIImage(named: "DS_shop_manageGoodsDetails_star") | ||
| 73 | + self.starImageView.clipsToBounds = true | ||
| 74 | + self.starImageView.contentMode = .scaleAspectFit | ||
| 75 | + self.addSubview(self.starImageView) | ||
| 76 | + } | ||
| 77 | + self.titleLabel = UILabel() | ||
| 78 | + if (self.addEditGoodsListModel?.style == "2") { | ||
| 79 | + | ||
| 80 | + self.titleLabel.textColor = HexColor("#9D9D9D") | ||
| 81 | + self.titleLabel.text = self.addEditGoodsListModel?.title | ||
| 82 | + if (self.addEditGoodsListModel!.touchSubtitle?.count ?? 0 > 0) { | ||
| 83 | + let subBtn = UIButton(type: .custom) | ||
| 84 | + subBtn.frame = CGRect(x: self.width - 50, y: 0, width: 50, height: 50) | ||
| 85 | + subBtn.setTitle("添加通用参数", for: .normal) | ||
| 86 | + subBtn.setTitleColor(HexColor("#0091FF"), for: .normal) | ||
| 87 | + subBtn.titleLabel?.font = Font_14 | ||
| 88 | + subBtn.titleLabel?.textAlignment = .right | ||
| 89 | + subBtn.addTarget(self, action: #selector(subBtnAction), for: .touchUpInside) | ||
| 90 | + self.subButton = subBtn | ||
| 91 | + self.addSubview(self.subButton) | ||
| 92 | + } | ||
| 93 | + }else | ||
| 94 | + { | ||
| 95 | + self.titleLabel.textColor = HexColor("#333333") | ||
| 96 | + if (self.addEditGoodsListModel?.subtitle?.count ?? 0 > 0) { | ||
| 97 | + self.titleLabel.text = "\(self.addEditGoodsListModel?.title ?? "")+\(self.addEditGoodsListModel?.subtitle ?? "")" | ||
| 98 | + }else{ | ||
| 99 | + self.titleLabel.text = self.addEditGoodsListModel?.title ?? "" | ||
| 100 | + } | ||
| 101 | + } | ||
| 102 | + self.titleLabel.font = Font_14 | ||
| 103 | + self.addSubview(self.titleLabel) | ||
| 104 | + | ||
| 105 | + if (self.addEditGoodsListModel?.style == "1") { | ||
| 106 | + let contentTextField = UITextField() | ||
| 107 | + contentTextField.returnKeyType = .done | ||
| 108 | + contentTextField.placeholder = "请输入" | ||
| 109 | + contentTextField.font = Font_14 | ||
| 110 | + contentTextField.textColor = HexColor(model.contentTextColor ?? "#787878") | ||
| 111 | + contentTextField.delegate = self | ||
| 112 | + | ||
| 113 | + if (model.content?.count ?? 0 > 0){ contentTextField.text = model.content | ||
| 114 | + } | ||
| 115 | + | ||
| 116 | + if (model.contentTextFieldkeyboardType == "2") { | ||
| 117 | + contentTextField.keyboardType = .decimalPad | ||
| 118 | + }else { | ||
| 119 | + contentTextField.keyboardType = .default | ||
| 120 | + } | ||
| 121 | + self.contentTextField = contentTextField | ||
| 122 | + | ||
| 123 | + if (model.contentType == "1") { | ||
| 124 | + self.contentTextField.isUserInteractionEnabled = true | ||
| 125 | + | ||
| 126 | + if (model.isDelect ?? false) { | ||
| 127 | + self.delectButton = UIButton(type: .custom) | ||
| 128 | + self.delectButton.setTitle("删除", for: .normal) | ||
| 129 | + self.delectButton.setTitleColor(HexColor("#0091FF"), for: .normal) | ||
| 130 | + self.delectButton.titleLabel?.font = Font_14 | ||
| 131 | + self.delectButton.titleLabel?.textAlignment = .right | ||
| 132 | + self.delectButton.addTarget(self, action: #selector(selectDelectParamAction), for: .touchUpInside) | ||
| 133 | + self.addSubview(self.delectButton) | ||
| 134 | + } | ||
| 135 | + }else if (model.contentType == "2") { | ||
| 136 | + self.contentTextField.isUserInteractionEnabled = false | ||
| 137 | + self.rightImageView = UIImageView() | ||
| 138 | + self.rightImageView.image = UIImage(named: "DS_shop_manageGoodsDetails_rightArrow") | ||
| 139 | + self.rightImageView.contentMode = .scaleAspectFit | ||
| 140 | + self.rightImageView.clipsToBounds = true | ||
| 141 | + self.addSubview(self.rightImageView) | ||
| 142 | + self.addGestureRecognizer(UITapGestureRecognizer.init(target: self, action: #selector(selfTap))) | ||
| 143 | + }else { | ||
| 144 | + self.contentTextField.isUserInteractionEnabled = false | ||
| 145 | + self.contentTextField.isHidden = true | ||
| 146 | + | ||
| 147 | + self.contentSwitch = UISwitch() | ||
| 148 | + self.contentSwitch.transform = CGAffineTransformMakeScale(0.7, 0.7) | ||
| 149 | + //不写到layoutSubviews中是因为 会变位置 | ||
| 150 | + self.contentSwitch.top = (50-self.contentSwitch.height)*0.5 | ||
| 151 | + self.contentSwitch.onTintColor = HexColor("#61C464") | ||
| 152 | + self.contentSwitch.tintColor = HexColor("#DBDEDB") | ||
| 153 | + self.contentSwitch.isOn = true | ||
| 154 | + self.contentSwitch.addTarget(self, action: #selector(switchValueChanged), for: .valueChanged) | ||
| 155 | + self.addSubview(self.contentSwitch) | ||
| 156 | + } | ||
| 157 | + self.addSubview(self.contentTextField) | ||
| 158 | + self.height = 50 | ||
| 159 | + }else if (model.style == "2") { | ||
| 160 | + self.height = 50 | ||
| 161 | + }else if (model.style == "3") { | ||
| 162 | + self.uploadImageView = CNLiveAddGoodsSelectUploadImageView(frame: CGRectZero) | ||
| 163 | +// self.uploadImageView.column = 3 | ||
| 164 | +// self.uploadImageView.maxSelectImageCount = model.maxSelectImageCount | ||
| 165 | +// self.uploadImageView.isAbleSelectVideo = model.isAbleSelectVideo | ||
| 166 | +// self.uploadImageView.isDisplySelectCover = model.isAbleSelectCover | ||
| 167 | +// if model.id?.isEmpty { | ||
| 168 | +// self.uploadImageView.deleteImage = UIImage(named: "DS_shop_manageGoodsDetails_delete") | ||
| 169 | +// } | ||
| 170 | +// [self.uploadImageView setChangeFrameCallBack:^{ | ||
| 171 | +// weakSelf.height = CGRectGetMaxY(weakSelf.uploadImageView.frame) + DS_adapt_length(15); | ||
| 172 | +// if (weakSelf.changeFrameCallBack) { | ||
| 173 | +// weakSelf.changeFrameCallBack(); | ||
| 174 | +// } | ||
| 175 | +// }]; | ||
| 176 | + self.addSubview(self.uploadImageView) | ||
| 177 | + }else if (model.style == "4") { | ||
| 178 | + self.contentTextBgView = UIView() | ||
| 179 | +// self.contentTextBgView.fillColor = HexColor("F9F9F9") | ||
| 180 | +// self.contentTextBgView.radius = 8 | ||
| 181 | + self.addSubview(self.contentTextBgView) | ||
| 182 | + | ||
| 183 | +// self.contentTextView = UITextView() | ||
| 184 | +// self.contentTextView.placeholder = model.placeholder | ||
| 185 | +// self.contentTextView.placeholderColor = HexColor("c6c6c6") | ||
| 186 | +// self.contentTextView.font = Font_14 | ||
| 187 | +// self.contentTextView.textColor = HexColor("787878") | ||
| 188 | +// self.contentTextView.delegate = self | ||
| 189 | +// if (model.content?.count ?? 0 > 0){ self.contentTextView.text = model.content | ||
| 190 | +// } | ||
| 191 | +// self.contentTextBgView.addSubview(self.contentTextView) | ||
| 192 | + self.height = 120 | ||
| 193 | + }else if (model.style == "5") { | ||
| 194 | + //添加输入框 | ||
| 195 | + self.addBtn = UIButton(type: .custom) | ||
| 196 | + self.addBtn.setImage(UIImage(named: "DS_main_add_count"), for: .normal) | ||
| 197 | + self.addBtn.imageView?.contentMode = .scaleAspectFit | ||
| 198 | + self.addBtn.addTarget(self, action: #selector(addBtnClick), for: .touchUpInside) | ||
| 199 | + self.addSubview(self.addBtn) | ||
| 200 | + | ||
| 201 | + self.subtractBtn = UIButton(type: .custom) | ||
| 202 | + self.subtractBtn.setImage(UIImage(named: "DS_main_unadd_count_n"), for: .normal) | ||
| 203 | + self.subtractBtn.imageView?.contentMode = .scaleAspectFit | ||
| 204 | + self.subtractBtn.addTarget(self, action: #selector(subtractBtnClick), for: .touchUpInside) | ||
| 205 | + self.addSubview(self.subtractBtn) | ||
| 206 | + | ||
| 207 | + self.countTF = UITextField() | ||
| 208 | + self.countTF.text = "1" | ||
| 209 | + self.countTF.textAlignment = .center | ||
| 210 | + self.countTF.font = Font_15 | ||
| 211 | + self.countTF.borderStyle = .none | ||
| 212 | + self.countTF.delegate = self | ||
| 213 | + self.countTF.layer.masksToBounds = true | ||
| 214 | + self.countTF.layer.cornerRadius = 5 | ||
| 215 | + self.countTF.keyboardType = .numberPad | ||
| 216 | + self.countTF.backgroundColor = HexColor("#F1F1F1") | ||
| 217 | + self.countTF.addTarget(self, action: #selector(textDidChange(sender:)), for: .editingChanged) | ||
| 218 | + self.addSubview(self.countTF) | ||
| 219 | + | ||
| 220 | + self.descLab = UILabel() | ||
| 221 | + self.descLab.textColor = HexColor("#C4C4C6)") | ||
| 222 | + self.descLab.font = Font_10 | ||
| 223 | + self.descLab.text = model.desc | ||
| 224 | + self.addSubview(self.descLab) | ||
| 225 | + | ||
| 226 | + self.height = 60 | ||
| 227 | + } | ||
| 228 | + if (model.isDisplayLine ?? false) { | ||
| 229 | + self.line = UIImageView() | ||
| 230 | + self.line.backgroundColor = HexColor("#e6e6e6)") | ||
| 231 | + self.addSubview(self.line) | ||
| 232 | + } | ||
| 233 | + } | ||
| 234 | + | ||
| 235 | + override func layoutSubviews() { | ||
| 236 | + super.layoutSubviews() | ||
| 237 | + self.titleLabel.frame = CGRect(x: 15, y: 15, width: 145, height: 20) | ||
| 238 | + if (self.addEditGoodsListModel!.desc?.count ?? 0 > 0 && self.addEditGoodsListModel!.style == "5") { | ||
| 239 | + self.descLab.frame = CGRect(x: 15, y: 35, width: 145, height: 20) | ||
| 240 | + } | ||
| 241 | + self.starImageView.frame = CGRect(x: self.titleLabel.left-3-5, y: 0, width: 5, height: 5) | ||
| 242 | + self.starImageView.centerY = self.titleLabel.centerY | ||
| 243 | + if (self.addEditGoodsListModel?.style == "2"){ | ||
| 244 | + self.subButton.frame = CGRect(x: KSreenWidth-130, y: 15, width: 120, height: 20) | ||
| 245 | + } | ||
| 246 | + if (self.addEditGoodsListModel!.style == "1") { | ||
| 247 | + if (self.addEditGoodsListModel!.contentType == "1") { | ||
| 248 | + if (self.addEditGoodsListModel!.isDelect ?? false) { | ||
| 249 | + self.delectButton.frame = CGRect(x: KSreenWidth-50, y: 0, width: 40, height: 50) | ||
| 250 | + self.contentTextField.frame = CGRect(x: self.titleLabel.right+15, y: 0, width: self.width-self.titleLabel.right+15*2-40, height: 50) | ||
| 251 | + }else{ | ||
| 252 | + self.contentTextField.frame = CGRect(x: self.titleLabel.right+15, y: 0, width: self.width-self.titleLabel.right-15*2, height: 50) | ||
| 253 | + } | ||
| 254 | + }else if (self.addEditGoodsListModel!.contentType == "2") { | ||
| 255 | + let contentTextFieldMaxW = self.width - self.titleLabel.right-15*3-2 | ||
| 256 | + self.contentTextField.sizeToFit() | ||
| 257 | + if (self.contentTextField.width > contentTextFieldMaxW) { | ||
| 258 | + self.contentTextField.width = contentTextFieldMaxW | ||
| 259 | + } | ||
| 260 | + self.contentTextField.left = self.titleLabel.right + 15 | ||
| 261 | + self.contentTextField.centerY = self.titleLabel.centerY | ||
| 262 | + self.rightImageView.frame = CGRect(x: self.contentTextField.right+2, y: 0, width: 15, height: 15) | ||
| 263 | + self.rightImageView.centerY = self.titleLabel.centerY | ||
| 264 | + }else { | ||
| 265 | + self.contentSwitch.left = self.titleLabel.right+15 | ||
| 266 | + } | ||
| 267 | + self.addSubview(self.contentTextField) | ||
| 268 | + }else if (self.addEditGoodsListModel!.style == "3") { | ||
| 269 | + self.uploadImageView.frame = CGRect(x: 0, y: self.titleLabel.bottom+2, width: self.width, height: 0) | ||
| 270 | + if (self.height == 0) { | ||
| 271 | + self.height = self.uploadImageView.bottom+15 | ||
| 272 | + if ((self.updateFrameBlock) != nil) { | ||
| 273 | + self.updateFrameBlock!() | ||
| 274 | + } | ||
| 275 | + } | ||
| 276 | + }else if (self.addEditGoodsListModel!.style == "4") { | ||
| 277 | + self.contentTextBgView.frame = CGRect(x: 15, y: self.titleLabel.bottom+10, width: self.width - 15*2, height: 60) | ||
| 278 | + self.contentTextView.frame = CGRect(x: 10, y: 10, width: self.contentTextBgView.width-10*2, height: self.contentTextBgView.height-10*2) | ||
| 279 | + }else if (self.addEditGoodsListModel!.style == "5") { | ||
| 280 | + self.subtractBtn.frame = CGRect(x: 15+self.titleLabel.right, y: 15, width: 30, height: 30) | ||
| 281 | + self.countTF.frame = CGRect(x: self.subtractBtn.right+2, y: self.subtractBtn.top+5, width: 55, height: 20) | ||
| 282 | + self.addBtn.frame = CGRect(x: self.countTF.right+2, y: self.subtractBtn.top, width: 30, height: 30) | ||
| 283 | + } | ||
| 284 | + self.line.frame = CGRect(x: 15, y: self.height-1, width: self.width-15*2, height: 1) | ||
| 285 | + } | ||
| 286 | + | ||
| 287 | + required init?(coder: NSCoder) { | ||
| 288 | + fatalError("init(coder:) has not been implemented") | ||
| 289 | + } | ||
| 290 | + | ||
| 291 | + // MARK: - BtnAction | ||
| 292 | + @objc func subBtnAction(){ | ||
| 293 | + if ((self.updateFrameBlock) != nil) { | ||
| 294 | + self.updateFrameBlock!() | ||
| 295 | + } | ||
| 296 | + } | ||
| 297 | + @objc func selectDelectParamAction(){ | ||
| 298 | + AlertTool.showSystemAlert(title: "确认删除?", message: nil, actionTitles: ["取消","确定"], style: .alert, actionStyles:[.cancel,.default] ) { index in | ||
| 299 | + if (index == 1) { | ||
| 300 | + if ((self.updateFrameBlock) != nil) { | ||
| 301 | + self.updateFrameBlock!() | ||
| 302 | + } | ||
| 303 | + } | ||
| 304 | + } | ||
| 305 | + } | ||
| 306 | + @objc func selfTap(){ | ||
| 307 | + | ||
| 308 | + if ((self.tapBlock) != nil) { | ||
| 309 | + self.tapBlock!(self) | ||
| 310 | + } | ||
| 311 | + } | ||
| 312 | + @objc func switchValueChanged(){ | ||
| 313 | + | ||
| 314 | + } | ||
| 315 | + @objc func addBtnClick(){ | ||
| 316 | + | ||
| 317 | + } | ||
| 318 | + @objc func subtractBtnClick(){ | ||
| 319 | + | ||
| 320 | + } | ||
| 321 | + | ||
| 322 | + @objc func textDidChange(sender:UITextField) { | ||
| 323 | + if (sender == self.countTF) { | ||
| 324 | + if (self.countTF.text?.count ?? 0 > 0 && self.countTF.text?.isPurnInt() ?? false) { | ||
| 325 | + let count:Int = (self.countTF.text! as NSString).integerValue | ||
| 326 | + if (count <= 1) { | ||
| 327 | + self.subtractBtn.setImage(UIImage(named: "DS_main_unadd_count_n"), for: .normal) | ||
| 328 | + }else{ | ||
| 329 | + self.subtractBtn.setImage(UIImage(named: "DS_main_unadd_count"), for: .normal) | ||
| 330 | + } | ||
| 331 | + } | ||
| 332 | + } | ||
| 333 | + } | ||
| 334 | + | ||
| 335 | +} |
metaCode/Classes/Main/HomePage/View/GoodsList/CNLiveShopGoodsListCell.swift renamed to metaCode/Classes/Main/HomePage/View/GoodsManager/CNLiveShopGoodsListCell.swift
| @@ -29,7 +29,8 @@ class CNLiveShopGoodsListCell: UITableViewCell { | @@ -29,7 +29,8 @@ class CNLiveShopGoodsListCell: UITableViewCell { | ||
| 29 | lazy var editBtn: UIButton = { | 29 | lazy var editBtn: UIButton = { |
| 30 | let editBtn = UIButton(type: .custom) | 30 | let editBtn = UIButton(type: .custom) |
| 31 | editBtn.frame = CGRect(x: KSreenWidth-15*2-28, y: 0, width: 15*2+28, height: 15*2+20) | 31 | editBtn.frame = CGRect(x: KSreenWidth-15*2-28, y: 0, width: 15*2+28, height: 15*2+20) |
| 32 | - editBtn.setTitle("编辑", for: .normal) | 32 | + editBtn.setTitle(" ", for: .normal) |
| 33 | +// editBtn.setTitle("编辑", for: .normal) | ||
| 33 | editBtn.setTitleColor(HexColor("#333333"), for: .normal) | 34 | editBtn.setTitleColor(HexColor("#333333"), for: .normal) |
| 34 | editBtn.titleLabel?.font = Font_15 | 35 | editBtn.titleLabel?.font = Font_15 |
| 35 | editBtn.addTarget(self, action: #selector(editBtnAction), for: .touchUpInside) | 36 | editBtn.addTarget(self, action: #selector(editBtnAction), for: .touchUpInside) |
| @@ -103,7 +104,7 @@ class CNLiveShopGoodsListCell: UITableViewCell { | @@ -103,7 +104,7 @@ class CNLiveShopGoodsListCell: UITableViewCell { | ||
| 103 | contentView.addSubview(self.priceLabel) | 104 | contentView.addSubview(self.priceLabel) |
| 104 | contentView.addSubview(self.bottomLineView) | 105 | contentView.addSubview(self.bottomLineView) |
| 105 | contentView.addSubview(self.countLabel) | 106 | contentView.addSubview(self.countLabel) |
| 106 | - contentView.addSubview(self.editCountBtn) | 107 | +// contentView.addSubview(self.editCountBtn) |
| 107 | 108 | ||
| 108 | } | 109 | } |
| 109 | 110 |
metaCode/Classes/Main/HomePage/View/GoodsList/CNLiveShopGoodsListClassifyView.swift renamed to metaCode/Classes/Main/HomePage/View/GoodsManager/CNLiveShopGoodsListClassifyView.swift
| @@ -42,7 +42,7 @@ class CNLiveShopGoodsListClassifyView: UIView { | @@ -42,7 +42,7 @@ class CNLiveShopGoodsListClassifyView: UIView { | ||
| 42 | 42 | ||
| 43 | func setUI(){ | 43 | func setUI(){ |
| 44 | self.addSubview(self.lastestBtn) | 44 | self.addSubview(self.lastestBtn) |
| 45 | - self.addSubview(self.priceBtn) | 45 | +// self.addSubview(self.priceBtn) |
| 46 | self.lastestBtn.isSelected = true | 46 | self.lastestBtn.isSelected = true |
| 47 | } | 47 | } |
| 48 | 48 |
metaCode/Classes/Main/Model/CNLiveShopConsoleModel.swift
| @@ -59,7 +59,7 @@ class CNLiveShopConsoleModel:BaseModel { | @@ -59,7 +59,7 @@ class CNLiveShopConsoleModel:BaseModel { | ||
| 59 | var dataSource = | 59 | var dataSource = |
| 60 | [["title":"商品管理", | 60 | [["title":"商品管理", |
| 61 | "list":[ | 61 | "list":[ |
| 62 | - ["title":"新增商品", "subtitle":"创建新的商品", "simg":"DS_WB_XZSP", "type":0], | 62 | +// ["title":"新增商品", "subtitle":"创建新的商品", "simg":"DS_WB_XZSP", "type":0], |
| 63 | ["title":"商品管理", "subtitle":"管理现有的商品", "simg":"DS_WB_SPGL", "type":1]]], | 63 | ["title":"商品管理", "subtitle":"管理现有的商品", "simg":"DS_WB_SPGL", "type":1]]], |
| 64 | ["title":"订单管理", | 64 | ["title":"订单管理", |
| 65 | "list":[ | 65 | "list":[ |
metaCode/Classes/Main/Model/GoodsManager/CNLiveShopAddEditGoodsModel.swift
| @@ -9,41 +9,91 @@ import Foundation | @@ -9,41 +9,91 @@ import Foundation | ||
| 9 | 9 | ||
| 10 | class CNLiveShopAddEditGoodsModel: BaseModel { | 10 | class CNLiveShopAddEditGoodsModel: BaseModel { |
| 11 | ///列表 | 11 | ///列表 |
| 12 | - /*var list = [CNLiveShopAddEditGoodsListModel]() | 12 | + var list = [CNLiveShopAddEditGoodsListModel]() |
| 13 | func initDataSource(){ | 13 | func initDataSource(){ |
| 14 | - var dataSource = | ||
| 15 | - [ ["style":"1","isHaveTo":true,"title":"商品分类","contentType":"2"], | ||
| 16 | - ["style":"1","isHaveTo":true,"title":"店铺分类","contentType":"2"], | ||
| 17 | - ["style":"2","title":"基本信息"], | ||
| 18 | - ["style":"3","isHaveTo":true,"title":"商品轮播","isDisplayLine":true,"isAbleSelectVideo":true,"isAbleSelectCover":true,"maxSelectImageCount":"7"], | ||
| 19 | - ["style":"1","isHaveTo":true,"title":"商品名称","isDisplayLine":true,"contentType":"1"], | ||
| 20 | - ["style":"4","isHaveTo":false,"title":"商品副标题","isDisplayLine":true,"placeholder":"请在此输入..."], | ||
| 21 | - ["style":"1","isHaveTo":true,"title":"本店售价","subtitle":"(实际售价)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentTextColor":"0xFC1541","contentType":"1"], | ||
| 22 | - ["style":"1","isHaveTo":true,"title":"市场售价","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentType":"1"], | ||
| 23 | - ["style":"1","isHaveTo":false,"title":"商品重量","subtitle":"(kg)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"3","contentType":"1"], | ||
| 24 | - ["style":"5","isHaveTo":false,"title":"最低起售","subtitle":"(件)","isDisplayLine":true,"desc":"如起售数超出库存买家无法购买","decimalLength":"3","contentType":"4"], | ||
| 25 | - ["style":"1","isHaveTo":false,"title":"上架","contentType":"3"], | ||
| 26 | - ["style":"2","title":"通用信息"], | ||
| 27 | - ["style":"3","isHaveTo":true,"title":"商品详情图","isDisplayLine":true,"maxSelectImageCount":"9"], | ||
| 28 | - ["style":"1","isHaveTo":false,"title":"商品运费","subtitle":"(0为包邮)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentType":"1"], | ||
| 29 | - ["style":"1","isHaveTo":false,"title":"是否支持退货","isDisplayLine":true,"contentType":"3"], | ||
| 30 | - ["style":"1","isHaveTo":false,"title":"商品单位","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1"], | ||
| 31 | - ["style":"2","title":"通用参数(*为必填)","touchSubtitle":"添加通用参数"], | ||
| 32 | - ["style":"1","isHaveTo":true,"title":"品名","isDisplayLine":true,"contentType":"1"], | ||
| 33 | - ["style":"1","isHaveTo":true,"title":"规格","isDisplayLine":true,"contentType":"1"], | ||
| 34 | - ["style":"4","isHaveTo":true,"title":"寄送区域","isDisplayLine":true,"contentType":"1","placeholder":"请填写不配送**地区、仅配送**地区或全国包邮"], | ||
| 35 | - ["style":"1","isHaveTo":true,"title":"发货时效","isDisplayLine":true,"contentType":"1"], | ||
| 36 | - ["style":"1","isHaveTo":false,"title":"口味","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true], | ||
| 37 | - ["style":"1","isHaveTo":false,"title":"产地","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true], | ||
| 38 | - ["style":"1","isHaveTo":false,"title":"存储方式及期限","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true] | ||
| 39 | - ] | 14 | + var dataArr:Array<Any> = [] |
| 15 | + let dic1 = ["style":"1","isHaveTo":true,"title":"商品分类","contentType":"2"] as [String : Any] | ||
| 16 | + let dic2 = ["style":"1","isHaveTo":true,"title":"店铺分类","contentType":"2"] as [String : Any] | ||
| 17 | + let dic3 = ["style":"2","title":"基本信息"] as [String : Any] | ||
| 18 | + let dic4 = ["style":"3","isHaveTo":true,"title":"商品轮播","isDisplayLine":true,"isAbleSelectVideo":true,"isAbleSelectCover":true,"maxSelectImageCount":"7"] as [String : Any] | ||
| 19 | + let dic5 = ["style":"1","isHaveTo":true,"title":"商品名称","isDisplayLine":true,"contentType":"1"] as [String : Any] | ||
| 20 | + let dic6 = ["style":"4","isHaveTo":false,"title":"商品副标题","isDisplayLine":true,"placeholder":"请在此输入..."] as [String : Any] | ||
| 21 | + let dic7 = ["style":"1","isHaveTo":true,"title":"本店售价","subtitle":"(实际售价)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentTextColor":"0xFC1541","contentType":"1"] as [String : Any] | ||
| 22 | + let dic8 = ["style":"1","isHaveTo":true,"title":"市场售价","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentType":"1"] as [String : Any] | ||
| 23 | + let dic9 = ["style":"1","isHaveTo":false,"title":"商品重量","subtitle":"(kg)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"3","contentType":"1"] as [String : Any] | ||
| 24 | + let dic10 = ["style":"5","isHaveTo":false,"title":"最低起售","subtitle":"(件)","isDisplayLine":true,"desc":"如起售数超出库存买家无法购买","decimalLength":"3","contentType":"4"] as [String : Any] | ||
| 25 | + let dic11 = ["style":"1","isHaveTo":false,"title":"上架","contentType":"3"] as [String : Any] | ||
| 26 | + let dic12 = ["style":"2","title":"通用信息"] as [String : Any] | ||
| 27 | + let dic13 = ["style":"3","isHaveTo":true,"title":"商品详情图","isDisplayLine":true,"maxSelectImageCount":"9"] as [String : Any] | ||
| 28 | + let dic14 = ["style":"1","isHaveTo":false,"title":"商品运费","subtitle":"(0为包邮)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentType":"1"] as [String : Any] | ||
| 29 | + let dic15 = ["style":"1","isHaveTo":false,"title":"是否支持退货","isDisplayLine":true,"contentType":"3"] as [String : Any] | ||
| 30 | + let dic16 = ["style":"1","isHaveTo":false,"title":"商品单位","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1"] as [String : Any] | ||
| 31 | + let dic17 = ["style":"2","title":"通用参数(*为必填)","touchSubtitle":"添加通用参数"] as [String : Any] | ||
| 32 | + let dic18 = ["style":"1","isHaveTo":true,"title":"品名","isDisplayLine":true,"contentType":"1"] as [String : Any] | ||
| 33 | + let dic19 = ["style":"1","isHaveTo":true,"title":"规格","isDisplayLine":true,"contentType":"1"] as [String : Any] | ||
| 34 | + let dic20 = ["style":"4","isHaveTo":true,"title":"寄送区域","isDisplayLine":true,"contentType":"1","placeholder":"请填写不配送**地区、仅配送**地区或全国包邮"] as [String : Any] | ||
| 35 | + let dic21 = ["style":"1","isHaveTo":true,"title":"发货时效","isDisplayLine":true,"contentType":"1"] as [String : Any] | ||
| 36 | + let dic22 = ["style":"1","isHaveTo":false,"title":"口味","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true] as [String : Any] | ||
| 37 | + let dic23 = ["style":"1","isHaveTo":false,"title":"产地","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true] as [String : Any] | ||
| 38 | + let dic24 = ["style":"1","isHaveTo":false,"title":"存储方式及期限","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true] as [String : Any] | ||
| 39 | + dataArr.append(dic1) | ||
| 40 | + dataArr.append(dic2) | ||
| 41 | + dataArr.append(dic3) | ||
| 42 | + dataArr.append(dic4) | ||
| 43 | + dataArr.append(dic5) | ||
| 44 | + dataArr.append(dic6) | ||
| 45 | + dataArr.append(dic7) | ||
| 46 | + dataArr.append(dic8) | ||
| 47 | + dataArr.append(dic9) | ||
| 48 | + dataArr.append(dic10) | ||
| 49 | + dataArr.append(dic11) | ||
| 50 | + dataArr.append(dic12) | ||
| 51 | + dataArr.append(dic13) | ||
| 52 | + dataArr.append(dic14) | ||
| 53 | + dataArr.append(dic15) | ||
| 54 | + dataArr.append(dic16) | ||
| 55 | + dataArr.append(dic17) | ||
| 56 | + dataArr.append(dic18) | ||
| 57 | + dataArr.append(dic19) | ||
| 58 | + dataArr.append(dic20) | ||
| 59 | + dataArr.append(dic21) | ||
| 60 | + dataArr.append(dic22) | ||
| 61 | + dataArr.append(dic23) | ||
| 62 | + dataArr.append(dic24) | ||
| 63 | +// var dataSource = | ||
| 64 | +// [ | ||
| 65 | +// ["style":"1","isHaveTo":true,"title":"商品分类","contentType":"2"], | ||
| 66 | +// ["style":"1","isHaveTo":true,"title":"店铺分类","contentType":"2"], | ||
| 67 | +// ["style":"2","title":"基本信息"], | ||
| 68 | +// ["style":"3","isHaveTo":true,"title":"商品轮播","isDisplayLine":true,"isAbleSelectVideo":true,"isAbleSelectCover":true,"maxSelectImageCount":"7"], | ||
| 69 | +// ["style":"1","isHaveTo":true,"title":"商品名称","isDisplayLine":true,"contentType":"1"], | ||
| 70 | +// ["style":"4","isHaveTo":false,"title":"商品副标题","isDisplayLine":true,"placeholder":"请在此输入..."], | ||
| 71 | +// ["style":"1","isHaveTo":true,"title":"本店售价","subtitle":"(实际售价)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentTextColor":"0xFC1541","contentType":"1"], | ||
| 72 | +// ["style":"1","isHaveTo":true,"title":"市场售价","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentType":"1"], | ||
| 73 | +// ["style":"1","isHaveTo":false,"title":"商品重量","subtitle":"(kg)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"3","contentType":"1"], | ||
| 74 | +// ["style":"5","isHaveTo":false,"title":"最低起售","subtitle":"(件)","isDisplayLine":true,"desc":"如起售数超出库存买家无法购买","decimalLength":"3","contentType":"4"], | ||
| 75 | +// ["style":"1","isHaveTo":false,"title":"上架","contentType":"3"], | ||
| 76 | +// ["style":"2","title":"通用信息"], | ||
| 77 | +// ["style":"3","isHaveTo":true,"title":"商品详情图","isDisplayLine":true,"maxSelectImageCount":"9"], | ||
| 78 | +// ["style":"1","isHaveTo":false,"title":"商品运费","subtitle":"(0为包邮)","isDisplayLine":true,"contentTextFieldkeyboardType":"2","decimalLength":"2","contentType":"1"], | ||
| 79 | +// ["style":"1","isHaveTo":false,"title":"是否支持退货","isDisplayLine":true,"contentType":"3"], | ||
| 80 | +// ["style":"1","isHaveTo":false,"title":"商品单位","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1"], | ||
| 81 | +// ["style":"2","title":"通用参数(*为必填)","touchSubtitle":"添加通用参数"], | ||
| 82 | +// ["style":"1","isHaveTo":true,"title":"品名","isDisplayLine":true,"contentType":"1"], | ||
| 83 | +// ["style":"1","isHaveTo":true,"title":"规格","isDisplayLine":true,"contentType":"1"], | ||
| 84 | +// ["style":"4","isHaveTo":true,"title":"寄送区域","isDisplayLine":true,"contentType":"1","placeholder":"请填写不配送**地区、仅配送**地区或全国包邮"], | ||
| 85 | +// ["style":"1","isHaveTo":true,"title":"发货时效","isDisplayLine":true,"contentType":"1"], | ||
| 86 | +// ["style":"1","isHaveTo":false,"title":"口味","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true], | ||
| 87 | +// ["style":"1","isHaveTo":false,"title":"产地","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true], | ||
| 88 | +// ["style":"1","isHaveTo":false,"title":"存储方式及期限","contentTextFieldkeyboardType":"1","isDisplayLine":true,"contentType":"1","isDelect":true] | ||
| 89 | +// ] | ||
| 40 | 90 | ||
| 41 | - for dic in dataSource{ | ||
| 42 | - let mdl = newDictionaryToModel(dic, CNLiveShopAddEditGoodsListModel.self) | 91 | + for dic in dataArr{ |
| 92 | + let mdl = newDictionaryToModel(dic as! [String : Any], CNLiveShopAddEditGoodsListModel.self) | ||
| 43 | list.append(mdl as! CNLiveShopAddEditGoodsListModel) | 93 | list.append(mdl as! CNLiveShopAddEditGoodsListModel) |
| 44 | 94 | ||
| 45 | } | 95 | } |
| 46 | - }*/ | 96 | + } |
| 47 | } | 97 | } |
| 48 | 98 | ||
| 49 | 99 | ||
| @@ -51,7 +101,7 @@ class CNLiveShopAddEditGoodsListModel: BaseModel { | @@ -51,7 +101,7 @@ class CNLiveShopAddEditGoodsListModel: BaseModel { | ||
| 51 | /// 商品id | 101 | /// 商品id |
| 52 | var id: String? | 102 | var id: String? |
| 53 | /// 样式4中 二是标题 三是选取图片 四是输入框 五添加起售数量 | 103 | /// 样式4中 二是标题 三是选取图片 四是输入框 五添加起售数量 |
| 54 | - var style:Int = 0 | 104 | + var style:String? |
| 55 | /// 是否必须 | 105 | /// 是否必须 |
| 56 | var isHaveTo: Bool? | 106 | var isHaveTo: Bool? |
| 57 | /// 标题 | 107 | /// 标题 |
| @@ -69,13 +119,13 @@ class CNLiveShopAddEditGoodsListModel: BaseModel { | @@ -69,13 +119,13 @@ class CNLiveShopAddEditGoodsListModel: BaseModel { | ||
| 69 | /// 是否显示底部的线 | 119 | /// 是否显示底部的线 |
| 70 | var isDisplayLine: Bool? | 120 | var isDisplayLine: Bool? |
| 71 | /// 样式一属性 内容输入框键盘类型 1默认类型 2数字类型带小数点 | 121 | /// 样式一属性 内容输入框键盘类型 1默认类型 2数字类型带小数点 |
| 72 | - var contentTextFieldkeyboardType:Int = 0 | 122 | + var contentTextFieldkeyboardType:String? |
| 73 | /// 样式一属性 小数点位数 | 123 | /// 样式一属性 小数点位数 |
| 74 | - var decimalLength:Int = 0 | 124 | + var decimalLength:String? |
| 75 | /// 样式一属性 内容输入框颜色 默认0x787878 | 125 | /// 样式一属性 内容输入框颜色 默认0x787878 |
| 76 | var contentTextColor: String? | 126 | var contentTextColor: String? |
| 77 | /// 样式一属性 1输入框 2选择 3开关 4可以增加数量 | 127 | /// 样式一属性 1输入框 2选择 3开关 4可以增加数量 |
| 78 | - var contentType:Int = 0 | 128 | + var contentType:String? |
| 79 | /// 样式一属性 是不是显示输入框右边删除按钮 | 129 | /// 样式一属性 是不是显示输入框右边删除按钮 |
| 80 | var isDelect: Bool? | 130 | var isDelect: Bool? |
| 81 | /// 样式三属性 是否可以选择视频 | 131 | /// 样式三属性 是否可以选择视频 |
| @@ -83,5 +133,5 @@ class CNLiveShopAddEditGoodsListModel: BaseModel { | @@ -83,5 +133,5 @@ class CNLiveShopAddEditGoodsListModel: BaseModel { | ||
| 83 | /// 样式三属性 是否可以选择主页 | 133 | /// 样式三属性 是否可以选择主页 |
| 84 | var isAbleSelectCover: Bool? | 134 | var isAbleSelectCover: Bool? |
| 85 | /// 样式三属性 最多可以选取多少张图片 | 135 | /// 样式三属性 最多可以选取多少张图片 |
| 86 | - var maxSelectImageCount:Int = 0 | 136 | + var maxSelectImageCount:String? |
| 87 | } | 137 | } |
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_add_count.imageset/Contents.json
0 → 100644
| 1 | +{ | ||
| 2 | + "images" : [ | ||
| 3 | + { | ||
| 4 | + "idiom" : "universal", | ||
| 5 | + "scale" : "1x" | ||
| 6 | + }, | ||
| 7 | + { | ||
| 8 | + "filename" : "DS_main_add_count@2x.png", | ||
| 9 | + "idiom" : "universal", | ||
| 10 | + "scale" : "2x" | ||
| 11 | + }, | ||
| 12 | + { | ||
| 13 | + "filename" : "DS_main_add_count@3x.png", | ||
| 14 | + "idiom" : "universal", | ||
| 15 | + "scale" : "3x" | ||
| 16 | + } | ||
| 17 | + ], | ||
| 18 | + "info" : { | ||
| 19 | + "author" : "xcode", | ||
| 20 | + "version" : 1 | ||
| 21 | + } | ||
| 22 | +} |
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_add_count.imageset/DS_main_add_count@2x.png
0 → 100644
548 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_add_count.imageset/DS_main_add_count@3x.png
0 → 100644
927 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_unadd_count.imageset/Contents.json
0 → 100644
| 1 | +{ | ||
| 2 | + "images" : [ | ||
| 3 | + { | ||
| 4 | + "idiom" : "universal", | ||
| 5 | + "scale" : "1x" | ||
| 6 | + }, | ||
| 7 | + { | ||
| 8 | + "filename" : "DS_main_unadd_count@2x.png", | ||
| 9 | + "idiom" : "universal", | ||
| 10 | + "scale" : "2x" | ||
| 11 | + }, | ||
| 12 | + { | ||
| 13 | + "filename" : "DS_main_unadd_count@3x.png", | ||
| 14 | + "idiom" : "universal", | ||
| 15 | + "scale" : "3x" | ||
| 16 | + } | ||
| 17 | + ], | ||
| 18 | + "info" : { | ||
| 19 | + "author" : "xcode", | ||
| 20 | + "version" : 1 | ||
| 21 | + } | ||
| 22 | +} |
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_unadd_count.imageset/DS_main_unadd_count@2x.png
0 → 100644
510 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_unadd_count.imageset/DS_main_unadd_count@3x.png
0 → 100644
871 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_unadd_count_n.imageset/Contents.json
0 → 100644
| 1 | +{ | ||
| 2 | + "images" : [ | ||
| 3 | + { | ||
| 4 | + "idiom" : "universal", | ||
| 5 | + "scale" : "1x" | ||
| 6 | + }, | ||
| 7 | + { | ||
| 8 | + "filename" : "DS_main_unadd_count_n@2x.png", | ||
| 9 | + "idiom" : "universal", | ||
| 10 | + "scale" : "2x" | ||
| 11 | + }, | ||
| 12 | + { | ||
| 13 | + "filename" : "DS_main_unadd_count_n@3x.png", | ||
| 14 | + "idiom" : "universal", | ||
| 15 | + "scale" : "3x" | ||
| 16 | + } | ||
| 17 | + ], | ||
| 18 | + "info" : { | ||
| 19 | + "author" : "xcode", | ||
| 20 | + "version" : 1 | ||
| 21 | + } | ||
| 22 | +} |
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_unadd_count_n.imageset/DS_main_unadd_count_n@2x.png
0 → 100644
516 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_main_unadd_count_n.imageset/DS_main_unadd_count_n@3x.png
0 → 100644
919 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_delete.imageset/Contents.json
0 → 100644
| 1 | +{ | ||
| 2 | + "images" : [ | ||
| 3 | + { | ||
| 4 | + "idiom" : "universal", | ||
| 5 | + "scale" : "1x" | ||
| 6 | + }, | ||
| 7 | + { | ||
| 8 | + "filename" : "DS_shop_manageGoodsDetails_delete@2x.png", | ||
| 9 | + "idiom" : "universal", | ||
| 10 | + "scale" : "2x" | ||
| 11 | + }, | ||
| 12 | + { | ||
| 13 | + "filename" : "DS_shop_manageGoodsDetails_delete@3x.png", | ||
| 14 | + "idiom" : "universal", | ||
| 15 | + "scale" : "3x" | ||
| 16 | + } | ||
| 17 | + ], | ||
| 18 | + "info" : { | ||
| 19 | + "author" : "xcode", | ||
| 20 | + "version" : 1 | ||
| 21 | + } | ||
| 22 | +} |
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_delete.imageset/DS_shop_manageGoodsDetails_delete@2x.png
0 → 100644
1.02 KB
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_delete.imageset/DS_shop_manageGoodsDetails_delete@3x.png
0 → 100644
1.46 KB
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_rightArrow.imageset/Contents.json
0 → 100644
| 1 | +{ | ||
| 2 | + "images" : [ | ||
| 3 | + { | ||
| 4 | + "idiom" : "universal", | ||
| 5 | + "scale" : "1x" | ||
| 6 | + }, | ||
| 7 | + { | ||
| 8 | + "filename" : "DS_shop_manageGoodsDetails_rightArrow@2x.png", | ||
| 9 | + "idiom" : "universal", | ||
| 10 | + "scale" : "2x" | ||
| 11 | + }, | ||
| 12 | + { | ||
| 13 | + "filename" : "DS_shop_manageGoodsDetails_rightArrow@3x.png", | ||
| 14 | + "idiom" : "universal", | ||
| 15 | + "scale" : "3x" | ||
| 16 | + } | ||
| 17 | + ], | ||
| 18 | + "info" : { | ||
| 19 | + "author" : "xcode", | ||
| 20 | + "version" : 1 | ||
| 21 | + } | ||
| 22 | +} |
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_rightArrow.imageset/DS_shop_manageGoodsDetails_rightArrow@2x.png
0 → 100644
345 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_rightArrow.imageset/DS_shop_manageGoodsDetails_rightArrow@3x.png
0 → 100644
449 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_star.imageset/Contents.json
0 → 100644
| 1 | +{ | ||
| 2 | + "images" : [ | ||
| 3 | + { | ||
| 4 | + "idiom" : "universal", | ||
| 5 | + "scale" : "1x" | ||
| 6 | + }, | ||
| 7 | + { | ||
| 8 | + "filename" : "DS_shop_manageGoodsDetails_star@2x.png", | ||
| 9 | + "idiom" : "universal", | ||
| 10 | + "scale" : "2x" | ||
| 11 | + }, | ||
| 12 | + { | ||
| 13 | + "filename" : "DS_shop_manageGoodsDetails_star@3x.png", | ||
| 14 | + "idiom" : "universal", | ||
| 15 | + "scale" : "3x" | ||
| 16 | + } | ||
| 17 | + ], | ||
| 18 | + "info" : { | ||
| 19 | + "author" : "xcode", | ||
| 20 | + "version" : 1 | ||
| 21 | + } | ||
| 22 | +} |
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_star.imageset/DS_shop_manageGoodsDetails_star@2x.png
0 → 100644
331 Bytes
metaCode/Supporting Files/Assets.xcassets/Shop/DS_shop_manageGoodsDetails_star.imageset/DS_shop_manageGoodsDetails_star@3x.png
0 → 100644
584 Bytes