- IM聊天界面

- 签到
- 个人中心
- 紧急联系人
- 设置状态
This commit is contained in:
linshujie 2026-08-20 09:31:15 +08:00
parent ff8eb522de
commit 367e422d94
200 changed files with 4809 additions and 982 deletions

View File

@ -321,25 +321,33 @@
55B218A13024A00100784708 /* CancelAccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B218A13024A00100784707 /* CancelAccountView.swift */; };
55B218A13024A0010078470A /* MemberInfoVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B218A13024A00100784709 /* MemberInfoVC.swift */; };
55B218A13024A0010078470C /* MemberInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B218A13024A0010078470B /* MemberInfoView.swift */; };
55B220013031000100784801 /* FeedbackVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B220003031000100784800 /* FeedbackVC.swift */; };
55B220033031000100784803 /* FeedbackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B220023031000100784802 /* FeedbackView.swift */; };
55B220053031000100784805 /* FeedbackSuccessView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B220043031000100784804 /* FeedbackSuccessView.swift */; };
55B218B13024B00100784722 /* FeatureIntroVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B218B13024B00100784721 /* FeatureIntroVC.swift */; };
55B218B13024B00100784724 /* FeatureIntroView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B218B13024B00100784723 /* FeatureIntroView.swift */; };
55B219A2302A000100784751 /* UnlockRequestPopView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219A1302A000100784750 /* UnlockRequestPopView.swift */; };
55B219B2302A000100784761 /* ReceiveMessagePopView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219B1302A000100784760 /* ReceiveMessagePopView.swift */; };
55B219B4302A000100784763 /* ReceiveMessageReportPopView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219B3302A000100784762 /* ReceiveMessageReportPopView.swift */; };
55B219C13024C00100784722 /* BubbleHeroView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219C13024C00100784721 /* BubbleHeroView.swift */; };
55B219C13024C00100784724 /* CreateBubbleSetupView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219C13024C00100784723 /* CreateBubbleSetupView.swift */; };
55B219C13024C00100784726 /* BubbleKnowledgeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219C13024C00100784725 /* BubbleKnowledgeView.swift */; };
55B219C13024C00100784728 /* BubbleKnowledgeVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219C13024C00100784727 /* BubbleKnowledgeVC.swift */; };
55B219C2302A000100784771 /* PigeonMessageVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219C1302A000100784770 /* PigeonMessageVC.swift */; };
55B219C4302A000100784773 /* PigeonMessageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219C3302A000100784772 /* PigeonMessageView.swift */; };
55B219C6302A000100784776 /* PigeonMessageHistoryVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219C5302A000100784775 /* PigeonMessageHistoryVC.swift */; };
55B219C8302A000100784778 /* PigeonMessageHistoryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B219C7302A000100784777 /* PigeonMessageHistoryView.swift */; };
55B21A02302B0001007847A2 /* SOSAnimationViews.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B21A01302B0001007847A1 /* SOSAnimationViews.swift */; };
55B21A04302B0001007847A4 /* SOSReceiveAlertView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B21A03302B0001007847A3 /* SOSReceiveAlertView.swift */; };
55B21D6E3023117900784774 /* 优设标题黑_猫啃网.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 55B21D6D3023117900784774 /* 优设标题黑_猫啃网.ttf */; };
55B220013031000100784801 /* FeedbackVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B220003031000100784800 /* FeedbackVC.swift */; };
55B220033031000100784803 /* FeedbackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B220023031000100784802 /* FeedbackView.swift */; };
55B220053031000100784805 /* FeedbackSuccessView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B220043031000100784804 /* FeedbackSuccessView.swift */; };
55B221210000000100784821 /* MoodStatusVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B221200000000100784820 /* MoodStatusVC.swift */; };
55B221230000000100784823 /* MoodStatusView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B221220000000100784822 /* MoodStatusView.swift */; };
55B221250000000100784825 /* MoodStatusViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B221240000000100784824 /* MoodStatusViewModel.swift */; };
55B221270000000100784827 /* MoodStatusCatalog.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55B221260000000100784826 /* MoodStatusCatalog.swift */; };
55BF752D2FFE53F70055DA57 /* LocationPermissionPopView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55BF752C2FFE53F70055DA57 /* LocationPermissionPopView.swift */; };
55BF75352FFF91690055DA57 /* InteractionEmojiCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55BF75342FFF91690055DA57 /* InteractionEmojiCell.swift */; };
55C219C13024C00100784731 /* SearchLocationHeaderView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55C219C13024C00100784730 /* SearchLocationHeaderView.swift */; };
55C4C0242FDB91C8009215C2 /* CheckPermissionGuideVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55C4C0232FDB91C8009215C2 /* CheckPermissionGuideVC.swift */; };
60BEE25E61F3DE24976A7A47 /* ManagedSettingsUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7FE44DF1C46BDA7B98BC7859 /* ManagedSettingsUI.framework */; };
68F0D48EB76039050533197C /* AppRestrictShared.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1AB29D0618C4BE76F2CA5261 /* AppRestrictShared.swift */; };
6D90E8FFE4D597E888E6A224 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1E326B06736FE04DD7A5E96D /* UIKit.framework */; };
@ -734,25 +742,33 @@
55B218A13024A00100784707 /* CancelAccountView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CancelAccountView.swift; sourceTree = "<group>"; };
55B218A13024A00100784709 /* MemberInfoVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MemberInfoVC.swift; sourceTree = "<group>"; };
55B218A13024A0010078470B /* MemberInfoView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MemberInfoView.swift; sourceTree = "<group>"; };
55B220003031000100784800 /* FeedbackVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackVC.swift; sourceTree = "<group>"; };
55B220023031000100784802 /* FeedbackView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackView.swift; sourceTree = "<group>"; };
55B220043031000100784804 /* FeedbackSuccessView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackSuccessView.swift; sourceTree = "<group>"; };
55B218B13024B00100784721 /* FeatureIntroVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeatureIntroVC.swift; sourceTree = "<group>"; };
55B218B13024B00100784723 /* FeatureIntroView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeatureIntroView.swift; sourceTree = "<group>"; };
55B219A1302A000100784750 /* UnlockRequestPopView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnlockRequestPopView.swift; sourceTree = "<group>"; };
55B219B1302A000100784760 /* ReceiveMessagePopView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReceiveMessagePopView.swift; sourceTree = "<group>"; };
55B219B3302A000100784762 /* ReceiveMessageReportPopView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReceiveMessageReportPopView.swift; sourceTree = "<group>"; };
55B219C13024C00100784721 /* BubbleHeroView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BubbleHeroView.swift; sourceTree = "<group>"; };
55B219C13024C00100784723 /* CreateBubbleSetupView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CreateBubbleSetupView.swift; sourceTree = "<group>"; };
55B219C13024C00100784725 /* BubbleKnowledgeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BubbleKnowledgeView.swift; sourceTree = "<group>"; };
55B219C13024C00100784727 /* BubbleKnowledgeVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BubbleKnowledgeVC.swift; sourceTree = "<group>"; };
55B219C1302A000100784770 /* PigeonMessageVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PigeonMessageVC.swift; sourceTree = "<group>"; };
55B219C3302A000100784772 /* PigeonMessageView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PigeonMessageView.swift; sourceTree = "<group>"; };
55B219C5302A000100784775 /* PigeonMessageHistoryVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PigeonMessageHistoryVC.swift; sourceTree = "<group>"; };
55B219C7302A000100784777 /* PigeonMessageHistoryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PigeonMessageHistoryView.swift; sourceTree = "<group>"; };
55B21A01302B0001007847A1 /* SOSAnimationViews.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SOSAnimationViews.swift; sourceTree = "<group>"; };
55B21A03302B0001007847A3 /* SOSReceiveAlertView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SOSReceiveAlertView.swift; sourceTree = "<group>"; };
55B21D6D3023117900784774 /* 优设标题黑_猫啃网.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "优设标题黑_猫啃网.ttf"; sourceTree = "<group>"; };
55B220003031000100784800 /* FeedbackVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackVC.swift; sourceTree = "<group>"; };
55B220023031000100784802 /* FeedbackView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackView.swift; sourceTree = "<group>"; };
55B220043031000100784804 /* FeedbackSuccessView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackSuccessView.swift; sourceTree = "<group>"; };
55B221200000000100784820 /* MoodStatusVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoodStatusVC.swift; sourceTree = "<group>"; };
55B221220000000100784822 /* MoodStatusView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoodStatusView.swift; sourceTree = "<group>"; };
55B221240000000100784824 /* MoodStatusViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoodStatusViewModel.swift; sourceTree = "<group>"; };
55B221260000000100784826 /* MoodStatusCatalog.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoodStatusCatalog.swift; sourceTree = "<group>"; };
55BF752C2FFE53F70055DA57 /* LocationPermissionPopView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocationPermissionPopView.swift; sourceTree = "<group>"; };
55BF75342FFF91690055DA57 /* InteractionEmojiCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InteractionEmojiCell.swift; sourceTree = "<group>"; };
55C219C13024C00100784730 /* SearchLocationHeaderView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchLocationHeaderView.swift; sourceTree = "<group>"; };
55C4C0232FDB91C8009215C2 /* CheckPermissionGuideVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CheckPermissionGuideVC.swift; sourceTree = "<group>"; };
5E5F5DC8694A001BF0C47147 /* PairGuideStepsView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = PairGuideStepsView.swift; path = AppRestrict/PairGuideStepsView.swift; sourceTree = "<group>"; };
6BAE595D39202A2958737BD3 /* SelectActivityVC.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SelectActivityVC.swift; path = AppRestrict/SelectActivityVC.swift; sourceTree = "<group>"; };
787F87DD1CEBED1A4E1E9FC7 /* AppRestrictView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AppRestrictView.swift; path = AppRestrict/AppRestrictView.swift; sourceTree = "<group>"; };
@ -1233,6 +1249,7 @@
55B2179230218CE100784774 /* GroupMemberView2.swift */,
55B219A1302A000100784750 /* UnlockRequestPopView.swift */,
55B219B1302A000100784760 /* ReceiveMessagePopView.swift */,
55B219B3302A000100784762 /* ReceiveMessageReportPopView.swift */,
55B217C23022F0A000784722 /* MemberPhoneReportView.swift */,
55B217C43022F0A000784724 /* MemberAppUsageView.swift */,
55B217DD302301000078473C /* TodayTrackDetail */,
@ -1292,6 +1309,7 @@
30EFF3BC2FD9585200EB35D4 /* Account */,
55B218A13024A00100784710 /* About */,
55B220063031000100784806 /* Feedback */,
55B221280000000100784828 /* MoodStatus */,
55B218A13024A00100784711 /* CancelAccount */,
30EFF3D42FDA8EF200EB35D4 /* EmergencyContact */,
30EFF3E32FDAA92200EB35D4 /* PrivacyPolicy */,
@ -1669,6 +1687,7 @@
isa = PBXGroup;
children = (
30C4C0152FDB91B8009215C1 /* CheckPermissionVC.swift */,
55C4C0232FDB91C8009215C2 /* CheckPermissionGuideVC.swift */,
);
path = CheckPermission;
sourceTree = "<group>";
@ -1980,16 +1999,6 @@
path = MemberInfo;
sourceTree = "<group>";
};
55B220063031000100784806 /* Feedback */ = {
isa = PBXGroup;
children = (
55B220003031000100784800 /* FeedbackVC.swift */,
55B220023031000100784802 /* FeedbackView.swift */,
55B220043031000100784804 /* FeedbackSuccessView.swift */,
);
path = Feedback;
sourceTree = "<group>";
};
55B218B13024B00100784720 /* Explore */ = {
isa = PBXGroup;
children = (
@ -2004,10 +2013,33 @@
children = (
55B219C1302A000100784770 /* PigeonMessageVC.swift */,
55B219C3302A000100784772 /* PigeonMessageView.swift */,
55B219C5302A000100784775 /* PigeonMessageHistoryVC.swift */,
55B219C7302A000100784777 /* PigeonMessageHistoryView.swift */,
);
path = PigeonMessage;
sourceTree = "<group>";
};
55B220063031000100784806 /* Feedback */ = {
isa = PBXGroup;
children = (
55B220003031000100784800 /* FeedbackVC.swift */,
55B220023031000100784802 /* FeedbackView.swift */,
55B220043031000100784804 /* FeedbackSuccessView.swift */,
);
path = Feedback;
sourceTree = "<group>";
};
55B221280000000100784828 /* MoodStatus */ = {
isa = PBXGroup;
children = (
55B221200000000100784820 /* MoodStatusVC.swift */,
55B221220000000100784822 /* MoodStatusView.swift */,
55B221240000000100784824 /* MoodStatusViewModel.swift */,
55B221260000000100784826 /* MoodStatusCatalog.swift */,
);
path = MoodStatus;
sourceTree = "<group>";
};
74B9CD2ABDBC4C8CE3107CDE /* iOS */ = {
isa = PBXGroup;
children = (
@ -2301,6 +2333,7 @@
30D74BF32FEB6F5B0050EB2C /* LocationPickerVC.swift in Sources */,
30D74BF42FEB6F5B0050EB2C /* LocationPickerView.swift in Sources */,
30C4C0162FDB91B8009215C1 /* CheckPermissionVC.swift in Sources */,
55C4C0242FDB91C8009215C2 /* CheckPermissionGuideVC.swift in Sources */,
305A76972FCA8C7000227D26 /* CornerRadiusHeaderView.swift in Sources */,
305A76982FCA8C7000227D26 /* ImagePicker.swift in Sources */,
305A76992FCA8C7000227D26 /* ImagePickerPopup.swift in Sources */,
@ -2371,8 +2404,11 @@
55B2179130217D6600784774 /* HomeView2.swift in Sources */,
55B219A2302A000100784751 /* UnlockRequestPopView.swift in Sources */,
55B219B2302A000100784761 /* ReceiveMessagePopView.swift in Sources */,
55B219B4302A000100784763 /* ReceiveMessageReportPopView.swift in Sources */,
55B219C2302A000100784771 /* PigeonMessageVC.swift in Sources */,
55B219C4302A000100784773 /* PigeonMessageView.swift in Sources */,
55B219C6302A000100784776 /* PigeonMessageHistoryVC.swift in Sources */,
55B219C8302A000100784778 /* PigeonMessageHistoryView.swift in Sources */,
30B819F22FF3CE3C00FAB693 /* ItineraryTraceView.swift in Sources */,
305A76B72FCA8C7000227D26 /* UIView+Extension.swift in Sources */,
305A76B82FCA8C7000227D26 /* UIViewController+Extension.swift in Sources */,
@ -2410,6 +2446,10 @@
55B220013031000100784801 /* FeedbackVC.swift in Sources */,
55B220033031000100784803 /* FeedbackView.swift in Sources */,
55B220053031000100784805 /* FeedbackSuccessView.swift in Sources */,
55B221210000000100784821 /* MoodStatusVC.swift in Sources */,
55B221230000000100784823 /* MoodStatusView.swift in Sources */,
55B221250000000100784825 /* MoodStatusViewModel.swift in Sources */,
55B221270000000100784827 /* MoodStatusCatalog.swift in Sources */,
30A87A622FEE724D0095E7C6 /* CreateBubbleTiemView.swift in Sources */,
30DC185A2FD11E7A0041DCD1 /* WebOperations.swift in Sources */,
30A87A642FEE75520095E7C6 /* CreateBubbleTipsView.swift in Sources */,

View File

@ -36,6 +36,11 @@ enum UserAPI {
/// 昵称
case setNickName(nick: String)
/// 设置心情
/// - Parameters:
/// - moodIndex: 表情 json 文件名对应的数字
case setMood(moodIndex: Int)
/// 性别
/// - Parameters:
@ -44,7 +49,7 @@ enum UserAPI {
/// 紧急联系人
/// - Parameters:
/// - opType: get、add
/// - opType: get、add、del
/// - requestData:[String: Any] 根据操作传入对应的值
case emergencyContact(opType: String, requestData: [String: Any])
@ -95,6 +100,8 @@ extension UserAPI: MultiTargetProtocol {
return "mapi/user/setheadpic"
case .setNickName:
return "mapi/user/setnick"
case .setMood:
return "mapi/user/setmood"
case .setGender:
return "api/user"
case .emergencyContact:
@ -166,6 +173,11 @@ extension UserAPI: MultiTargetProtocol {
var params = Parameters()
params["nick"] = nick
return .requestParameters(parameters: params, encoding: JSONEncoding())
case let .setMood(moodIndex):
var params = Parameters()
params["mood_index"] = moodIndex
return .requestParameters(parameters: params, encoding: JSONEncoding())
case let .setGender(sex):
var params = Parameters()

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "knowledge@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "knowledge@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 74 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "info@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "info@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 546 B

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "location@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "location@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "pair@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "pair@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "screen@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "screen@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "arrow_right@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "arrow_right@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 388 B

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "info@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "info@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 566 B

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "trash@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "trash@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 668 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "bubble@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "bubble@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "receive_message_pause@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "receive_message_pause@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "receive_message_play@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "receive_message_play@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "receive_message_report@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "receive_message_report@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 538 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "mood_preview_bg@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "mood_preview_bg@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "history_arrow@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "history_arrow@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 793 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "history_clip@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "history_clip@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "history_info@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "history_info@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 389 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 828 B

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "history_pause@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "history_pause@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 527 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 912 B

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "history_photo@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "history_photo@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "history_play@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "history_play@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 699 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "image@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "image@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "day_missed@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "day_missed@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 642 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "day_signed@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "day_signed@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 872 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "day_today@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "day_today@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "edit@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "edit@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 679 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "hero_bg@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "hero_bg@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

View File

@ -0,0 +1,8 @@
{
"images" : [
{ "idiom" : "universal", "scale" : "1x" },
{ "filename" : "lock@2x.png", "idiom" : "universal", "scale" : "2x" },
{ "filename" : "lock@3x.png", "idiom" : "universal", "scale" : "3x" }
],
"info" : { "author" : "xcode", "version" : 1 }
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 643 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 845 B

After

Width:  |  Height:  |  Size: 511 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@ -53,6 +53,14 @@ class BaseNavigationController: UINavigationController {
return .lightContent
}
}
override var prefersStatusBarHidden: Bool {
viewControllers.last?.prefersStatusBarHidden ?? false
}
override var childForStatusBarHidden: UIViewController? {
viewControllers.last
}
override func viewDidLoad() {
super.viewDidLoad()

View File

@ -83,6 +83,8 @@ enum Route: String {
case about = "about"
/// 意见反馈
case feedback = "feedback"
/// 心情状态设置
case moodStatus = "moodStatus"
/// 成员信息
case memberInfo = "memberInfo"
/// 注销账号
@ -391,6 +393,13 @@ extension AppRouter: AppRouterProtocol {
FeedbackVC()
}
// MARK: - 心情状态设置
AppRouter.register(Route.moodStatus) { _, _ in
let vc = MoodStatusVC()
vc.isNeedLogin = true
return vc
}
// MARK: - 成员信息
AppRouter.register(Route.memberInfo) { _, parameters in
MemberInfoVC(userInfo: parameters)

View File

@ -28,7 +28,7 @@ struct EmergencyContactListResponse: BaseModelProtocol {
struct EmergencyContactModel: Mappable, Equatable {
var uuid: String = UUID().uuidString
///
var id: String = ""
var name: String = ""
var phone: String = ""
var ischecked: Bool = false
@ -38,6 +38,10 @@ struct EmergencyContactModel: Mappable, Equatable {
}
mutating func mapping(map: Map) {
id <- map["id"]
if id.isEmpty {
id <- map["contact_id"]
}
name <- map["name"]
phone <- map["phone"]
ischecked <- map["ischecked"]

View File

@ -197,6 +197,8 @@ struct GroupMemberModel: Mappable, Equatable {
var is_online: Bool = false
/// 设备电量
var battery: String = ""
/// 心情:0 无,1-36 对应 MoodStatusCatalog
var mood: Int = 0
/// 最后在线时间
var last_active_time: Int64 = 0
/// 最后在线文本(MQTT 计算)
@ -239,6 +241,7 @@ struct GroupMemberModel: Mappable, Equatable {
is_online <- map["is_online"]
last_active_time <- map["last_active_time"]
status <- map["status"]
mood <- (map["mood"], kStrTransformInt)
join_days <- (map["join_days"], kStrTransformInt)
join_time <- map["join_time"]
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More