| | |
| | | 8DFA9B8C2A317DAA00E99281 /* CourseVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8DFA9B8A2A317DAA00E99281 /* CourseVC.xib */; }; |
| | | 8DFA9B912A317DE900E99281 /* WelfareVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DFA9B8F2A317DE900E99281 /* WelfareVC.swift */; }; |
| | | 8DFA9B922A317DE900E99281 /* WelfareVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8DFA9B902A317DE900E99281 /* WelfareVC.xib */; }; |
| | | 8E6D0BBE2E54B3B300617372 /* JoinMemberVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E6D0BBC2E54B3B300617372 /* JoinMemberVC.swift */; }; |
| | | 8E6D0BBF2E54B3B300617372 /* JoinMemberVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8E6D0BBD2E54B3B300617372 /* JoinMemberVC.xib */; }; |
| | | 8E6D0BC22E54BDF700617372 /* CouponCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E6D0BC02E54BDF700617372 /* CouponCell.swift */; }; |
| | | 8E6D0BC32E54BDF700617372 /* CouponCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8E6D0BC12E54BDF700617372 /* CouponCell.xib */; }; |
| | | 8E75A6BA2E52078A00D0DC4C /* WorldCupListRankView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E75A6B92E52078A00D0DC4C /* WorldCupListRankView.swift */; }; |
| | | 8E75A6BC2E52079D00D0DC4C /* WorldCupListRankView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8E75A6BB2E52079D00D0DC4C /* WorldCupListRankView.xib */; }; |
| | | 8E75A6BF2E5209EE00D0DC4C /* WorldCupListRankViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8E75A6BE2E5209EE00D0DC4C /* WorldCupListRankViewCell.xib */; }; |
| | |
| | | 8E7A1F252E4DC26400E7164F /* WorldCupCodeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E7A1F242E4DC26400E7164F /* WorldCupCodeListModel.swift */; }; |
| | | 8E7A1F272E4DEA9700E7164F /* EndGameAlertView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E7A1F262E4DEA9700E7164F /* EndGameAlertView.swift */; }; |
| | | 8E7A1F292E4DEAA900E7164F /* EndGameAlertView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8E7A1F282E4DEAA900E7164F /* EndGameAlertView.xib */; }; |
| | | 8E9836F02E54C944007127C9 /* CouponCellTwo.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8E9836EF2E54C944007127C9 /* CouponCellTwo.xib */; }; |
| | | 8E9836F12E54C944007127C9 /* CouponCellTwo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E9836EE2E54C944007127C9 /* CouponCellTwo.swift */; }; |
| | | 8E9836F42E54CA19007127C9 /* CouponCellThree.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8E9836F32E54CA19007127C9 /* CouponCellThree.xib */; }; |
| | | 8E9836F52E54CA19007127C9 /* CouponCellThree.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8E9836F22E54CA19007127C9 /* CouponCellThree.swift */; }; |
| | | 8EC8A9482E5544A4004EBEF3 /* MemberCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8EC8A9462E5544A4004EBEF3 /* MemberCell.swift */; }; |
| | | 8EC8A9492E5544A4004EBEF3 /* MemberCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8EC8A9472E5544A4004EBEF3 /* MemberCell.xib */; }; |
| | | /* End PBXBuildFile section */ |
| | | |
| | | /* Begin PBXFileReference section */ |
| | |
| | | 8DFA9B8A2A317DAA00E99281 /* CourseVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CourseVC.xib; sourceTree = "<group>"; }; |
| | | 8DFA9B8F2A317DE900E99281 /* WelfareVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WelfareVC.swift; sourceTree = "<group>"; }; |
| | | 8DFA9B902A317DE900E99281 /* WelfareVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WelfareVC.xib; sourceTree = "<group>"; }; |
| | | 8E6D0BBC2E54B3B300617372 /* JoinMemberVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JoinMemberVC.swift; sourceTree = "<group>"; }; |
| | | 8E6D0BBD2E54B3B300617372 /* JoinMemberVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = JoinMemberVC.xib; sourceTree = "<group>"; }; |
| | | 8E6D0BC02E54BDF700617372 /* CouponCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CouponCell.swift; sourceTree = "<group>"; }; |
| | | 8E6D0BC12E54BDF700617372 /* CouponCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CouponCell.xib; sourceTree = "<group>"; }; |
| | | 8E75A6B92E52078A00D0DC4C /* WorldCupListRankView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WorldCupListRankView.swift; sourceTree = "<group>"; }; |
| | | 8E75A6BB2E52079D00D0DC4C /* WorldCupListRankView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WorldCupListRankView.xib; sourceTree = "<group>"; }; |
| | | 8E75A6BD2E5209EE00D0DC4C /* WorldCupListRankViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WorldCupListRankViewCell.swift; sourceTree = "<group>"; }; |
| | |
| | | 8E7A1F242E4DC26400E7164F /* WorldCupCodeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WorldCupCodeListModel.swift; sourceTree = "<group>"; }; |
| | | 8E7A1F262E4DEA9700E7164F /* EndGameAlertView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EndGameAlertView.swift; sourceTree = "<group>"; }; |
| | | 8E7A1F282E4DEAA900E7164F /* EndGameAlertView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = EndGameAlertView.xib; sourceTree = "<group>"; }; |
| | | 8E9836EE2E54C944007127C9 /* CouponCellTwo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CouponCellTwo.swift; sourceTree = "<group>"; }; |
| | | 8E9836EF2E54C944007127C9 /* CouponCellTwo.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CouponCellTwo.xib; sourceTree = "<group>"; }; |
| | | 8E9836F22E54CA19007127C9 /* CouponCellThree.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CouponCellThree.swift; sourceTree = "<group>"; }; |
| | | 8E9836F32E54CA19007127C9 /* CouponCellThree.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CouponCellThree.xib; sourceTree = "<group>"; }; |
| | | 8EC8A9462E5544A4004EBEF3 /* MemberCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MemberCell.swift; sourceTree = "<group>"; }; |
| | | 8EC8A9472E5544A4004EBEF3 /* MemberCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MemberCell.xib; sourceTree = "<group>"; }; |
| | | F12BCB644B5E0392E2BFF8C7 /* Pods_WanPai.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WanPai.framework; sourceTree = BUILT_PRODUCTS_DIR; }; |
| | | /* End PBXFileReference section */ |
| | | |
| | |
| | | children = ( |
| | | 8D4905A72A31A6EC00E38513 /* HomeCCell.swift */, |
| | | 8D4905A82A31A6EC00E38513 /* HomeCCell.xib */, |
| | | 8E6D0BC02E54BDF700617372 /* CouponCell.swift */, |
| | | 8E6D0BC12E54BDF700617372 /* CouponCell.xib */, |
| | | 8E9836EE2E54C944007127C9 /* CouponCellTwo.swift */, |
| | | 8E9836EF2E54C944007127C9 /* CouponCellTwo.xib */, |
| | | 8E9836F22E54CA19007127C9 /* CouponCellThree.swift */, |
| | | 8E9836F32E54CA19007127C9 /* CouponCellThree.xib */, |
| | | 8EC8A9462E5544A4004EBEF3 /* MemberCell.swift */, |
| | | 8EC8A9472E5544A4004EBEF3 /* MemberCell.xib */, |
| | | ); |
| | | path = CCell; |
| | | sourceTree = "<group>"; |
| | |
| | | 8D4905AC2A31AE7100E38513 /* JoinMemberIntroduceVC.xib */, |
| | | 13F88B032B8F46EA0055317B /* WorldCupListVC.swift */, |
| | | 13F88B042B8F46EA0055317B /* WorldCupListVC.xib */, |
| | | 8E6D0BBC2E54B3B300617372 /* JoinMemberVC.swift */, |
| | | 8E6D0BBD2E54B3B300617372 /* JoinMemberVC.xib */, |
| | | ); |
| | | path = VC; |
| | | sourceTree = "<group>"; |
| | |
| | | 137801A02A3BF98900414959 /* CourseOnlineTCell.xib in Resources */, |
| | | 13EAF37E2AB42CFD000A6F07 /* GamesTCell.xib in Resources */, |
| | | 8D86DE872A3307B700A754EF /* CourseSubTypeView.xib in Resources */, |
| | | 8E6D0BBF2E54B3B300617372 /* JoinMemberVC.xib in Resources */, |
| | | 130E402C2A4EC342003A3D75 /* SearchStoreDetailHeadView.xib in Resources */, |
| | | 13B6BB9E2ABAE000006D0C0E /* SignUpCourseVC.xib in Resources */, |
| | | 138D4CFC2A47ECAC005233E7 /* CourseInfoScheduleVC.xib in Resources */, |
| | |
| | | 13477DC32B8C9F28002E69FB /* MeQRCodeVC.xib in Resources */, |
| | | 13EAF3822AB43657000A6F07 /* GamesIntruduceView.xib in Resources */, |
| | | 8DFA9B922A317DE900E99281 /* WelfareVC.xib in Resources */, |
| | | 8E6D0BC32E54BDF700617372 /* CouponCell.xib in Resources */, |
| | | 13240EED2D94F197008944A0 /* StudentInfo_6_TCell.xib in Resources */, |
| | | 13F88B062B8F46EA0055317B /* WorldCupListVC.xib in Resources */, |
| | | 1371CD072BA3E7F2007E0849 /* StudentInfo_2_1_TCell.xib in Resources */, |
| | |
| | | 8DF184452A332CCD0095687B /* StudentInfoTCell.xib in Resources */, |
| | | 13D7BA962A4BD4760007E4B7 /* BillInfoTCell.xib in Resources */, |
| | | 1381BBA42DB21BB9000717EB /* CardCenterTopQRCodeTCell.xib in Resources */, |
| | | 8EC8A9492E5544A4004EBEF3 /* MemberCell.xib in Resources */, |
| | | 132876632A49A18700FC9122 /* StudentExchangeVC.xib in Resources */, |
| | | 132876692A49A4CB00FC9122 /* StudentReportVC.xib in Resources */, |
| | | 138D4D002A47EF4C005233E7 /* CourseDatetimeCCell.xib in Resources */, |
| | |
| | | 8D6D58D52A3997250003CFE6 /* StoresInfoView.xib in Resources */, |
| | | 13477DCB2B8CA1C1002E69FB /* MyQRCodeTCell.xib in Resources */, |
| | | 8D5C150C2A31885B00A8BCC9 /* CommonAlertView.xib in Resources */, |
| | | 8E9836F02E54C944007127C9 /* CouponCellTwo.xib in Resources */, |
| | | 1376A6A22A4A7E1E00D4C851 /* CourseChargeTCell.xib in Resources */, |
| | | 13E82AAF2D93CE32006116E3 /* CardCenterTCell.xib in Resources */, |
| | | 130A59322D9406AB0094D92D /* CardCenterSheetView.xib in Resources */, |
| | |
| | | 138A25A92B91CC2300B2EE49 /* StudentsManagerListVC.xib in Resources */, |
| | | 13D7BA902A4BC3E90007E4B7 /* CommonSingleImgCCell.xib in Resources */, |
| | | 130CE4582A4925AB00394384 /* StudentVideoCCell.xib in Resources */, |
| | | 8E9836F42E54CA19007127C9 /* CouponCellThree.xib in Resources */, |
| | | 8D6E54D22A381CB000D750CE /* ActivityDetailVC.xib in Resources */, |
| | | 13272DD12A4034A300AC6481 /* YardDetailVC.xib in Resources */, |
| | | 137B866B2AB3F03F00C4D01B /* GamesVC.xib in Resources */, |
| | |
| | | 1387B6662A4AB66300BF2F2E /* CourseBookingListVC.swift in Sources */, |
| | | 8DAEB54E2A305A0100814766 /* Colors.swift in Sources */, |
| | | 130A59302D9406A40094D92D /* CardCenterSheetView.swift in Sources */, |
| | | 8E6D0BBE2E54B3B300617372 /* JoinMemberVC.swift in Sources */, |
| | | 132876682A49A4CB00FC9122 /* StudentReportVC.swift in Sources */, |
| | | 13426D672B8F20AB0032338B /* WorldCupContentDetailVC.swift in Sources */, |
| | | 133A61882A4E7A200066C4E6 /* CustomerSubListVC.swift in Sources */, |
| | |
| | | 137546432A57F56F001FA77A /* CommonModels.swift in Sources */, |
| | | 1393B3962A4AD03A00B73072 /* CourseExerciseTCell.swift in Sources */, |
| | | 13B2DEFC2AE12A7E00FCD31E /* LaunchImageHelper.swift in Sources */, |
| | | 8E9836F12E54C944007127C9 /* CouponCellTwo.swift in Sources */, |
| | | 137546402A57F545001FA77A /* UserModel.swift in Sources */, |
| | | 13240EF02D94F8AD008944A0 /* StudentChoose3View.swift in Sources */, |
| | | 13019C7D2A42ADA2004880CD /* CourseInfoVC.swift in Sources */, |
| | | 138D8B8E2A3FFE36009DCA9E /* YardListVC.swift in Sources */, |
| | | 13A9F8B12B0F2DC400ADF402 /* TransitionUtil.swift in Sources */, |
| | | 139402422AB4588F003CF61E /* PaymentCourseTCell.swift in Sources */, |
| | | 8E6D0BC22E54BDF700617372 /* CouponCell.swift in Sources */, |
| | | 13BEEAEA2A4D92A200685667 /* ExchangeRecordTCell.swift in Sources */, |
| | | 8E9836F52E54CA19007127C9 /* CouponCellThree.swift in Sources */, |
| | | 1387B6622A4A969700BF2F2E /* CommonDatePickerView.swift in Sources */, |
| | | 8DAEB5522A305B2D00814766 /* Fronts.swift in Sources */, |
| | | 13B6BB9D2ABAE000006D0C0E /* SignUpCourseVC.swift in Sources */, |
| | |
| | | 13801CC72A4D294D0041454D /* ChooseNumberView.swift in Sources */, |
| | | 138A25A82B91CC2300B2EE49 /* StudentsManagerListVC.swift in Sources */, |
| | | 8D79A58F2A3957420029874B /* StudentInfo_2_TCell.swift in Sources */, |
| | | 8EC8A9482E5544A4004EBEF3 /* MemberCell.swift in Sources */, |
| | | 131732BA2A405EF800F722AF /* CalendarDateTimeTCell.swift in Sources */, |
| | | 8D6C50232A372B21007EC2D9 /* IDCardView.swift in Sources */, |
| | | 1353D5752A56CA0A00539FCA /* Services.swift in Sources */, |
New file |
| | |
| | | { |
| | | "images" : [ |
| | | { |
| | | "idiom" : "universal", |
| | | "scale" : "1x" |
| | | }, |
| | | { |
| | | "filename" : "MemberBackground@2x.png", |
| | | "idiom" : "universal", |
| | | "resizing" : { |
| | | "cap-insets" : { |
| | | "bottom" : 28, |
| | | "left" : 32, |
| | | "right" : 34, |
| | | "top" : 29 |
| | | }, |
| | | "center" : { |
| | | "height" : 1, |
| | | "mode" : "tile", |
| | | "width" : 2 |
| | | }, |
| | | "mode" : "9-part" |
| | | }, |
| | | "scale" : "2x" |
| | | }, |
| | | { |
| | | "filename" : "MemberBackground@3x.png", |
| | | "idiom" : "universal", |
| | | "resizing" : { |
| | | "cap-insets" : { |
| | | "bottom" : 39, |
| | | "left" : 44, |
| | | "right" : 39, |
| | | "top" : 41 |
| | | }, |
| | | "center" : { |
| | | "height" : 2, |
| | | "mode" : "tile", |
| | | "width" : 1 |
| | | }, |
| | | "mode" : "9-part" |
| | | }, |
| | | "scale" : "3x" |
| | | } |
| | | ], |
| | | "info" : { |
| | | "author" : "xcode", |
| | | "version" : 1 |
| | | } |
| | | } |
New file |
| | |
| | | { |
| | | "images" : [ |
| | | { |
| | | "idiom" : "universal", |
| | | "scale" : "1x" |
| | | }, |
| | | { |
| | | "filename" : "MemberBackground2@2x.png", |
| | | "idiom" : "universal", |
| | | "resizing" : { |
| | | "cap-insets" : { |
| | | "bottom" : 28, |
| | | "left" : 31, |
| | | "right" : 26, |
| | | "top" : 29 |
| | | }, |
| | | "center" : { |
| | | "height" : 1, |
| | | "mode" : "tile", |
| | | "width" : 1 |
| | | }, |
| | | "mode" : "9-part" |
| | | }, |
| | | "scale" : "2x" |
| | | }, |
| | | { |
| | | "filename" : "MemberBackground2@3x.png", |
| | | "idiom" : "universal", |
| | | "resizing" : { |
| | | "cap-insets" : { |
| | | "bottom" : 32, |
| | | "left" : 42, |
| | | "right" : 37, |
| | | "top" : 34 |
| | | }, |
| | | "center" : { |
| | | "height" : 2, |
| | | "mode" : "tile", |
| | | "width" : 3 |
| | | }, |
| | | "mode" : "9-part" |
| | | }, |
| | | "scale" : "3x" |
| | | } |
| | | ], |
| | | "info" : { |
| | | "author" : "xcode", |
| | | "version" : 1 |
| | | } |
| | | } |
New file |
| | |
| | | { |
| | | "images" : [ |
| | | { |
| | | "idiom" : "universal", |
| | | "scale" : "1x" |
| | | }, |
| | | { |
| | | "filename" : "Rectangle@2x.png", |
| | | "idiom" : "universal", |
| | | "scale" : "2x" |
| | | }, |
| | | { |
| | | "filename" : "Rectangle@3x.png", |
| | | "idiom" : "universal", |
| | | "scale" : "3x" |
| | | } |
| | | ], |
| | | "info" : { |
| | | "author" : "xcode", |
| | | "version" : 1 |
| | | } |
| | | } |
New file |
| | |
| | | { |
| | | "images" : [ |
| | | { |
| | | "idiom" : "universal", |
| | | "scale" : "1x" |
| | | }, |
| | | { |
| | | "filename" : "imgGroup@2x.png", |
| | | "idiom" : "universal", |
| | | "scale" : "2x" |
| | | }, |
| | | { |
| | | "filename" : "imgGroup@3x.png", |
| | | "idiom" : "universal", |
| | | "scale" : "3x" |
| | | } |
| | | ], |
| | | "info" : { |
| | | "author" : "xcode", |
| | | "version" : 1 |
| | | } |
| | | } |
New file |
| | |
| | | { |
| | | "images" : [ |
| | | { |
| | | "idiom" : "universal", |
| | | "scale" : "1x" |
| | | }, |
| | | { |
| | | "filename" : "imgGrouptwo@2x.png", |
| | | "idiom" : "universal", |
| | | "scale" : "2x" |
| | | }, |
| | | { |
| | | "filename" : "imgGrouptwo@3x.png", |
| | | "idiom" : "universal", |
| | | "scale" : "3x" |
| | | } |
| | | ], |
| | | "info" : { |
| | | "author" : "xcode", |
| | | "version" : 1 |
| | | } |
| | | } |
| | |
| | | alertView.tabview.reloadData() |
| | | } |
| | | |
| | | @IBAction func dimissAction(_ sender: Any) { |
| | | UIView.animate(withDuration: 0.4) { |
| | | self.alpha = 0 |
| | | self.layoutIfNeeded() |
| | | } completion: { _ in |
| | | self.removeFromSuperview() |
| | | } |
| | | } |
| | | @IBAction func sureAction(_ sender: Any) { |
| | | if dataSoure?.count == 0 { |
| | | return |
| | |
| | | <constraint firstItem="lQm-gr-7GQ" firstAttribute="top" secondItem="SQe-pF-bBN" secondAttribute="top" id="xrU-b5-Ofh"/> |
| | | </constraints> |
| | | </view> |
| | | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="9kw-Hl-SfO"> |
| | | <rect key="frame" x="343" y="2" width="40" height="40"/> |
| | | <constraints> |
| | | <constraint firstAttribute="width" constant="40" id="7ZO-gM-hXk"/> |
| | | <constraint firstAttribute="height" constant="40" id="J01-P8-YCC"/> |
| | | </constraints> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <state key="normal" image="btn_close_2"/> |
| | | <connections> |
| | | <action selector="dimissAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="hU7-2k-Mtu"/> |
| | | </connections> |
| | | </button> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstItem="SQe-pF-bBN" firstAttribute="leading" secondItem="iMw-ow-gwQ" secondAttribute="leading" id="Aev-IP-Lc2"/> |
| | | <constraint firstItem="bvP-Ur-pcZ" firstAttribute="centerX" secondItem="iMw-ow-gwQ" secondAttribute="centerX" id="DQK-Uk-u1l"/> |
| | | <constraint firstItem="rbv-aM-DoE" firstAttribute="top" secondItem="SQe-pF-bBN" secondAttribute="bottom" constant="10" id="FVg-Sf-PIH"/> |
| | | <constraint firstItem="9kw-Hl-SfO" firstAttribute="centerY" secondItem="bvP-Ur-pcZ" secondAttribute="centerY" id="JyR-Mp-f6k"/> |
| | | <constraint firstItem="bvP-Ur-pcZ" firstAttribute="top" secondItem="iMw-ow-gwQ" secondAttribute="top" constant="10" id="KAz-Ac-2lb"/> |
| | | <constraint firstAttribute="trailing" secondItem="SQe-pF-bBN" secondAttribute="trailing" id="SBC-86-E6J"/> |
| | | <constraint firstAttribute="trailing" secondItem="9kw-Hl-SfO" secondAttribute="trailing" constant="10" id="TRb-Lx-eXh"/> |
| | | <constraint firstItem="SQe-pF-bBN" firstAttribute="top" secondItem="bvP-Ur-pcZ" secondAttribute="bottom" constant="10" id="efi-tp-QCo"/> |
| | | <constraint firstItem="rbv-aM-DoE" firstAttribute="centerX" secondItem="iMw-ow-gwQ" secondAttribute="centerX" id="uIw-nY-nQK"/> |
| | | <constraint firstAttribute="height" constant="600" id="xY4-s8-y4s"/> |
| | |
| | | </view> |
| | | </objects> |
| | | <resources> |
| | | <image name="btn_close_2" width="20" height="20"/> |
| | | <namedColor name="FE6E0D"> |
| | | <color red="0.99199998378753662" green="0.53299999237060547" blue="0.0080000003799796104" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | </namedColor> |
| | |
| | | switch model { |
| | | case "加入会员": |
| | | if page == "成为会员"{ |
| | | let vc = JoinMemberIntroduceVC() |
| | | let vc = JoinMemberVC() |
| | | JQ_currentViewController().jq_push(vc:vc) |
| | | } |
| | | |
| | | case "首页banner": |
| | | if page == "成为会员"{ |
| | | let vc = JoinMemberIntroduceVC() |
| | | let vc = JoinMemberVC() |
| | | JQ_currentViewController().jq_push(vc:vc) |
| | | } |
| | | case "首页": |
| | |
| | | } |
| | | |
| | | |
| | | struct TicketModel:HandyJSON { |
| | | var count:Int = 0 |
| | | var name:String = "" |
| | | var time: Int = 0 |
| | | } |
| | | |
| | | struct VipModel:HandyJSON { |
| | | var couponJson: String = "" |
| | | var couponList = [CouponModel]() |
| | | var id: Int = 0 |
| | | var insertTime: String = "" |
| | | var price: NSNumber? |
| | | var status: Int = 0 |
| | | var ticketJson: String = "" |
| | | var time: Int = 0 |
| | | var timeType: Int = 0 |
| | | var vipName:String = "" |
| | | var ticketList = [TicketModel]() |
| | | } |
| | | |
| | | //struct CouponTwoModel:HandyJSON { |
| | | // var available: String = "" |
| | | // var cityOrStore: String = "" |
| | | // var effectiveTime: String = "" |
| | | // var id: Int = 0 |
| | | // var instructionsForUse: String = "" |
| | | // var name: String = "" |
| | | // var ruleModel: CouponModelRuleModel? |
| | | // var type:CouponType = .discount |
| | | // var useCondition: CouponConditionType = .nationwide |
| | | //} |
| | | |
| | | struct VipDataModel:HandyJSON { |
| | | var agreement: String = "" |
| | | var headImg: String = "" |
| | | var isVip: Int = 0 |
| | | var name: String = "" |
| | | var vipList = [VipModel]() |
| | | } |
| | | |
| | | |
| | |
| | | #if DEBUG |
| | | //let All_Url = "http://192.168.110.80:56666" //正式地址 |
| | | //let All_Url = "http://vbef9arg13uu.guyubao.com" |
| | | let All_Url = "http://221.182.45.100:1234" //正式地址 |
| | | let Game_Url = "http://221.182.45.100:1234" |
| | | //let All_Url = "http://221.182.45.100:1234" //正式地址 |
| | | //let Game_Url = "http://221.182.45.100:1234" |
| | | |
| | | |
| | | let All_Url = "https://y6cgd7wo3ooa.guyubao.com" //正式地址 |
| | | let Game_Url = "https://y6cgd7wo3ooa.guyubao.com" |
| | | |
| | | //let Socket_Url = "192.168.110.22" |
| | | #else |
| | | let All_Url = "http://8.137.22.229:56666" //正式地址 |
| | |
| | | return NetworkRequest.request(params: params, method: .post, progress: false) |
| | | } |
| | | |
| | | /// |
| | | class func vipPayment()->Observable<BaseResponse<VipDataModel>>{ |
| | | let params = ParamsAppender.build(url: All_Url) |
| | | .interface(url: "/account/api/appUser/vipPayment") |
| | | return NetworkRequest.request(params: params, method: .post, progress: true) |
| | | } |
| | | |
| | | |
| | | /// 充值列表 |
| | | class func voucherCenter()->Observable<BaseResponse<[CoinExchangeModel]>>{ |
| | |
| | | return NetworkRequest.request(params: params, method: .post, progress: false) |
| | | } |
| | | |
| | | class func enrollMember(paytype:PayType)->Observable<BaseResponse<PaymentModel>>{ |
| | | class func enrollMember(paytype:PayType,id:Int)->Observable<BaseResponse<PaymentModel>>{ |
| | | let params = ParamsAppender.build(url: All_Url) |
| | | .interface(url: "/account/api/appUser/addVipPayment") |
| | | .append(key: "payType", value: paytype.rawValue) |
| | | .append(key: "id", value: id) |
| | | return NetworkRequest.request(params: params, method: .post, progress: true) |
| | | } |
| | | |
| | |
| | | return NetworkRequest.request(params: params, method: .post, progress: true) |
| | | } |
| | | |
| | | class func startWorldCup(code:String,people:String,worldCupId:Int)->Observable<BaseResponse<SimpleModel>>{ |
| | | class func startWorldCup(code:String,people:String,worldCupId:Int)->Observable<BaseResponse<String>>{ |
| | | let params = ParamsAppender.build(url: All_Url) |
| | | .interface(url: "/communityWorldCup/api/worldCup/startWorldCup") |
| | | .append(key: "code", value: code) |
New file |
| | |
| | | // |
| | | // CouponCell.swift |
| | | // WanPai |
| | | // |
| | | // Created by Robert on 2025/8/19. |
| | | // |
| | | |
| | | import UIKit |
| | | |
| | | class CouponCell: UITableViewCell { |
| | | |
| | | @IBOutlet weak var moneyLab: UILabel! |
| | | |
| | | @IBOutlet weak var remarksLab: UILabel! |
| | | |
| | | @IBOutlet weak var nameLab: UILabel! |
| | | |
| | | @IBOutlet weak var timeLab: UILabel! |
| | | |
| | | @IBOutlet weak var contentLab: UILabel! |
| | | |
| | | @IBOutlet weak var chooseImg: UIImageView! |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | override func awakeFromNib() { |
| | | super.awakeFromNib() |
| | | // Initialization code |
| | | } |
| | | |
| | | override func setSelected(_ selected: Bool, animated: Bool) { |
| | | super.setSelected(selected, animated: animated) |
| | | |
| | | // Configure the view for the selected state |
| | | } |
| | | @IBAction func lookContentLab(_ sender: Any) { |
| | | } |
| | | @IBAction func lookxqAction(_ sender: Any) { |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES"> |
| | | <device id="retina6_12" orientation="portrait" appearance="light"/> |
| | | <dependencies> |
| | | <deployment identifier="iOS"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/> |
| | | <capability name="Safe area layout guides" minToolsVersion="9.0"/> |
| | | <capability name="System colors in document resources" minToolsVersion="11.0"/> |
| | | <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> |
| | | </dependencies> |
| | | <objects> |
| | | <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/> |
| | | <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/> |
| | | <tableViewCell contentMode="scaleToFill" restorationIdentifier="CouponCellId" selectionStyle="default" indentationWidth="10" rowHeight="119" id="KGk-i7-Jjw" customClass="CouponCell" customModule="WanPai" customModuleProvider="target"> |
| | | <rect key="frame" x="0.0" y="0.0" width="429" height="160"/> |
| | | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> |
| | | <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM"> |
| | | <rect key="frame" x="0.0" y="0.0" width="429" height="160"/> |
| | | <autoresizingMask key="autoresizingMask"/> |
| | | <subviews> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="QnQ-Ce-kcp"> |
| | | <rect key="frame" x="10" y="10" width="409" height="140"/> |
| | | <subviews> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="MemberBackground" translatesAutoresizingMaskIntoConstraints="NO" id="WDh-UO-2Ju"> |
| | | <rect key="frame" x="0.0" y="0.0" width="100" height="140"/> |
| | | <constraints> |
| | | <constraint firstAttribute="width" constant="100" id="34v-Sh-zUR"/> |
| | | </constraints> |
| | | </imageView> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="MemberBackground2" translatesAutoresizingMaskIntoConstraints="NO" id="w5d-0C-Y7j"> |
| | | <rect key="frame" x="100" y="0.0" width="309" height="140"/> |
| | | </imageView> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="xG9-6p-Rbi"> |
| | | <rect key="frame" x="0.0" y="0.0" width="100" height="140"/> |
| | | <subviews> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="满50可用" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="QIL-CB-RH2"> |
| | | <rect key="frame" x="25.333333333333339" y="116.66666666666667" width="49.666666666666657" height="13.333333333333329"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="11"/> |
| | | <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥120" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="WAi-qa-OjM"> |
| | | <rect key="frame" x="21.666666666666668" y="55.666666666666664" width="56.666666666666657" height="28.666666666666664"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="24"/> |
| | | <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | </subviews> |
| | | <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | <constraints> |
| | | <constraint firstItem="QIL-CB-RH2" firstAttribute="centerX" secondItem="WAi-qa-OjM" secondAttribute="centerX" id="1LR-ei-K0u"/> |
| | | <constraint firstAttribute="bottom" secondItem="QIL-CB-RH2" secondAttribute="bottom" constant="10" id="Fq6-i0-MLt"/> |
| | | <constraint firstItem="WAi-qa-OjM" firstAttribute="centerY" secondItem="xG9-6p-Rbi" secondAttribute="centerY" id="d4u-bA-qQT"/> |
| | | <constraint firstItem="WAi-qa-OjM" firstAttribute="centerX" secondItem="xG9-6p-Rbi" secondAttribute="centerX" id="ixQ-sq-R99"/> |
| | | </constraints> |
| | | </view> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="cHy-yY-H15"> |
| | | <rect key="frame" x="115" y="0.0" width="294" height="140"/> |
| | | <subviews> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="优惠券名称" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="3nh-Ef-jHr"> |
| | | <rect key="frame" x="0.0" y="5" width="84.333333333333329" height="21"/> |
| | | <fontDescription key="fontDescription" type="system" weight="medium" pointSize="17"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="有效期至2023-09-08" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="U9T-J6-sUk"> |
| | | <rect key="frame" x="0.0" y="30.999999999999996" width="120.66666666666667" height="14.333333333333332"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="12"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="指定门店可用" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="MvO-Y8-1bo"> |
| | | <rect key="frame" x="0.0" y="50.333333333333336" width="71.666666666666671" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="12"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mUr-Fv-Y8g"> |
| | | <rect key="frame" x="71.666666666666657" y="43" width="56" height="29"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <state key="normal" title="查看详情"> |
| | | <color key="titleColor" red="0.0" green="0.28235294117647058" blue="1" alpha="1" colorSpace="calibratedRGB"/> |
| | | </state> |
| | | <connections> |
| | | <action selector="lookxqAction:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="l1Z-Hb-S43"/> |
| | | </connections> |
| | | </button> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="优惠券说明" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="jCR-HM-1UO"> |
| | | <rect key="frame" x="0.0" y="75" width="59.666666666666664" height="14.333333333333329"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="12"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_down_arrow" translatesAutoresizingMaskIntoConstraints="NO" id="vpC-Gx-nQJ"> |
| | | <rect key="frame" x="59.666666666666657" y="74.666666666666671" width="15" height="15"/> |
| | | <constraints> |
| | | <constraint firstAttribute="width" constant="15" id="Nv0-EV-re0"/> |
| | | <constraint firstAttribute="height" constant="15" id="iIv-VQ-4JV"/> |
| | | </constraints> |
| | | </imageView> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ocU-b8-EYi"> |
| | | <rect key="frame" x="0.0" y="94.666666666666671" width="294" height="55.000000000000014"/> |
| | | <subviews> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CQo-B4-4n9"> |
| | | <rect key="frame" x="0.0" y="0.0" width="294" height="0.66666666666666663"/> |
| | | <color key="backgroundColor" systemColor="systemGray5Color"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="0.5" id="Yzy-Tq-cGF"/> |
| | | </constraints> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="优惠说明" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="r6K-gp-WHU"> |
| | | <rect key="frame" x="0.0" y="5.6666666666666572" width="294" height="49.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="12"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | </subviews> |
| | | <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | <constraints> |
| | | <constraint firstItem="r6K-gp-WHU" firstAttribute="leading" secondItem="ocU-b8-EYi" secondAttribute="leading" id="73S-9v-1pO"/> |
| | | <constraint firstAttribute="trailing" secondItem="CQo-B4-4n9" secondAttribute="trailing" id="7To-9d-mBw"/> |
| | | <constraint firstAttribute="trailing" secondItem="r6K-gp-WHU" secondAttribute="trailing" id="EBQ-np-LFW"/> |
| | | <constraint firstAttribute="height" constant="55" id="P9Z-wA-vrO"/> |
| | | <constraint firstItem="r6K-gp-WHU" firstAttribute="top" secondItem="CQo-B4-4n9" secondAttribute="bottom" constant="5" id="WRD-j1-zhy"/> |
| | | <constraint firstItem="CQo-B4-4n9" firstAttribute="top" secondItem="ocU-b8-EYi" secondAttribute="top" id="ld1-je-ed7"/> |
| | | <constraint firstAttribute="bottom" secondItem="r6K-gp-WHU" secondAttribute="bottom" id="v0W-PK-HsH"/> |
| | | <constraint firstItem="CQo-B4-4n9" firstAttribute="leading" secondItem="ocU-b8-EYi" secondAttribute="leading" id="yuI-lP-s0l"/> |
| | | </constraints> |
| | | </view> |
| | | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="gah-Je-grE"> |
| | | <rect key="frame" x="0.0" y="69.666666666666671" width="84" height="25"/> |
| | | <constraints> |
| | | <constraint firstAttribute="width" constant="84" id="HS2-zQ-erf"/> |
| | | <constraint firstAttribute="height" constant="25" id="hdZ-JA-lZC"/> |
| | | </constraints> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <connections> |
| | | <action selector="lookContentLab:" destination="KGk-i7-Jjw" eventType="touchUpInside" id="DHL-Ch-BR4"/> |
| | | </connections> |
| | | </button> |
| | | </subviews> |
| | | <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | <constraints> |
| | | <constraint firstItem="U9T-J6-sUk" firstAttribute="leading" secondItem="3nh-Ef-jHr" secondAttribute="leading" id="1oC-yP-kLb"/> |
| | | <constraint firstItem="jCR-HM-1UO" firstAttribute="leading" secondItem="MvO-Y8-1bo" secondAttribute="leading" id="ARJ-Xh-nGT"/> |
| | | <constraint firstItem="gah-Je-grE" firstAttribute="top" secondItem="MvO-Y8-1bo" secondAttribute="bottom" constant="5" id="C6U-ei-2SO"/> |
| | | <constraint firstItem="U9T-J6-sUk" firstAttribute="top" secondItem="3nh-Ef-jHr" secondAttribute="bottom" constant="5" id="Fkx-EE-jhh"/> |
| | | <constraint firstItem="MvO-Y8-1bo" firstAttribute="leading" secondItem="U9T-J6-sUk" secondAttribute="leading" id="FsU-xY-6eB"/> |
| | | <constraint firstItem="vpC-Gx-nQJ" firstAttribute="centerY" secondItem="jCR-HM-1UO" secondAttribute="centerY" id="LKM-f8-FQx"/> |
| | | <constraint firstItem="ocU-b8-EYi" firstAttribute="top" secondItem="vpC-Gx-nQJ" secondAttribute="bottom" constant="5" id="Map-uX-xBd"/> |
| | | <constraint firstItem="MvO-Y8-1bo" firstAttribute="top" secondItem="U9T-J6-sUk" secondAttribute="bottom" constant="5" id="QA3-ek-ww0"/> |
| | | <constraint firstItem="mUr-Fv-Y8g" firstAttribute="centerY" secondItem="MvO-Y8-1bo" secondAttribute="centerY" id="Rll-u9-ehZ"/> |
| | | <constraint firstItem="jCR-HM-1UO" firstAttribute="top" secondItem="mUr-Fv-Y8g" secondAttribute="bottom" constant="3" id="Ucl-dB-PDZ"/> |
| | | <constraint firstItem="gah-Je-grE" firstAttribute="leading" secondItem="cHy-yY-H15" secondAttribute="leading" id="bFR-5j-lpL"/> |
| | | <constraint firstAttribute="trailing" secondItem="ocU-b8-EYi" secondAttribute="trailing" id="c2T-Ql-khM"/> |
| | | <constraint firstItem="mUr-Fv-Y8g" firstAttribute="leading" secondItem="MvO-Y8-1bo" secondAttribute="trailing" id="e2c-7J-oWN"/> |
| | | <constraint firstItem="3nh-Ef-jHr" firstAttribute="top" secondItem="cHy-yY-H15" secondAttribute="top" constant="5" id="eh5-M6-51a"/> |
| | | <constraint firstItem="ocU-b8-EYi" firstAttribute="leading" secondItem="jCR-HM-1UO" secondAttribute="leading" id="uTu-p9-xSb"/> |
| | | <constraint firstItem="3nh-Ef-jHr" firstAttribute="leading" secondItem="cHy-yY-H15" secondAttribute="leading" id="ueZ-Bi-P22"/> |
| | | <constraint firstItem="vpC-Gx-nQJ" firstAttribute="leading" secondItem="jCR-HM-1UO" secondAttribute="trailing" id="wui-Uh-7Ac"/> |
| | | </constraints> |
| | | </view> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstAttribute="bottom" secondItem="WDh-UO-2Ju" secondAttribute="bottom" id="7xr-s4-0i9"/> |
| | | <constraint firstItem="w5d-0C-Y7j" firstAttribute="leading" secondItem="WDh-UO-2Ju" secondAttribute="trailing" id="8XY-hw-53f"/> |
| | | <constraint firstItem="cHy-yY-H15" firstAttribute="bottom" secondItem="w5d-0C-Y7j" secondAttribute="bottom" id="AAW-Yl-mz5"/> |
| | | <constraint firstAttribute="bottom" secondItem="w5d-0C-Y7j" secondAttribute="bottom" id="IfC-SK-EVT"/> |
| | | <constraint firstItem="xG9-6p-Rbi" firstAttribute="trailing" secondItem="WDh-UO-2Ju" secondAttribute="trailing" id="LCB-3i-j9l"/> |
| | | <constraint firstAttribute="trailing" secondItem="w5d-0C-Y7j" secondAttribute="trailing" id="Ndn-oY-zrx"/> |
| | | <constraint firstItem="xG9-6p-Rbi" firstAttribute="top" secondItem="WDh-UO-2Ju" secondAttribute="top" id="RfC-Hq-u1J"/> |
| | | <constraint firstItem="WDh-UO-2Ju" firstAttribute="leading" secondItem="QnQ-Ce-kcp" secondAttribute="leading" id="b8h-Vf-iub"/> |
| | | <constraint firstItem="WDh-UO-2Ju" firstAttribute="top" secondItem="QnQ-Ce-kcp" secondAttribute="top" id="bbZ-e9-C6G"/> |
| | | <constraint firstItem="cHy-yY-H15" firstAttribute="trailing" secondItem="w5d-0C-Y7j" secondAttribute="trailing" id="cpA-eN-Mgl"/> |
| | | <constraint firstItem="cHy-yY-H15" firstAttribute="top" secondItem="w5d-0C-Y7j" secondAttribute="top" id="eb9-ma-ZAr"/> |
| | | <constraint firstItem="cHy-yY-H15" firstAttribute="leading" secondItem="w5d-0C-Y7j" secondAttribute="leading" constant="15" id="kbq-4P-EGm"/> |
| | | <constraint firstItem="xG9-6p-Rbi" firstAttribute="leading" secondItem="WDh-UO-2Ju" secondAttribute="leading" id="m3C-IM-UpR"/> |
| | | <constraint firstItem="xG9-6p-Rbi" firstAttribute="bottom" secondItem="WDh-UO-2Ju" secondAttribute="bottom" id="maC-Nj-f4F"/> |
| | | <constraint firstItem="w5d-0C-Y7j" firstAttribute="top" secondItem="QnQ-Ce-kcp" secondAttribute="top" id="vd0-i0-xZp"/> |
| | | </constraints> |
| | | </view> |
| | | </subviews> |
| | | <constraints> |
| | | <constraint firstAttribute="trailing" secondItem="QnQ-Ce-kcp" secondAttribute="trailing" constant="10" id="lja-li-Zog"/> |
| | | <constraint firstItem="QnQ-Ce-kcp" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="10" id="rHm-DQ-H81"/> |
| | | <constraint firstItem="QnQ-Ce-kcp" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="10" id="rlQ-tm-Pm3"/> |
| | | <constraint firstAttribute="bottom" secondItem="QnQ-Ce-kcp" secondAttribute="bottom" constant="10" id="sQk-zV-PK5"/> |
| | | </constraints> |
| | | </tableViewCellContentView> |
| | | <viewLayoutGuide key="safeArea" id="njF-e1-oar"/> |
| | | <connections> |
| | | <outlet property="chooseImg" destination="vpC-Gx-nQJ" id="O4L-oj-6UA"/> |
| | | <outlet property="contentLab" destination="r6K-gp-WHU" id="OGc-au-xwC"/> |
| | | <outlet property="moneyLab" destination="WAi-qa-OjM" id="dUO-0U-kJt"/> |
| | | <outlet property="nameLab" destination="3nh-Ef-jHr" id="wiZ-TI-3Es"/> |
| | | <outlet property="remarksLab" destination="QIL-CB-RH2" id="Z6q-RI-QLV"/> |
| | | <outlet property="timeLab" destination="U9T-J6-sUk" id="WoQ-za-YZH"/> |
| | | </connections> |
| | | <point key="canvasLocation" x="203.81679389312976" y="7.746478873239437"/> |
| | | </tableViewCell> |
| | | </objects> |
| | | <resources> |
| | | <image name="MemberBackground" width="28" height="27.333333969116211"/> |
| | | <image name="MemberBackground2" width="27.333333969116211" height="22.666666030883789"/> |
| | | <image name="icon_down_arrow" width="13" height="8"/> |
| | | <systemColor name="systemBackgroundColor"> |
| | | <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | </systemColor> |
| | | <systemColor name="systemGray5Color"> |
| | | <color red="0.8980392157" green="0.8980392157" blue="0.91764705879999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | </systemColor> |
| | | </resources> |
| | | </document> |
New file |
| | |
| | | // |
| | | // CouponCellThree.swift |
| | | // WanPai |
| | | // |
| | | // Created by Robert on 2025/8/19. |
| | | // |
| | | |
| | | import UIKit |
| | | |
| | | class CouponCellThree: UITableViewCell { |
| | | private var collectionView: UICollectionView! |
| | | @IBOutlet weak var collectionBackView: UIView! |
| | | |
| | | @IBOutlet weak var imgView: UIView! |
| | | var selectIndex = 0 |
| | | var selectBlock :((Int) -> Void)? |
| | | var vipList : [VipModel]?{ |
| | | willSet{ |
| | | |
| | | collectionView.reloadData() |
| | | } |
| | | } |
| | | override func awakeFromNib() { |
| | | super.awakeFromNib() |
| | | setupCollectionView() |
| | | } |
| | | |
| | | override func setSelected(_ selected: Bool, animated: Bool) { |
| | | super.setSelected(selected, animated: animated) |
| | | |
| | | // Configure the view for the selected state |
| | | } |
| | | |
| | | |
| | | private func setupCollectionView() { |
| | | // Create layout |
| | | let layout = UICollectionViewFlowLayout() |
| | | layout.scrollDirection = .vertical |
| | | layout.itemSize = CGSize(width: (UIScreen.main.bounds.size.width - 40) / 3, height: 155) |
| | | layout.minimumLineSpacing = 10 |
| | | layout.minimumInteritemSpacing = 10 |
| | | // layout.sectionInset = UIEdgeInsets(top: 10, left: 10, bottom: 10, right: 10) |
| | | |
| | | // Initialize collection view |
| | | collectionView = UICollectionView(frame:CGRect.zero, collectionViewLayout: layout) |
| | | collectionView.autoresizingMask = [.flexibleWidth, .flexibleHeight] |
| | | collectionView.register(UINib(nibName: "MemberCell", bundle: nil), forCellWithReuseIdentifier: "MemberCellId") |
| | | // Set delegates |
| | | collectionView.delegate = self |
| | | collectionView.dataSource = self |
| | | |
| | | collectionBackView.addSubview(collectionView) |
| | | collectionView.snp.makeConstraints { make in |
| | | make.left.right.top.bottom.equalTo(0) |
| | | } |
| | | } |
| | | |
| | | } |
| | | // MARK: - UICollectionViewDataSource |
| | | extension CouponCellThree: UICollectionViewDataSource,UICollectionViewDelegate{ |
| | | func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { |
| | | return vipList?.count ?? 0 |
| | | } |
| | | |
| | | func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { |
| | | let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "MemberCellId", for: indexPath) as! MemberCell |
| | | cell.nameLab.text = vipList?[indexPath.row].vipName |
| | | cell.moneyLab.text = "¥\(vipList?[indexPath.row].price?.doubleValue ?? 0)" |
| | | cell.timeLab.text = "有效期\(vipList?[indexPath.row].time ?? 0)天" |
| | | if indexPath.row == selectIndex { |
| | | cell.seleceltView() |
| | | }else{ |
| | | cell.noSeleceltView() |
| | | } |
| | | return cell |
| | | } |
| | | func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { |
| | | selectIndex = indexPath.row |
| | | selectBlock?(indexPath.row) |
| | | collectionView.reloadData() |
| | | } |
| | | } |
New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES"> |
| | | <device id="retina6_12" orientation="portrait" appearance="light"/> |
| | | <dependencies> |
| | | <deployment identifier="iOS"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/> |
| | | <capability name="Safe area layout guides" minToolsVersion="9.0"/> |
| | | <capability name="System colors in document resources" minToolsVersion="11.0"/> |
| | | <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> |
| | | </dependencies> |
| | | <objects> |
| | | <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/> |
| | | <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/> |
| | | <tableViewCell contentMode="scaleToFill" restorationIdentifier="CouponCellThreeId" selectionStyle="default" indentationWidth="10" rowHeight="296" id="KGk-i7-Jjw" customClass="CouponCellThree" customModule="WanPai" customModuleProvider="target"> |
| | | <rect key="frame" x="0.0" y="0.0" width="384" height="296"/> |
| | | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> |
| | | <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM"> |
| | | <rect key="frame" x="0.0" y="0.0" width="384" height="296"/> |
| | | <autoresizingMask key="autoresizingMask"/> |
| | | <subviews> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="lw4-zS-j4w"> |
| | | <rect key="frame" x="0.0" y="256" width="384" height="40"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="40" id="fmZ-C8-8tQ"/> |
| | | </constraints> |
| | | </imageView> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CH1-fh-Bfr"> |
| | | <rect key="frame" x="0.0" y="256" width="384" height="40"/> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="会员权益" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cFe-QT-z6U"> |
| | | <rect key="frame" x="158.33333333333334" y="265.66666666666669" width="67.666666666666657" height="21"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="17"/> |
| | | <color key="textColor" red="0.99215686270000003" green="0.50196078430000002" blue="0.18823529410000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="imgGroup" translatesAutoresizingMaskIntoConstraints="NO" id="mVC-X7-7ub"> |
| | | <rect key="frame" x="120.33333333333331" y="274" width="28" height="4"/> |
| | | <constraints> |
| | | <constraint firstAttribute="width" constant="28" id="0JG-bn-nsb"/> |
| | | <constraint firstAttribute="height" constant="4" id="Qdz-fO-zzK"/> |
| | | </constraints> |
| | | </imageView> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="imgGrouptwo" translatesAutoresizingMaskIntoConstraints="NO" id="VcR-MK-LcK"> |
| | | <rect key="frame" x="236" y="274" width="28" height="4"/> |
| | | <constraints> |
| | | <constraint firstAttribute="width" constant="28" id="3ae-cc-sIs"/> |
| | | <constraint firstAttribute="height" constant="4" id="bkX-I7-lZc"/> |
| | | </constraints> |
| | | </imageView> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6Aw-8k-Wqd"> |
| | | <rect key="frame" x="10" y="10" width="364" height="155"/> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="155" id="dw6-LL-Ndn"/> |
| | | </constraints> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="若已是会员,再次购买会员到期时间叠加" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Br8-sX-eZB"> |
| | | <rect key="frame" x="20" y="175" width="215" height="14.333333333333343"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="12"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | </subviews> |
| | | <constraints> |
| | | <constraint firstAttribute="bottom" secondItem="lw4-zS-j4w" secondAttribute="bottom" id="8m9-kS-VqK"/> |
| | | <constraint firstItem="mVC-X7-7ub" firstAttribute="centerY" secondItem="cFe-QT-z6U" secondAttribute="centerY" id="Aym-YT-3qO"/> |
| | | <constraint firstAttribute="trailing" secondItem="lw4-zS-j4w" secondAttribute="trailing" id="DC1-EH-CvZ"/> |
| | | <constraint firstItem="VcR-MK-LcK" firstAttribute="leading" secondItem="cFe-QT-z6U" secondAttribute="trailing" constant="10" id="GsL-WC-gL3"/> |
| | | <constraint firstItem="cFe-QT-z6U" firstAttribute="centerX" secondItem="lw4-zS-j4w" secondAttribute="centerX" id="N1X-Gd-37h"/> |
| | | <constraint firstItem="CH1-fh-Bfr" firstAttribute="leading" secondItem="lw4-zS-j4w" secondAttribute="leading" id="TOs-i8-oFP"/> |
| | | <constraint firstItem="6Aw-8k-Wqd" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="10" id="TSg-y0-6wS"/> |
| | | <constraint firstItem="CH1-fh-Bfr" firstAttribute="bottom" secondItem="lw4-zS-j4w" secondAttribute="bottom" id="Xah-lD-EW0"/> |
| | | <constraint firstItem="CH1-fh-Bfr" firstAttribute="top" secondItem="lw4-zS-j4w" secondAttribute="top" id="YPD-iC-2wU"/> |
| | | <constraint firstItem="CH1-fh-Bfr" firstAttribute="trailing" secondItem="lw4-zS-j4w" secondAttribute="trailing" id="bww-nV-7hp"/> |
| | | <constraint firstItem="cFe-QT-z6U" firstAttribute="leading" secondItem="mVC-X7-7ub" secondAttribute="trailing" constant="10" id="cPz-WF-6rv"/> |
| | | <constraint firstItem="Br8-sX-eZB" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="20" id="f0E-EL-AaP"/> |
| | | <constraint firstItem="lw4-zS-j4w" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" id="guV-gL-coo"/> |
| | | <constraint firstItem="Br8-sX-eZB" firstAttribute="top" secondItem="6Aw-8k-Wqd" secondAttribute="bottom" constant="10" id="hjF-Ke-Vnw"/> |
| | | <constraint firstItem="VcR-MK-LcK" firstAttribute="centerY" secondItem="cFe-QT-z6U" secondAttribute="centerY" id="kV4-ZP-2yb"/> |
| | | <constraint firstItem="6Aw-8k-Wqd" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="10" id="tgY-pz-LHi"/> |
| | | <constraint firstAttribute="trailing" secondItem="6Aw-8k-Wqd" secondAttribute="trailing" constant="10" id="xQb-1W-VVc"/> |
| | | <constraint firstItem="cFe-QT-z6U" firstAttribute="centerY" secondItem="lw4-zS-j4w" secondAttribute="centerY" id="zbB-MH-y2i"/> |
| | | </constraints> |
| | | </tableViewCellContentView> |
| | | <viewLayoutGuide key="safeArea" id="njF-e1-oar"/> |
| | | <connections> |
| | | <outlet property="collectionBackView" destination="6Aw-8k-Wqd" id="NAd-it-9fi"/> |
| | | <outlet property="imgView" destination="CH1-fh-Bfr" id="kNO-3l-b5t"/> |
| | | </connections> |
| | | <point key="canvasLocation" x="190.83969465648855" y="-44.366197183098592"/> |
| | | </tableViewCell> |
| | | </objects> |
| | | <resources> |
| | | <image name="imgGroup" width="28" height="4"/> |
| | | <image name="imgGrouptwo" width="28" height="4"/> |
| | | <systemColor name="systemBackgroundColor"> |
| | | <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | </systemColor> |
| | | </resources> |
| | | </document> |
New file |
| | |
| | | // |
| | | // CouponCellTwo.swift |
| | | // WanPai |
| | | // |
| | | // Created by Robert on 2025/8/19. |
| | | // |
| | | |
| | | import UIKit |
| | | |
| | | class CouponCellTwo: UITableViewCell { |
| | | |
| | | @IBOutlet weak var moneyLab: UILabel! |
| | | |
| | | @IBOutlet weak var remarksLab: UILabel! |
| | | |
| | | @IBOutlet weak var nameLab: UILabel! |
| | | |
| | | @IBOutlet weak var timeLab: UILabel! |
| | | |
| | | @IBOutlet weak var numberLab: UILabel! |
| | | |
| | | |
| | | override func awakeFromNib() { |
| | | super.awakeFromNib() |
| | | // Initialization code |
| | | } |
| | | |
| | | override func setSelected(_ selected: Bool, animated: Bool) { |
| | | super.setSelected(selected, animated: animated) |
| | | |
| | | // Configure the view for the selected state |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES"> |
| | | <device id="retina6_12" orientation="portrait" appearance="light"/> |
| | | <dependencies> |
| | | <deployment identifier="iOS"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/> |
| | | <capability name="Safe area layout guides" minToolsVersion="9.0"/> |
| | | <capability name="System colors in document resources" minToolsVersion="11.0"/> |
| | | <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> |
| | | </dependencies> |
| | | <objects> |
| | | <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/> |
| | | <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/> |
| | | <tableViewCell contentMode="scaleToFill" restorationIdentifier="CouponCellTwoId" selectionStyle="default" indentationWidth="10" rowHeight="199" id="KGk-i7-Jjw" customClass="CouponCellTwo" customModule="WanPai" customModuleProvider="target"> |
| | | <rect key="frame" x="0.0" y="0.0" width="320" height="100"/> |
| | | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> |
| | | <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM"> |
| | | <rect key="frame" x="0.0" y="0.0" width="320" height="100"/> |
| | | <autoresizingMask key="autoresizingMask"/> |
| | | <subviews> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="W5m-6w-aau"> |
| | | <rect key="frame" x="10" y="0.0" width="300" height="90"/> |
| | | <subviews> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="MemberBackground" translatesAutoresizingMaskIntoConstraints="NO" id="tNv-oj-IEG"> |
| | | <rect key="frame" x="0.0" y="0.0" width="100" height="90"/> |
| | | <constraints> |
| | | <constraint firstAttribute="width" constant="100" id="naF-Ch-mMR"/> |
| | | </constraints> |
| | | </imageView> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="MemberBackground2" translatesAutoresizingMaskIntoConstraints="NO" id="dAY-wH-p8a"> |
| | | <rect key="frame" x="100" y="0.0" width="200" height="90"/> |
| | | </imageView> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="2xU-c5-qbv"> |
| | | <rect key="frame" x="0.0" y="0.0" width="100" height="90"/> |
| | | <subviews> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="门票" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hYb-ej-IgM"> |
| | | <rect key="frame" x="27" y="30.666666666666664" width="46" height="28.666666666666664"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="24"/> |
| | | <color key="textColor" red="1" green="1" blue="1" alpha="1" colorSpace="calibratedRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | </subviews> |
| | | <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | <constraints> |
| | | <constraint firstItem="hYb-ej-IgM" firstAttribute="centerY" secondItem="2xU-c5-qbv" secondAttribute="centerY" id="DC3-ib-x5s"/> |
| | | <constraint firstItem="hYb-ej-IgM" firstAttribute="centerX" secondItem="2xU-c5-qbv" secondAttribute="centerX" id="JG5-lW-42F"/> |
| | | </constraints> |
| | | </view> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="SSX-kA-h99"> |
| | | <rect key="frame" x="115" y="0.0" width="185" height="90"/> |
| | | <subviews> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="优惠券名称" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="MwK-vg-xjL"> |
| | | <rect key="frame" x="0.0" y="19.666666666666668" width="84.333333333333329" height="21.000000000000004"/> |
| | | <fontDescription key="fontDescription" type="system" weight="medium" pointSize="17"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="有效期至2023-09-08" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="XKr-Ap-PzD"> |
| | | <rect key="frame" x="0.0" y="45.666666666666664" width="120.66666666666667" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="12"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="8张" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ZEZ-VJ-t0V"> |
| | | <rect key="frame" x="153.66666666666669" y="10" width="21.333333333333343" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="12"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | </subviews> |
| | | <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | <constraints> |
| | | <constraint firstItem="XKr-Ap-PzD" firstAttribute="leading" secondItem="MwK-vg-xjL" secondAttribute="leading" id="7T8-vx-2bb"/> |
| | | <constraint firstItem="MwK-vg-xjL" firstAttribute="centerY" secondItem="SSX-kA-h99" secondAttribute="centerY" constant="-15" id="Bng-da-wKm"/> |
| | | <constraint firstItem="ZEZ-VJ-t0V" firstAttribute="top" secondItem="SSX-kA-h99" secondAttribute="top" constant="10" id="EHH-Vy-9me"/> |
| | | <constraint firstItem="XKr-Ap-PzD" firstAttribute="top" secondItem="MwK-vg-xjL" secondAttribute="bottom" constant="5" id="L9g-hv-Zru"/> |
| | | <constraint firstAttribute="trailing" secondItem="ZEZ-VJ-t0V" secondAttribute="trailing" constant="10" id="roA-ZU-Tgh"/> |
| | | <constraint firstItem="MwK-vg-xjL" firstAttribute="leading" secondItem="SSX-kA-h99" secondAttribute="leading" id="vXb-af-zJW"/> |
| | | </constraints> |
| | | </view> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstItem="2xU-c5-qbv" firstAttribute="top" secondItem="tNv-oj-IEG" secondAttribute="top" id="A6o-bT-f4S"/> |
| | | <constraint firstItem="SSX-kA-h99" firstAttribute="leading" secondItem="dAY-wH-p8a" secondAttribute="leading" constant="15" id="DLJ-VA-39j"/> |
| | | <constraint firstAttribute="trailing" secondItem="dAY-wH-p8a" secondAttribute="trailing" id="O9S-ii-D7q"/> |
| | | <constraint firstItem="2xU-c5-qbv" firstAttribute="bottom" secondItem="tNv-oj-IEG" secondAttribute="bottom" id="OpQ-Zj-AHk"/> |
| | | <constraint firstItem="dAY-wH-p8a" firstAttribute="top" secondItem="W5m-6w-aau" secondAttribute="top" id="Zhr-jL-M7C"/> |
| | | <constraint firstItem="2xU-c5-qbv" firstAttribute="trailing" secondItem="tNv-oj-IEG" secondAttribute="trailing" id="bSP-z1-fzA"/> |
| | | <constraint firstAttribute="bottom" secondItem="dAY-wH-p8a" secondAttribute="bottom" id="dRt-cp-wjk"/> |
| | | <constraint firstItem="tNv-oj-IEG" firstAttribute="top" secondItem="W5m-6w-aau" secondAttribute="top" id="isO-Va-wFT"/> |
| | | <constraint firstItem="SSX-kA-h99" firstAttribute="top" secondItem="dAY-wH-p8a" secondAttribute="top" id="kr5-Kf-5oE"/> |
| | | <constraint firstItem="2xU-c5-qbv" firstAttribute="leading" secondItem="tNv-oj-IEG" secondAttribute="leading" id="lxI-On-NI0"/> |
| | | <constraint firstItem="SSX-kA-h99" firstAttribute="bottom" secondItem="dAY-wH-p8a" secondAttribute="bottom" id="nHC-NX-u6J"/> |
| | | <constraint firstItem="tNv-oj-IEG" firstAttribute="leading" secondItem="W5m-6w-aau" secondAttribute="leading" id="pcy-YC-0Xz"/> |
| | | <constraint firstItem="dAY-wH-p8a" firstAttribute="leading" secondItem="tNv-oj-IEG" secondAttribute="trailing" id="rcI-O1-sVR"/> |
| | | <constraint firstItem="SSX-kA-h99" firstAttribute="trailing" secondItem="dAY-wH-p8a" secondAttribute="trailing" id="suR-bM-T5M"/> |
| | | <constraint firstAttribute="bottom" secondItem="tNv-oj-IEG" secondAttribute="bottom" id="yOd-WQ-H2j"/> |
| | | </constraints> |
| | | </view> |
| | | </subviews> |
| | | <constraints> |
| | | <constraint firstItem="W5m-6w-aau" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="10" id="5Xy-X2-ekE"/> |
| | | <constraint firstAttribute="trailing" secondItem="W5m-6w-aau" secondAttribute="trailing" constant="10" id="CoK-at-vqL"/> |
| | | <constraint firstAttribute="bottom" secondItem="W5m-6w-aau" secondAttribute="bottom" constant="10" id="Yfk-LH-LDd"/> |
| | | <constraint firstItem="W5m-6w-aau" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" id="s1G-aF-T6p"/> |
| | | </constraints> |
| | | </tableViewCellContentView> |
| | | <viewLayoutGuide key="safeArea" id="njF-e1-oar"/> |
| | | <connections> |
| | | <outlet property="moneyLab" destination="hYb-ej-IgM" id="3mz-Rj-dc9"/> |
| | | <outlet property="nameLab" destination="MwK-vg-xjL" id="2gD-AC-x4M"/> |
| | | <outlet property="numberLab" destination="ZEZ-VJ-t0V" id="wY8-Dc-ZJi"/> |
| | | <outlet property="timeLab" destination="XKr-Ap-PzD" id="JT4-9q-AoH"/> |
| | | </connections> |
| | | <point key="canvasLocation" x="129.7709923664122" y="-35.211267605633807"/> |
| | | </tableViewCell> |
| | | </objects> |
| | | <resources> |
| | | <image name="MemberBackground" width="28" height="27.333333969116211"/> |
| | | <image name="MemberBackground2" width="27.333333969116211" height="22.666666030883789"/> |
| | | <systemColor name="systemBackgroundColor"> |
| | | <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | </systemColor> |
| | | </resources> |
| | | </document> |
New file |
| | |
| | | // |
| | | // MemberCell.swift |
| | | // WanPai |
| | | // |
| | | // Created by Robert on 2025/8/20. |
| | | // |
| | | |
| | | import UIKit |
| | | |
| | | class MemberCell: UICollectionViewCell { |
| | | |
| | | @IBOutlet weak var nameLab: UILabel! |
| | | |
| | | @IBOutlet weak var moneyLab: UILabel! |
| | | |
| | | @IBOutlet weak var timeLab: UILabel! |
| | | |
| | | @IBOutlet weak var backView: UIView! |
| | | |
| | | |
| | | override func awakeFromNib() { |
| | | super.awakeFromNib() |
| | | backView.layer.shadowColor = UIColor.black.cgColor |
| | | backView.layer.shadowOffset = CGSize(width: 0, height: 2) // 阴影偏移量 |
| | | backView.layer.shadowOpacity = 0.25 // 阴影透明度 (0.0 - 1.0) |
| | | backView.layer.shadowRadius = 10 // 阴影模糊半径 |
| | | backView.layer.masksToBounds = false |
| | | backView.layer.cornerRadius = 10 |
| | | noSeleceltView() |
| | | } |
| | | |
| | | func seleceltView(){ |
| | | let color = UIColor(red: 255/250, green: 116/250, blue: 0, alpha: 1) |
| | | backView.layer.borderColor = color.cgColor |
| | | backView.layer.borderWidth = 2 |
| | | nameLab.textColor = color |
| | | moneyLab.textColor = color |
| | | timeLab.textColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.6) |
| | | } |
| | | |
| | | |
| | | func noSeleceltView(){ |
| | | |
| | | backView.layer.borderColor = UIColor.black.cgColor |
| | | backView.layer.borderWidth = 1 |
| | | nameLab.textColor = .black |
| | | moneyLab.textColor = .black |
| | | timeLab.textColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.4) |
| | | } |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES"> |
| | | <device id="retina6_12" orientation="portrait" appearance="light"/> |
| | | <dependencies> |
| | | <deployment identifier="iOS"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/> |
| | | <capability name="Safe area layout guides" minToolsVersion="9.0"/> |
| | | <capability name="System colors in document resources" minToolsVersion="11.0"/> |
| | | <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> |
| | | </dependencies> |
| | | <objects> |
| | | <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/> |
| | | <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/> |
| | | <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" restorationIdentifier="MemberCellId" id="gTV-IL-0wX" customClass="MemberCell" customModule="WanPai" customModuleProvider="target"> |
| | | <rect key="frame" x="0.0" y="0.0" width="175" height="188"/> |
| | | <autoresizingMask key="autoresizingMask"/> |
| | | <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center"> |
| | | <rect key="frame" x="0.0" y="0.0" width="175" height="188"/> |
| | | <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> |
| | | <subviews> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="AK4-8R-yj7"> |
| | | <rect key="frame" x="0.0" y="0.0" width="175" height="188"/> |
| | | <subviews> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="会员卡名称" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ppp-LP-H4z"> |
| | | <rect key="frame" x="47.666666666666664" y="30" width="79.666666666666686" height="22"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="22" id="KNE-Gu-kUn"/> |
| | | </constraints> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="16"/> |
| | | <color key="textColor" red="0.99199998379999998" green="0.50161166960000003" blue="0.18823529410000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥888" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="khG-fB-3WK"> |
| | | <rect key="frame" x="56.666666666666671" y="59" width="61.666666666666671" height="50"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="50" id="4m2-Id-DgE"/> |
| | | </constraints> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="24"/> |
| | | <color key="textColor" red="0.99215686270000003" green="0.50196078430000002" blue="0.18823529410000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="有效期30天" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6t0-vR-Amh"> |
| | | <rect key="frame" x="51.666666666666664" y="120" width="71.666666666666686" height="22"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="22" id="YJI-hN-C90"/> |
| | | </constraints> |
| | | <fontDescription key="fontDescription" type="system" weight="medium" pointSize="13"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstItem="6t0-vR-Amh" firstAttribute="centerX" secondItem="khG-fB-3WK" secondAttribute="centerX" id="0CH-Sx-3gZ"/> |
| | | <constraint firstItem="6t0-vR-Amh" firstAttribute="top" secondItem="khG-fB-3WK" secondAttribute="bottom" constant="11" id="Cqa-84-6Gm"/> |
| | | <constraint firstItem="khG-fB-3WK" firstAttribute="top" secondItem="ppp-LP-H4z" secondAttribute="bottom" constant="7" id="EJr-RE-gdB"/> |
| | | <constraint firstItem="ppp-LP-H4z" firstAttribute="top" secondItem="AK4-8R-yj7" secondAttribute="top" constant="30" id="UKa-YA-IIh"/> |
| | | <constraint firstItem="khG-fB-3WK" firstAttribute="centerX" secondItem="ppp-LP-H4z" secondAttribute="centerX" id="bxE-xN-zzD"/> |
| | | <constraint firstItem="ppp-LP-H4z" firstAttribute="centerX" secondItem="AK4-8R-yj7" secondAttribute="centerX" id="ydX-Kg-hSL"/> |
| | | </constraints> |
| | | </view> |
| | | </subviews> |
| | | </view> |
| | | <viewLayoutGuide key="safeArea" id="ZTg-uK-7eu"/> |
| | | <color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | <constraints> |
| | | <constraint firstItem="AK4-8R-yj7" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" id="3mK-cd-Sqb"/> |
| | | <constraint firstAttribute="bottom" secondItem="AK4-8R-yj7" secondAttribute="bottom" id="Izh-zO-pLP"/> |
| | | <constraint firstItem="AK4-8R-yj7" firstAttribute="top" secondItem="gTV-IL-0wX" secondAttribute="top" id="M2i-N2-wNu"/> |
| | | <constraint firstAttribute="trailing" secondItem="AK4-8R-yj7" secondAttribute="trailing" id="qGl-Bt-Eiy"/> |
| | | </constraints> |
| | | <size key="customSize" width="175" height="188"/> |
| | | <connections> |
| | | <outlet property="backView" destination="AK4-8R-yj7" id="iSd-SG-1Nx"/> |
| | | <outlet property="moneyLab" destination="khG-fB-3WK" id="Fa4-ej-oPP"/> |
| | | <outlet property="nameLab" destination="ppp-LP-H4z" id="66W-I4-xrY"/> |
| | | <outlet property="timeLab" destination="6t0-vR-Amh" id="Bbf-Ze-w6V"/> |
| | | </connections> |
| | | <point key="canvasLocation" x="140" y="7"/> |
| | | </collectionViewCell> |
| | | </objects> |
| | | <resources> |
| | | <systemColor name="systemBackgroundColor"> |
| | | <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | </systemColor> |
| | | </resources> |
| | | </document> |
| | |
| | | |
| | | |
| | | @IBAction func joinMemberAction(_ sender: UIButton) { |
| | | let joinMemberVC = JoinMemberIntroduceVC() |
| | | let joinMemberVC = JoinMemberVC() |
| | | push(vc: joinMemberVC) |
| | | } |
| | | |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="22505" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES"> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES"> |
| | | <device id="retina6_12" orientation="portrait" appearance="light"/> |
| | | <dependencies> |
| | | <deployment identifier="iOS"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22504"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/> |
| | | <capability name="Safe area layout guides" minToolsVersion="9.0"/> |
| | | <capability name="System colors in document resources" minToolsVersion="11.0"/> |
| | | <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> |
| | |
| | | </connections> |
| | | </view> |
| | | <label hidden="YES" opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Y4w-3W-3I4"> |
| | | <rect key="frame" x="18" y="126.66666666666669" width="206.33333333333334" height="43"/> |
| | | <rect key="frame" x="18" y="126.66666666666669" width="201" height="43"/> |
| | | <string key="text">欢迎来到 快乐运动俱乐部 |
| | | 加入我们 成为会员</string> |
| | | <fontDescription key="fontDescription" type="system" pointSize="18"/> |
| | |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="poJ-Yp-Ex1"> |
| | | <rect key="frame" x="18" y="126.66666666666669" width="206.33333333333334" height="43"/> |
| | | <rect key="frame" x="18" y="126.66666666666669" width="201" height="43"/> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <connections> |
| | | <action selector="joinMemberAction:" destination="-1" eventType="touchUpInside" id="wxy-tX-qp7"/> |
| | |
| | | <constraint firstItem="fnl-2z-Ty3" firstAttribute="bottom" secondItem="ysy-N3-BCh" secondAttribute="bottom" id="jgP-5H-akR"/> |
| | | <constraint firstItem="WGQ-UH-Uvg" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" id="sgb-fE-wnZ"/> |
| | | </constraints> |
| | | <point key="canvasLocation" x="29.770992366412212" y="20.422535211267608"/> |
| | | <point key="canvasLocation" x="-175" y="-61"/> |
| | | </view> |
| | | </objects> |
| | | <resources> |
| | |
| | | #endif |
| | | |
| | | PaymentView.show(enumType: .joinMember, money: (ali:price,wx:price,coin:nil,course:nil,integral:nil)) { type in |
| | | Services.enrollMember(paytype: type).subscribe(onNext: {data in |
| | | Services.enrollMember(paytype: type, id: 0).subscribe(onNext: {data in |
| | | if let m = data.data{ |
| | | switch type { |
| | | case .aliPay: |
New file |
| | |
| | | // |
| | | // JoinMemberVC.swift |
| | | // WanPai |
| | | // |
| | | // Created by Robert on 2025/8/19. |
| | | // |
| | | |
| | | import UIKit |
| | | |
| | | class JoinMemberVC: BaseVC, UITableViewDelegate, UITableViewDataSource { |
| | | func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { |
| | | if let m = model { |
| | | return 1 + m.vipList[selectIndex].couponList.count + m.vipList[selectIndex].ticketList.count |
| | | }else{ |
| | | return 0 |
| | | } |
| | | } |
| | | |
| | | func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { |
| | | |
| | | if indexPath.row == 0 { |
| | | let cell = tableView.dequeueReusableCell(withIdentifier: "CouponCellThreeId", for: indexPath) as! CouponCellThree |
| | | cell.vipList = model?.vipList |
| | | cell.selectBlock = { index in |
| | | self.selectIndex = index |
| | | } |
| | | return cell |
| | | |
| | | }else if indexPath.row > 0 && indexPath.row < ((model?.vipList[selectIndex].couponList.count ?? 0) + 1) { |
| | | let cell = tableView.dequeueReusableCell(withIdentifier: "_WelfareCouponsTCell", for: indexPath) as! WelfareCouponsTCell |
| | | // cell.moneyLab.text = model?.vipList[selectIndex].couponList[indexPath.row - 1].ruleModel?.deductionAmount |
| | | // cell.remarksLab.text = model?.vipList[selectIndex].couponList[indexPath.row - 1].ruleModel?.conditionalAmount |
| | | // cell.nameLab.text = model?.vipList[selectIndex].couponList[indexPath.row - 1].name |
| | | // cell.timeLab.text = "有效期至\(model?.vipList[selectIndex].couponList[indexPath.row - 1].effectiveTime ?? "")" |
| | | // cell.contentLab.text = model?.vipList[selectIndex].couponList[indexPath.row - 1].instructionsForUse |
| | | if let m = model?.vipList[selectIndex].couponList[indexPath.row - 1] { |
| | | cell.couponModel = m |
| | | } |
| | | |
| | | return cell |
| | | }else{ |
| | | let cell = tableView.dequeueReusableCell(withIdentifier: "CouponCellTwoId", for: indexPath) as! CouponCellTwo |
| | | let index = indexPath.row - ((model?.vipList[selectIndex].couponList.count ?? 0) + 1) |
| | | cell.nameLab.text = model?.vipList[selectIndex].ticketList[index].name |
| | | cell.timeLab.text = "领取后\(model?.vipList[selectIndex].ticketList[index].time ?? 0)有效" |
| | | cell.numberLab.text = "\(model?.vipList[selectIndex].ticketList[index].count ?? 0)张" |
| | | return cell |
| | | } |
| | | |
| | | } |
| | | |
| | | func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { |
| | | |
| | | if indexPath.row == 0 { |
| | | return 295 |
| | | |
| | | }else if indexPath.row > 0 && indexPath.row < ((model?.vipList[selectIndex].couponList.count ?? 0) + 1) { |
| | | return 170 |
| | | }else{ |
| | | return 110 |
| | | } |
| | | } |
| | | |
| | | @IBOutlet weak var tabView: UITableView! |
| | | @IBOutlet weak var scrBackView: UIView! |
| | | var model: VipDataModel? |
| | | var selectIndex: Int = 0 |
| | | |
| | | @IBOutlet weak var headerImg: UIImageView! |
| | | @IBOutlet weak var memberLab: UILabel! |
| | | @IBOutlet weak var nameLab: UILabel! |
| | | var acceptXy: Bool = false |
| | | override func viewDidLoad() { |
| | | super.viewDidLoad() |
| | | tabView.separatorStyle = .none |
| | | tabView.delegate = self |
| | | tabView.dataSource = self |
| | | tabView.register(UINib(nibName: "CouponCellThree", bundle: nil), forCellReuseIdentifier: "CouponCellThreeId") |
| | | tabView.register(UINib(nibName: "CouponCellTwo", bundle: nil), forCellReuseIdentifier: "CouponCellTwoId") |
| | | tabView.register(UINib(nibName: "WelfareCouponsTCell", bundle: nil), forCellReuseIdentifier: "_WelfareCouponsTCell") |
| | | // tabView.register(UINib(nibName: "CouponCell", bundle: nil), forCellReuseIdentifier: "CouponCellId") |
| | | Services.vipPayment().subscribe(onNext: { [weak self]data in |
| | | self?.model = data.data |
| | | self?.tabView.reloadData() |
| | | self?.nameLab.text = data.data?.name |
| | | if data.data?.isVip ?? 0 > 0 { |
| | | self?.memberLab.text = "当前暂未开通会员" |
| | | }else{ |
| | | self?.memberLab.text = "Vip" |
| | | } |
| | | self?.headerImg.sd_setImage(with: URL(string: self?.model?.headImg ?? "")) |
| | | }).disposed(by: disposeBag) |
| | | |
| | | } |
| | | |
| | | |
| | | @IBAction func selectAcceptAction(_ sender: UIButton) { |
| | | sender.isSelected = !sender.isSelected |
| | | acceptXy = sender.isSelected |
| | | } |
| | | |
| | | @IBAction func lookxyAction(_ sender: UIButton) { |
| | | if acceptXy == false { |
| | | alertError(msg: "请先同意会员协议") |
| | | }else{ |
| | | push(vc: CommonWebVC(type: .matchPoint,customTitle: "会员协议",content: "",needBackBtn: true)) |
| | | } |
| | | } |
| | | |
| | | |
| | | @IBAction func playAction(_ sender: Any) { |
| | | PaymentView.show(enumType: .joinMember, money: (ali:self.model?.vipList[self.selectIndex].price?.doubleValue ?? 0,wx:self.model?.vipList[self.selectIndex].price?.doubleValue ?? 0,coin:nil,course:nil,integral:nil)) { type in |
| | | Services.enrollMember(paytype: type,id: self.model?.vipList[self.selectIndex].id ?? 0).subscribe(onNext: {data in |
| | | if let m = data.data{ |
| | | switch type { |
| | | case .aliPay: |
| | | if let orderString = data.data?.orderString{ |
| | | YYPaymentManager.shared.sendPaymentRequest(YYAlipayRequest(orderString: orderString)) {[weak self] result in |
| | | guard let weakSelf = self else { return } |
| | | switch result { |
| | | case .success: |
| | | let vc = PaymentResultVC(result: .success, objType: .member, handleVC: nil, courseConfigId: nil, againClouse: nil) |
| | | weakSelf.push(vc: vc) |
| | | case .cancel: |
| | | let vc = PaymentResultVC(result: .fail("已取消支付", 0), objType: .member, handleVC: nil, courseConfigId: nil, againClouse: nil) |
| | | weakSelf.push(vc: vc) |
| | | case .failure(let error): |
| | | if let er = error as? NetworkRequest.NetRequestError{ |
| | | switch er { |
| | | case .Other(let code,let string): |
| | | let vc = PaymentResultVC(result: .fail(string,code), objType: .member) |
| | | weakSelf.push(vc: vc) |
| | | default: |
| | | let vc = PaymentResultVC(result: .fail("支付失败",0), objType: .member) |
| | | weakSelf.push(vc: vc) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | case .wechat: |
| | | YYPaymentManager.shared.sendPaymentRequest(YYWeChatPayRequest(partnerId: m.partnerid, prepayId: m.prepayid, package: m.package, nonceStr: m.noncestr, timeStamp: m.timestamp, sign: m.sign)) {[weak self] result in |
| | | guard let weakSelf = self else { return } |
| | | switch result { |
| | | case .success: |
| | | let vc = PaymentResultVC(result: .success, objType: .member, handleVC: nil, courseConfigId: nil, againClouse: nil) |
| | | weakSelf.push(vc: vc) |
| | | case .cancel: |
| | | let vc = PaymentResultVC(result: .fail("已取消支付", 0), objType: .member, handleVC: nil, courseConfigId: nil, againClouse: nil) |
| | | weakSelf.push(vc: vc) |
| | | case .failure(let error): |
| | | if let er = error as? NetworkRequest.NetRequestError{ |
| | | switch er { |
| | | case .Other(let code,let string): |
| | | let vc = PaymentResultVC(result: .fail(string,code), objType: .member) |
| | | weakSelf.push(vc: vc) |
| | | default: |
| | | let vc = PaymentResultVC(result: .fail("支付失败",0), objType: .member) |
| | | weakSelf.push(vc: vc) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | default:break |
| | | } |
| | | } |
| | | |
| | | }).disposed(by: self.disposeBag) |
| | | } |
| | | } |
| | | } |
New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES"> |
| | | <device id="retina6_12" orientation="portrait" appearance="light"/> |
| | | <dependencies> |
| | | <deployment identifier="iOS"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/> |
| | | <capability name="System colors in document resources" minToolsVersion="11.0"/> |
| | | <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> |
| | | </dependencies> |
| | | <objects> |
| | | <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="JoinMemberVC" customModule="WanPai" customModuleProvider="target"> |
| | | <connections> |
| | | <outlet property="headerImg" destination="eXB-k6-87a" id="Crz-eh-yUL"/> |
| | | <outlet property="memberLab" destination="Tw7-eR-xfP" id="GTD-hb-t8w"/> |
| | | <outlet property="nameLab" destination="RjA-5O-ZqV" id="5n5-X3-mv2"/> |
| | | <outlet property="scrBackView" destination="oQI-rU-VGE" id="D4x-bE-BD5"/> |
| | | <outlet property="tabView" destination="WIB-0U-iRO" id="RkR-vX-TsL"/> |
| | | <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/> |
| | | </connections> |
| | | </placeholder> |
| | | <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/> |
| | | <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT"> |
| | | <rect key="frame" x="0.0" y="0.0" width="393" height="852"/> |
| | | <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> |
| | | <subviews> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="yr9-3E-lu7"> |
| | | <rect key="frame" x="0.0" y="0.0" width="393" height="852"/> |
| | | <subviews> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="bY5-he-dlH"> |
| | | <rect key="frame" x="0.0" y="0.0" width="393" height="250"/> |
| | | <subviews> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="JCJ-e1-WjV"> |
| | | <rect key="frame" x="14" y="120" width="365" height="130"/> |
| | | <subviews> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="eXB-k6-87a"> |
| | | <rect key="frame" x="20" y="30" width="70" height="70"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="70" id="Wh1-bt-uB8"/> |
| | | <constraint firstAttribute="width" constant="70" id="ZPD-dn-Kh8"/> |
| | | </constraints> |
| | | </imageView> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="昵称" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="RjA-5O-ZqV"> |
| | | <rect key="frame" x="100" y="40" width="34" height="21"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="17"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="当前暂未开通会员" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Tw7-eR-xfP"> |
| | | <rect key="frame" x="100" y="66" width="143" height="21"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="18"/> |
| | | <color key="textColor" red="0.31764705879999999" green="0.31799998880000002" blue="0.31799998880000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstItem="RjA-5O-ZqV" firstAttribute="leading" secondItem="eXB-k6-87a" secondAttribute="trailing" constant="10" id="5Kn-a3-A2R"/> |
| | | <constraint firstItem="Tw7-eR-xfP" firstAttribute="leading" secondItem="RjA-5O-ZqV" secondAttribute="leading" id="POG-7g-XZs"/> |
| | | <constraint firstItem="Tw7-eR-xfP" firstAttribute="top" secondItem="RjA-5O-ZqV" secondAttribute="bottom" constant="5" id="byr-HY-cBT"/> |
| | | <constraint firstItem="eXB-k6-87a" firstAttribute="leading" secondItem="JCJ-e1-WjV" secondAttribute="leading" constant="20" id="e03-4T-J7h"/> |
| | | <constraint firstItem="eXB-k6-87a" firstAttribute="centerY" secondItem="JCJ-e1-WjV" secondAttribute="centerY" id="eIP-98-hya"/> |
| | | <constraint firstAttribute="height" constant="130" id="fQa-Oo-hgZ"/> |
| | | <constraint firstItem="RjA-5O-ZqV" firstAttribute="top" secondItem="eXB-k6-87a" secondAttribute="top" constant="10" id="yYe-PF-sgx"/> |
| | | </constraints> |
| | | </view> |
| | | </subviews> |
| | | <color key="backgroundColor" red="0.99215686274509807" green="0.50196078431372548" blue="0.18823529411764706" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <constraints> |
| | | <constraint firstItem="JCJ-e1-WjV" firstAttribute="centerX" secondItem="bY5-he-dlH" secondAttribute="centerX" id="EjB-DR-cvi"/> |
| | | <constraint firstItem="JCJ-e1-WjV" firstAttribute="leading" secondItem="bY5-he-dlH" secondAttribute="leading" constant="14" id="G2x-Fs-OmC"/> |
| | | <constraint firstAttribute="trailing" secondItem="JCJ-e1-WjV" secondAttribute="trailing" constant="14" id="aNd-c6-ML7"/> |
| | | <constraint firstAttribute="bottom" secondItem="JCJ-e1-WjV" secondAttribute="bottom" id="edm-sh-8R5"/> |
| | | <constraint firstAttribute="height" constant="250" id="mHJ-ba-9go"/> |
| | | </constraints> |
| | | </view> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="5T5-7V-4pt"> |
| | | <rect key="frame" x="0.0" y="230" width="393" height="200"/> |
| | | <subviews> |
| | | <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="Rectangle" translatesAutoresizingMaskIntoConstraints="NO" id="FgO-Un-GNg"> |
| | | <rect key="frame" x="0.0" y="0.0" width="393" height="200"/> |
| | | </imageView> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstItem="FgO-Un-GNg" firstAttribute="top" secondItem="5T5-7V-4pt" secondAttribute="top" id="HQu-XI-C2M"/> |
| | | <constraint firstAttribute="bottom" secondItem="FgO-Un-GNg" secondAttribute="bottom" id="NW9-QS-6qQ"/> |
| | | <constraint firstAttribute="trailing" secondItem="FgO-Un-GNg" secondAttribute="trailing" id="PDN-Q5-WcS"/> |
| | | <constraint firstAttribute="height" constant="200" id="dgJ-Gr-xcv"/> |
| | | <constraint firstItem="FgO-Un-GNg" firstAttribute="leading" secondItem="5T5-7V-4pt" secondAttribute="leading" id="ppW-1C-8KC"/> |
| | | </constraints> |
| | | </view> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="eLA-xc-jk8"> |
| | | <rect key="frame" x="0.0" y="736" width="393" height="116"/> |
| | | <subviews> |
| | | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="f6n-Cv-r8I"> |
| | | <rect key="frame" x="15" y="15" width="20" height="20"/> |
| | | <constraints> |
| | | <constraint firstAttribute="width" constant="20" id="EHv-IQ-GMO"/> |
| | | <constraint firstAttribute="height" constant="20" id="JCL-ct-yji"/> |
| | | </constraints> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <state key="normal" image="btn_choose_1"/> |
| | | <state key="selected" image="btn_choose_s"/> |
| | | <connections> |
| | | <action selector="selectAcceptAction:" destination="-1" eventType="touchUpInside" id="4vH-RP-iKE"/> |
| | | </connections> |
| | | </button> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="我已阅读并同意" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="p2I-Ng-EZy"> |
| | | <rect key="frame" x="39.999999999999993" y="16.666666666666629" width="97.333333333333314" height="17"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="《会员协议》" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="oIl-O5-bRE"> |
| | | <rect key="frame" x="137.33333333333334" y="16.666666666666629" width="70" height="17"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
| | | <color key="textColor" red="0.62745098039215685" green="0.42745098039215684" blue="0.16470588235294117" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="az9-cM-2MP"> |
| | | <rect key="frame" x="15" y="43.666666666666629" width="363" height="44"/> |
| | | <color key="backgroundColor" red="0.99199998379999998" green="0.50161166960000003" blue="0.18823529410000001" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="44" id="32q-wu-8sh"/> |
| | | </constraints> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="18"/> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <state key="normal" title="立即开通"/> |
| | | <connections> |
| | | <action selector="playAction:" destination="-1" eventType="touchUpInside" id="zML-PY-bcd"/> |
| | | </connections> |
| | | </button> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hQk-Gy-cR1"> |
| | | <rect key="frame" x="0.0" y="0.0" width="393" height="1"/> |
| | | <color key="backgroundColor" systemColor="systemGray6Color"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="1" id="Xdb-EB-MzB"/> |
| | | </constraints> |
| | | </view> |
| | | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="68a-V7-QyT"> |
| | | <rect key="frame" x="135" y="7.6666666666666288" width="75" height="35"/> |
| | | <constraints> |
| | | <constraint firstAttribute="height" constant="35" id="2xB-Z5-W3K"/> |
| | | <constraint firstAttribute="width" constant="75" id="Jx5-XY-rcp"/> |
| | | </constraints> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <connections> |
| | | <action selector="lookxyAction:" destination="-1" eventType="touchUpInside" id="oiQ-XH-8Gm"/> |
| | | </connections> |
| | | </button> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstItem="p2I-Ng-EZy" firstAttribute="centerY" secondItem="f6n-Cv-r8I" secondAttribute="centerY" id="1yO-XI-hVq"/> |
| | | <constraint firstAttribute="height" constant="116" id="5P5-Fq-1G6"/> |
| | | <constraint firstItem="68a-V7-QyT" firstAttribute="centerY" secondItem="oIl-O5-bRE" secondAttribute="centerY" id="5WW-XX-0H0"/> |
| | | <constraint firstItem="oIl-O5-bRE" firstAttribute="centerY" secondItem="p2I-Ng-EZy" secondAttribute="centerY" id="CbA-eb-w1Q"/> |
| | | <constraint firstItem="hQk-Gy-cR1" firstAttribute="leading" secondItem="eLA-xc-jk8" secondAttribute="leading" id="H8E-o1-5aq"/> |
| | | <constraint firstAttribute="trailing" secondItem="hQk-Gy-cR1" secondAttribute="trailing" id="LhU-0Z-CEB"/> |
| | | <constraint firstItem="hQk-Gy-cR1" firstAttribute="top" secondItem="eLA-xc-jk8" secondAttribute="top" id="LiZ-ru-otf"/> |
| | | <constraint firstItem="az9-cM-2MP" firstAttribute="leading" secondItem="eLA-xc-jk8" secondAttribute="leading" constant="15" id="MQP-Ug-Zmo"/> |
| | | <constraint firstItem="f6n-Cv-r8I" firstAttribute="leading" secondItem="eLA-xc-jk8" secondAttribute="leading" constant="15" id="OBV-eD-ThG"/> |
| | | <constraint firstItem="68a-V7-QyT" firstAttribute="centerX" secondItem="oIl-O5-bRE" secondAttribute="centerX" id="RgA-Df-Z8P"/> |
| | | <constraint firstAttribute="trailing" secondItem="az9-cM-2MP" secondAttribute="trailing" constant="15" id="Zjb-R1-PSR"/> |
| | | <constraint firstItem="f6n-Cv-r8I" firstAttribute="top" secondItem="eLA-xc-jk8" secondAttribute="top" constant="15" id="dvX-Zn-9HS"/> |
| | | <constraint firstItem="oIl-O5-bRE" firstAttribute="leading" secondItem="p2I-Ng-EZy" secondAttribute="trailing" id="pG2-z3-mQ8"/> |
| | | <constraint firstItem="p2I-Ng-EZy" firstAttribute="leading" secondItem="f6n-Cv-r8I" secondAttribute="trailing" constant="5" id="vA6-qq-cEJ"/> |
| | | <constraint firstItem="az9-cM-2MP" firstAttribute="top" secondItem="p2I-Ng-EZy" secondAttribute="bottom" constant="10" id="xDZ-q1-JCN"/> |
| | | </constraints> |
| | | </view> |
| | | <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="oQI-rU-VGE"> |
| | | <rect key="frame" x="0.0" y="265" width="393" height="471"/> |
| | | <subviews> |
| | | <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="WIB-0U-iRO"> |
| | | <rect key="frame" x="0.0" y="0.0" width="393" height="471"/> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | </tableView> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstAttribute="bottom" secondItem="WIB-0U-iRO" secondAttribute="bottom" id="VP6-52-PXG"/> |
| | | <constraint firstItem="WIB-0U-iRO" firstAttribute="leading" secondItem="oQI-rU-VGE" secondAttribute="leading" id="mrM-h5-sPY"/> |
| | | <constraint firstItem="WIB-0U-iRO" firstAttribute="top" secondItem="oQI-rU-VGE" secondAttribute="top" id="wSc-FS-csx"/> |
| | | <constraint firstAttribute="trailing" secondItem="WIB-0U-iRO" secondAttribute="trailing" id="xEy-AF-Vjf"/> |
| | | </constraints> |
| | | </view> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstAttribute="trailing" secondItem="5T5-7V-4pt" secondAttribute="trailing" id="3a5-bh-eJA"/> |
| | | <constraint firstItem="5T5-7V-4pt" firstAttribute="top" secondItem="yr9-3E-lu7" secondAttribute="top" constant="230" id="8cB-FU-qPz"/> |
| | | <constraint firstItem="eLA-xc-jk8" firstAttribute="leading" secondItem="yr9-3E-lu7" secondAttribute="leading" id="9MB-ZP-kJE"/> |
| | | <constraint firstItem="bY5-he-dlH" firstAttribute="top" secondItem="yr9-3E-lu7" secondAttribute="top" id="Aeq-Wv-SQ9"/> |
| | | <constraint firstAttribute="trailing" secondItem="bY5-he-dlH" secondAttribute="trailing" id="GE4-ea-9et"/> |
| | | <constraint firstAttribute="trailing" secondItem="oQI-rU-VGE" secondAttribute="trailing" id="ImU-wJ-MTj"/> |
| | | <constraint firstItem="oQI-rU-VGE" firstAttribute="leading" secondItem="yr9-3E-lu7" secondAttribute="leading" id="WPk-nn-9EO"/> |
| | | <constraint firstItem="5T5-7V-4pt" firstAttribute="leading" secondItem="yr9-3E-lu7" secondAttribute="leading" id="cLd-Ox-c56"/> |
| | | <constraint firstAttribute="trailing" secondItem="eLA-xc-jk8" secondAttribute="trailing" id="cQk-Gy-r4h"/> |
| | | <constraint firstItem="oQI-rU-VGE" firstAttribute="top" secondItem="bY5-he-dlH" secondAttribute="bottom" constant="15" id="ceB-Za-2kL"/> |
| | | <constraint firstItem="eLA-xc-jk8" firstAttribute="top" secondItem="oQI-rU-VGE" secondAttribute="bottom" id="d7M-73-8eU"/> |
| | | <constraint firstAttribute="bottom" secondItem="eLA-xc-jk8" secondAttribute="bottom" id="gvC-iV-Nzp"/> |
| | | <constraint firstItem="bY5-he-dlH" firstAttribute="leading" secondItem="yr9-3E-lu7" secondAttribute="leading" id="j9i-D8-fov"/> |
| | | </constraints> |
| | | </view> |
| | | </subviews> |
| | | <color key="backgroundColor" systemColor="systemBackgroundColor"/> |
| | | <constraints> |
| | | <constraint firstAttribute="bottom" secondItem="yr9-3E-lu7" secondAttribute="bottom" id="WQb-iA-szp"/> |
| | | <constraint firstAttribute="trailing" secondItem="yr9-3E-lu7" secondAttribute="trailing" id="dCo-35-DiH"/> |
| | | <constraint firstItem="yr9-3E-lu7" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" id="fBf-Ce-XoR"/> |
| | | <constraint firstItem="yr9-3E-lu7" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="rNm-wl-wa4"/> |
| | | </constraints> |
| | | <point key="canvasLocation" x="18" y="11"/> |
| | | </view> |
| | | </objects> |
| | | <resources> |
| | | <image name="Rectangle" width="390" height="379.66665649414062"/> |
| | | <image name="btn_choose_1" width="24" height="24"/> |
| | | <image name="btn_choose_s" width="25" height="25"/> |
| | | <systemColor name="systemBackgroundColor"> |
| | | <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> |
| | | </systemColor> |
| | | <systemColor name="systemGray6Color"> |
| | | <color red="0.94901960780000005" green="0.94901960780000005" blue="0.96862745100000003" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> |
| | | </systemColor> |
| | | </resources> |
| | | </document> |
| | |
| | | if model.type != 2 { |
| | | btn_handle.isSelected = deviceModel != nil |
| | | }else { |
| | | btn_handle.isSelected = true |
| | | btn_handle.isSelected = false |
| | | } |
| | | |
| | | } |
| | |
| | | } |
| | | |
| | | @IBAction func handleAction(_ sender: UIButton) { |
| | | |
| | | |
| | | |
| | | if sender.titleLabel?.text == "结束比赛" { |
| | | EndGameAlertView.show {[weak self] red, blue in |
| | |
| | | if status{ |
| | | Services.startWorldCup(code: devCode, people: tempArray.jq_toJson1(), worldCupId: weakSelf.model.id).subscribe(onNext: {data in |
| | | if let _ = data.data{ |
| | | weakSelf.startModel = data.data |
| | | let m = JSONDeserializer<SimpleModel>.deserializeFrom(json: data.data) |
| | | weakSelf.startModel = m |
| | | alert(msg: "比赛开始") |
| | | sender.isSelected = true |
| | | weakSelf.redTeamItems.removeAll() |
| | | weakSelf.blueTeamItems.removeAll() |
| | | |
| | | weakSelf.updateUserView() |
| | | if weakSelf.model.type == 2{ |
| | | weakSelf.btn_handle.setTitle("结束比赛", for: .normal) |
| | | } |
| | | weakSelf.updateUserView() |
| | | } |
| | | }).disposed(by: weakSelf.disposeBag) |
| | | } |
| | |
| | | } |
| | | |
| | | @IBAction func becomeVIPAction(_ sender: Any) { |
| | | let vc = JoinMemberIntroduceVC() |
| | | let vc = JoinMemberVC() |
| | | push(vc: vc) |
| | | } |
| | | |
| | |
| | | case "我的二维码": |
| | | let vc = MeQRCodeVC() |
| | | push(vc: vc) |
| | | // let vc = JoinMemberVC() |
| | | // push(vc: vc) |
| | | case "我的订场": |
| | | let vc = YardBookingListVC() |
| | | push(vc: vc) |
| | |
| | | } |
| | | |
| | | @IBAction func webAction(_ sender: Any) { |
| | | let webVC = CommonWebVC(type: .matchStore,customTitle: "社区世界杯报名协议") |
| | | let webVC = CommonWebVC(type: .matchStore,customTitle: "参赛协议", content: "") |
| | | push(vc: webVC) |
| | | } |
| | | |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="32700.99.1234" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES"> |
| | | <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="23504" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES"> |
| | | <device id="retina6_12" orientation="portrait" appearance="light"/> |
| | | <dependencies> |
| | | <deployment identifier="iOS"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="22684"/> |
| | | <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="23506"/> |
| | | <capability name="Named colors" minToolsVersion="9.0"/> |
| | | <capability name="Safe area layout guides" minToolsVersion="9.0"/> |
| | | <capability name="System colors in document resources" minToolsVersion="11.0"/> |
| | |
| | | </userDefinedRuntimeAttributes> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="截止报名时间" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="IrW-dH-dqc"> |
| | | <rect key="frame" x="22" y="13" width="73.666666666666671" height="14.333333333333336"/> |
| | | <rect key="frame" x="22" y="13" width="71.666666666666671" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | |
| | | </userDefinedRuntimeAttributes> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="开始时间" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="k0a-1L-bTy"> |
| | | <rect key="frame" x="22.000000000000004" y="6.0000000000000009" width="49.333333333333343" height="14.333333333333336"/> |
| | | <rect key="frame" x="22" y="6.0000000000000009" width="48" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | |
| | | </userDefinedRuntimeAttributes> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="结束时间" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="QGU-ac-iPD"> |
| | | <rect key="frame" x="22.000000000000004" y="6.0000000000000009" width="49.333333333333343" height="14.333333333333336"/> |
| | | <rect key="frame" x="22" y="6.0000000000000009" width="48" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | |
| | | </userDefinedRuntimeAttributes> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="报名年龄" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vC4-SB-uvi"> |
| | | <rect key="frame" x="22.000000000000004" y="6.0000000000000009" width="49.333333333333343" height="14.333333333333336"/> |
| | | <rect key="frame" x="22" y="6.0000000000000009" width="48" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | |
| | | </userDefinedRuntimeAttributes> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="参赛者性别" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="H3I-yA-Bya"> |
| | | <rect key="frame" x="22.000000000000004" y="6.0000000000000009" width="61.333333333333343" height="14.333333333333336"/> |
| | | <rect key="frame" x="21.999999999999996" y="6.0000000000000009" width="59.666666666666657" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | |
| | | </userDefinedRuntimeAttributes> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="参赛地址" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="HZH-XR-Cyd"> |
| | | <rect key="frame" x="22.000000000000004" y="6.0000000000000009" width="49.333333333333343" height="14.333333333333336"/> |
| | | <rect key="frame" x="22" y="6.0000000000000009" width="48" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | |
| | | </userDefinedRuntimeAttributes> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="参赛赛点" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="WIP-Iv-LJH"> |
| | | <rect key="frame" x="22.000000000000004" y="6.0000000000000009" width="49.333333333333343" height="14.333333333333336"/> |
| | | <rect key="frame" x="22" y="6.0000000000000009" width="48" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | |
| | | <rect key="frame" x="182.66666666666663" y="0.0" width="182.33333333333337" height="20"/> |
| | | <subviews> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="玩湃币:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="5zU-uC-sCE"> |
| | | <rect key="frame" x="0.0" y="1.6666666666666288" width="50.333333333333336" height="17"/> |
| | | <rect key="frame" x="0.0" y="1.6666666666666288" width="49" height="17"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0币/人" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cVX-U3-mzN"> |
| | | <rect key="frame" x="50.333333333333343" y="1.6666666666666288" width="47.333333333333343" height="17"/> |
| | | <rect key="frame" x="49" y="1.6666666666666288" width="46.333333333333343" height="17"/> |
| | | <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.80000000000000004" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | |
| | | </constraints> |
| | | </view> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="赛事人员" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ldY-d5-HF6"> |
| | | <rect key="frame" x="14" y="15" width="65.333333333333329" height="29"/> |
| | | <rect key="frame" x="13.999999999999996" y="15" width="63.666666666666657" height="29"/> |
| | | <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="16"/> |
| | | <nil key="textColor"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="J6G-ci-uFv" customClass="QMUIButton"> |
| | | <rect key="frame" x="305" y="21" width="74" height="17"/> |
| | | <rect key="frame" x="307" y="21" width="72" height="17"/> |
| | | <fontDescription key="fontDescription" type="system" pointSize="14"/> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <state key="normal" title="选择人员" image="btn_add_1"> |
| | |
| | | </connections> |
| | | </button> |
| | | <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="我已阅读并同意" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="VLx-ri-X99"> |
| | | <rect key="frame" x="48" y="15" width="86" height="14.333333333333336"/> |
| | | <rect key="frame" x="48.000000000000007" y="15" width="83.666666666666686" height="14.333333333333336"/> |
| | | <fontDescription key="fontDescription" type="system" weight="medium" pointSize="12"/> |
| | | <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/> |
| | | <nil key="highlightedColor"/> |
| | | </label> |
| | | <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="hRB-z0-FaB"> |
| | | <rect key="frame" x="139" y="8.6666666666667425" width="123" height="27"/> |
| | | <rect key="frame" x="136.66666666666666" y="8.6666666666667425" width="60" height="27"/> |
| | | <fontDescription key="fontDescription" type="system" weight="medium" pointSize="12"/> |
| | | <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/> |
| | | <state key="normal" title="《社区世界杯报名协议》"> |
| | | <state key="normal" title="《参赛协议》"> |
| | | <color key="titleColor" red="0.0" green="0.47058823529999999" blue="0.80392156859999997" alpha="0.80000000000000004" colorSpace="custom" customColorSpace="sRGB"/> |
| | | </state> |
| | | <connections> |
| | |
| | | // item |
| | | pageMenu.spacing = 20.0 |
| | | pageMenu.permutationWay = .notScrollEqualWidths |
| | | pageMenu.setItems(["全部","满减券","代金券","体验券"], selectedItemIndex: 0) |
| | | pageMenu.setItems(["全部","满减券","代金券","体验券","抵扣券"], selectedItemIndex: 0) |
| | | |
| | | // 字体 |
| | | pageMenu.selectedItemTitleFont = UIFont.systemFont(ofSize: 14, weight: .semibold) |
| | |
| | | } |
| | | |
| | | func totalPagesOfpageViewController(_ pageViewConteoller: FFPageViewController) -> UInt { |
| | | return 4 |
| | | return 5 |
| | | } |
| | | |
| | | func pageViewController(_ pageViewConteoller: FFPageViewController, controllerForPage page: Int) -> UIViewController { |