diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage/Cells/NoticeListTableViewCell.xib b/Meterage/Cells/NoticeListTableViewCell.xib new file mode 100644 index 0000000..1ac4308 --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.xib @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage/Cells/NoticeListTableViewCell.xib b/Meterage/Cells/NoticeListTableViewCell.xib new file mode 100644 index 0000000..1ac4308 --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.xib @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Meterage/Extensions/Dictionary.swift b/Meterage/Extensions/Dictionary.swift index aaed14f..9ef13c3 100644 --- a/Meterage/Extensions/Dictionary.swift +++ b/Meterage/Extensions/Dictionary.swift @@ -5,16 +5,8 @@ import Foundation extension Dictionary { - func toJsonString() -> String? { - guard let data = try? JSONSerialization.data(withJSONObject: self, - options: []) - else { - return nil - } - guard let str = String(data: data, encoding: .utf8) else { - return nil - } - return str + func toJsonString() -> String { + let data = try! JSONSerialization.data(withJSONObject: self, options: .prettyPrinted) + return String(data: data, encoding: .utf8)! } - -} \ No newline at end of file +} diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage/Cells/NoticeListTableViewCell.xib b/Meterage/Cells/NoticeListTableViewCell.xib new file mode 100644 index 0000000..1ac4308 --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.xib @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Meterage/Extensions/Dictionary.swift b/Meterage/Extensions/Dictionary.swift index aaed14f..9ef13c3 100644 --- a/Meterage/Extensions/Dictionary.swift +++ b/Meterage/Extensions/Dictionary.swift @@ -5,16 +5,8 @@ import Foundation extension Dictionary { - func toJsonString() -> String? { - guard let data = try? JSONSerialization.data(withJSONObject: self, - options: []) - else { - return nil - } - guard let str = String(data: data, encoding: .utf8) else { - return nil - } - return str + func toJsonString() -> String { + let data = try! JSONSerialization.data(withJSONObject: self, options: .prettyPrinted) + return String(data: data, encoding: .utf8)! } - -} \ No newline at end of file +} diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index 93df57e..d694fb6 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -15,7 +15,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") @@ -27,7 +27,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage/Cells/NoticeListTableViewCell.xib b/Meterage/Cells/NoticeListTableViewCell.xib new file mode 100644 index 0000000..1ac4308 --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.xib @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Meterage/Extensions/Dictionary.swift b/Meterage/Extensions/Dictionary.swift index aaed14f..9ef13c3 100644 --- a/Meterage/Extensions/Dictionary.swift +++ b/Meterage/Extensions/Dictionary.swift @@ -5,16 +5,8 @@ import Foundation extension Dictionary { - func toJsonString() -> String? { - guard let data = try? JSONSerialization.data(withJSONObject: self, - options: []) - else { - return nil - } - guard let str = String(data: data, encoding: .utf8) else { - return nil - } - return str + func toJsonString() -> String { + let data = try! JSONSerialization.data(withJSONObject: self, options: .prettyPrinted) + return String(data: data, encoding: .utf8)! } - -} \ No newline at end of file +} diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index 93df57e..d694fb6 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -15,7 +15,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") @@ -27,7 +27,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") diff --git a/Meterage/ViewControllers/Home/HomePageViewController.swift b/Meterage/ViewControllers/Home/HomePageViewController.swift index 2cedf18..bd7f7ba 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.swift +++ b/Meterage/ViewControllers/Home/HomePageViewController.swift @@ -15,6 +15,7 @@ class HomePageViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UITableViewDelegate, UITableViewDataSource { @IBOutlet weak var searchBorderView: UIView! @IBOutlet weak var inputTextView: UITextField! + @IBOutlet weak var noticeView: UIImageView! @IBOutlet weak var noticeCountView: UILabel! @IBOutlet weak var noticeLayout: UIView! @IBOutlet weak var noticeContentView: UILabel! @@ -44,14 +45,19 @@ searchBorderView.layer.cornerRadius = 17.5 searchBorderView.layer.masksToBounds = true + /// 给UIImageView添加点击事件 + let singleTapGesture = UITapGestureRecognizer(target: self, action: #selector(imageViewClick)) + noticeView.addGestureRecognizer(singleTapGesture) + noticeView.isUserInteractionEnabled = true + noticeCountView.layer.cornerRadius = 7 noticeCountView.layer.masksToBounds = true // 数据请求 let token = defaults.get(for: tokenKey) ?? "" let baseURL = defaults.get(for: serverConfigKey)! - let noticeListURL = baseURL + Constant.noticeList.rawValue - let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=1" + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in switch response.result { case let .success(value): @@ -125,6 +131,14 @@ reminderTableView.tableFooterView = UIView(frame: CGRect.zero) } + /// 消息图标点击事件 + @objc func imageViewClick(){ + let destinationController = NoticeListViewController(nibName: "NoticeListViewController", bundle: nil) + let navigation = UINavigationController(rootViewController: destinationController) + navigation.modalPresentationStyle = UIModalPresentationStyle.fullScreen + present(navigation, animated: true, completion: nil) + } + /// UICollectionView // 显示多少个Item func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage/Cells/NoticeListTableViewCell.xib b/Meterage/Cells/NoticeListTableViewCell.xib new file mode 100644 index 0000000..1ac4308 --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.xib @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Meterage/Extensions/Dictionary.swift b/Meterage/Extensions/Dictionary.swift index aaed14f..9ef13c3 100644 --- a/Meterage/Extensions/Dictionary.swift +++ b/Meterage/Extensions/Dictionary.swift @@ -5,16 +5,8 @@ import Foundation extension Dictionary { - func toJsonString() -> String? { - guard let data = try? JSONSerialization.data(withJSONObject: self, - options: []) - else { - return nil - } - guard let str = String(data: data, encoding: .utf8) else { - return nil - } - return str + func toJsonString() -> String { + let data = try! JSONSerialization.data(withJSONObject: self, options: .prettyPrinted) + return String(data: data, encoding: .utf8)! } - -} \ No newline at end of file +} diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index 93df57e..d694fb6 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -15,7 +15,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") @@ -27,7 +27,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") diff --git a/Meterage/ViewControllers/Home/HomePageViewController.swift b/Meterage/ViewControllers/Home/HomePageViewController.swift index 2cedf18..bd7f7ba 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.swift +++ b/Meterage/ViewControllers/Home/HomePageViewController.swift @@ -15,6 +15,7 @@ class HomePageViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UITableViewDelegate, UITableViewDataSource { @IBOutlet weak var searchBorderView: UIView! @IBOutlet weak var inputTextView: UITextField! + @IBOutlet weak var noticeView: UIImageView! @IBOutlet weak var noticeCountView: UILabel! @IBOutlet weak var noticeLayout: UIView! @IBOutlet weak var noticeContentView: UILabel! @@ -44,14 +45,19 @@ searchBorderView.layer.cornerRadius = 17.5 searchBorderView.layer.masksToBounds = true + /// 给UIImageView添加点击事件 + let singleTapGesture = UITapGestureRecognizer(target: self, action: #selector(imageViewClick)) + noticeView.addGestureRecognizer(singleTapGesture) + noticeView.isUserInteractionEnabled = true + noticeCountView.layer.cornerRadius = 7 noticeCountView.layer.masksToBounds = true // 数据请求 let token = defaults.get(for: tokenKey) ?? "" let baseURL = defaults.get(for: serverConfigKey)! - let noticeListURL = baseURL + Constant.noticeList.rawValue - let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=1" + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in switch response.result { case let .success(value): @@ -125,6 +131,14 @@ reminderTableView.tableFooterView = UIView(frame: CGRect.zero) } + /// 消息图标点击事件 + @objc func imageViewClick(){ + let destinationController = NoticeListViewController(nibName: "NoticeListViewController", bundle: nil) + let navigation = UINavigationController(rootViewController: destinationController) + navigation.modalPresentationStyle = UIModalPresentationStyle.fullScreen + present(navigation, animated: true, completion: nil) + } + /// UICollectionView // 显示多少个Item func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { diff --git a/Meterage/ViewControllers/Home/HomePageViewController.xib b/Meterage/ViewControllers/Home/HomePageViewController.xib index fc37ab1..d5d8d5c 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.xib +++ b/Meterage/ViewControllers/Home/HomePageViewController.xib @@ -16,6 +16,7 @@ + diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage/Cells/NoticeListTableViewCell.xib b/Meterage/Cells/NoticeListTableViewCell.xib new file mode 100644 index 0000000..1ac4308 --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.xib @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Meterage/Extensions/Dictionary.swift b/Meterage/Extensions/Dictionary.swift index aaed14f..9ef13c3 100644 --- a/Meterage/Extensions/Dictionary.swift +++ b/Meterage/Extensions/Dictionary.swift @@ -5,16 +5,8 @@ import Foundation extension Dictionary { - func toJsonString() -> String? { - guard let data = try? JSONSerialization.data(withJSONObject: self, - options: []) - else { - return nil - } - guard let str = String(data: data, encoding: .utf8) else { - return nil - } - return str + func toJsonString() -> String { + let data = try! JSONSerialization.data(withJSONObject: self, options: .prettyPrinted) + return String(data: data, encoding: .utf8)! } - -} \ No newline at end of file +} diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index 93df57e..d694fb6 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -15,7 +15,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") @@ -27,7 +27,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") diff --git a/Meterage/ViewControllers/Home/HomePageViewController.swift b/Meterage/ViewControllers/Home/HomePageViewController.swift index 2cedf18..bd7f7ba 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.swift +++ b/Meterage/ViewControllers/Home/HomePageViewController.swift @@ -15,6 +15,7 @@ class HomePageViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UITableViewDelegate, UITableViewDataSource { @IBOutlet weak var searchBorderView: UIView! @IBOutlet weak var inputTextView: UITextField! + @IBOutlet weak var noticeView: UIImageView! @IBOutlet weak var noticeCountView: UILabel! @IBOutlet weak var noticeLayout: UIView! @IBOutlet weak var noticeContentView: UILabel! @@ -44,14 +45,19 @@ searchBorderView.layer.cornerRadius = 17.5 searchBorderView.layer.masksToBounds = true + /// 给UIImageView添加点击事件 + let singleTapGesture = UITapGestureRecognizer(target: self, action: #selector(imageViewClick)) + noticeView.addGestureRecognizer(singleTapGesture) + noticeView.isUserInteractionEnabled = true + noticeCountView.layer.cornerRadius = 7 noticeCountView.layer.masksToBounds = true // 数据请求 let token = defaults.get(for: tokenKey) ?? "" let baseURL = defaults.get(for: serverConfigKey)! - let noticeListURL = baseURL + Constant.noticeList.rawValue - let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=1" + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in switch response.result { case let .success(value): @@ -125,6 +131,14 @@ reminderTableView.tableFooterView = UIView(frame: CGRect.zero) } + /// 消息图标点击事件 + @objc func imageViewClick(){ + let destinationController = NoticeListViewController(nibName: "NoticeListViewController", bundle: nil) + let navigation = UINavigationController(rootViewController: destinationController) + navigation.modalPresentationStyle = UIModalPresentationStyle.fullScreen + present(navigation, animated: true, completion: nil) + } + /// UICollectionView // 显示多少个Item func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { diff --git a/Meterage/ViewControllers/Home/HomePageViewController.xib b/Meterage/ViewControllers/Home/HomePageViewController.xib index fc37ab1..d5d8d5c 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.xib +++ b/Meterage/ViewControllers/Home/HomePageViewController.xib @@ -16,6 +16,7 @@ + diff --git a/Meterage/ViewControllers/Mine/MineViewController.swift b/Meterage/ViewControllers/Mine/MineViewController.swift index e9ca570..78cfc77 100644 --- a/Meterage/ViewControllers/Mine/MineViewController.swift +++ b/Meterage/ViewControllers/Mine/MineViewController.swift @@ -57,8 +57,8 @@ } } - let noticeListURL = baseURL + Constant.noticeList.rawValue - let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=1" + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in switch response.result { case let .success(value): diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage/Cells/NoticeListTableViewCell.xib b/Meterage/Cells/NoticeListTableViewCell.xib new file mode 100644 index 0000000..1ac4308 --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.xib @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Meterage/Extensions/Dictionary.swift b/Meterage/Extensions/Dictionary.swift index aaed14f..9ef13c3 100644 --- a/Meterage/Extensions/Dictionary.swift +++ b/Meterage/Extensions/Dictionary.swift @@ -5,16 +5,8 @@ import Foundation extension Dictionary { - func toJsonString() -> String? { - guard let data = try? JSONSerialization.data(withJSONObject: self, - options: []) - else { - return nil - } - guard let str = String(data: data, encoding: .utf8) else { - return nil - } - return str + func toJsonString() -> String { + let data = try! JSONSerialization.data(withJSONObject: self, options: .prettyPrinted) + return String(data: data, encoding: .utf8)! } - -} \ No newline at end of file +} diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index 93df57e..d694fb6 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -15,7 +15,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") @@ -27,7 +27,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") diff --git a/Meterage/ViewControllers/Home/HomePageViewController.swift b/Meterage/ViewControllers/Home/HomePageViewController.swift index 2cedf18..bd7f7ba 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.swift +++ b/Meterage/ViewControllers/Home/HomePageViewController.swift @@ -15,6 +15,7 @@ class HomePageViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UITableViewDelegate, UITableViewDataSource { @IBOutlet weak var searchBorderView: UIView! @IBOutlet weak var inputTextView: UITextField! + @IBOutlet weak var noticeView: UIImageView! @IBOutlet weak var noticeCountView: UILabel! @IBOutlet weak var noticeLayout: UIView! @IBOutlet weak var noticeContentView: UILabel! @@ -44,14 +45,19 @@ searchBorderView.layer.cornerRadius = 17.5 searchBorderView.layer.masksToBounds = true + /// 给UIImageView添加点击事件 + let singleTapGesture = UITapGestureRecognizer(target: self, action: #selector(imageViewClick)) + noticeView.addGestureRecognizer(singleTapGesture) + noticeView.isUserInteractionEnabled = true + noticeCountView.layer.cornerRadius = 7 noticeCountView.layer.masksToBounds = true // 数据请求 let token = defaults.get(for: tokenKey) ?? "" let baseURL = defaults.get(for: serverConfigKey)! - let noticeListURL = baseURL + Constant.noticeList.rawValue - let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=1" + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in switch response.result { case let .success(value): @@ -125,6 +131,14 @@ reminderTableView.tableFooterView = UIView(frame: CGRect.zero) } + /// 消息图标点击事件 + @objc func imageViewClick(){ + let destinationController = NoticeListViewController(nibName: "NoticeListViewController", bundle: nil) + let navigation = UINavigationController(rootViewController: destinationController) + navigation.modalPresentationStyle = UIModalPresentationStyle.fullScreen + present(navigation, animated: true, completion: nil) + } + /// UICollectionView // 显示多少个Item func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { diff --git a/Meterage/ViewControllers/Home/HomePageViewController.xib b/Meterage/ViewControllers/Home/HomePageViewController.xib index fc37ab1..d5d8d5c 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.xib +++ b/Meterage/ViewControllers/Home/HomePageViewController.xib @@ -16,6 +16,7 @@ + diff --git a/Meterage/ViewControllers/Mine/MineViewController.swift b/Meterage/ViewControllers/Mine/MineViewController.swift index e9ca570..78cfc77 100644 --- a/Meterage/ViewControllers/Mine/MineViewController.swift +++ b/Meterage/ViewControllers/Mine/MineViewController.swift @@ -57,8 +57,8 @@ } } - let noticeListURL = baseURL + Constant.noticeList.rawValue - let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=1" + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in switch response.result { case let .success(value): diff --git a/Meterage/ViewControllers/Notice/NoticeListViewController.swift b/Meterage/ViewControllers/Notice/NoticeListViewController.swift new file mode 100644 index 0000000..aa9159e --- /dev/null +++ b/Meterage/ViewControllers/Notice/NoticeListViewController.swift @@ -0,0 +1,148 @@ +// +// NoticeListViewController.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import Alamofire +import DefaultsKit +import MJRefresh +import SwiftyJSON +import UIKit + +class NoticeListViewController: UIViewController, UITableViewDelegate, UITableViewDataSource { + + @IBOutlet weak var openSystemNoticeLayout: UIView! + @IBOutlet weak var tableView: UITableView! + + private var pageOffSet: Int = 1 + private var isUpdate: Bool = false + private var rowsArray: [RowModel] = [] + private let defaults = Defaults.shared + + override func viewDidLoad() { + super.viewDidLoad() + view.backgroundColor = .mainBackground + let leftBarBtn = UIBarButtonItem(image: UIImage(systemName: "chevron.backward"), style: .plain, target: self, action: #selector(backToPrevious)) + navigationItem.leftBarButtonItem = leftBarBtn + navigationItem.title = "消息" + navigationController?.navigationBar.titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.mainTextColor] + let rightBarBtn = UIBarButtonItem(image: UIImage(named: "read_notice")?.withRenderingMode(.alwaysOriginal), style: .plain, target: self, action: #selector(rightButtonAction)) + navigationItem.rightBarButtonItem = rightBarBtn + // Do any additional setup after loading the view. + tableView.register(UINib(nibName: "NoticeListTableViewCell", bundle: nil), forCellReuseIdentifier: "noticeListTableViewCell") + tableView.delegate = self + tableView.dataSource = self + tableView.separatorColor = .hintColor + tableView.backgroundColor = .clear + tableView.mj_header = MJRefreshNormalHeader { + DispatchQueue.main.asyncAfter(deadline: .now() + 0.5, execute: { [self] in + isUpdate = true + pageOffSet = 1 + loadData(offset: pageOffSet) + tableView.mj_header?.endRefreshing() + }) + } + + tableView.mj_footer = MJRefreshBackNormalFooter { + DispatchQueue.main.asyncAfter(deadline: .now() + 0.5, execute: { [self] in + isUpdate = false + pageOffSet += 1 + loadData(offset: pageOffSet) + tableView.mj_footer?.endRefreshing() + }) + } + // 默认加载数据 + loadData(offset: 1) + } + + func loadData(offset: Int) { + let baseURL = defaults.get(for: serverConfigKey)! + // 分页参数不能放在httpBody中 + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=" + String(offset) + let token = defaults.get(for: tokenKey) ?? "" + + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] + Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in + switch response.result { + case let .success(value): + let inspectModel = NoticeListModel(respJson: JSON(value)) + if inspectModel.code == 200 { + if isUpdate { + rowsArray = inspectModel.data.rows + } else { + inspectModel.data.rows.forEach { model in + rowsArray.append(model) + } + } + // 必须要重新加载数据,否则不走数据绑定 + tableView.reloadData() + } else { + AlertHub.shared.showWaringAlert(controller: self, message: "数据加载失败,请重试") + } + case .failure: + AlertHub.shared.showWaringAlert(controller: self, message: "未知错误") + } + } + } + + //返回按钮点击事件 + @objc func backToPrevious() { + dismiss(animated: true) + } + + //右边按钮点击事件 + @objc func rightButtonAction() { + let alertController = UIAlertController(title: "提示", + message: "确定将所有未读消息标为已读?", preferredStyle: .alert) + let cancelAction = UIAlertAction(title: "取消", style: .destructive, handler: nil) + let okAction = UIAlertAction(title: "确定", style: .default, handler: { action in + print("点击了确定") + }) + alertController.addAction(cancelAction) + alertController.addAction(okAction) + present(alertController, animated: true, completion: nil) + } + + @IBAction func closeNoticeLayout(_ sender: Any) { + openSystemNoticeLayout.isHidden = true + } + + /// UITableView + func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { + 60 + } + + func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { +// let mapViewController = InspectMapViewController(nibName: "InspectMapViewController", bundle: nil) +// // 委托代理 +// valueDelegate = mapViewController +// // 实现代理的方法,传值 +// let row = (indexPath as NSIndexPath).row +// let model = rowsArray[row] +// valueDelegate.transfer(controller: self, dic: ["id": model.id]) +// navigationController?.pushViewController(mapViewController, animated: true) + } + + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + rowsArray.count + } + + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + let cell: NoticeListTableViewCell = tableView.dequeueReusableCell(withIdentifier: "noticeListTableViewCell", for: indexPath) as! NoticeListTableViewCell + let row = (indexPath as NSIndexPath).row + let model = rowsArray[row] + cell.noticeTitleView.text = model.noticeTitle + cell.noticeTimeView.text = model.noticeTime + cell.noticeContentView.text = model.noticeSketch + //设置分割线上下左右边距 + cell.separatorInset = UIEdgeInsets(top: 0, left: 65, bottom: 0, right: 0) + cell.selectionStyle = .none + return cell + } + + func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) { + + } +} diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index 0d132e9..6985f9e 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -30,6 +30,10 @@ 65A55E3C29908EEC00093341 /* FutureTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */; }; 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */; }; 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */; }; + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E422990CE5F00093341 /* NoticeListViewController.swift */; }; + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E432990CE5F00093341 /* NoticeListViewController.xib */; }; + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */; }; + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */; }; 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */; }; 65AEA690298A632B00B8FF09 /* HomePageViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */; }; 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */; }; @@ -82,6 +86,10 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = FutureTaskTableViewCell.xib; sourceTree = ""; }; 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnderTaskTableViewCell.swift; sourceTree = ""; }; 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = UnderTaskTableViewCell.xib; sourceTree = ""; }; + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListViewController.swift; sourceTree = ""; }; + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListViewController.xib; sourceTree = ""; }; + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListTableViewCell.swift; sourceTree = ""; }; + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = NoticeListTableViewCell.xib; sourceTree = ""; }; 65AEA683298A5F9500B8FF09 /* AppCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppCoordinator.swift; sourceTree = ""; }; 65AEA68E298A632B00B8FF09 /* HomePageViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomePageViewController.swift; sourceTree = ""; }; 65AEA68F298A632B00B8FF09 /* HomePageViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomePageViewController.xib; sourceTree = ""; }; @@ -173,9 +181,19 @@ path = Pods; sourceTree = ""; }; + 65A55E412990CE4500093341 /* Notice */ = { + isa = PBXGroup; + children = ( + 65A55E422990CE5F00093341 /* NoticeListViewController.swift */, + 65A55E432990CE5F00093341 /* NoticeListViewController.xib */, + ); + path = Notice; + sourceTree = ""; + }; 65AEA68A298A62FC00B8FF09 /* ViewControllers */ = { isa = PBXGroup; children = ( + 65A55E412990CE4500093341 /* Notice */, 65AEA6A5298A69C500B8FF09 /* Guide */, 65AEA69A298A648800B8FF09 /* Login */, 65AEA68D298A631700B8FF09 /* Mine */, @@ -287,6 +305,8 @@ 65A55E3A29908EEC00093341 /* FutureTaskTableViewCell.xib */, 65A55E3D2990972800093341 /* UnderTaskTableViewCell.swift */, 65A55E3E2990972800093341 /* UnderTaskTableViewCell.xib */, + 65A55E462990E22F00093341 /* NoticeListTableViewCell.swift */, + 65A55E472990E22F00093341 /* NoticeListTableViewCell.xib */, ); path = Cells; sourceTree = ""; @@ -349,6 +369,7 @@ 65AEA6A9298A69D500B8FF09 /* GuideViewController.xib in Resources */, 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */, 6531D7C7298CB45500C4B343 /* HomeCollectionViewCell.xib in Resources */, + 65A55E452990CE5F00093341 /* NoticeListViewController.xib in Resources */, 65AEA691298A632B00B8FF09 /* HomePageViewController.xib in Resources */, 65A55E2E298D17A100093341 /* FutureTaskViewController.xib in Resources */, 65A55E22298D00BE00093341 /* ReminderTableViewCell.xib in Resources */, @@ -360,6 +381,7 @@ 65AEA699298A634D00B8FF09 /* MineViewController.xib in Resources */, 65A55E38299089CA00093341 /* TotalTaskTableViewCell.xib in Resources */, 65A55E402990972800093341 /* UnderTaskTableViewCell.xib in Resources */, + 65A55E492990E22F00093341 /* NoticeListTableViewCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -446,6 +468,7 @@ 65AEA6B2298B642400B8FF09 /* BaseConfigModel.swift in Sources */, 65AEA6A8298A69D500B8FF09 /* GuideViewController.swift in Sources */, 65AEA684298A5F9500B8FF09 /* AppCoordinator.swift in Sources */, + 65A55E442990CE5F00093341 /* NoticeListViewController.swift in Sources */, 65A55E2D298D17A100093341 /* FutureTaskViewController.swift in Sources */, 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */, 65A55E3F2990972800093341 /* UnderTaskTableViewCell.swift in Sources */, @@ -463,6 +486,7 @@ 65A55E3B29908EEC00093341 /* FutureTaskTableViewCell.swift in Sources */, 65AEA694298A633E00B8FF09 /* SamplePageViewController.swift in Sources */, 65AEA698298A634D00B8FF09 /* MineViewController.swift in Sources */, + 65A55E482990E22F00093341 /* NoticeListTableViewCell.swift in Sources */, 65A55E21298D00BE00093341 /* ReminderTableViewCell.swift in Sources */, 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index 2f04b04..0ab1ab7 100644 --- a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate +++ b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/Contents.json b/Meterage/Assets.xcassets/notice.imageset/Contents.json new file mode 100644 index 0000000..ef5a256 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@1x.png b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png new file mode 100644 index 0000000..c401303 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@2x.png b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png new file mode 100644 index 0000000..6cc0315 --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/notice.imageset/notice@3x.png b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png new file mode 100644 index 0000000..25398ad --- /dev/null +++ b/Meterage/Assets.xcassets/notice.imageset/notice@3x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/Contents.json b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json new file mode 100644 index 0000000..20daff1 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "read_notice@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "read_notice@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "read_notice@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png new file mode 100644 index 0000000..d961f5e --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png new file mode 100644 index 0000000..29f876b --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png new file mode 100644 index 0000000..36fbd21 --- /dev/null +++ b/Meterage/Assets.xcassets/read_notice.imageset/read_notice@3x.png Binary files differ diff --git a/Meterage/Cells/NoticeListTableViewCell.swift b/Meterage/Cells/NoticeListTableViewCell.swift new file mode 100644 index 0000000..05e428b --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.swift @@ -0,0 +1,27 @@ +// +// NoticeListTableViewCell.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import UIKit + +class NoticeListTableViewCell: UITableViewCell { + + @IBOutlet weak var noticeTitleView: UILabel! + @IBOutlet weak var noticeTimeView: UILabel! + @IBOutlet weak var noticeContentView: 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 + } + +} diff --git a/Meterage/Cells/NoticeListTableViewCell.xib b/Meterage/Cells/NoticeListTableViewCell.xib new file mode 100644 index 0000000..1ac4308 --- /dev/null +++ b/Meterage/Cells/NoticeListTableViewCell.xib @@ -0,0 +1,73 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Meterage/Extensions/Dictionary.swift b/Meterage/Extensions/Dictionary.swift index aaed14f..9ef13c3 100644 --- a/Meterage/Extensions/Dictionary.swift +++ b/Meterage/Extensions/Dictionary.swift @@ -5,16 +5,8 @@ import Foundation extension Dictionary { - func toJsonString() -> String? { - guard let data = try? JSONSerialization.data(withJSONObject: self, - options: []) - else { - return nil - } - guard let str = String(data: data, encoding: .utf8) else { - return nil - } - return str + func toJsonString() -> String { + let data = try! JSONSerialization.data(withJSONObject: self, options: .prettyPrinted) + return String(data: data, encoding: .utf8)! } - -} \ No newline at end of file +} diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index 93df57e..d694fb6 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -15,7 +15,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") @@ -27,7 +27,7 @@ var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - request.httpBody = parameters!.data(using: .utf8) + request.httpBody = parameters.data(using: .utf8) request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") diff --git a/Meterage/ViewControllers/Home/HomePageViewController.swift b/Meterage/ViewControllers/Home/HomePageViewController.swift index 2cedf18..bd7f7ba 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.swift +++ b/Meterage/ViewControllers/Home/HomePageViewController.swift @@ -15,6 +15,7 @@ class HomePageViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource, UITableViewDelegate, UITableViewDataSource { @IBOutlet weak var searchBorderView: UIView! @IBOutlet weak var inputTextView: UITextField! + @IBOutlet weak var noticeView: UIImageView! @IBOutlet weak var noticeCountView: UILabel! @IBOutlet weak var noticeLayout: UIView! @IBOutlet weak var noticeContentView: UILabel! @@ -44,14 +45,19 @@ searchBorderView.layer.cornerRadius = 17.5 searchBorderView.layer.masksToBounds = true + /// 给UIImageView添加点击事件 + let singleTapGesture = UITapGestureRecognizer(target: self, action: #selector(imageViewClick)) + noticeView.addGestureRecognizer(singleTapGesture) + noticeView.isUserInteractionEnabled = true + noticeCountView.layer.cornerRadius = 7 noticeCountView.layer.masksToBounds = true // 数据请求 let token = defaults.get(for: tokenKey) ?? "" let baseURL = defaults.get(for: serverConfigKey)! - let noticeListURL = baseURL + Constant.noticeList.rawValue - let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=1" + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in switch response.result { case let .success(value): @@ -125,6 +131,14 @@ reminderTableView.tableFooterView = UIView(frame: CGRect.zero) } + /// 消息图标点击事件 + @objc func imageViewClick(){ + let destinationController = NoticeListViewController(nibName: "NoticeListViewController", bundle: nil) + let navigation = UINavigationController(rootViewController: destinationController) + navigation.modalPresentationStyle = UIModalPresentationStyle.fullScreen + present(navigation, animated: true, completion: nil) + } + /// UICollectionView // 显示多少个Item func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { diff --git a/Meterage/ViewControllers/Home/HomePageViewController.xib b/Meterage/ViewControllers/Home/HomePageViewController.xib index fc37ab1..d5d8d5c 100644 --- a/Meterage/ViewControllers/Home/HomePageViewController.xib +++ b/Meterage/ViewControllers/Home/HomePageViewController.xib @@ -16,6 +16,7 @@ + diff --git a/Meterage/ViewControllers/Mine/MineViewController.swift b/Meterage/ViewControllers/Mine/MineViewController.swift index e9ca570..78cfc77 100644 --- a/Meterage/ViewControllers/Mine/MineViewController.swift +++ b/Meterage/ViewControllers/Mine/MineViewController.swift @@ -57,8 +57,8 @@ } } - let noticeListURL = baseURL + Constant.noticeList.rawValue - let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=1" + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in switch response.result { case let .success(value): diff --git a/Meterage/ViewControllers/Notice/NoticeListViewController.swift b/Meterage/ViewControllers/Notice/NoticeListViewController.swift new file mode 100644 index 0000000..aa9159e --- /dev/null +++ b/Meterage/ViewControllers/Notice/NoticeListViewController.swift @@ -0,0 +1,148 @@ +// +// NoticeListViewController.swift +// Meterage +// +// Created by 203 on 2023/2/6. +// + +import Alamofire +import DefaultsKit +import MJRefresh +import SwiftyJSON +import UIKit + +class NoticeListViewController: UIViewController, UITableViewDelegate, UITableViewDataSource { + + @IBOutlet weak var openSystemNoticeLayout: UIView! + @IBOutlet weak var tableView: UITableView! + + private var pageOffSet: Int = 1 + private var isUpdate: Bool = false + private var rowsArray: [RowModel] = [] + private let defaults = Defaults.shared + + override func viewDidLoad() { + super.viewDidLoad() + view.backgroundColor = .mainBackground + let leftBarBtn = UIBarButtonItem(image: UIImage(systemName: "chevron.backward"), style: .plain, target: self, action: #selector(backToPrevious)) + navigationItem.leftBarButtonItem = leftBarBtn + navigationItem.title = "消息" + navigationController?.navigationBar.titleTextAttributes = [NSAttributedString.Key.foregroundColor: UIColor.mainTextColor] + let rightBarBtn = UIBarButtonItem(image: UIImage(named: "read_notice")?.withRenderingMode(.alwaysOriginal), style: .plain, target: self, action: #selector(rightButtonAction)) + navigationItem.rightBarButtonItem = rightBarBtn + // Do any additional setup after loading the view. + tableView.register(UINib(nibName: "NoticeListTableViewCell", bundle: nil), forCellReuseIdentifier: "noticeListTableViewCell") + tableView.delegate = self + tableView.dataSource = self + tableView.separatorColor = .hintColor + tableView.backgroundColor = .clear + tableView.mj_header = MJRefreshNormalHeader { + DispatchQueue.main.asyncAfter(deadline: .now() + 0.5, execute: { [self] in + isUpdate = true + pageOffSet = 1 + loadData(offset: pageOffSet) + tableView.mj_header?.endRefreshing() + }) + } + + tableView.mj_footer = MJRefreshBackNormalFooter { + DispatchQueue.main.asyncAfter(deadline: .now() + 0.5, execute: { [self] in + isUpdate = false + pageOffSet += 1 + loadData(offset: pageOffSet) + tableView.mj_footer?.endRefreshing() + }) + } + // 默认加载数据 + loadData(offset: 1) + } + + func loadData(offset: Int) { + let baseURL = defaults.get(for: serverConfigKey)! + // 分页参数不能放在httpBody中 + let noticeListURL = baseURL + Constant.noticeList.rawValue + "?limit=20&offset=" + String(offset) + let token = defaults.get(for: tokenKey) ?? "" + + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": ""] + Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in + switch response.result { + case let .success(value): + let inspectModel = NoticeListModel(respJson: JSON(value)) + if inspectModel.code == 200 { + if isUpdate { + rowsArray = inspectModel.data.rows + } else { + inspectModel.data.rows.forEach { model in + rowsArray.append(model) + } + } + // 必须要重新加载数据,否则不走数据绑定 + tableView.reloadData() + } else { + AlertHub.shared.showWaringAlert(controller: self, message: "数据加载失败,请重试") + } + case .failure: + AlertHub.shared.showWaringAlert(controller: self, message: "未知错误") + } + } + } + + //返回按钮点击事件 + @objc func backToPrevious() { + dismiss(animated: true) + } + + //右边按钮点击事件 + @objc func rightButtonAction() { + let alertController = UIAlertController(title: "提示", + message: "确定将所有未读消息标为已读?", preferredStyle: .alert) + let cancelAction = UIAlertAction(title: "取消", style: .destructive, handler: nil) + let okAction = UIAlertAction(title: "确定", style: .default, handler: { action in + print("点击了确定") + }) + alertController.addAction(cancelAction) + alertController.addAction(okAction) + present(alertController, animated: true, completion: nil) + } + + @IBAction func closeNoticeLayout(_ sender: Any) { + openSystemNoticeLayout.isHidden = true + } + + /// UITableView + func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { + 60 + } + + func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { +// let mapViewController = InspectMapViewController(nibName: "InspectMapViewController", bundle: nil) +// // 委托代理 +// valueDelegate = mapViewController +// // 实现代理的方法,传值 +// let row = (indexPath as NSIndexPath).row +// let model = rowsArray[row] +// valueDelegate.transfer(controller: self, dic: ["id": model.id]) +// navigationController?.pushViewController(mapViewController, animated: true) + } + + func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + rowsArray.count + } + + func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + let cell: NoticeListTableViewCell = tableView.dequeueReusableCell(withIdentifier: "noticeListTableViewCell", for: indexPath) as! NoticeListTableViewCell + let row = (indexPath as NSIndexPath).row + let model = rowsArray[row] + cell.noticeTitleView.text = model.noticeTitle + cell.noticeTimeView.text = model.noticeTime + cell.noticeContentView.text = model.noticeSketch + //设置分割线上下左右边距 + cell.separatorInset = UIEdgeInsets(top: 0, left: 65, bottom: 0, right: 0) + cell.selectionStyle = .none + return cell + } + + func tableView(_ tableView: UITableView, didDeselectRowAt indexPath: IndexPath) { + + } +} diff --git a/Meterage/ViewControllers/Notice/NoticeListViewController.xib b/Meterage/ViewControllers/Notice/NoticeListViewController.xib new file mode 100644 index 0000000..2993334 --- /dev/null +++ b/Meterage/ViewControllers/Notice/NoticeListViewController.xib @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +