diff --git a/.gitignore b/.gitignore index 317307aafdda0deb7e04bdc5681d1ebde8a51ebe..60f5f562a246f41e665abe87b8a4af171ad4ee84 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /target/ /.idea/ /logs/ +.DS_Store diff --git a/assets/mac/WePush.icns b/assets/mac/WePush.icns index 5a369256d5ddd0ffee0280ec5205b99830aba885..55b68f19f51a36f921b0bd0bc43b641756707800 100644 Binary files a/assets/mac/WePush.icns and b/assets/mac/WePush.icns differ diff --git a/icons/.DS_Store b/icons/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..23cf2d6f2c331182cf6a362a0a01b22c3f974d57 Binary files /dev/null and b/icons/.DS_Store differ diff --git a/icons/android/play_store_512.png b/icons/android/play_store_512.png new file mode 100644 index 0000000000000000000000000000000000000000..4156cc21a3ae98ca49b9ee1195ae4ae7af054995 Binary files /dev/null and b/icons/android/play_store_512.png differ diff --git a/icons/android/res/mipmap-anydpi-v26/ic_launcher.xml b/icons/android/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000000000000000000000000000000000000..345888d26e662baa7c5ae78589829dca8cf5b4f0 --- /dev/null +++ b/icons/android/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/icons/android/res/mipmap-hdpi/ic_launcher.png b/icons/android/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..3e6e2f9dbf31f1fc10785d3c5d560c9f6d2e301e Binary files /dev/null and b/icons/android/res/mipmap-hdpi/ic_launcher.png differ diff --git a/icons/android/res/mipmap-hdpi/ic_launcher_background.png b/icons/android/res/mipmap-hdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..19669488f1b2f9321fa4d25c1334bc323c92fbb2 Binary files /dev/null and b/icons/android/res/mipmap-hdpi/ic_launcher_background.png differ diff --git a/icons/android/res/mipmap-hdpi/ic_launcher_foreground.png b/icons/android/res/mipmap-hdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..aa52eda1f34686b7e7382b24910f176f6c29dd30 Binary files /dev/null and b/icons/android/res/mipmap-hdpi/ic_launcher_foreground.png differ diff --git a/icons/android/res/mipmap-hdpi/ic_launcher_monochrome.png b/icons/android/res/mipmap-hdpi/ic_launcher_monochrome.png new file mode 100644 index 0000000000000000000000000000000000000000..aa52eda1f34686b7e7382b24910f176f6c29dd30 Binary files /dev/null and b/icons/android/res/mipmap-hdpi/ic_launcher_monochrome.png differ diff --git a/icons/android/res/mipmap-mdpi/ic_launcher.png b/icons/android/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..a7acb58f480fc1c14cbcebf29ae4e52afa0a2970 Binary files /dev/null and b/icons/android/res/mipmap-mdpi/ic_launcher.png differ diff --git a/icons/android/res/mipmap-mdpi/ic_launcher_background.png b/icons/android/res/mipmap-mdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..75025cfd5ccc1702d5ada42072626e319bca6cbe Binary files /dev/null and b/icons/android/res/mipmap-mdpi/ic_launcher_background.png differ diff --git a/icons/android/res/mipmap-mdpi/ic_launcher_foreground.png b/icons/android/res/mipmap-mdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..05b43eed019d0ad301b9cb2a26d764b265936acc Binary files /dev/null and b/icons/android/res/mipmap-mdpi/ic_launcher_foreground.png differ diff --git a/icons/android/res/mipmap-mdpi/ic_launcher_monochrome.png b/icons/android/res/mipmap-mdpi/ic_launcher_monochrome.png new file mode 100644 index 0000000000000000000000000000000000000000..05b43eed019d0ad301b9cb2a26d764b265936acc Binary files /dev/null and b/icons/android/res/mipmap-mdpi/ic_launcher_monochrome.png differ diff --git a/icons/android/res/mipmap-xhdpi/ic_launcher.png b/icons/android/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..7fcfd4449f06c9a693c4fafda6ef463694c86e66 Binary files /dev/null and b/icons/android/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/icons/android/res/mipmap-xhdpi/ic_launcher_background.png b/icons/android/res/mipmap-xhdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..9784f16c882653abeb055d62e5e36fc0fa0da47d Binary files /dev/null and b/icons/android/res/mipmap-xhdpi/ic_launcher_background.png differ diff --git a/icons/android/res/mipmap-xhdpi/ic_launcher_foreground.png b/icons/android/res/mipmap-xhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..b719cc74b727ec97fd50526fe743742140fe7790 Binary files /dev/null and b/icons/android/res/mipmap-xhdpi/ic_launcher_foreground.png differ diff --git a/icons/android/res/mipmap-xhdpi/ic_launcher_monochrome.png b/icons/android/res/mipmap-xhdpi/ic_launcher_monochrome.png new file mode 100644 index 0000000000000000000000000000000000000000..b719cc74b727ec97fd50526fe743742140fe7790 Binary files /dev/null and b/icons/android/res/mipmap-xhdpi/ic_launcher_monochrome.png differ diff --git a/icons/android/res/mipmap-xxhdpi/ic_launcher.png b/icons/android/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..976b16308f0926f1173f1bff5cea47a413cfa563 Binary files /dev/null and b/icons/android/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/icons/android/res/mipmap-xxhdpi/ic_launcher_background.png b/icons/android/res/mipmap-xxhdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..04ef206c8607696ac2bb082bb1b46afe648f59f7 Binary files /dev/null and b/icons/android/res/mipmap-xxhdpi/ic_launcher_background.png differ diff --git a/icons/android/res/mipmap-xxhdpi/ic_launcher_foreground.png b/icons/android/res/mipmap-xxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..69a0b95a7682d4365d11b217521b50d1084bcff6 Binary files /dev/null and b/icons/android/res/mipmap-xxhdpi/ic_launcher_foreground.png differ diff --git a/icons/android/res/mipmap-xxhdpi/ic_launcher_monochrome.png b/icons/android/res/mipmap-xxhdpi/ic_launcher_monochrome.png new file mode 100644 index 0000000000000000000000000000000000000000..69a0b95a7682d4365d11b217521b50d1084bcff6 Binary files /dev/null and b/icons/android/res/mipmap-xxhdpi/ic_launcher_monochrome.png differ diff --git a/icons/android/res/mipmap-xxxhdpi/ic_launcher.png b/icons/android/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..da9c0eff03f32a2b3965030e9d1a7ac0ed055329 Binary files /dev/null and b/icons/android/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/icons/android/res/mipmap-xxxhdpi/ic_launcher_background.png b/icons/android/res/mipmap-xxxhdpi/ic_launcher_background.png new file mode 100644 index 0000000000000000000000000000000000000000..66a5487a223c9db9c415a840b4451379ec15b214 Binary files /dev/null and b/icons/android/res/mipmap-xxxhdpi/ic_launcher_background.png differ diff --git a/icons/android/res/mipmap-xxxhdpi/ic_launcher_foreground.png b/icons/android/res/mipmap-xxxhdpi/ic_launcher_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..b4879bbd7f72370845b93db9bd7da126419a0201 Binary files /dev/null and b/icons/android/res/mipmap-xxxhdpi/ic_launcher_foreground.png differ diff --git a/icons/android/res/mipmap-xxxhdpi/ic_launcher_monochrome.png b/icons/android/res/mipmap-xxxhdpi/ic_launcher_monochrome.png new file mode 100644 index 0000000000000000000000000000000000000000..b4879bbd7f72370845b93db9bd7da126419a0201 Binary files /dev/null and b/icons/android/res/mipmap-xxxhdpi/ic_launcher_monochrome.png differ diff --git a/icons/ios/AppIcon-20@2x.png b/icons/ios/AppIcon-20@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..0b38c91c46c708f82ed518bd24ae755ee540e0fb Binary files /dev/null and b/icons/ios/AppIcon-20@2x.png differ diff --git a/icons/ios/AppIcon-20@2x~ipad.png b/icons/ios/AppIcon-20@2x~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..0b38c91c46c708f82ed518bd24ae755ee540e0fb Binary files /dev/null and b/icons/ios/AppIcon-20@2x~ipad.png differ diff --git a/icons/ios/AppIcon-20@3x.png b/icons/ios/AppIcon-20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9e43a2f6139a989e44190100e65c0c2832dfb6f8 Binary files /dev/null and b/icons/ios/AppIcon-20@3x.png differ diff --git a/icons/ios/AppIcon-20~ipad.png b/icons/ios/AppIcon-20~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..9df1ae8919e1340a50eedbb5dc37e31cbdec73dd Binary files /dev/null and b/icons/ios/AppIcon-20~ipad.png differ diff --git a/icons/ios/AppIcon-29.png b/icons/ios/AppIcon-29.png new file mode 100644 index 0000000000000000000000000000000000000000..1ea85538c29cd0a80b303660231a23dbca3dbdc4 Binary files /dev/null and b/icons/ios/AppIcon-29.png differ diff --git a/icons/ios/AppIcon-29@2x.png b/icons/ios/AppIcon-29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..89a04ced9691b38ff7b0ee31184c1266f41dc67a Binary files /dev/null and b/icons/ios/AppIcon-29@2x.png differ diff --git a/icons/ios/AppIcon-29@2x~ipad.png b/icons/ios/AppIcon-29@2x~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..89a04ced9691b38ff7b0ee31184c1266f41dc67a Binary files /dev/null and b/icons/ios/AppIcon-29@2x~ipad.png differ diff --git a/icons/ios/AppIcon-29@3x.png b/icons/ios/AppIcon-29@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..656fb13fcbaf2e864567e8321395c19823ff77c9 Binary files /dev/null and b/icons/ios/AppIcon-29@3x.png differ diff --git a/icons/ios/AppIcon-29~ipad.png b/icons/ios/AppIcon-29~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..1ea85538c29cd0a80b303660231a23dbca3dbdc4 Binary files /dev/null and b/icons/ios/AppIcon-29~ipad.png differ diff --git a/icons/ios/AppIcon-40@2x.png b/icons/ios/AppIcon-40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..de4ee76b23b47be7f0df2b37ccb8d9d24d9b92a4 Binary files /dev/null and b/icons/ios/AppIcon-40@2x.png differ diff --git a/icons/ios/AppIcon-40@2x~ipad.png b/icons/ios/AppIcon-40@2x~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..de4ee76b23b47be7f0df2b37ccb8d9d24d9b92a4 Binary files /dev/null and b/icons/ios/AppIcon-40@2x~ipad.png differ diff --git a/icons/ios/AppIcon-40@3x.png b/icons/ios/AppIcon-40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..de782800cfa48d1c4a106444d5ff6f632ce501b5 Binary files /dev/null and b/icons/ios/AppIcon-40@3x.png differ diff --git a/icons/ios/AppIcon-40~ipad.png b/icons/ios/AppIcon-40~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..0b38c91c46c708f82ed518bd24ae755ee540e0fb Binary files /dev/null and b/icons/ios/AppIcon-40~ipad.png differ diff --git a/icons/ios/AppIcon-60@2x~car.png b/icons/ios/AppIcon-60@2x~car.png new file mode 100644 index 0000000000000000000000000000000000000000..de782800cfa48d1c4a106444d5ff6f632ce501b5 Binary files /dev/null and b/icons/ios/AppIcon-60@2x~car.png differ diff --git a/icons/ios/AppIcon-60@3x~car.png b/icons/ios/AppIcon-60@3x~car.png new file mode 100644 index 0000000000000000000000000000000000000000..131a13252226131c1a13bf7d877253f70757de22 Binary files /dev/null and b/icons/ios/AppIcon-60@3x~car.png differ diff --git a/icons/ios/AppIcon-83.5@2x~ipad.png b/icons/ios/AppIcon-83.5@2x~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..c440764db4ea7218fb64c02f6ce1a9713e4f5ccd Binary files /dev/null and b/icons/ios/AppIcon-83.5@2x~ipad.png differ diff --git a/icons/ios/AppIcon@2x.png b/icons/ios/AppIcon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..de782800cfa48d1c4a106444d5ff6f632ce501b5 Binary files /dev/null and b/icons/ios/AppIcon@2x.png differ diff --git a/icons/ios/AppIcon@2x~ipad.png b/icons/ios/AppIcon@2x~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..8feef01b132e1981e7c81197032be5d75fa72933 Binary files /dev/null and b/icons/ios/AppIcon@2x~ipad.png differ diff --git a/icons/ios/AppIcon@3x.png b/icons/ios/AppIcon@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..131a13252226131c1a13bf7d877253f70757de22 Binary files /dev/null and b/icons/ios/AppIcon@3x.png differ diff --git a/icons/ios/AppIcon~ios-marketing.png b/icons/ios/AppIcon~ios-marketing.png new file mode 100644 index 0000000000000000000000000000000000000000..d1808fc5fe18f42bdf6eee203e7b6974529cafa6 Binary files /dev/null and b/icons/ios/AppIcon~ios-marketing.png differ diff --git a/icons/ios/AppIcon~ipad.png b/icons/ios/AppIcon~ipad.png new file mode 100644 index 0000000000000000000000000000000000000000..489d72aa72727dfe410908fe578faa35ccdf0b91 Binary files /dev/null and b/icons/ios/AppIcon~ipad.png differ diff --git a/icons/ios/Contents.json b/icons/ios/Contents.json new file mode 100644 index 0000000000000000000000000000000000000000..bd04914aec962b7c36602f7cff8334d0a637a699 --- /dev/null +++ b/icons/ios/Contents.json @@ -0,0 +1,134 @@ +{ + "images": [ + { + "filename": "AppIcon@2x.png", + "idiom": "iphone", + "scale": "2x", + "size": "60x60" + }, + { + "filename": "AppIcon@3x.png", + "idiom": "iphone", + "scale": "3x", + "size": "60x60" + }, + { + "filename": "AppIcon~ipad.png", + "idiom": "ipad", + "scale": "1x", + "size": "76x76" + }, + { + "filename": "AppIcon@2x~ipad.png", + "idiom": "ipad", + "scale": "2x", + "size": "76x76" + }, + { + "filename": "AppIcon-83.5@2x~ipad.png", + "idiom": "ipad", + "scale": "2x", + "size": "83.5x83.5" + }, + { + "filename": "AppIcon-40@2x.png", + "idiom": "iphone", + "scale": "2x", + "size": "40x40" + }, + { + "filename": "AppIcon-40@3x.png", + "idiom": "iphone", + "scale": "3x", + "size": "40x40" + }, + { + "filename": "AppIcon-40~ipad.png", + "idiom": "ipad", + "scale": "1x", + "size": "40x40" + }, + { + "filename": "AppIcon-40@2x~ipad.png", + "idiom": "ipad", + "scale": "2x", + "size": "40x40" + }, + { + "filename": "AppIcon-20@2x.png", + "idiom": "iphone", + "scale": "2x", + "size": "20x20" + }, + { + "filename": "AppIcon-20@3x.png", + "idiom": "iphone", + "scale": "3x", + "size": "20x20" + }, + { + "filename": "AppIcon-20~ipad.png", + "idiom": "ipad", + "scale": "1x", + "size": "20x20" + }, + { + "filename": "AppIcon-20@2x~ipad.png", + "idiom": "ipad", + "scale": "2x", + "size": "20x20" + }, + { + "filename": "AppIcon-29.png", + "idiom": "iphone", + "scale": "1x", + "size": "29x29" + }, + { + "filename": "AppIcon-29@2x.png", + "idiom": "iphone", + "scale": "2x", + "size": "29x29" + }, + { + "filename": "AppIcon-29@3x.png", + "idiom": "iphone", + "scale": "3x", + "size": "29x29" + }, + { + "filename": "AppIcon-29~ipad.png", + "idiom": "ipad", + "scale": "1x", + "size": "29x29" + }, + { + "filename": "AppIcon-29@2x~ipad.png", + "idiom": "ipad", + "scale": "2x", + "size": "29x29" + }, + { + "filename": "AppIcon-60@2x~car.png", + "idiom": "car", + "scale": "2x", + "size": "60x60" + }, + { + "filename": "AppIcon-60@3x~car.png", + "idiom": "car", + "scale": "3x", + "size": "60x60" + }, + { + "filename": "AppIcon~ios-marketing.png", + "idiom": "ios-marketing", + "scale": "1x", + "size": "1024x1024" + } + ], + "info": { + "author": "iconkitchen", + "version": 1 + } +} \ No newline at end of file diff --git a/icons/macos/AppIcon.icns b/icons/macos/AppIcon.icns new file mode 100644 index 0000000000000000000000000000000000000000..55b68f19f51a36f921b0bd0bc43b641756707800 Binary files /dev/null and b/icons/macos/AppIcon.icns differ diff --git a/icons/web/README.txt b/icons/web/README.txt new file mode 100644 index 0000000000000000000000000000000000000000..3bdd02f56182c7659adceb5a524f6a184b519dd8 --- /dev/null +++ b/icons/web/README.txt @@ -0,0 +1,18 @@ +Add this to your HTML : + + + + +Add this to your app's manifest.json: + + ... + { + "icons": [ + { "src": "/favicon.ico", "type": "image/x-icon", "sizes": "16x16 32x32" }, + { "src": "/icon-192.png", "type": "image/png", "sizes": "192x192" }, + { "src": "/icon-512.png", "type": "image/png", "sizes": "512x512" }, + { "src": "/icon-192-maskable.png", "type": "image/png", "sizes": "192x192", "purpose": "maskable" }, + { "src": "/icon-512-maskable.png", "type": "image/png", "sizes": "512x512", "purpose": "maskable" } + ] + } + ... diff --git a/icons/web/apple-touch-icon.png b/icons/web/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..131a13252226131c1a13bf7d877253f70757de22 Binary files /dev/null and b/icons/web/apple-touch-icon.png differ diff --git a/icons/web/favicon.ico b/icons/web/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..6c0c76b30425f00ff91bcbd1822cc379103fa0e9 Binary files /dev/null and b/icons/web/favicon.ico differ diff --git a/icons/web/icon-192-maskable.png b/icons/web/icon-192-maskable.png new file mode 100644 index 0000000000000000000000000000000000000000..587ca3afbbd4f59aa29c8e3c854a01bea5c57b8e Binary files /dev/null and b/icons/web/icon-192-maskable.png differ diff --git a/icons/web/icon-192.png b/icons/web/icon-192.png new file mode 100644 index 0000000000000000000000000000000000000000..dc57bdf20f83ce147f818d4ced29174cac0c816a Binary files /dev/null and b/icons/web/icon-192.png differ diff --git a/icons/web/icon-512-maskable.png b/icons/web/icon-512-maskable.png new file mode 100644 index 0000000000000000000000000000000000000000..4156cc21a3ae98ca49b9ee1195ae4ae7af054995 Binary files /dev/null and b/icons/web/icon-512-maskable.png differ diff --git a/icons/web/icon-512.png b/icons/web/icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..6e3d8ad1a0278cb9d61d8801a42ee517a300ba83 Binary files /dev/null and b/icons/web/icon-512.png differ diff --git a/pom.xml b/pom.xml index 3aa53fe594d2c921fc80056bee6e391e88263e01..bd402374a29955e31c22b1cb1f047577679b4d96 100644 --- a/pom.xml +++ b/pom.xml @@ -6,12 +6,31 @@ com.fangxuele.tool WePush - 5.0.4 + 5.0.5 jar WePush https://github.com/rememberber/WePush + + + alimaven + http://maven.aliyun.com/nexus/content/groups/public/ + + + mvnrepository.com + https://mvnrepository.com + + + jitpack.io + https://jitpack.io + + + oss.sonatype.org + https://oss.sonatype.org/content/repositories/snapshots/ + + + UTF-8 UTF-8 @@ -38,7 +57,7 @@ 2.3 1.18.30 3.5.13 - 3.42.0.1 + 3.43.0.0 4.13.1 4.1.4 3.4.5 @@ -47,9 +66,9 @@ 1.1.0 0.10.134 7.3.0 - 3.3 - 3.3 - 3.3 + 3.5.2 + 3.5.2 + 3.5.2 2.6.0 3.1.847 @@ -440,7 +459,7 @@ io.github.fvarrui javapackager - 1.7.4 + 1.7.5 true com.fangxuele.tool.push.App @@ -489,19 +508,23 @@ - - bundling-for-mac - package - - package - - - mac - true - jdk.crypto.ec,jdk.charsets - false - - + + bundling-for-mac + package + + package + + + mac + true + + rememberber@163.com + UNIVERSAL + + jdk.crypto.ec,jdk.charsets + false + + diff --git a/src/main/java/com/fangxuele/tool/push/App.java b/src/main/java/com/fangxuele/tool/push/App.java index fa3ebe63cae184563ec652afa11888c0dbe88697..4b6ab11d19650e1226d81987d10c7c6b50029d54 100644 --- a/src/main/java/com/fangxuele/tool/push/App.java +++ b/src/main/java/com/fangxuele/tool/push/App.java @@ -49,6 +49,7 @@ public class App { System.setProperty("apple.awt.application.name", UiConsts.APP_NAME); System.setProperty("com.apple.mrj.application.apple.menu.about.name", UiConsts.APP_NAME); System.setProperty("apple.awt.application.appearance", "system"); + System.setProperty("flatlaf.useRoundedPopupBorder", "true"); FlatDesktop.setAboutHandler(() -> { try { diff --git a/src/main/java/com/fangxuele/tool/push/bean/TemplateData.java b/src/main/java/com/fangxuele/tool/push/bean/TemplateData.java index 6e469665a0f78e4a7be6031d0b0b11c9d2ff3ac8..40435f35eca87f4c138d360febded5787a6f0487 100644 --- a/src/main/java/com/fangxuele/tool/push/bean/TemplateData.java +++ b/src/main/java/com/fangxuele/tool/push/bean/TemplateData.java @@ -3,8 +3,6 @@ package com.fangxuele.tool.push.bean; import lombok.Getter; import lombok.Setter; -import java.io.Serializable; - /** *
  * 模板数据
