修复了注册前API没有实例化的问题(在设置新IP后要求用户重新启动APP);修复了注册后新用户首次登录时反复加载通知的BUG【注册时使用getNews将通知状态全部修改成已阅】

This commit is contained in:
my-style committed 2020-03-16 00:52:29 +08:00
1 parent 4a5435a973
commit 62ed06312b
31 files changed
+509 -303

No files matched your search

+194 -144
View File
@@ -6,7 +6,12 @@
</artifacts-to-build>
</component>
<component name="ChangeListManager">
<list default="true" id="f2ca1002-1ec5-49f3-ab6f-fb7dec9c9e4d" name="Default Changelist" comment="" />
<list default="true" id="f2ca1002-1ec5-49f3-ab6f-fb7dec9c9e4d" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/ndn/pib.db" beforeDir="false" afterPath="$PROJECT_DIR$/ndn/pib.db" afterDir="false" />
<change beforePath="$PROJECT_DIR$/out/production/classes/cn/minoa/view/login/RegisterOverviewController.class" beforeDir="false" afterPath="$PROJECT_DIR$/out/production/classes/cn/minoa/view/login/RegisterOverviewController.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/main/java/cn/minoa/view/login/RegisterOverviewController.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/cn/minoa/view/login/RegisterOverviewController.java" afterDir="false" />
</list>
<ignored path="$PROJECT_DIR$/out/" />
<ignored path="$PROJECT_DIR$/.gradle/" />
<ignored path="$PROJECT_DIR$/build/" />
@@ -80,18 +85,19 @@
<session id="-17715935">
<usages-collector id="statistics.lifecycle.project">
<counts>
<entry key="project.closed" value="11" />
<entry key="project.closed" value="12" />
<entry key="project.open.time.15" value="2" />
<entry key="project.open.time.17" value="1" />
<entry key="project.open.time.18" value="4" />
<entry key="project.open.time.19" value="2" />
<entry key="project.open.time.2" value="1" />
<entry key="project.open.time.20" value="4" />
<entry key="project.open.time.21" value="2" />
<entry key="project.open.time.22" value="1" />
<entry key="project.open.time.22" value="2" />
<entry key="project.open.time.24" value="1" />
<entry key="project.open.time.26" value="1" />
<entry key="project.open.time.3" value="1" />
<entry key="project.opened" value="18" />
<entry key="project.opened" value="21" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.extensions.open">
@@ -101,9 +107,9 @@
<entry key="css" value="14" />
<entry key="fxml" value="23" />
<entry key="gradle" value="7" />
<entry key="java" value="181" />
<entry key="java" value="189" />
<entry key="png" value="5" />
<entry key="properties" value="7" />
<entry key="properties" value="8" />
<entry key="txt" value="2" />
<entry key="xml" value="1" />
</counts>
@@ -114,10 +120,10 @@
<entry key="CSS" value="14" />
<entry key="Groovy" value="7" />
<entry key="Image" value="5" />
<entry key="JAVA" value="181" />
<entry key="JAVA" value="189" />
<entry key="Manifest" value="1" />
<entry key="PLAIN_TEXT" value="2" />
<entry key="Properties" value="7" />
<entry key="Properties" value="8" />
<entry key="XML" value="24" />
</counts>
</usages-collector>
@@ -126,18 +132,18 @@
<entry key="MF" value="92" />
<entry key="fxml" value="4" />
<entry key="gradle" value="438" />
<entry key="java" value="16501" />
<entry key="properties" value="87" />
<entry key="java" value="17779" />
<entry key="properties" value="91" />
<entry key="txt" value="89" />
</counts>
</usages-collector>
<usages-collector id="statistics.file.types.edit">
<counts>
<entry key="Groovy" value="438" />
<entry key="JAVA" value="16501" />
<entry key="JAVA" value="17779" />
<entry key="Manifest" value="92" />
<entry key="PLAIN_TEXT" value="89" />
<entry key="Properties" value="87" />
<entry key="Properties" value="91" />
<entry key="XML" value="4" />
</counts>
</usages-collector>
@@ -151,39 +157,72 @@
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/MainApp.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="344">
<caret line="518" selection-start-line="517" selection-end-line="518" />
<state relative-caret-position="414">
<caret line="67" column="19" lean-forward="true" selection-start-line="67" selection-start-column="19" selection-end-line="67" selection-end-column="19" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/login/LoginOverviewController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="25">
<caret line="482" column="4" lean-forward="true" selection-start-line="482" selection-start-column="4" selection-end-line="482" selection-end-column="4" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/dataRequestInterface/MinoaDataAPI.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="25">
<caret line="241" column="37" lean-forward="true" selection-start-line="241" selection-start-column="37" selection-end-line="241" selection-end-column="37" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#12524#14633#0" expanded="true" />
<element signature="e#14632#14633#0" expanded="true" />
<element signature="e#16114#18988#0" expanded="true" />
<element signature="e#18987#18988#0" expanded="true" />
<element signature="e#19260#19261#0" expanded="true" />
<element signature="e#19327#19328#0" expanded="true" />
<element signature="e#22979#22980#0" expanded="true" />
<element signature="e#23004#23005#0" expanded="true" />
<element signature="e#45500#45501#0" expanded="true" />
<element signature="e#45556#45557#0" expanded="true" />
<element signature="e#45995#45996#0" expanded="true" />
<element signature="e#46021#46022#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/dataRequestInterface/MinoaDataAPI.java">
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/login/RegisterOverviewController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="344">
<caret line="40" column="14" lean-forward="true" selection-start-line="40" selection-start-column="14" selection-end-line="40" selection-end-column="14" />
<state>
<caret line="94" column="12" lean-forward="true" selection-start-line="94" selection-start-column="12" selection-end-line="94" selection-end-column="13" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#7117#7118#0" expanded="true" />
<element signature="e#7155#7156#0" expanded="true" />
<element signature="e#7249#7250#0" expanded="true" />
<element signature="e#7295#7296#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/util/DateUtil.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="750">
<caret line="34" selection-start-line="34" selection-end-line="34" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/util/StringByteLengthUtil.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="625">
<caret line="25" column="5" selection-start-line="25" selection-start-column="5" selection-end-line="25" selection-end-column="5" />
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
@@ -196,10 +235,6 @@
</component>
<component name="FindInProjectRecents">
<findStrings>
<find>初始化</find>
<find>详细信息</find>
<find>201</find>
<find>getReim</find>
<find>getDataSlice</find>
<find>6</find>
<find>通知</find>
@@ -226,6 +261,10 @@
<find>uploadFileDialogStage</find>
<find>下载</find>
<find>上传</find>
<find>getData</find>
<find>new Min</find>
<find>关闭</find>
<find>getNewsJ</find>
</findStrings>
</component>
<component name="Git.Settings">
@@ -681,15 +720,15 @@
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/MyEmailController.java" />
<option value="$PROJECT_DIR$/src/main/resources/fxml/login/SetttingOverview.fxml" />
<option value="$PROJECT_DIR$/src/main/resources/db/settings.properties" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/view/login/RegisterOverviewController.java" />
<option value="$PROJECT_DIR$/ndn/settings.properties" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/view/login/SettingOverviewController.java" />
<option value="$PROJECT_DIR$/build.gradle" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/util/StringByteLengthUtil.java" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/dataRequestInterface/MinoaDataAPI.java" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/view/login/LoginOverviewController.java" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/MainApp.java" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/MyCloudFileController.java" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/dataRequestInterface/MinoaDataAPI.java" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/MainApp.java" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/view/login/LoginOverviewController.java" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/view/login/SettingOverviewController.java" />
<option value="$PROJECT_DIR$/ndn/settings.properties" />
<option value="$PROJECT_DIR$/src/main/java/cn/minoa/view/login/RegisterOverviewController.java" />
</list>
</option>
</component>
@@ -757,7 +796,6 @@
</navigator>
<panes>
<pane id="Scope" />
<pane id="AndroidView" />
<pane id="ProjectPane">
<subPane>
<expand>
@@ -776,6 +814,11 @@
<item name="build" type="462c0819:PsiDirectoryNode" />
<item name="libs" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Demo_gradle_javafx11_01" type="b2602c69:ProjectViewProjectNode" />
<item name="Demo_gradle_javafx11_01" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="ndn" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Demo_gradle_javafx11_01" type="b2602c69:ProjectViewProjectNode" />
<item name="Demo_gradle_javafx11_01" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
@@ -809,17 +852,28 @@
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="minoa" type="462c0819:PsiDirectoryNode" />
<item name="dataRequestInterface" type="462c0819:PsiDirectoryNode" />
<item name="view" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="Demo_gradle_javafx11_01" type="b2602c69:ProjectViewProjectNode" />
<item name="Demo_gradle_javafx11_01" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="minoa" type="462c0819:PsiDirectoryNode" />
<item name="view" type="462c0819:PsiDirectoryNode" />
<item name="login" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
<pane id="PackagesPane" />
<pane id="AndroidView" />
</panes>
</component>
<component name="PropertiesComponent">
<property name="SearchEverywhereHistoryKey" value="reformat&#9;ACTION&#9;ReformatCode&#10;file&#9;ACTION&#9;ChangeFileEncodingAction" />
<property name="SearchEverywhereHistoryKey" value="format&#9;ACTION&#9;ReformatCode&#10;reformat&#9;ACTION&#9;ReformatCode&#10;file&#9;ACTION&#9;ChangeFileEncodingAction" />
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="com.android.tools.idea.instantapp.provision.ProvisionBeforeRunTaskProvider.myTimeStamp" value="1584199200309" />
<property name="last_opened_file_path" value="$PROJECT_DIR$/lib/sqlite-jdbc-3.30.1.jar" />
@@ -863,6 +917,7 @@
</component>
<component name="RunManager" selected="Application.Main">
<configuration name="Main" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<output_file path="$PROJECT_DIR$/../Log_IDEA_consoleOutput" is_save="true" />
<option name="MAIN_CLASS_NAME" value="cn.minoa.Main" />
<module name="Demo_gradle_javafx11_01_main" />
<extension name="coverage">
@@ -987,17 +1042,19 @@
<workItem from="1584098799418" duration="56000" />
<workItem from="1584099184067" duration="17334000" />
<workItem from="1584165733316" duration="27492000" />
<workItem from="1584207475214" duration="960000" />
<workItem from="1584250295185" duration="5980000" />
<workItem from="1584256348421" duration="8218000" />
</task>
<servers />
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="214054000" />
<option name="totallyTimeSpent" value="229212000" />
</component>
<component name="ToolWindowManager">
<frame x="-8" y="-8" width="1382" height="744" extended-state="6" />
<editor active="true" />
<layout>
<window_info active="true" content_ui="combo" id="Project" order="0" sideWeight="0.4977029" visible="true" weight="0.3494705" />
<window_info content_ui="combo" id="Project" order="0" sideWeight="0.4977029" visible="true" weight="0.21255673" />
<window_info id="Structure" order="1" sideWeight="0.5022971" side_tool="true" weight="0.30542988" />
<window_info id="Designer" order="2" />
<window_info id="Image Layers" order="3" />
@@ -1006,7 +1063,7 @@
<window_info id="Capture Tool" order="6" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" weight="0.32874617" />
<window_info anchor="bottom" id="Run" order="2" visible="true" weight="0.27093595" />
<window_info active="true" anchor="bottom" id="Run" order="2" visible="true" weight="0.63054186" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.39901477" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
@@ -1023,7 +1080,7 @@
<window_info anchor="right" id="Palette" order="3" />
<window_info anchor="right" id="Capture Analysis" order="4" />
<window_info anchor="right" id="Maven Projects" order="5" weight="0.3295626" />
<window_info anchor="right" id="Gradle" order="6" visible="true" weight="0.15885022" />
<window_info anchor="right" id="Gradle" order="6" weight="0.15885022" />
<window_info anchor="right" id="Database" order="7" weight="0.18683812" />
<window_info anchor="right" id="Palette&#9;" order="8" />
<window_info anchor="right" id="Theme Preview" order="9" />
@@ -1072,20 +1129,13 @@
<option name="FILTER_TARGETS" value="false" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/message/MessageListController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="475">
<caret line="29" column="31" selection-start-line="29" selection-start-column="31" selection-end-line="29" selection-end-column="31" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/home/ReimbursementApplyOverview.fxml">
<provider editor-type-id="JavaFX-Scene-Builder" />
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="200">
<caret line="8" selection-start-line="8" selection-end-line="8" />
</state>
</provider>
<provider editor-type-id="JavaFX-Scene-Builder" />
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/home/ReimbursementApply.css">
<provider selected="true" editor-type-id="text-editor">
@@ -1102,12 +1152,12 @@
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/home/WrittenReimbursementDetails.fxml">
<provider editor-type-id="JavaFX-Scene-Builder" />
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="164">
<caret line="23" column="127" lean-forward="true" selection-start-line="23" selection-start-column="127" selection-end-line="23" selection-end-column="127" />
</state>
</provider>
<provider editor-type-id="JavaFX-Scene-Builder" />
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/home/ReimbursementDeal.css">
<provider selected="true" editor-type-id="text-editor">
@@ -1117,12 +1167,12 @@
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/home/ReimbursementDealOverview.fxml">
<provider editor-type-id="JavaFX-Scene-Builder" />
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="250">
<caret line="10" column="45" lean-forward="true" selection-start-line="10" selection-start-column="45" selection-end-line="10" selection-end-column="45" />
</state>
</provider>
<provider editor-type-id="JavaFX-Scene-Builder" />
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/home/HomeListController.java">
<provider selected="true" editor-type-id="text-editor">
@@ -1132,16 +1182,16 @@
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/home/SingleReimbursementDetails.fxml">
<provider editor-type-id="JavaFX-Scene-Builder" />
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="313">
<caret line="20" column="23" selection-start-line="20" selection-start-column="23" selection-end-line="20" selection-end-column="23" />
</state>
</provider>
<provider editor-type-id="JavaFX-Scene-Builder" />
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/home/DealSingleReimbursement.fxml">
<provider editor-type-id="JavaFX-Scene-Builder" />
<provider selected="true" editor-type-id="text-editor" />
<provider editor-type-id="JavaFX-Scene-Builder" />
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/dataRequestInterface/OrderInfo.java">
<provider selected="true" editor-type-id="text-editor">
@@ -1192,13 +1242,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/util/DateUtil.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="265">
<caret line="17" column="43" selection-start-line="17" selection-start-column="43" selection-end-line="17" selection-end-column="43" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/util/Tool.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="150">
@@ -1269,55 +1312,27 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/WrittenNoticeController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="25">
<caret line="43" column="30" lean-forward="true" selection-start-line="43" selection-start-column="30" selection-end-line="43" selection-end-column="30" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/login/SetttingOverview.fxml" />
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/login/SettingOverview.fxml">
<provider editor-type-id="JavaFX-Scene-Builder" />
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="137">
<caret line="36" column="30" selection-start-line="36" selection-start-column="30" selection-end-line="36" selection-end-column="30" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/MyNoticeController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="102">
<caret line="54" column="20" lean-forward="true" selection-start-line="54" selection-start-column="20" selection-end-line="54" selection-end-column="20" />
</state>
</provider>
<provider editor-type-id="JavaFX-Scene-Builder" />
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/fxml/login/RegisterOverview.fxml">
<provider editor-type-id="JavaFX-Scene-Builder" />
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="275">
<caret line="11" column="31" lean-forward="true" selection-start-line="11" selection-start-column="31" selection-end-line="11" selection-end-column="31" />
</state>
</provider>
<provider editor-type-id="JavaFX-Scene-Builder" />
</entry>
<entry file="file://$PROJECT_DIR$/resources/images/setting_gear.png">
<provider selected="true" editor-type-id="images" />
</entry>
<entry file="file://$PROJECT_DIR$/out/production/resources/db/settings.properties" />
<entry file="file://$PROJECT_DIR$/ndn/settings.properties">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="125">
<caret line="5" lean-forward="true" selection-start-line="5" selection-end-line="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/login/SettingOverviewController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="263">
<caret line="13" column="7" lean-forward="true" selection-start-line="13" selection-start-column="7" selection-end-line="13" selection-end-column="7" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="200">
@@ -1325,20 +1340,10 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/login/RegisterOverviewController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="750">
<caret line="42" column="8" selection-start-line="42" selection-start-column="8" selection-end-line="42" selection-end-column="8" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/MyEmailController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="9000">
<caret line="380" column="24" selection-start-line="380" selection-start-column="24" selection-end-line="380" selection-end-column="24" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
@@ -1356,13 +1361,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/util/StringByteLengthUtil.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="249">
<caret line="22" column="60" selection-start-line="22" selection-start-column="60" selection-end-line="22" selection-end-column="60" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/NewFolderDialogController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="150">
@@ -1374,10 +1372,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="130">
<caret line="554" column="18" selection-start-line="554" selection-start-column="18" selection-end-line="554" selection-end-column="18" />
<folding>
<element signature="e#22927#22928#0" expanded="true" />
<element signature="e#22966#22967#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@@ -1388,16 +1382,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/login/LoginOverviewController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="116">
<caret line="336" column="10" selection-start-line="336" selection-start-column="10" selection-end-line="336" selection-end-column="10" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/dataRequestInterface/DataCacheQueue.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="246">
@@ -1420,38 +1404,104 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/ndn/settings.properties">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="100">
<caret line="4" column="22" selection-start-line="4" selection-start-column="22" selection-end-line="4" selection-end-column="22" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/WrittenNoticeController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="2350">
<caret line="112" column="24" selection-start-line="112" selection-start-column="24" selection-end-line="112" selection-end-column="24" />
<folding>
<element signature="e#3115#3116#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/MyNoticeController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1075">
<caret line="47" selection-start-line="47" selection-end-line="47" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/util/DateUtil.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="750">
<caret line="34" selection-start-line="34" selection-end-line="34" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/util/StringByteLengthUtil.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="625">
<caret line="25" column="5" selection-start-line="25" selection-start-column="5" selection-end-line="25" selection-end-column="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/MainApp.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="344">
<caret line="518" selection-start-line="517" selection-end-line="518" />
<state relative-caret-position="414">
<caret line="67" column="19" lean-forward="true" selection-start-line="67" selection-start-column="19" selection-end-line="67" selection-end-column="19" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/mine/SingleNoticeDetailsController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="87">
<caret line="36" selection-start-line="36" selection-end-line="36" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/login/SettingOverviewController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="32">
<caret line="241" column="28" selection-start-line="241" selection-start-column="28" selection-end-line="241" selection-end-column="28" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#12524#14633#0" expanded="true" />
<element signature="e#14632#14633#0" expanded="true" />
<element signature="e#16114#18988#0" expanded="true" />
<element signature="e#18987#18988#0" expanded="true" />
<element signature="e#19260#19261#0" expanded="true" />
<element signature="e#19327#19328#0" expanded="true" />
<element signature="e#22979#22980#0" expanded="true" />
<element signature="e#23004#23005#0" expanded="true" />
<element signature="e#45500#45501#0" expanded="true" />
<element signature="e#45556#45557#0" expanded="true" />
<element signature="e#45995#45996#0" expanded="true" />
<element signature="e#46021#46022#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/dataRequestInterface/MinoaDataAPI.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="344">
<caret line="40" column="14" lean-forward="true" selection-start-line="40" selection-start-column="14" selection-end-line="40" selection-end-column="14" />
<state relative-caret-position="25">
<caret line="241" column="37" lean-forward="true" selection-start-line="241" selection-start-column="37" selection-end-line="241" selection-end-column="37" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/login/LoginOverviewController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="25">
<caret line="482" column="4" lean-forward="true" selection-start-line="482" selection-start-column="4" selection-end-line="482" selection-end-column="4" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/cn/minoa/view/login/RegisterOverviewController.java">
<provider selected="true" editor-type-id="text-editor">
<state>
<caret line="94" column="12" lean-forward="true" selection-start-line="94" selection-start-column="12" selection-end-line="94" selection-end-column="13" />
<folding>
<element signature="e#7117#7118#0" expanded="true" />
<element signature="e#7155#7156#0" expanded="true" />
<element signature="e#7249#7250#0" expanded="true" />
<element signature="e#7295#7296#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -1,5 +1,5 @@
#\u4FEE\u6539\u914D\u7F6E\u6587\u4EF6
#Sat Mar 14 22:37:55 CST 2020
#Sun Mar 15 14:23:27 CST 2020
ServerIPAddress=121.15.171.89
DataPackagePrefix=/ndn/edu/pkusz/OA
ServerPortAddress=6363
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

