diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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 e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/message.imageset/message@1x.png b/Meterage/Assets.xcassets/message.imageset/message@1x.png new file mode 100644 index 0000000..26ee268 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@1x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/message.imageset/message@1x.png b/Meterage/Assets.xcassets/message.imageset/message@1x.png new file mode 100644 index 0000000..26ee268 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@2x.png b/Meterage/Assets.xcassets/message.imageset/message@2x.png new file mode 100644 index 0000000..cd77651 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@2x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/message.imageset/message@1x.png b/Meterage/Assets.xcassets/message.imageset/message@1x.png new file mode 100644 index 0000000..26ee268 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@2x.png b/Meterage/Assets.xcassets/message.imageset/message@2x.png new file mode 100644 index 0000000..cd77651 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@3x.png b/Meterage/Assets.xcassets/message.imageset/message@3x.png new file mode 100644 index 0000000..59863b7 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@3x.png Binary files differ diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/message.imageset/message@1x.png b/Meterage/Assets.xcassets/message.imageset/message@1x.png new file mode 100644 index 0000000..26ee268 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@2x.png b/Meterage/Assets.xcassets/message.imageset/message@2x.png new file mode 100644 index 0000000..cd77651 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@3x.png b/Meterage/Assets.xcassets/message.imageset/message@3x.png new file mode 100644 index 0000000..59863b7 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@3x.png Binary files differ diff --git a/Meterage/Model/NoticeListModel.swift b/Meterage/Model/NoticeListModel.swift new file mode 100644 index 0000000..1b7fced --- /dev/null +++ b/Meterage/Model/NoticeListModel.swift @@ -0,0 +1,69 @@ +// +// NoticeListModel.swift +// Meterage +// +// Created by 203 on 2023/2/3. +// + +import Foundation +import SwiftyJSON + +struct NoticeListModel { + var code: Int + var data: NoticeModel + var message: String + + init(respJson: JSON) { + code = respJson["code"].intValue + message = respJson["message"].stringValue + data = NoticeModel(respJson: respJson["data"]) + } +} + +struct NoticeModel{ + var total: Int + var rows: [RowModel] + + init(respJson: JSON) { + total = respJson["total"].intValue + rows = [RowModel]() + let rowsArray = respJson["rows"].arrayValue + for rowsJson in rowsArray { + let value = RowModel(respJson: rowsJson) + rows.append(value) + } + } +} + +struct RowModel { + var createTime: String? + var id: String? + var isDel: Int? + var minioFileName: String? + var noticeCompany: String? + var noticeContent: String? + var noticeNo: String? + var noticePublisher: String? + var noticeSketch: String? + var noticeTime: String? + var noticeTitle: String? + var updateTime: String? + + init() { + } + + init(respJson: JSON) { + createTime = respJson["createTime"].stringValue + id = respJson["id"].stringValue + isDel = respJson["isDel"].intValue + minioFileName = respJson["minioFileName"].stringValue + noticeCompany = respJson["noticeCompany"].stringValue + noticeContent = respJson["noticeContent"].stringValue + noticeNo = respJson["noticeNo"].stringValue + noticePublisher = respJson["noticePublisher"].stringValue + noticeSketch = respJson["noticeSketch"].stringValue + noticeTime = respJson["noticeTime"].stringValue + noticeTitle = respJson["noticeTitle"].stringValue + updateTime = respJson["updateTime"].stringValue + } +} diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/message.imageset/message@1x.png b/Meterage/Assets.xcassets/message.imageset/message@1x.png new file mode 100644 index 0000000..26ee268 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@2x.png b/Meterage/Assets.xcassets/message.imageset/message@2x.png new file mode 100644 index 0000000..cd77651 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@3x.png b/Meterage/Assets.xcassets/message.imageset/message@3x.png new file mode 100644 index 0000000..59863b7 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@3x.png Binary files differ diff --git a/Meterage/Model/NoticeListModel.swift b/Meterage/Model/NoticeListModel.swift new file mode 100644 index 0000000..1b7fced --- /dev/null +++ b/Meterage/Model/NoticeListModel.swift @@ -0,0 +1,69 @@ +// +// NoticeListModel.swift +// Meterage +// +// Created by 203 on 2023/2/3. +// + +import Foundation +import SwiftyJSON + +struct NoticeListModel { + var code: Int + var data: NoticeModel + var message: String + + init(respJson: JSON) { + code = respJson["code"].intValue + message = respJson["message"].stringValue + data = NoticeModel(respJson: respJson["data"]) + } +} + +struct NoticeModel{ + var total: Int + var rows: [RowModel] + + init(respJson: JSON) { + total = respJson["total"].intValue + rows = [RowModel]() + let rowsArray = respJson["rows"].arrayValue + for rowsJson in rowsArray { + let value = RowModel(respJson: rowsJson) + rows.append(value) + } + } +} + +struct RowModel { + var createTime: String? + var id: String? + var isDel: Int? + var minioFileName: String? + var noticeCompany: String? + var noticeContent: String? + var noticeNo: String? + var noticePublisher: String? + var noticeSketch: String? + var noticeTime: String? + var noticeTitle: String? + var updateTime: String? + + init() { + } + + init(respJson: JSON) { + createTime = respJson["createTime"].stringValue + id = respJson["id"].stringValue + isDel = respJson["isDel"].intValue + minioFileName = respJson["minioFileName"].stringValue + noticeCompany = respJson["noticeCompany"].stringValue + noticeContent = respJson["noticeContent"].stringValue + noticeNo = respJson["noticeNo"].stringValue + noticePublisher = respJson["noticePublisher"].stringValue + noticeSketch = respJson["noticeSketch"].stringValue + noticeTime = respJson["noticeTime"].stringValue + noticeTitle = respJson["noticeTitle"].stringValue + updateTime = respJson["updateTime"].stringValue + } +} diff --git a/Meterage/Utils/Constant.swift b/Meterage/Utils/Constant.swift index 74529c9..1977402 100644 --- a/Meterage/Utils/Constant.swift +++ b/Meterage/Utils/Constant.swift @@ -19,11 +19,12 @@ let tokenKey = Key("Token") let MINE_TITLE_ARRAY = ["账户信息", "我的收藏", "推送设置", "隐私设置", "使用帮助", "版本更新", "关于APP", "意见反馈"] -let MINE_IMAGE_ARRAY = ["account","collection","push_setting","privacy_setting","help","update","about","feed_back"] +let MINE_IMAGE_ARRAY = ["account", "collection", "push_setting", "privacy_setting", "help", "update", "about", "feed_back"] public enum Constant: String { // 网络请求相关的地址 case baseConfig = "/sys/config/baseConfig" case login = "/sys/user/login" case userInfo = "/sys/user/info" + case noticeList = "/system/notice/listPage" } diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/message.imageset/message@1x.png b/Meterage/Assets.xcassets/message.imageset/message@1x.png new file mode 100644 index 0000000..26ee268 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@2x.png b/Meterage/Assets.xcassets/message.imageset/message@2x.png new file mode 100644 index 0000000..cd77651 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@3x.png b/Meterage/Assets.xcassets/message.imageset/message@3x.png new file mode 100644 index 0000000..59863b7 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@3x.png Binary files differ diff --git a/Meterage/Model/NoticeListModel.swift b/Meterage/Model/NoticeListModel.swift new file mode 100644 index 0000000..1b7fced --- /dev/null +++ b/Meterage/Model/NoticeListModel.swift @@ -0,0 +1,69 @@ +// +// NoticeListModel.swift +// Meterage +// +// Created by 203 on 2023/2/3. +// + +import Foundation +import SwiftyJSON + +struct NoticeListModel { + var code: Int + var data: NoticeModel + var message: String + + init(respJson: JSON) { + code = respJson["code"].intValue + message = respJson["message"].stringValue + data = NoticeModel(respJson: respJson["data"]) + } +} + +struct NoticeModel{ + var total: Int + var rows: [RowModel] + + init(respJson: JSON) { + total = respJson["total"].intValue + rows = [RowModel]() + let rowsArray = respJson["rows"].arrayValue + for rowsJson in rowsArray { + let value = RowModel(respJson: rowsJson) + rows.append(value) + } + } +} + +struct RowModel { + var createTime: String? + var id: String? + var isDel: Int? + var minioFileName: String? + var noticeCompany: String? + var noticeContent: String? + var noticeNo: String? + var noticePublisher: String? + var noticeSketch: String? + var noticeTime: String? + var noticeTitle: String? + var updateTime: String? + + init() { + } + + init(respJson: JSON) { + createTime = respJson["createTime"].stringValue + id = respJson["id"].stringValue + isDel = respJson["isDel"].intValue + minioFileName = respJson["minioFileName"].stringValue + noticeCompany = respJson["noticeCompany"].stringValue + noticeContent = respJson["noticeContent"].stringValue + noticeNo = respJson["noticeNo"].stringValue + noticePublisher = respJson["noticePublisher"].stringValue + noticeSketch = respJson["noticeSketch"].stringValue + noticeTime = respJson["noticeTime"].stringValue + noticeTitle = respJson["noticeTitle"].stringValue + updateTime = respJson["updateTime"].stringValue + } +} diff --git a/Meterage/Utils/Constant.swift b/Meterage/Utils/Constant.swift index 74529c9..1977402 100644 --- a/Meterage/Utils/Constant.swift +++ b/Meterage/Utils/Constant.swift @@ -19,11 +19,12 @@ let tokenKey = Key("Token") let MINE_TITLE_ARRAY = ["账户信息", "我的收藏", "推送设置", "隐私设置", "使用帮助", "版本更新", "关于APP", "意见反馈"] -let MINE_IMAGE_ARRAY = ["account","collection","push_setting","privacy_setting","help","update","about","feed_back"] +let MINE_IMAGE_ARRAY = ["account", "collection", "push_setting", "privacy_setting", "help", "update", "about", "feed_back"] public enum Constant: String { // 网络请求相关的地址 case baseConfig = "/sys/config/baseConfig" case login = "/sys/user/login" case userInfo = "/sys/user/info" + case noticeList = "/system/notice/listPage" } diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index af67151..93df57e 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -22,16 +22,17 @@ return request } - - func createGetRequest(url: String, dic: Dictionary) -> URLRequest { + + func createPostRequest(url: String, dic: Dictionary, token: String) -> URLRequest { var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - + request.httpBody = parameters!.data(using: .utf8) - request.httpMethod = "GET" + request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") - + request.addValue("token", forHTTPHeaderField: token) + return request } } diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/message.imageset/message@1x.png b/Meterage/Assets.xcassets/message.imageset/message@1x.png new file mode 100644 index 0000000..26ee268 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@2x.png b/Meterage/Assets.xcassets/message.imageset/message@2x.png new file mode 100644 index 0000000..cd77651 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@3x.png b/Meterage/Assets.xcassets/message.imageset/message@3x.png new file mode 100644 index 0000000..59863b7 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@3x.png Binary files differ diff --git a/Meterage/Model/NoticeListModel.swift b/Meterage/Model/NoticeListModel.swift new file mode 100644 index 0000000..1b7fced --- /dev/null +++ b/Meterage/Model/NoticeListModel.swift @@ -0,0 +1,69 @@ +// +// NoticeListModel.swift +// Meterage +// +// Created by 203 on 2023/2/3. +// + +import Foundation +import SwiftyJSON + +struct NoticeListModel { + var code: Int + var data: NoticeModel + var message: String + + init(respJson: JSON) { + code = respJson["code"].intValue + message = respJson["message"].stringValue + data = NoticeModel(respJson: respJson["data"]) + } +} + +struct NoticeModel{ + var total: Int + var rows: [RowModel] + + init(respJson: JSON) { + total = respJson["total"].intValue + rows = [RowModel]() + let rowsArray = respJson["rows"].arrayValue + for rowsJson in rowsArray { + let value = RowModel(respJson: rowsJson) + rows.append(value) + } + } +} + +struct RowModel { + var createTime: String? + var id: String? + var isDel: Int? + var minioFileName: String? + var noticeCompany: String? + var noticeContent: String? + var noticeNo: String? + var noticePublisher: String? + var noticeSketch: String? + var noticeTime: String? + var noticeTitle: String? + var updateTime: String? + + init() { + } + + init(respJson: JSON) { + createTime = respJson["createTime"].stringValue + id = respJson["id"].stringValue + isDel = respJson["isDel"].intValue + minioFileName = respJson["minioFileName"].stringValue + noticeCompany = respJson["noticeCompany"].stringValue + noticeContent = respJson["noticeContent"].stringValue + noticeNo = respJson["noticeNo"].stringValue + noticePublisher = respJson["noticePublisher"].stringValue + noticeSketch = respJson["noticeSketch"].stringValue + noticeTime = respJson["noticeTime"].stringValue + noticeTitle = respJson["noticeTitle"].stringValue + updateTime = respJson["updateTime"].stringValue + } +} diff --git a/Meterage/Utils/Constant.swift b/Meterage/Utils/Constant.swift index 74529c9..1977402 100644 --- a/Meterage/Utils/Constant.swift +++ b/Meterage/Utils/Constant.swift @@ -19,11 +19,12 @@ let tokenKey = Key("Token") let MINE_TITLE_ARRAY = ["账户信息", "我的收藏", "推送设置", "隐私设置", "使用帮助", "版本更新", "关于APP", "意见反馈"] -let MINE_IMAGE_ARRAY = ["account","collection","push_setting","privacy_setting","help","update","about","feed_back"] +let MINE_IMAGE_ARRAY = ["account", "collection", "push_setting", "privacy_setting", "help", "update", "about", "feed_back"] public enum Constant: String { // 网络请求相关的地址 case baseConfig = "/sys/config/baseConfig" case login = "/sys/user/login" case userInfo = "/sys/user/info" + case noticeList = "/system/notice/listPage" } diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index af67151..93df57e 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -22,16 +22,17 @@ return request } - - func createGetRequest(url: String, dic: Dictionary) -> URLRequest { + + func createPostRequest(url: String, dic: Dictionary, token: String) -> URLRequest { var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - + request.httpBody = parameters!.data(using: .utf8) - request.httpMethod = "GET" + request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") - + request.addValue("token", forHTTPHeaderField: token) + return request } } diff --git a/Meterage/ViewControllers/Mine/MineViewController.swift b/Meterage/ViewControllers/Mine/MineViewController.swift index 9eeb06b..348b278 100644 --- a/Meterage/ViewControllers/Mine/MineViewController.swift +++ b/Meterage/ViewControllers/Mine/MineViewController.swift @@ -15,6 +15,7 @@ @IBOutlet var userAvatarView: UIImageView! @IBOutlet var userNameView: UILabel! @IBOutlet var userDeptView: UILabel! + @IBOutlet var noticeCountView: UILabel! @IBOutlet var tableView: UITableView! private let defaults = Defaults.shared @@ -29,6 +30,9 @@ userAvatarView.layer.borderColor = UIColor.white.cgColor userAvatarView.layer.borderWidth = 1 + noticeCountView.layer.cornerRadius = 7 + noticeCountView.layer.masksToBounds = true + tableView.register(UINib(nibName: "MineTableViewCell", bundle: nil), forCellReuseIdentifier: "mineTableViewCell") tableView.dataSource = self tableView.delegate = self @@ -51,6 +55,22 @@ AlertHub.shared.showWaringAlert(controller: self, message: "请求失败,请检查网络") } } + + let noticeListURL = baseURL + Constant.noticeList.rawValue + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in + switch response.result { + case let .success(value): + let notice = NoticeListModel(respJson: JSON(value)).data + if (notice.total > 9) { + noticeCountView.text = "9+" + } else { + noticeCountView.text = String(notice.total) + } + case .failure: + AlertHub.shared.showWaringAlert(controller: self, message: "请求失败,请检查网络") + } + } } } diff --git a/Meterage.xcodeproj/project.pbxproj b/Meterage.xcodeproj/project.pbxproj index e623c43..4741d3f 100644 --- a/Meterage.xcodeproj/project.pbxproj +++ b/Meterage.xcodeproj/project.pbxproj @@ -33,6 +33,7 @@ 65BF61D3298BC0A900F99671 /* MineTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */; }; 65BF61D4298BC0A900F99671 /* MineTableViewCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */; }; 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D5298BD40900F99671 /* UserInfoModel.swift */; }; + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65BF61D7298C915C00F99671 /* NoticeListModel.swift */; }; 709532624A2602F10DBAE7B8 /* Pods_Meterage.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */; }; /* End PBXBuildFile section */ @@ -65,6 +66,7 @@ 65BF61D1298BC0A900F99671 /* MineTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MineTableViewCell.swift; sourceTree = ""; }; 65BF61D2298BC0A900F99671 /* MineTableViewCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MineTableViewCell.xib; sourceTree = ""; }; 65BF61D5298BD40900F99671 /* UserInfoModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserInfoModel.swift; sourceTree = ""; }; + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NoticeListModel.swift; sourceTree = ""; }; 669B71ABD27BC5FCF49723E9 /* Pods-Meterage.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.debug.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.debug.xcconfig"; sourceTree = ""; }; 6CBB43485F5EC2EA4CB19DE8 /* Pods-Meterage.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Meterage.release.xcconfig"; path = "Target Support Files/Pods-Meterage/Pods-Meterage.release.xcconfig"; sourceTree = ""; }; D57EFAA58CD68AF05AD79419 /* Pods_Meterage.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Meterage.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -198,6 +200,7 @@ 65AEA6B1298B642400B8FF09 /* BaseConfigModel.swift */, 65AEA6B3298B64DC00B8FF09 /* LoginResultModel.swift */, 65BF61D5298BD40900F99671 /* UserInfoModel.swift */, + 65BF61D7298C915C00F99671 /* NoticeListModel.swift */, ); path = Model; sourceTree = ""; @@ -389,6 +392,7 @@ 2CD9B8A8FED825F0E1B79C36 /* Dictionary.swift in Sources */, 2CD9B472817F36562709487F /* HttpRequestCreator.swift in Sources */, 65BF61D6298BD40900F99671 /* UserInfoModel.swift in Sources */, + 65BF61D8298C915C00F99671 /* NoticeListModel.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate b/Meterage.xcworkspace/xcuserdata/a203.xcuserdatad/UserInterfaceState.xcuserstate index bc7f411..27d6baf 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/message.imageset/Contents.json b/Meterage/Assets.xcassets/message.imageset/Contents.json new file mode 100644 index 0000000..301b8f6 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "message@1x.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "message@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "message@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Meterage/Assets.xcassets/message.imageset/message@1x.png b/Meterage/Assets.xcassets/message.imageset/message@1x.png new file mode 100644 index 0000000..26ee268 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@1x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@2x.png b/Meterage/Assets.xcassets/message.imageset/message@2x.png new file mode 100644 index 0000000..cd77651 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@2x.png Binary files differ diff --git a/Meterage/Assets.xcassets/message.imageset/message@3x.png b/Meterage/Assets.xcassets/message.imageset/message@3x.png new file mode 100644 index 0000000..59863b7 --- /dev/null +++ b/Meterage/Assets.xcassets/message.imageset/message@3x.png Binary files differ diff --git a/Meterage/Model/NoticeListModel.swift b/Meterage/Model/NoticeListModel.swift new file mode 100644 index 0000000..1b7fced --- /dev/null +++ b/Meterage/Model/NoticeListModel.swift @@ -0,0 +1,69 @@ +// +// NoticeListModel.swift +// Meterage +// +// Created by 203 on 2023/2/3. +// + +import Foundation +import SwiftyJSON + +struct NoticeListModel { + var code: Int + var data: NoticeModel + var message: String + + init(respJson: JSON) { + code = respJson["code"].intValue + message = respJson["message"].stringValue + data = NoticeModel(respJson: respJson["data"]) + } +} + +struct NoticeModel{ + var total: Int + var rows: [RowModel] + + init(respJson: JSON) { + total = respJson["total"].intValue + rows = [RowModel]() + let rowsArray = respJson["rows"].arrayValue + for rowsJson in rowsArray { + let value = RowModel(respJson: rowsJson) + rows.append(value) + } + } +} + +struct RowModel { + var createTime: String? + var id: String? + var isDel: Int? + var minioFileName: String? + var noticeCompany: String? + var noticeContent: String? + var noticeNo: String? + var noticePublisher: String? + var noticeSketch: String? + var noticeTime: String? + var noticeTitle: String? + var updateTime: String? + + init() { + } + + init(respJson: JSON) { + createTime = respJson["createTime"].stringValue + id = respJson["id"].stringValue + isDel = respJson["isDel"].intValue + minioFileName = respJson["minioFileName"].stringValue + noticeCompany = respJson["noticeCompany"].stringValue + noticeContent = respJson["noticeContent"].stringValue + noticeNo = respJson["noticeNo"].stringValue + noticePublisher = respJson["noticePublisher"].stringValue + noticeSketch = respJson["noticeSketch"].stringValue + noticeTime = respJson["noticeTime"].stringValue + noticeTitle = respJson["noticeTitle"].stringValue + updateTime = respJson["updateTime"].stringValue + } +} diff --git a/Meterage/Utils/Constant.swift b/Meterage/Utils/Constant.swift index 74529c9..1977402 100644 --- a/Meterage/Utils/Constant.swift +++ b/Meterage/Utils/Constant.swift @@ -19,11 +19,12 @@ let tokenKey = Key("Token") let MINE_TITLE_ARRAY = ["账户信息", "我的收藏", "推送设置", "隐私设置", "使用帮助", "版本更新", "关于APP", "意见反馈"] -let MINE_IMAGE_ARRAY = ["account","collection","push_setting","privacy_setting","help","update","about","feed_back"] +let MINE_IMAGE_ARRAY = ["account", "collection", "push_setting", "privacy_setting", "help", "update", "about", "feed_back"] public enum Constant: String { // 网络请求相关的地址 case baseConfig = "/sys/config/baseConfig" case login = "/sys/user/login" case userInfo = "/sys/user/info" + case noticeList = "/system/notice/listPage" } diff --git a/Meterage/Utils/HttpRequestCreator.swift b/Meterage/Utils/HttpRequestCreator.swift index af67151..93df57e 100644 --- a/Meterage/Utils/HttpRequestCreator.swift +++ b/Meterage/Utils/HttpRequestCreator.swift @@ -22,16 +22,17 @@ return request } - - func createGetRequest(url: String, dic: Dictionary) -> URLRequest { + + func createPostRequest(url: String, dic: Dictionary, token: String) -> URLRequest { var request = URLRequest.init(url: URL.init(string: url)!) let parameters = dic.toJsonString() - + request.httpBody = parameters!.data(using: .utf8) - request.httpMethod = "GET" + request.httpMethod = "POST" request.timeoutInterval = 30 request.addValue("application/json;charset=UTF-8", forHTTPHeaderField: "Content-Type") - + request.addValue("token", forHTTPHeaderField: token) + return request } } diff --git a/Meterage/ViewControllers/Mine/MineViewController.swift b/Meterage/ViewControllers/Mine/MineViewController.swift index 9eeb06b..348b278 100644 --- a/Meterage/ViewControllers/Mine/MineViewController.swift +++ b/Meterage/ViewControllers/Mine/MineViewController.swift @@ -15,6 +15,7 @@ @IBOutlet var userAvatarView: UIImageView! @IBOutlet var userNameView: UILabel! @IBOutlet var userDeptView: UILabel! + @IBOutlet var noticeCountView: UILabel! @IBOutlet var tableView: UITableView! private let defaults = Defaults.shared @@ -29,6 +30,9 @@ userAvatarView.layer.borderColor = UIColor.white.cgColor userAvatarView.layer.borderWidth = 1 + noticeCountView.layer.cornerRadius = 7 + noticeCountView.layer.masksToBounds = true + tableView.register(UINib(nibName: "MineTableViewCell", bundle: nil), forCellReuseIdentifier: "mineTableViewCell") tableView.dataSource = self tableView.delegate = self @@ -51,6 +55,22 @@ AlertHub.shared.showWaringAlert(controller: self, message: "请求失败,请检查网络") } } + + let noticeListURL = baseURL + Constant.noticeList.rawValue + let paramDic: [String: Any] = ["noticeNo": "", "noticeTitle": "", "noticePublisher": "", "noticeStartTime": "", "noticeEndTime": "", "limit": 20, "offset": 1] + Alamofire.request(HttpRequestCreator.shared.createPostRequest(url: noticeListURL, dic: paramDic, token: token)).responseJSON { [self] response in + switch response.result { + case let .success(value): + let notice = NoticeListModel(respJson: JSON(value)).data + if (notice.total > 9) { + noticeCountView.text = "9+" + } else { + noticeCountView.text = String(notice.total) + } + case .failure: + AlertHub.shared.showWaringAlert(controller: self, message: "请求失败,请检查网络") + } + } } } diff --git a/Meterage/ViewControllers/Mine/MineViewController.xib b/Meterage/ViewControllers/Mine/MineViewController.xib index e109b5b..0500a07 100644 --- a/Meterage/ViewControllers/Mine/MineViewController.xib +++ b/Meterage/ViewControllers/Mine/MineViewController.xib @@ -11,6 +11,7 @@ + @@ -42,8 +43,8 @@ - - + + @@ -55,6 +56,17 @@ + @@ -65,8 +77,10 @@ + + @@ -77,7 +91,7 @@ - +