@@ -15,7 +13,7 @@ import java.io.Serializable;
  */
 @Getter
 @Setter
-public class TemplateData implements Serializable {
+public class TemplateData {
 
     private String name;
 
diff --git a/src/main/java/com/fangxuele/tool/push/bean/UserCase.java b/src/main/java/com/fangxuele/tool/push/bean/UserCase.java
index 0c4b849e6f199ed00b8d857588f81f8406842ad6..43fa9b3dcca1b84366e6528fa15b0c636ceb4d9d 100644
--- a/src/main/java/com/fangxuele/tool/push/bean/UserCase.java
+++ b/src/main/java/com/fangxuele/tool/push/bean/UserCase.java
@@ -2,8 +2,6 @@ package com.fangxuele.tool.push.bean;
 
 import lombok.Data;
 
-import java.io.Serializable;
-
 /**
  * 
  * 用户案例
@@ -13,9 +11,7 @@ import java.io.Serializable;
  * @since 2019/4/20.
  */
 @Data
-public class UserCase implements Serializable {
-
-    private static final long serialVersionUID = 2829237163275443844L;
+public class UserCase {
 
     private String qrCodeUrl;
 
diff --git a/src/main/java/com/fangxuele/tool/push/bean/VersionSummary.java b/src/main/java/com/fangxuele/tool/push/bean/VersionSummary.java
index eb1a8847780532d0ba728a270c7678023ff8dad3..a4825aa8e1cbf3eecff6e7e7e87ac330cd4ea7df 100644
--- a/src/main/java/com/fangxuele/tool/push/bean/VersionSummary.java
+++ b/src/main/java/com/fangxuele/tool/push/bean/VersionSummary.java
@@ -2,7 +2,6 @@ package com.fangxuele.tool.push.bean;
 
 import lombok.Data;
 
-import java.io.Serializable;
 import java.util.List;
 
 /**
@@ -14,9 +13,7 @@ import java.util.List;
  * @since 2019/4/20.
  */
 @Data
-public class VersionSummary implements Serializable {
-
-    private static final long serialVersionUID = 4637273116136790267L;
+public class VersionSummary {
 
     /**
      * 当前版本
@@ -42,9 +39,7 @@ public class VersionSummary implements Serializable {
      * @since 2019/4/20.
      */
     @Data
-    public static class Version implements Serializable {
-
-        private static final long serialVersionUID = 4637273116136790268L;
+    public static class Version {
 
         private String version;
 
diff --git a/src/main/java/com/fangxuele/tool/push/bean/msg/HttpMsg.java b/src/main/java/com/fangxuele/tool/push/bean/msg/HttpMsg.java
index 7519154293d9b0e4f84b40adf6ab2ffaf164dade..6a2d25384da1aa9da21781abeafa8db98be03474 100644
--- a/src/main/java/com/fangxuele/tool/push/bean/msg/HttpMsg.java
+++ b/src/main/java/com/fangxuele/tool/push/bean/msg/HttpMsg.java
@@ -4,7 +4,6 @@ import lombok.Getter;
 import lombok.Setter;
 import lombok.ToString;
 
-import java.io.Serializable;
 import java.net.HttpCookie;
 import java.util.List;
 import java.util.Map;
@@ -20,9 +19,7 @@ import java.util.Map;
 @Getter
 @Setter
 @ToString
-public class HttpMsg implements Serializable {
-
-    private static final long serialVersionUID = 114436270588113296L;
+public class HttpMsg {
 
     private String url;
 
diff --git a/src/main/java/com/fangxuele/tool/push/bean/msg/MailMsg.java b/src/main/java/com/fangxuele/tool/push/bean/msg/MailMsg.java
index 4fb3dbc263175dbc04192f1bd593f7c7280c2d71..c935fab807cebb872a2da8ca5a6f2246f9f6bebc 100644
--- a/src/main/java/com/fangxuele/tool/push/bean/msg/MailMsg.java
+++ b/src/main/java/com/fangxuele/tool/push/bean/msg/MailMsg.java
@@ -5,7 +5,6 @@ import lombok.Setter;
 import lombok.ToString;
 
 import java.io.File;
-import java.io.Serializable;
 import java.util.List;
 
 /**
@@ -19,9 +18,7 @@ import java.util.List;
 @Getter
 @Setter
 @ToString
-public class MailMsg implements Serializable {
-
-    private static final long serialVersionUID = 7269816872586216264L;
+public class MailMsg {
 
     /**
      * 标题
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TAccount.java b/src/main/java/com/fangxuele/tool/push/domain/TAccount.java
index b04047d06eb21762c3f13fe99c7b5f734077ec55..a61859bfb17b457f3885d01c2e5968271b59fa75 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TAccount.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TAccount.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TAccount implements Serializable {
+public class TAccount {
     private Integer id;
 
     private Integer msgType;
@@ -17,8 +15,6 @@ public class TAccount implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public Integer getId() {
         return id;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsg.java b/src/main/java/com/fangxuele/tool/push/domain/TMsg.java
index b800d814778d81bb854857357573bd4f143f049a..1b64184d4feea55aca9df8b79f74bbe6d6e76b29 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsg.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsg.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TMsg implements Serializable {
+public class TMsg {
     private Integer id;
 
     private Integer msgType;
@@ -21,8 +19,6 @@ public class TMsg implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public Integer getId() {
         return id;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgDing.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgDing.java
index cdd5c4365f4647285d91d2f094c9f286cb8ecf1a..cae1cc89cd64a0520bb3577b76e9914a621a19c1 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgDing.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgDing.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TMsgDing implements Serializable {
+public class TMsgDing {
 
     private String radioType;
 
@@ -22,8 +20,6 @@ public class TMsgDing implements Serializable {
 
     private String btnUrl;
 
-    private static final long serialVersionUID = 1L;
-
     public String getRadioType() {
         return radioType;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgHttp.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgHttp.java
index 8b07dc851e911f1e8185f31ee0480f75182e5d06..d4a2927c5dd85c1dea2c6e7ca186c95ee7c31cce 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgHttp.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgHttp.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TMsgHttp implements Serializable {
+public class TMsgHttp {
 
     private String method;
 
@@ -18,8 +16,6 @@ public class TMsgHttp implements Serializable {
 
     private String bodyType;
 
-    private static final long serialVersionUID = 1L;
-
     public String getMethod() {
         return method;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgKefu.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgKefu.java
index a9f05f85e06cd9c153af7b2ed8bfaf19cc48fd23..f4c4742dc9f6a0519fa0f2c233e61be484ca5362 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgKefu.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgKefu.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TMsgKefu implements Serializable {
+public class TMsgKefu {
 
     private String kefuMsgType;
 
@@ -28,8 +26,6 @@ public class TMsgKefu implements Serializable {
 
     private String thumbMediaId;
 
-    private static final long serialVersionUID = 1L;
-
     public String getKefuMsgType() {
         return kefuMsgType;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgKefuPriority.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgKefuPriority.java
index 03561e1c85b037fe4d24d7abd2e2bab00c3d0d2a..0d91834898860eb6338318b9bf4d9482cf673bf3 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgKefuPriority.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgKefuPriority.java
@@ -2,10 +2,9 @@ package com.fangxuele.tool.push.domain;
 
 import com.fangxuele.tool.push.bean.TemplateData;
 
-import java.io.Serializable;
 import java.util.List;
 
-public class TMsgKefuPriority implements Serializable {
+public class TMsgKefuPriority {
     private String templateId;
 
     private String url;
@@ -34,8 +33,6 @@ public class TMsgKefuPriority implements Serializable {
 
     private List templateDataList;
 
-    private static final long serialVersionUID = 1L;
-
     public String getTemplateId() {
         return templateId;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgMaSubscribe.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgMaSubscribe.java
index 2ae8aed9c7fbc877f809820cc70d6234649e8d09..4f16b8a38dd8dd6f87f829331df97b3b7afeb9b4 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgMaSubscribe.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgMaSubscribe.java
@@ -2,18 +2,15 @@ package com.fangxuele.tool.push.domain;
 
 import com.fangxuele.tool.push.bean.TemplateData;
 
-import java.io.Serializable;
 import java.util.List;
 
-public class TMsgMaSubscribe implements Serializable {
+public class TMsgMaSubscribe {
     private String templateId;
 
     private String page;
 
     List templateDataList;
 
-    private static final long serialVersionUID = 1L;
-
     public String getTemplateId() {
         return templateId;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgMail.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgMail.java
index 2fbd3142d3aeed707e7fb98d099a442400eda07d..21bca95f47bd7eedd814660601d7af5659a170eb 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgMail.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgMail.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TMsgMail implements Serializable {
+public class TMsgMail {
 
     private String title;
 
@@ -12,8 +10,6 @@ public class TMsgMail implements Serializable {
 
     private String content;
 
-    private static final long serialVersionUID = 1L;
-
     public String getTitle() {
         return title;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgMpSubscribe.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgMpSubscribe.java
index 7d4e5f5eebfd2f292cce2c3c64c29b3ea68f7e82..2425b1f1a0b75e58e25825822ccc5947c6296de0 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgMpSubscribe.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgMpSubscribe.java
@@ -2,10 +2,9 @@ package com.fangxuele.tool.push.domain;
 
 import com.fangxuele.tool.push.bean.TemplateData;
 
-import java.io.Serializable;
 import java.util.List;
 
-public class TMsgMpSubscribe implements Serializable {
+public class TMsgMpSubscribe {
 
     private String templateId;
 
@@ -17,8 +16,6 @@ public class TMsgMpSubscribe implements Serializable {
 
     List templateDataList;
 
-    private static final long serialVersionUID = 1L;
-
     public String getTemplateId() {
         return templateId;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgMpTemplate.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgMpTemplate.java
index 480290b8c25dc25f270ac0b21914a2640b5a1647..6ab2b61cca38593ec085e1aabee0b652d797ae56 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgMpTemplate.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgMpTemplate.java
@@ -2,10 +2,9 @@ package com.fangxuele.tool.push.domain;
 
 import com.fangxuele.tool.push.bean.TemplateData;
 
-import java.io.Serializable;
 import java.util.List;
 
-public class TMsgMpTemplate implements Serializable {
+public class TMsgMpTemplate {
 
     private String templateId;
 
@@ -17,8 +16,6 @@ public class TMsgMpTemplate implements Serializable {
 
     private List templateDataList;
 
-    private static final long serialVersionUID = 1L;
-
     public String getTemplateId() {
         return templateId;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgSms.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgSms.java
index 971e4bfcfdc55c22f147037e44efc70ffef380c9..01250949e30fe0b5913539ec033cba0b8d01b27d 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgSms.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgSms.java
@@ -2,10 +2,9 @@ package com.fangxuele.tool.push.domain;
 
 import com.fangxuele.tool.push.bean.TemplateData;
 
-import java.io.Serializable;
 import java.util.List;
 
-public class TMsgSms implements Serializable {
+public class TMsgSms {
 
     private String templateId;
 
@@ -13,8 +12,6 @@ public class TMsgSms implements Serializable {
 
     private List templateDataList;
 
-    private static final long serialVersionUID = 1L;
-
     public String getTemplateId() {
         return templateId;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgWxCp.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgWxCp.java
index 722919f5395b5f4dd1e895e7f35f15cb910f3e06..da03a67f3f8bf20eefaba42934d9aad0bad1c3d3 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgWxCp.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgWxCp.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TMsgWxCp implements Serializable {
+public class TMsgWxCp {
 
     private String cpMsgType;
 
@@ -18,8 +16,6 @@ public class TMsgWxCp implements Serializable {
 
     private String btnTxt;
 
-    private static final long serialVersionUID = 1L;
-
     public String getCpMsgType() {
         return cpMsgType;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TMsgWxUniform.java b/src/main/java/com/fangxuele/tool/push/domain/TMsgWxUniform.java
index b2bbaf8e343a7bb584993cd75c1c0ad1ede051cf..851cd09e90394a2c7f31c4506ad3d79c5c59b399 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TMsgWxUniform.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TMsgWxUniform.java
@@ -2,10 +2,9 @@ package com.fangxuele.tool.push.domain;
 
 import com.fangxuele.tool.push.bean.TemplateData;
 
-import java.io.Serializable;
 import java.util.List;
 
-public class TMsgWxUniform implements Serializable {
+public class TMsgWxUniform {
 
     private String mpTemplateId;
 
@@ -25,9 +24,6 @@ public class TMsgWxUniform implements Serializable {
 
     List templateDataListMa;
 
-    private static final long serialVersionUID = 1L;
-
-
     public String getMpTemplateId() {
         return mpTemplateId;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TPeople.java b/src/main/java/com/fangxuele/tool/push/domain/TPeople.java
index 4a756277377428065dcd0c5e636df24e593dcd01..edd9153f6876bc2e9fcbc2a54adea2e6f08f139d 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TPeople.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TPeople.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TPeople implements Serializable {
+public class TPeople {
     private Integer id;
 
     private Integer msgType;
@@ -19,8 +17,6 @@ public class TPeople implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public Integer getId() {
         return id;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TPeopleData.java b/src/main/java/com/fangxuele/tool/push/domain/TPeopleData.java
index 5be12defed6fd100e3e1dacefc87c91e0bd094de..d42e165a140c829987024dba2776c52fa71b26dc 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TPeopleData.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TPeopleData.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TPeopleData implements Serializable {
+public class TPeopleData {
     private Integer id;
 
     private Integer peopleId;
@@ -21,8 +19,6 @@ public class TPeopleData implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public Integer getId() {
         return id;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TPeopleImportConfig.java b/src/main/java/com/fangxuele/tool/push/domain/TPeopleImportConfig.java
index 9583b7e90b94a7598f2b756277fbf8bd489d48f4..8142476959852fdc88b4f1d1bb179d826fd87307 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TPeopleImportConfig.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TPeopleImportConfig.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TPeopleImportConfig implements Serializable {
+public class TPeopleImportConfig {
     private Integer id;
 
     private Integer peopleId;
@@ -25,8 +23,6 @@ public class TPeopleImportConfig implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public Integer getId() {
         return id;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TTask.java b/src/main/java/com/fangxuele/tool/push/domain/TTask.java
index 6aa588940b55a5b9cbc9a7ec6795e20fbb2ea6aa..930b2297ba52619d5db65387d73769765779d301 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TTask.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TTask.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TTask implements Serializable {
+public class TTask {
     private Integer id;
 
     private String title;
@@ -47,8 +45,6 @@ public class TTask implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public Integer getId() {
         return id;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TTaskHis.java b/src/main/java/com/fangxuele/tool/push/domain/TTaskHis.java
index 82735df07bd654548a24cea7fb3a5940b3b14cf2..e261edf7476fdb52341bf41b1f6774a1d7e59226 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TTaskHis.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TTaskHis.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TTaskHis implements Serializable {
+public class TTaskHis {
     private Integer id;
 
     private Integer taskId;
@@ -37,8 +35,6 @@ public class TTaskHis implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public Integer getId() {
         return id;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TTemplateData.java b/src/main/java/com/fangxuele/tool/push/domain/TTemplateData.java
index fd07a7d0dc7eb2ef8203a3f254db74928c8bfbe1..1c871ec37ce2084b21d495c30cd1ef0d28c7eb34 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TTemplateData.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TTemplateData.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TTemplateData implements Serializable {
+public class TTemplateData {
     private Integer id;
 
     private Integer msgType;
@@ -19,8 +17,6 @@ public class TTemplateData implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public Integer getId() {
         return id;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/domain/TWxMpUser.java b/src/main/java/com/fangxuele/tool/push/domain/TWxMpUser.java
index 5b63d772717c5914c91efa98e6662534290f13f5..35f8c4c514c563867b390e95e7a372226d8d9b5e 100644
--- a/src/main/java/com/fangxuele/tool/push/domain/TWxMpUser.java
+++ b/src/main/java/com/fangxuele/tool/push/domain/TWxMpUser.java
@@ -1,8 +1,6 @@
 package com.fangxuele.tool.push.domain;
 
-import java.io.Serializable;
-
-public class TWxMpUser implements Serializable {
+public class TWxMpUser {
     private String openId;
 
     private String nickname;
@@ -39,8 +37,6 @@ public class TWxMpUser implements Serializable {
 
     private String modifiedTime;
 
-    private static final long serialVersionUID = 1L;
-
     public String getOpenId() {
         return openId;
     }
diff --git a/src/main/java/com/fangxuele/tool/push/ui/Init.java b/src/main/java/com/fangxuele/tool/push/ui/Init.java
index 9dd62de44c3d61812a4c12fa2f2e090d64723ff0..cdd904c3b4a9c1a4f2f43004a79bc7e0dfe0b17c 100644
--- a/src/main/java/com/fangxuele/tool/push/ui/Init.java
+++ b/src/main/java/com/fangxuele/tool/push/ui/Init.java
@@ -60,7 +60,7 @@ public class Init {
             if (SystemUtil.isMacOs()) {
                 fontSize = 13;
             } else {
-                fontSize = (int) (UIUtil.getScreenScale() * fontSize);
+                fontSize = 12;
             }
             App.config.setFontSize(fontSize);
             App.config.save();
@@ -179,6 +179,7 @@ public class Init {
      */
     public static void initAllTab() {
         MessageTypeForm.init();
+        ThreadUtil.execute(AboutForm::init);
         ThreadUtil.execute(HelpForm::init);
 //        ThreadUtil.execute(UserCaseForm::init);
         ThreadUtil.execute(AccountManageForm::init);
diff --git a/src/main/java/com/fangxuele/tool/push/ui/UiConsts.java b/src/main/java/com/fangxuele/tool/push/ui/UiConsts.java
index b42ce701d4326889f74cd43dc2868784066efccc..5564dff27ed95609ae23a5240ead3cc3acf5fc44 100644
--- a/src/main/java/com/fangxuele/tool/push/ui/UiConsts.java
+++ b/src/main/java/com/fangxuele/tool/push/ui/UiConsts.java
@@ -19,7 +19,7 @@ public class UiConsts {
      * 软件名称,版本
      */
     public final static String APP_NAME = "WePush";
-    public final static String APP_VERSION = "v_5.0.4";
+    public final static String APP_VERSION = "v_5.0.5";
 
     public static final int TABLE_ROW_HEIGHT = 30;
 
diff --git a/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/DingImportConfig.java b/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/DingImportConfig.java
index 3f708451cff0ae204803e9dbbbaab5ed27459cf9..a3e96f974e688c7ee1b6e3c41924f2ed3c061698 100644
--- a/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/DingImportConfig.java
+++ b/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/DingImportConfig.java
@@ -2,12 +2,8 @@ package com.fangxuele.tool.push.ui.dialog.importway.config;
 
 import lombok.Data;
 
-import java.io.Serializable;
-
 @Data
-public class DingImportConfig implements Serializable {
-
-    private static final long serialVersionUID = 870694763462632807L;
+public class DingImportConfig {
 
     /**
      * 1:全部,2:按部门
diff --git a/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/WxCpImportConfig.java b/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/WxCpImportConfig.java
index 862f6d83e1abababa7cbe8aa4f821b7001bc46f4..b97f639c7de08547a9217eb0b462e414d3c41c15 100644
--- a/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/WxCpImportConfig.java
+++ b/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/WxCpImportConfig.java
@@ -2,12 +2,8 @@ package com.fangxuele.tool.push.ui.dialog.importway.config;
 
 import lombok.Data;
 
-import java.io.Serializable;
-
 @Data
-public class WxCpImportConfig implements Serializable {
-
-    private static final long serialVersionUID = 870694763462632807L;
+public class WxCpImportConfig {
 
     /**
      * 1:全部,2:按标签,3:按部门
diff --git a/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/WxMpImportConfig.java b/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/WxMpImportConfig.java
index 7246401f81b478168fb39c92a08af1316af6be96..c55c05135e3a21048f258afa882b55276c1f705a 100644
--- a/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/WxMpImportConfig.java
+++ b/src/main/java/com/fangxuele/tool/push/ui/dialog/importway/config/WxMpImportConfig.java
@@ -2,12 +2,8 @@ package com.fangxuele.tool.push.ui.dialog.importway.config;
 
 import lombok.Data;
 
-import java.io.Serializable;
-
 @Data
-public class WxMpImportConfig implements Serializable {
-
-    private static final long serialVersionUID = 870694763462632807L;
+public class WxMpImportConfig {
 
     /**
      * 1:全部,2:标签取并集,3:标签取交集
diff --git a/src/main/java/com/fangxuele/tool/push/ui/form/AboutForm.form b/src/main/java/com/fangxuele/tool/push/ui/form/AboutForm.form
new file mode 100644
index 0000000000000000000000000000000000000000..487ad2b6fc9ac8e14c8698c70c6900ebef6d84f5
--- /dev/null
+++ b/src/main/java/com/fangxuele/tool/push/ui/form/AboutForm.form
@@ -0,0 +1,103 @@
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/java/com/fangxuele/tool/push/ui/form/AboutForm.java b/src/main/java/com/fangxuele/tool/push/ui/form/AboutForm.java new file mode 100644 index 0000000000000000000000000000000000000000..cc86b5808919eb942817e5b0a5e9a97e3e847dc7 --- /dev/null +++ b/src/main/java/com/fangxuele/tool/push/ui/form/AboutForm.java @@ -0,0 +1,171 @@ +package com.fangxuele.tool.push.ui.form; + +import com.fangxuele.tool.push.App; +import com.fangxuele.tool.push.ui.UiConsts; +import com.intellij.uiDesigner.core.GridConstraints; +import com.intellij.uiDesigner.core.GridLayoutManager; +import lombok.Getter; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.exception.ExceptionUtils; + +import javax.imageio.ImageIO; +import javax.swing.*; +import javax.swing.plaf.FontUIResource; +import javax.swing.text.StyleContext; +import java.awt.*; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.net.URL; +import java.util.Locale; + +/** + *
+ * AboutForm
+ * 
+ * + * @author RememBerBer + * @since 2019/5/6. + */ +@Getter +@Slf4j +public class AboutForm { + private JPanel aboutPanel; + private JLabel sloganLabel; + private JLabel qrCodeLabel; + private JLabel versionLabel; + private JLabel checkUpdateLabel; + private JLabel companyLabel; + private JLabel helpDocLabel; + private JLabel pushTotalLabel; + + private static AboutForm aboutForm; + + private AboutForm() { + } + + public static AboutForm getInstance() { + if (aboutForm == null) { + aboutForm = new AboutForm(); + } + return aboutForm; + } + + public static void init() { + getInstance().getPushTotalLabel().setText("已累计为您推送 " + App.config.getPushTotal() + " 条消息"); + aboutForm.getAboutPanel().updateUI(); + // 设置版本 + aboutForm.getVersionLabel().setText(UiConsts.APP_VERSION); + + // 初始化二维码 + aboutForm.initQrCode(); + } + + /** + * 初始化二维码 + */ + private void initQrCode() { + try { + URL url = new URL(UiConsts.QR_CODE_URL); + BufferedImage image = ImageIO.read(url); + qrCodeLabel.setIcon(new ImageIcon(image)); + } catch (IOException e) { + e.printStackTrace(); + log.error(ExceptionUtils.getStackTrace(e)); + } + + } + + { +// GUI initializer generated by IntelliJ IDEA GUI Designer +// >>> IMPORTANT!! <<< +// DO NOT EDIT OR ADD ANY CODE HERE! + $$$setupUI$$$(); + } + + /** + * Method generated by IntelliJ IDEA GUI Designer + * >>> IMPORTANT!! <<< + * DO NOT edit this method OR call it in your code! + * + * @noinspection ALL + */ + private void $$$setupUI$$$() { + aboutPanel = new JPanel(); + aboutPanel.setLayout(new GridLayoutManager(9, 2, new Insets(0, 0, 0, 0), -1, -1)); + sloganLabel = new JLabel(); + sloganLabel.setIcon(new ImageIcon(getClass().getResource("/icon/logo-128.png"))); + sloganLabel.setText(""); + aboutPanel.add(sloganLabel, new GridConstraints(0, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + final JLabel label1 = new JLabel(); + label1.setEnabled(true); + Font label1Font = this.$$$getFont$$$(null, -1, 36, label1.getFont()); + if (label1Font != null) label1.setFont(label1Font); + label1.setText("WePush"); + aboutPanel.add(label1, new GridConstraints(1, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + qrCodeLabel = new JLabel(); + qrCodeLabel.setIcon(new ImageIcon(getClass().getResource("/icon/wx-zanshang.jpg"))); + qrCodeLabel.setText(""); + qrCodeLabel.setToolTipText("感谢您的鼓励和支持!"); + aboutPanel.add(qrCodeLabel, new GridConstraints(3, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + versionLabel = new JLabel(); + Font versionLabelFont = this.$$$getFont$$$("Microsoft YaHei UI", -1, -1, versionLabel.getFont()); + if (versionLabelFont != null) versionLabel.setFont(versionLabelFont); + versionLabel.setText("v_0.0.0"); + aboutPanel.add(versionLabel, new GridConstraints(6, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + checkUpdateLabel = new JLabel(); + Font checkUpdateLabelFont = this.$$$getFont$$$(null, Font.BOLD, -1, checkUpdateLabel.getFont()); + if (checkUpdateLabelFont != null) checkUpdateLabel.setFont(checkUpdateLabelFont); + checkUpdateLabel.setText("检查更新"); + aboutPanel.add(checkUpdateLabel, new GridConstraints(7, 0, 1, 1, GridConstraints.ANCHOR_EAST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + companyLabel = new JLabel(); + Font companyLabelFont = this.$$$getFont$$$("Microsoft YaHei UI", -1, -1, companyLabel.getFont()); + if (companyLabelFont != null) companyLabel.setFont(companyLabelFont); + companyLabel.setText("Fork me on Gitee: https://gitee.com/zhoubochina/WePush"); + aboutPanel.add(companyLabel, new GridConstraints(8, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + helpDocLabel = new JLabel(); + Font helpDocLabelFont = this.$$$getFont$$$(null, Font.BOLD, -1, helpDocLabel.getFont()); + if (helpDocLabelFont != null) helpDocLabel.setFont(helpDocLabelFont); + helpDocLabel.setText("| 帮助文档"); + aboutPanel.add(helpDocLabel, new GridConstraints(7, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + pushTotalLabel = new JLabel(); + pushTotalLabel.setText("已累计为您推送 0 条消息"); + pushTotalLabel.setToolTipText(" 自3.4.0版本开始算起"); + aboutPanel.add(pushTotalLabel, new GridConstraints(4, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + final JLabel label2 = new JLabel(); + label2.setText("专注批量推送的小而美的工具"); + aboutPanel.add(label2, new GridConstraints(2, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + final JLabel label3 = new JLabel(); + label3.setText("Proudly by RememBerBer 周波"); + aboutPanel.add(label3, new GridConstraints(5, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_NONE, GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false)); + } + + /** + * @noinspection ALL + */ + private Font $$$getFont$$$(String fontName, int style, int size, Font currentFont) { + if (currentFont == null) return null; + String resultName; + if (fontName == null) { + resultName = currentFont.getName(); + } else { + Font testFont = new Font(fontName, Font.PLAIN, 10); + if (testFont.canDisplay('a') && testFont.canDisplay('1')) { + resultName = fontName; + } else { + resultName = currentFont.getName(); + } + } + Font font = new Font(resultName, style >= 0 ? style : currentFont.getStyle(), size >= 0 ? size : currentFont.getSize()); + boolean isMac = System.getProperty("os.name", "").toLowerCase(Locale.ENGLISH).startsWith("mac"); + Font fontWithFallback = isMac ? new Font(font.getFamily(), font.getStyle(), font.getSize()) : new StyleContext().getFont(font.getFamily(), font.getStyle(), font.getSize()); + return fontWithFallback instanceof FontUIResource ? fontWithFallback : new FontUIResource(fontWithFallback); + } + + /** + * @noinspection ALL + */ + public JComponent $$$getRootComponent$$$() { + return aboutPanel; + } + +} diff --git a/src/main/java/com/fangxuele/tool/push/ui/form/MainWindow.form b/src/main/java/com/fangxuele/tool/push/ui/form/MainWindow.form index 387fc2c701592c00fa583ace878b613d7c8101ea..18c355b4c61e6f97b5fb89077b497a64cb1d2cb6 100644 --- a/src/main/java/com/fangxuele/tool/push/ui/form/MainWindow.form +++ b/src/main/java/com/fangxuele/tool/push/ui/form/MainWindow.form @@ -23,6 +23,15 @@ + + + + + + + + + diff --git a/src/main/java/com/fangxuele/tool/push/ui/form/MainWindow.java b/src/main/java/com/fangxuele/tool/push/ui/form/MainWindow.java index e780bc12f51ca0c16769862a07fc01c3809dce65..68a938463d888c29a2a095d54cb588b925ad4fd8 100644 --- a/src/main/java/com/fangxuele/tool/push/ui/form/MainWindow.java +++ b/src/main/java/com/fangxuele/tool/push/ui/form/MainWindow.java @@ -36,6 +36,7 @@ public class MainWindow { private JPanel peopleManagePanel; private JPanel peopleEditPanel; private JPanel taskPanel; + private JPanel aboutPanel; private static MainWindow mainWindow; @@ -60,6 +61,7 @@ public class MainWindow { gridLayoutManager.setMargin(new Insets(25, 0, 0, 0)); } + mainWindow.getAboutPanel().add(AboutForm.getInstance().getAboutPanel(), GRID_CONSTRAINTS); mainWindow.getAccountPanel().setDividerLocation((int) (App.mainFrame.getWidth() / 5)); mainWindow.getMessagePanel().setDividerLocation((int) (App.mainFrame.getWidth() / 5)); mainWindow.getPeoplePanel().setDividerLocation((int) (App.mainFrame.getWidth() / 5)); @@ -98,6 +100,9 @@ public class MainWindow { if (tabbedPaneFont != null) tabbedPane.setFont(tabbedPaneFont); tabbedPane.setTabLayoutPolicy(1); mainPanel.add(tabbedPane, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, new Dimension(200, 200), null, 0, false)); + aboutPanel = new JPanel(); + aboutPanel.setLayout(new GridLayoutManager(1, 1, new Insets(0, 0, 0, 0), -1, -1)); + tabbedPane.addTab("WePush", aboutPanel); messageTypePanel = new JPanel(); messageTypePanel.setLayout(new GridLayoutManager(1, 1, new Insets(0, 0, 0, 0), -1, -1)); messageTypePanel.setMinimumSize(new Dimension(-1, -1)); diff --git a/src/main/java/com/fangxuele/tool/push/ui/form/msg/HttpMsgForm.java b/src/main/java/com/fangxuele/tool/push/ui/form/msg/HttpMsgForm.java index 3ae5aed521d391f86c48f10fc99d82c759d35ebf..123925390f4f4aea2eeb999424edd400508ce879 100644 --- a/src/main/java/com/fangxuele/tool/push/ui/form/msg/HttpMsgForm.java +++ b/src/main/java/com/fangxuele/tool/push/ui/form/msg/HttpMsgForm.java @@ -25,7 +25,6 @@ import javax.swing.table.DefaultTableModel; import javax.swing.table.TableColumnModel; import java.awt.*; import java.awt.event.ItemEvent; -import java.io.Serializable; import java.util.ArrayList; import java.util.HashSet; import java.util.List; @@ -504,8 +503,7 @@ public class HttpMsgForm implements IMsgForm { @Getter @Setter - public static class NameValueObject implements Serializable { - private static final long serialVersionUID = -3828939498243146605L; + public static class NameValueObject { private String name; @@ -514,9 +512,7 @@ public class HttpMsgForm implements IMsgForm { @Getter @Setter - public static class CookieObject implements Serializable { - - private static final long serialVersionUID = 810193087944524307L; + public static class CookieObject { private String name; diff --git a/src/main/java/com/fangxuele/tool/push/ui/frame/MainFrame.java b/src/main/java/com/fangxuele/tool/push/ui/frame/MainFrame.java index bc284f8dd67320dd1008f249719f00793be7b090..41c8367a84541223039a80a5d04c3a5930ea7f28 100644 --- a/src/main/java/com/fangxuele/tool/push/ui/frame/MainFrame.java +++ b/src/main/java/com/fangxuele/tool/push/ui/frame/MainFrame.java @@ -58,6 +58,7 @@ public class MainFrame extends JFrame { * 添加事件监听 */ public void addListeners() { + ThreadUtil.execute(AboutListener::addListeners); ThreadUtil.execute(MessageTypeListener::addListeners); ThreadUtil.execute(HelpListener::addListeners); ThreadUtil.execute(AccountManageListener::addListeners); diff --git a/src/main/java/com/fangxuele/tool/push/ui/listener/AboutListener.java b/src/main/java/com/fangxuele/tool/push/ui/listener/AboutListener.java new file mode 100644 index 0000000000000000000000000000000000000000..239460f382548b7767f6ff8ecfbc7403d234c08d --- /dev/null +++ b/src/main/java/com/fangxuele/tool/push/ui/listener/AboutListener.java @@ -0,0 +1,116 @@ +package com.fangxuele.tool.push.ui.listener; + +import cn.hutool.core.thread.ThreadUtil; +import cn.hutool.http.HttpUtil; +import cn.hutool.json.JSONUtil; +import cn.hutool.log.Log; +import cn.hutool.log.LogFactory; +import com.fangxuele.tool.push.ui.UiConsts; +import com.fangxuele.tool.push.ui.form.AboutForm; +import com.fangxuele.tool.push.ui.form.MainWindow; +import com.fangxuele.tool.push.util.UpgradeUtil; +import org.apache.commons.lang3.StringUtils; + +import javax.imageio.ImageIO; +import javax.swing.*; +import java.awt.*; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.awt.image.BufferedImage; +import java.io.IOException; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.util.Map; + +/** + *
+ * AboutPanel Listener
+ * 
+ * + * @author RememBerBer + * @since 2017/6/23. + */ +public class AboutListener { + private static final Log logger = LogFactory.get(); + + public static void addListeners() { + AboutForm aboutForm = AboutForm.getInstance(); + aboutForm.getCompanyLabel().addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + super.mousePressed(e); + Desktop desktop = Desktop.getDesktop(); + try { + desktop.browse(new URI("https://gitee.com/zhoubochina/WePush")); + } catch (IOException | URISyntaxException e1) { + e1.printStackTrace(); + } + } + + @Override + public void mouseEntered(MouseEvent e) { + super.mouseEntered(e); + e.getComponent().setCursor(new Cursor(Cursor.HAND_CURSOR)); + } + + }); + + // 检查更新 + aboutForm.getCheckUpdateLabel().addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + super.mousePressed(e); + ThreadUtil.execute(() -> UpgradeUtil.checkUpdate(false)); + } + + @Override + public void mouseEntered(MouseEvent e) { + super.mouseEntered(e); + e.getComponent().setCursor(new Cursor(Cursor.HAND_CURSOR)); + } + }); + + // 帮助文档 + aboutForm.getHelpDocLabel().addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + super.mousePressed(e); + Desktop desktop = Desktop.getDesktop(); + try { + desktop.browse(new URI("https://github.com/rememberber/WePush/wiki")); + } catch (IOException | URISyntaxException e1) { + e1.printStackTrace(); + } + } + + @Override + public void mouseEntered(MouseEvent e) { + super.mouseEntered(e); + e.getComponent().setCursor(new Cursor(Cursor.HAND_CURSOR)); + } + }); + } + + /** + * 初始化二维码 + */ + public static void initQrCode() { + String qrCodeContent = HttpUtil.get(UiConsts.QR_CODE_URL); + if (StringUtils.isNotEmpty(qrCodeContent)) { + Map urlMap = JSONUtil.toBean(qrCodeContent, Map.class); + JLabel qrCodeLabel = AboutForm.getInstance().getQrCodeLabel(); + + try { + URL url = new URL(urlMap.get("url")); + BufferedImage image = ImageIO.read(url); + qrCodeLabel.setIcon(new ImageIcon(image)); + } catch (IOException e) { + e.printStackTrace(); + logger.error(e); + } + + MainWindow.getInstance().getAboutPanel().updateUI(); + } + } +} diff --git a/src/main/resources/generatorConfig.xml b/src/main/resources/generatorConfig.xml index fd49a05cc7fc0397187b1929e1b52da79a2c3aea..68d8f8a8e6948e44a83c0f289a4192c0ac014409 100644 --- a/src/main/resources/generatorConfig.xml +++ b/src/main/resources/generatorConfig.xml @@ -7,9 +7,6 @@ - - - diff --git a/src/main/resources/version_summary.json b/src/main/resources/version_summary.json index 7e3694d2b6c9df01f8dc1692c381b571720c19f4..6d0049afe2f27a624158b48554391c0cd021d333 100644 --- a/src/main/resources/version_summary.json +++ b/src/main/resources/version_summary.json @@ -1,12 +1,13 @@ { - "currentVersion": "v_5.0.4", + "currentVersion": "v_5.0.5", "versionIndex": { "v_0.0.0": "0", "v_5.0.0": "1", "v_5.0.1": "2", "v_5.0.2": "3", "v_5.0.3": "4", - "v_5.0.4": "5" + "v_5.0.4": "5", + "v_5.0.5": "6" }, "versionDetailList": [ { @@ -38,6 +39,11 @@ "version": "v_5.0.4", "title": "修复微信企业号/企业微信导入用户时因性别参数不支持而报错的问题", "log": "● 修复微信企业号/企业微信导入用户时因性别参数不支持而报错的问题\n● 升级部分依赖\n" + }, + { + "version": "v_5.0.5", + "title": "修复macOS15下无法启动的问题", + "log": "● 修复macOS15下无法启动的问题\n● 调整macOS下的图标\n● 升级部分依赖\n" } ] } \ No newline at end of file