+1 -2
View File
@@ -38,7 +38,6 @@ import javafx.fxml.FXMLLoader;
import javafx.geometry.Pos;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.ProgressBar;
@@ -146,7 +145,7 @@ public class MainApp extends Application {
loadSettingProperties();
// 初始化一些数据
dataReqId = (long) 0;
// minoaDataAPI = new MinoaDataAPI(this);
minoaDataAPI = new MinoaDataAPI(this);
messageLogMap = new TreeMap<String, ObservableList<SingleMessage>>();
iniNotReadMessageListWhenLogin = new NotReadMessageList();
notReadMessageList = new NotReadMessageList();
@@ -882,7 +882,7 @@ public class MinoaDataAPI {
@Override
public void onData(Interest interest, Data data) {
int contentSize = data.getContent().size();
System.out.println("该通知的数据块分片长度为:" + contentSize);
System.out.println("该大数据传输的数据块分片长度为:" + contentSize);
byte[] content = new byte[contentSize];
for (int i = 0; i < contentSize; i++) {
content[i] = data.getContent().buf().get(i);
@@ -89,7 +89,7 @@ public class LoginOverviewController {
@FXML
private void handleLogin() {
// 实例化
mainApp.minoaDataAPI = new MinoaDataAPI(mainApp);
// mainApp.minoaDataAPI = new MinoaDataAPI(mainApp);
// 登录验证
String loginString = getLoginJsonString();
boolean isRight = checkPass(loginString);
@@ -11,168 +11,303 @@ import javafx.scene.control.TextField;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.stage.Stage;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
public class RegisterOverviewController {
@SuppressWarnings("unused")
private MainApp mainApp;
@SuppressWarnings("unused")
private Stage dialogStage;
@FXML
private TextField nickname;
@FXML
private PasswordField passwordField1;
@FXML
private PasswordField passwordField2;
@FXML
private TextField phoneNumber;
@FXML
private TextField verifyCode;
@FXML
private ImageView miniLogo;
@SuppressWarnings("unused")
private MainApp mainApp;
@SuppressWarnings("unused")
private Stage dialogStage;
public RegisterOverviewController() {
}
@FXML
private void initialize() {
@FXML
private TextField nickname;
@FXML
private PasswordField passwordField1;
@FXML
private PasswordField passwordField2;
@FXML
private TextField phoneNumber;
@FXML
private TextField verifyCode;
@FXML
private ImageView miniLogo;
public RegisterOverviewController() {
}
@FXML
private void initialize() {
// 在fxml被载入时候被自动调用
miniLogo.setImage(new Image("file:resources/images/logo_mini.png"));
nickname.setPromptText("请输入一个系统新昵称...");
phoneNumber.setPromptText("请输入白名单中的手机号...");
verifyCode.setPromptText("预留功能,不需要输入。");
}
miniLogo.setImage(new Image("file:resources/images/logo_mini.png"));
nickname.setPromptText("请输入一个系统新昵称...");
phoneNumber.setPromptText("请输入白名单中的手机号...");
verifyCode.setPromptText("预留功能,不需要输入。");
verifyCode.setDisable(true);
}
// 提交表单
@FXML
private void handleRegister(){
if(isRightContent()) {
// 请求数据
OrderInfo orderInfo = new OrderInfo();
ResponseData responseData = new ResponseData();
Long seqLong = mainApp.getNewDataReqId();
orderInfo.setSeq(seqLong);
orderInfo.setJsonString(getRegisterJson());
System.out.println("getRegisterJson: " + orderInfo.getJsonString());
mainApp.minoaDataAPI.executeOrder("/register", orderInfo);
responseData = mainApp.minoaDataAPI.dataCacheQueue.getResponseDataBySeq(seqLong);
JSONObject jsonObject = responseData.praseRequestData();
responseData.printSelf();
// 解析数据
Integer codeInteger = null;
try {
codeInteger = jsonObject.getInt("code");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (codeInteger == 200) {
// 提交表单
@FXML
private void handleRegister() {
if (isRightContent()) {
// 请求数据
OrderInfo orderInfo = new OrderInfo();
ResponseData responseData = new ResponseData();
Long seqLong = mainApp.getNewDataReqId();
orderInfo.setSeq(seqLong);
orderInfo.setJsonString(getRegisterJson());
System.out.println("getRegisterJson: " + orderInfo.getJsonString());
mainApp.minoaDataAPI.executeOrder("/register", orderInfo);
responseData = mainApp.minoaDataAPI.dataCacheQueue.getResponseDataBySeq(seqLong);
JSONObject jsonObject = responseData.praseRequestData();
responseData.printSelf();
// 解析数据
Integer codeInteger = null;
try {
codeInteger = jsonObject.getInt("code");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (codeInteger == 200) {
// 注册之后,使用getNews消耗掉新通知
makeNoticesBeRead();
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setTitle("注册成功");
alert.setHeaderText("注册发送成功");
alert.setContentText("你已成功注册一个账号。");
alert.showAndWait();
}else {
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setTitle("注册成功");
alert.setHeaderText("注册发送成功");
alert.setContentText("你已成功注册一个账号。");
alert.showAndWait();
dialogStage.close();
} else {
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("注册失败");
alert.setHeaderText("注册失败");
alert.setContentText("请确保你输入的手机号在系统白名单中,且登录名/账户/昵称并没有被注册。");
alert.showAndWait();
}
}
}
/*
* @param mainApp
*/
public void setMainApp(MainApp mainApp) {
this.mainApp = mainApp;
}
/*
* @param dialogStage
*/
public void setDialogStage(Stage dialogStage) {
this.dialogStage = dialogStage;
}
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("注册失败");
alert.setHeaderText("注册失败");
alert.setContentText("请确保你输入的手机号在系统白名单中,且登录名/账户/昵称并没有被注册。");
alert.showAndWait();
}
}
}
// 获取注册请求字符串
private String getRegisterJson() {
JSONObject jsonObject = new JSONObject();
String mPubKey = "Bv0CsQcuCAR3Z2gwCANLRVkICH9+4yjVUHZaCAxjZXJ0LXJlcXVlc3QICf0AAAFv\nEUSBehQJGAECGQQANu6AFf0BJjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBANbFutCAZqFjHEa16tYvy4lBgi9/zixKWQzE9I72vaG2Imym+6KR30qkAQOK\nh0uE5RD2YsGhRK99rde+JOqIfk2/sunhp4nctOS5f4DeuOty58ekrO+Co9ZFmNBI\nmyk5i/hakjBEd/vdD7b1VadDRep5mWs3rgCinZOUfVaZ4oKqSws7ZWMvOSlRMOOi\nVzj53P4poY109S6aWmi3xKw/D76vfJapjdOB9Dg7S3rz0Rve1F/ajHCXWLt4XU3k\nUCiBn3Qmt6UD/MyDBaaUCfOvHTN6yVPtN6aOtYJVBAWt/P1ahLYhWkSm6KvrwMt0\nRzy2lw/lPriT99REItc/0wK6XwkCAwEAARZGGwEBHBcHFQgEd2doMAgDS0VZCAh/\nfuMo1VB2Wv0A/Sb9AP4PMjAxOTEyMTdUMDAzMTQw/QD/DzIwMTkxMjI3VDAwMzEz\nORf9AQCM+8WROXfi8WD9DydfLuSUxV0v3KW/Gn422/puDrkwwi1R2ogsAUc2O8pp\npuMLjWrQOTgE6ZTg80uWoDSUjjk44aMjkL2SAfp62vHRbGFx7+dckHAtF+DS6NH7\nX2vojFHOg6fksOE1M7XqLHmEEctZrFVSnQO7nB3DfRg+BqzZC/iy+8YAvTIvqA1c\nNsKYkmNITB80aM1v2H7fKnV4ZJpZnW71G5vbaPUseeklalQ2vEuBgWdd/1PL/0Ml\nI52npzqoeKAEpLp+vBwGN5ryGtWKB12nNimpMfevQAn/9BVIg59lZ7DIlE0sWmgW\nnwDxIXKebdViOejHlKwNAykxRRWw";
String commandString = "/register";
String userNameString = nickname.getText().trim();
String passWordString = passwordField1.getText().trim();
String phoneString = phoneNumber.getText().trim();
Integer levelInteger = 0;
try {
jsonObject.put("command", commandString);
jsonObject.put("username", userNameString);
jsonObject.put("password", passWordString);
jsonObject.put("phone", phoneString);
jsonObject.put("publicKey", mPubKey);
jsonObject.put("level", levelInteger);
} catch (Exception e) {
System.out.println("exception: " + e.getMessage());
}
return jsonObject.toString();
}
// 将注册用户成功之前的所有通知状态修改为已阅
//【目的是减少注册后第一次登录时由于getNews到通知而反复请求通知数据带来的卡顿】
//【后台机制不是使用任何接口拿到通知都会变成已阅,而只能getNews可以这样,所以出此下策】
// 突然发现没有拿到总通知数目的数据接口,所以先用getNews修改50条【上限】通知状态吧
public void makeNoticesBeRead() {
//先登录,再修改通知的阅读状态
boolean flag = fakeLogin(getLoginJsonString());
if (flag) {
for(int i=0;i<10;i++){
if(getNewsButDoNothing()){
System.out.println("已成功修改"+(i+1)+"个数据片大小的通知的阅读状态。用户:"+mainApp.loginer.getUserName());
}
}
} else {
System.out.println("假登录失败,通知状态未被修改为已阅。");
}
}
// 从前端界面获得登录数据并转换成json格式
private String getLoginJsonString() {
JSONObject jsonObject = new JSONObject();
String commandString = "/login";
String userNameString = nickname.getText().trim();
String passWordString = passwordField1.getText().trim();
mainApp.loginer.setUserName(userNameString);
mainApp.loginer.setPassWord(passWordString);
try {
jsonObject.put("command", commandString);
jsonObject.put("username", userNameString);
jsonObject.put("password", passWordString);
} catch (Exception e) {
System.out.println("exception: " + e.getMessage());
}
return jsonObject.toString();
}
private boolean fakeLogin(String loginJsonString) {
System.out.println("beginning fake login ...");
boolean flag = false;
// 发送数据请求
Long seqLong = mainApp.getNewDataReqId();
OrderInfo orderInfo = new OrderInfo();
orderInfo.setSeq(seqLong);
orderInfo.setJsonString(loginJsonString);
mainApp.minoaDataAPI.executeOrder("/login", orderInfo);
// 根据结果判断是否登录成功
ResponseData responseData = mainApp.minoaDataAPI.dataCacheQueue.getResponseDataBySeq(seqLong);
// responseData.printSelf();
JSONObject jsonObject = responseData.praseRequestData();
Integer codeInteger = null;
try {
codeInteger = jsonObject.getInt("code");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (codeInteger == 200) {
System.out.println("fake login 200");
flag = true;
updateLoginer(jsonObject);
// 打印输出
System.out.println("****注册后假登录【修改通知状态为已阅】****");
mainApp.loginer.printSelf();
System.out.println("****注册后假登录【修改通知状态为已阅】****");
}
return flag;
}
// 根据请求到的json数据更新loginer的信息
private void updateLoginer(JSONObject loginerJsonObject) {
String dataString;
try {
dataString = loginerJsonObject.getString("data");
JSONObject dataJsonObject = new JSONObject(dataString);
String uuid = dataJsonObject.getString("uuid");
mainApp.loginer.setUuid(uuid);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// 获取是否有新的[消息/通知/审批]产生的json字符串
private String getGetNewsJson() {
JSONObject jsonObject = new JSONObject();
String commandString = "/getNews";
String userNameString = mainApp.loginer.getUserName();
String uuidString = mainApp.loginer.getUuid();
try {
jsonObject.put("command", commandString);
jsonObject.put("username", userNameString);
jsonObject.put("uuid", uuidString);
} catch (Exception e) {
// TODO: handle exception
System.out.println("exception: " + e.getMessage());
}
return jsonObject.toString();
}
//发送getNews请求
public boolean getNewsButDoNothing() {
// 发送数据请求
Long seqLong = mainApp.getNewDataReqId();
OrderInfo orderInfo = new OrderInfo();
orderInfo.setSeq(seqLong);
orderInfo.setJsonString(getGetNewsJson());
mainApp.minoaDataAPI.executeOrder("/getNews", orderInfo);
// 获取回复消息
ResponseData responseData = mainApp.minoaDataAPI.dataCacheQueue.getResponseDataBySeq(seqLong);
// System.out.println("getNews-responseData: "+responseData.getResponseJsonDataString());
JSONObject jsonObject = responseData.praseRequestData();
Integer codeInteger = null;
try {
codeInteger = jsonObject.getInt("code");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if (codeInteger == 200) {
try {
if(!jsonObject.getString("data").equals("")){
return true;
}
} catch (JSONException e) {
e.printStackTrace();
}
}
return false;
}
/*
* @param mainApp
*/
public void setMainApp(MainApp mainApp) {
this.mainApp = mainApp;
}
/*
* @param dialogStage
*/
public void setDialogStage(Stage dialogStage) {
this.dialogStage = dialogStage;
}
// 获取注册请求字符串
private String getRegisterJson() {
JSONObject jsonObject = new JSONObject();
String mPubKey = "Bv0CsQcuCAR3Z2gwCANLRVkICH9+4yjVUHZaCAxjZXJ0LXJlcXVlc3QICf0AAAFv\nEUSBehQJGAECGQQANu6AFf0BJjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC\nggEBANbFutCAZqFjHEa16tYvy4lBgi9/zixKWQzE9I72vaG2Imym+6KR30qkAQOK\nh0uE5RD2YsGhRK99rde+JOqIfk2/sunhp4nctOS5f4DeuOty58ekrO+Co9ZFmNBI\nmyk5i/hakjBEd/vdD7b1VadDRep5mWs3rgCinZOUfVaZ4oKqSws7ZWMvOSlRMOOi\nVzj53P4poY109S6aWmi3xKw/D76vfJapjdOB9Dg7S3rz0Rve1F/ajHCXWLt4XU3k\nUCiBn3Qmt6UD/MyDBaaUCfOvHTN6yVPtN6aOtYJVBAWt/P1ahLYhWkSm6KvrwMt0\nRzy2lw/lPriT99REItc/0wK6XwkCAwEAARZGGwEBHBcHFQgEd2doMAgDS0VZCAh/\nfuMo1VB2Wv0A/Sb9AP4PMjAxOTEyMTdUMDAzMTQw/QD/DzIwMTkxMjI3VDAwMzEz\nORf9AQCM+8WROXfi8WD9DydfLuSUxV0v3KW/Gn422/puDrkwwi1R2ogsAUc2O8pp\npuMLjWrQOTgE6ZTg80uWoDSUjjk44aMjkL2SAfp62vHRbGFx7+dckHAtF+DS6NH7\nX2vojFHOg6fksOE1M7XqLHmEEctZrFVSnQO7nB3DfRg+BqzZC/iy+8YAvTIvqA1c\nNsKYkmNITB80aM1v2H7fKnV4ZJpZnW71G5vbaPUseeklalQ2vEuBgWdd/1PL/0Ml\nI52npzqoeKAEpLp+vBwGN5ryGtWKB12nNimpMfevQAn/9BVIg59lZ7DIlE0sWmgW\nnwDxIXKebdViOejHlKwNAykxRRWw";
String commandString = "/register";
String userNameString = nickname.getText().trim();
String passWordString = passwordField1.getText().trim();
String phoneString = phoneNumber.getText().trim();
Integer levelInteger = 0;
try {
jsonObject.put("command", commandString);
jsonObject.put("username", userNameString);
jsonObject.put("password", passWordString);
jsonObject.put("phone", phoneString);
jsonObject.put("publicKey", mPubKey);
jsonObject.put("level", levelInteger);
} catch (Exception e) {
System.out.println("exception: " + e.getMessage());
}
return jsonObject.toString();
}
// 验证输入内容格式
private boolean isRightContent() {
//验证昵称是否为空
if (nickname.getText().trim().equals("")) {
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("账号错误");
alert.setHeaderText("你的账号错误");
alert.setContentText("请确保你输入的账号(昵称)不为空。");
alert.showAndWait();
return false;
}
//验证两次密码
if (passwordField1.getText().trim().equals("")) {
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("密码错误");
alert.setHeaderText("你设置的密码错误");
alert.setContentText("请确保你设置的密码不为空。");
alert.showAndWait();
return false;
}
if (!passwordField1.getText().trim().equals(passwordField2.getText().trim())) {
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("密码错误");
alert.setHeaderText("你的设置的密码错误");
alert.setContentText("请确保你输入的两次密码是一致的。");
alert.showAndWait();
return false;
}
if (phoneNumber.getText().trim().equals("")) {
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("手机号错误");
alert.setHeaderText("你的输入的手机号错误");
alert.setContentText("请确保你输入的手机号不为空。");
alert.showAndWait();
return false;
}
if (!StringByteLengthUtil.isAllNumber(phoneNumber.getText().trim())) {
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("手机号错误");
alert.setHeaderText("你的设置的手机号错误");
alert.setContentText("请确保你输入的手机号的格式是正确的。");
alert.showAndWait();
return false;
}
return true;
}
// 验证输入内容格式
private boolean isRightContent(){
//验证昵称是否为空
if(nickname.getText().trim().equals("")){
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("账号错误");
alert.setHeaderText("你的账号错误");
alert.setContentText("请确保你输入的账号(昵称)不为空。");
alert.showAndWait();
return false;
}
//验证两次密码
if(passwordField1.getText().trim().equals("")){
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("密码错误");
alert.setHeaderText("你设置的密码错误");
alert.setContentText("请确保你设置的密码不为空。");
alert.showAndWait();
return false;
}
if(!passwordField1.getText().trim().equals(passwordField2.getText().trim())){
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("密码错误");
alert.setHeaderText("你的设置的密码错误");
alert.setContentText("请确保你输入的两次密码是一致的。");
alert.showAndWait();
return false;
}
if(phoneNumber.getText().trim().equals("")){
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("手机号错误");
alert.setHeaderText("你的输入的手机号错误");
alert.setContentText("请确保你输入的手机号不为空。");
alert.showAndWait();
return false;
}
if(!StringByteLengthUtil.isAllNumber(phoneNumber.getText().trim())){
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("手机号错误");
alert.setHeaderText("你的设置的手机号错误");
alert.setContentText("请确保你输入的手机号的格式是正确的。");
alert.showAndWait();
return false;
}
return true;
}
}
@@ -53,9 +53,10 @@ public class SettingOverviewController {
// 弹窗参考:https://code.makery.ch/blog/javafx-dialogs-official/
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setTitle("设置成功");
alert.setHeaderText("IP/包前缀已设置成功");
alert.setContentText("您已成功设置服务器IP/包前缀");
alert.setHeaderText("服务器地址/包前缀修改成功");
alert.setContentText("您已成功修改服务器IP/包前缀。\n请重新启动应用以生效新设置!");
alert.showAndWait();
System.exit(0);
}
}
@@ -109,6 +110,7 @@ public class SettingOverviewController {
ipAddress.setText(mainApp.minoaServerIpString);
portAddress.setText(mainApp.minoaServerPortInteger.toString());
packetPrefix.setText(mainApp.globalPrefixString);
packetPrefix.setDisable(true);
}
/*
@@ -202,9 +204,29 @@ public class SettingOverviewController {
alert.showAndWait();
return false;
}
//判断是否与原内容一致
if(isNotChange()){
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("设置未变");
alert.setHeaderText("设置未变");
alert.setContentText("请确保新配置信息与旧配置信息是不同的。");
alert.showAndWait();
return false;
}
return true;
}
// 判断新设置的参数是否与原参数一致
public boolean isNotChange(){
if(ipAddress.getText().trim().equals(mainApp.minoaServerIpString)&&
portAddress.getText().trim().equals(mainApp.minoaServerPortInteger.toString())&&
packetPrefix.getText().trim().equals(mainApp.globalPrefixString)){
return true;
}else{
return false;
}
}
// 判断ip和端口号是否可以连接
public static boolean isHostConnectable(String host, int port) {
Socket socket = new Socket();