From b5c4e2ef8a506ef78516265e320d3cdc45e8613f Mon Sep 17 00:00:00 2001 From: rekoe Date: Mon, 21 Mar 2016 18:27:41 +0800 Subject: [PATCH] up --- pom.xml | 216 +++++------- src/main/java/com/rekoe/MainModule.java | 24 ++ src/main/java/com/rekoe/MvcSetup.java | 68 ++++ src/main/java/com/rekoe/domain/AuthType.java | 16 - .../java/com/rekoe/domain/CdkeyCategory.java | 64 ---- .../java/com/rekoe/domain/CdkeyEntity.java | 63 ---- src/main/java/com/rekoe/domain/CdkeyLog.java | 88 ----- .../java/com/rekoe/domain/GameServer.java | 222 ------------ src/main/java/com/rekoe/domain/Notice.java | 138 -------- .../java/com/rekoe/domain/OAuthClient.java | 64 ---- src/main/java/com/rekoe/domain/OAuthUser.java | 135 -------- .../java/com/rekoe/domain/OfficialServer.java | 120 ------- src/main/java/com/rekoe/domain/PayRefund.java | 111 ------ .../java/com/rekoe/domain/PlatformConfig.java | 90 ----- .../java/com/rekoe/domain/PlatformUser.java | 138 -------- src/main/java/com/rekoe/domain/ReportAds.java | 104 ------ .../java/com/rekoe/domain/ServerHistory.java | 102 ------ src/main/java/com/rekoe/domain/User.java | 17 +- .../java/com/rekoe/domain/VerifyServer.java | 111 ------ .../filter/ChectServerExitsActionFilter.java | 57 --- .../filter/ServerPermisionActionFilter.java | 75 ---- .../java/com/rekoe/mobile/AbstractParam.java | 8 - .../java/com/rekoe/mobile/AuthProvider.java | 11 - src/main/java/com/rekoe/mobile/Profile.java | 64 ---- .../mobile/exception/SignatureException.java | 56 --- .../SocialAuthConfigurationException.java | 57 --- .../mobile/exception/SocialAuthException.java | 56 --- .../SocialAuthManagerStateException.java | 41 --- .../mobile/provider/AbstractProvider.java | 199 ----------- .../mobile/provider/PlatformProvider.java | 27 -- .../provider/PlatformProviderFactory.java | 32 -- .../rekoe/mobile/provider/a91/A91Param.java | 40 --- .../mobile/provider/a91/A91Provider.java | 58 ---- .../mobile/provider/a91/A91ReturnParam.java | 53 --- .../mobile/provider/a91/A91UserInfo.java | 14 - .../mobile/provider/google/GoogleParam.java | 16 - .../provider/google/GoogleProvider.java | 20 -- .../mobile/provider/googlep/GooglePParam.java | 41 --- .../provider/googlep/GooglePProvider.java | 141 -------- .../mobile/provider/googlep/TokenStatus.java | 43 --- .../mobile/provider/guest/GuestParam.java | 45 --- .../mobile/provider/guest/GuestProvider.java | 26 -- .../com/rekoe/mobile/provider/hw/HwParam.java | 39 --- .../rekoe/mobile/provider/hw/HwProvider.java | 61 ---- .../rekoe/mobile/provider/hw/UserInfo.java | 84 ----- .../rekoe/mobile/provider/msdk/MSDKParam.java | 45 --- .../mobile/provider/msdk/MSDKProvider.java | 84 ----- .../mobile/provider/msdk/MSDKUserInfo.java | 204 ----------- .../mobile/provider/qihu360/QiHu360Param.java | 40 --- .../provider/qihu360/QiHu360Provider.java | 44 --- .../com/rekoe/mobile/provider/qq/QQParam.java | 64 ---- .../rekoe/mobile/provider/qq/QQProvider.java | 85 ----- .../rekoe/mobile/provider/qq/QQUserInfo.java | 208 ----------- .../com/rekoe/mobile/provider/rk/RKParam.java | 40 --- .../rekoe/mobile/provider/rk/RKProvider.java | 73 ---- .../com/rekoe/mobile/provider/sg/SGParam.java | 45 --- .../rekoe/mobile/provider/sg/SGProvider.java | 26 -- .../rekoe/mobile/provider/uc/UCResponse.java | 28 -- .../mobile/provider/uc/UCResponseData.java | 22 -- .../mobile/provider/uc/UCResponseState.java | 24 -- .../com/rekoe/mobile/provider/uc/UcParam.java | 43 --- .../rekoe/mobile/provider/uc/UcProvider.java | 108 ------ .../mobile/provider/xiaomi/XiaoMiParam.java | 55 --- .../provider/xiaomi/XiaoMiProvider.java | 59 ---- .../com/rekoe/module/AccessTokenModule.java | 117 ------- .../com/rekoe/module/AuthorizeAction.java | 149 -------- .../java/com/rekoe/module/BaseAction.java | 15 - src/main/java/com/rekoe/module/CdkeyBean.java | 63 ---- .../java/com/rekoe/module/ExchargeAction.java | 70 ---- .../java/com/rekoe/module/NoticeModule.java | 78 ----- .../com/rekoe/module/OAuthUserAction.java | 324 ------------------ .../com/rekoe/module/ReportAdsModule.java | 49 --- src/main/java/com/rekoe/module/Status.java | 28 -- src/main/java/com/rekoe/module/Test.java | 67 ---- .../java/com/rekoe/module/UserInfoAction.java | 124 ------- .../rekoe/module/admin/AdminAccountAct.java | 48 --- .../module/admin/AdminCdKeyCategoryAct.java | 107 ------ .../module/admin/AdminGameServerAct.java | 165 --------- .../rekoe/module/admin/AdminNoticeAct.java | 149 -------- .../module/admin/AdminOauthClientAct.java | 87 ----- .../rekoe/module/admin/AdminOauthUserAct.java | 52 --- .../rekoe/module/admin/AdminOfficialAct.java | 128 ------- .../admin/AdminPlatformConfigAction.java | 185 ---------- .../rekoe/module/admin/AdminReportAdsAct.java | 48 --- .../com/rekoe/module/admin/AdminUserAct.java | 35 -- .../rekoe/module/admin/AdminVerifyAct.java | 91 ----- .../com/rekoe/module/admin/PayRefundAct.java | 152 -------- .../com/rekoe/module/admin/WelcomeAct.java | 17 - .../module/facebook/FaceBookLoginAct.java | 179 ---------- .../facebook/FacebookSignedRequest.java | 125 ------- .../com/rekoe/module/facebook/ReFund.java | 38 -- .../rekoe/service/CdKeyCategoryService.java | 81 ----- .../com/rekoe/service/CdKeyLogService.java | 19 - .../java/com/rekoe/service/CdKeyService.java | 197 ----------- .../com/rekoe/service/GameServerService.java | 179 ---------- .../java/com/rekoe/service/NoticeService.java | 56 --- .../com/rekoe/service/OAuthClientService.java | 27 -- .../java/com/rekoe/service/OAuthService.java | 28 -- .../com/rekoe/service/OAuthServiceImpl.java | 59 ---- .../com/rekoe/service/OAuthUserService.java | 61 ---- .../rekoe/service/OAuthUserServiceImpl.java | 120 ------- .../rekoe/service/OauthClientServiceImpl.java | 62 ---- .../rekoe/service/OfficialServerService.java | 84 ----- .../com/rekoe/service/PasswordHelper.java | 51 --- .../com/rekoe/service/PayFefundService.java | 247 ------------- .../rekoe/service/PlatformConfigService.java | 40 --- .../service/PlatformProviderService.java | 41 --- .../rekoe/service/PlatformUserService.java | 43 --- .../com/rekoe/service/ReportAdsService.java | 30 -- .../rekoe/service/ServerHistoryService.java | 71 ---- .../rekoe/service/VerifyServerService.java | 29 -- .../shiro/realm/AbstractNutAuthoRealm.java | 20 +- .../java/com/rekoe/shiro/realm/AuthToken.java | 31 -- .../com/rekoe/shiro/realm/AuthTokenRealm.java | 68 ---- .../PlatformPermissionDirective.java | 41 --- .../web/freemarker/Sid2NameDirective.java | 38 -- 116 files changed, 185 insertions(+), 8780 deletions(-) create mode 100644 src/main/java/com/rekoe/MainModule.java create mode 100644 src/main/java/com/rekoe/MvcSetup.java delete mode 100644 src/main/java/com/rekoe/domain/AuthType.java delete mode 100644 src/main/java/com/rekoe/domain/CdkeyCategory.java delete mode 100644 src/main/java/com/rekoe/domain/CdkeyEntity.java delete mode 100644 src/main/java/com/rekoe/domain/CdkeyLog.java delete mode 100644 src/main/java/com/rekoe/domain/GameServer.java delete mode 100644 src/main/java/com/rekoe/domain/Notice.java delete mode 100644 src/main/java/com/rekoe/domain/OAuthClient.java delete mode 100644 src/main/java/com/rekoe/domain/OAuthUser.java delete mode 100644 src/main/java/com/rekoe/domain/OfficialServer.java delete mode 100644 src/main/java/com/rekoe/domain/PayRefund.java delete mode 100644 src/main/java/com/rekoe/domain/PlatformConfig.java delete mode 100644 src/main/java/com/rekoe/domain/PlatformUser.java delete mode 100644 src/main/java/com/rekoe/domain/ReportAds.java delete mode 100644 src/main/java/com/rekoe/domain/ServerHistory.java delete mode 100644 src/main/java/com/rekoe/domain/VerifyServer.java delete mode 100644 src/main/java/com/rekoe/filter/ChectServerExitsActionFilter.java delete mode 100644 src/main/java/com/rekoe/filter/ServerPermisionActionFilter.java delete mode 100644 src/main/java/com/rekoe/mobile/AbstractParam.java delete mode 100644 src/main/java/com/rekoe/mobile/AuthProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/Profile.java delete mode 100644 src/main/java/com/rekoe/mobile/exception/SignatureException.java delete mode 100644 src/main/java/com/rekoe/mobile/exception/SocialAuthConfigurationException.java delete mode 100644 src/main/java/com/rekoe/mobile/exception/SocialAuthException.java delete mode 100644 src/main/java/com/rekoe/mobile/exception/SocialAuthManagerStateException.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/AbstractProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/PlatformProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/PlatformProviderFactory.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/a91/A91Param.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/a91/A91Provider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/a91/A91ReturnParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/a91/A91UserInfo.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/google/GoogleParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/google/GoogleProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/googlep/GooglePParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/googlep/GooglePProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/googlep/TokenStatus.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/guest/GuestParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/guest/GuestProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/hw/HwParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/hw/HwProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/hw/UserInfo.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/msdk/MSDKParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/msdk/MSDKProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/msdk/MSDKUserInfo.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/qihu360/QiHu360Param.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/qihu360/QiHu360Provider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/qq/QQParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/qq/QQProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/qq/QQUserInfo.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/rk/RKParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/rk/RKProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/sg/SGParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/sg/SGProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/uc/UCResponse.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/uc/UCResponseData.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/uc/UCResponseState.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/uc/UcParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/uc/UcProvider.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/xiaomi/XiaoMiParam.java delete mode 100644 src/main/java/com/rekoe/mobile/provider/xiaomi/XiaoMiProvider.java delete mode 100644 src/main/java/com/rekoe/module/AccessTokenModule.java delete mode 100644 src/main/java/com/rekoe/module/AuthorizeAction.java delete mode 100644 src/main/java/com/rekoe/module/CdkeyBean.java delete mode 100644 src/main/java/com/rekoe/module/ExchargeAction.java delete mode 100644 src/main/java/com/rekoe/module/NoticeModule.java delete mode 100644 src/main/java/com/rekoe/module/OAuthUserAction.java delete mode 100644 src/main/java/com/rekoe/module/ReportAdsModule.java delete mode 100644 src/main/java/com/rekoe/module/Status.java delete mode 100644 src/main/java/com/rekoe/module/Test.java delete mode 100644 src/main/java/com/rekoe/module/UserInfoAction.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminAccountAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminCdKeyCategoryAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminGameServerAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminNoticeAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminOauthClientAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminOauthUserAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminOfficialAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminPlatformConfigAction.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminReportAdsAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/AdminVerifyAct.java delete mode 100644 src/main/java/com/rekoe/module/admin/PayRefundAct.java delete mode 100644 src/main/java/com/rekoe/module/facebook/FaceBookLoginAct.java delete mode 100644 src/main/java/com/rekoe/module/facebook/FacebookSignedRequest.java delete mode 100644 src/main/java/com/rekoe/module/facebook/ReFund.java delete mode 100644 src/main/java/com/rekoe/service/CdKeyCategoryService.java delete mode 100644 src/main/java/com/rekoe/service/CdKeyLogService.java delete mode 100644 src/main/java/com/rekoe/service/CdKeyService.java delete mode 100644 src/main/java/com/rekoe/service/GameServerService.java delete mode 100644 src/main/java/com/rekoe/service/NoticeService.java delete mode 100644 src/main/java/com/rekoe/service/OAuthClientService.java delete mode 100644 src/main/java/com/rekoe/service/OAuthService.java delete mode 100644 src/main/java/com/rekoe/service/OAuthServiceImpl.java delete mode 100644 src/main/java/com/rekoe/service/OAuthUserService.java delete mode 100644 src/main/java/com/rekoe/service/OAuthUserServiceImpl.java delete mode 100644 src/main/java/com/rekoe/service/OauthClientServiceImpl.java delete mode 100644 src/main/java/com/rekoe/service/OfficialServerService.java delete mode 100644 src/main/java/com/rekoe/service/PasswordHelper.java delete mode 100644 src/main/java/com/rekoe/service/PayFefundService.java delete mode 100644 src/main/java/com/rekoe/service/PlatformConfigService.java delete mode 100644 src/main/java/com/rekoe/service/PlatformProviderService.java delete mode 100644 src/main/java/com/rekoe/service/PlatformUserService.java delete mode 100644 src/main/java/com/rekoe/service/ReportAdsService.java delete mode 100644 src/main/java/com/rekoe/service/ServerHistoryService.java delete mode 100644 src/main/java/com/rekoe/service/VerifyServerService.java delete mode 100644 src/main/java/com/rekoe/shiro/realm/AuthToken.java delete mode 100644 src/main/java/com/rekoe/shiro/realm/AuthTokenRealm.java delete mode 100644 src/main/java/com/rekoe/web/freemarker/PlatformPermissionDirective.java delete mode 100644 src/main/java/com/rekoe/web/freemarker/Sid2NameDirective.java diff --git a/pom.xml b/pom.xml index 8de8fa0..9605de6 100644 --- a/pom.xml +++ b/pom.xml @@ -3,8 +3,8 @@ 4.0.0 com.rekoe rk_svnadmin - jar - 3.0 + war + 1.0 rk_svnadmin http://www.rekoe.com @@ -27,7 +27,7 @@ com.alibaba druid - 1.0.16 + 1.0.17 jconsole @@ -39,6 +39,31 @@ + + org.nutz + nutz-plugins-views + 1.r.54.r2 + + + org.nutz + nutz + 1.r.54.r5 + + + org.nutz + nutz-web + 1.b.49 + + + com.restfb + restfb + 1.6.14 + + + org.freemarker + freemarker + 2.3.20 + net.sf.ehcache ehcache @@ -59,92 +84,6 @@ - - org.nutz - nutz-plugins-views - 1.r.54.r2 - - - org.nutz - nutz - 1.r.56.r1 - - - org.nutz - nutz-web - 1.b.49 - - - com.restfb - restfb - 1.6.14 - - - org.codehaus.jackson - jackson-all - 1.9.1 - - - org.apache.oltu.oauth2 - org.apache.oltu.oauth2.authzserver - 1.0.0 - - - org.apache.oltu.oauth2 - org.apache.oltu.oauth2.resourceserver - 1.0.0 - - - org.apache.oltu.oauth2 - org.apache.oltu.oauth2.common - 1.0.0 - - - com.google.apis - google-api-services-androidpublisher - v2-rev22-1.21.0 - - - com.google.http-client - google-http-client - 1.21.0 - - - jsr305 - com.google.code.findbugs - - - - - com.google.apis - google-api-services-oauth2 - v2-rev101-1.21.0 - - - com.google.api-client - google-api-client - 1.21.0 - - - jsr305 - com.google.code.findbugs - - - guava-jdk5 - com.google.guava - - - - - com.google.apis - google-api-services-plus - v1-rev327-1.21.0 - - - org.freemarker - freemarker - 2.3.20 - org.quartz-scheduler quartz @@ -165,17 +104,6 @@ org.nutz nutz-integration-quartz 1.b.53 - - - c3p0 - c3p0 - - - - - com.cloopen - ccp_rest_sdk - 2.7.r org.json @@ -186,17 +114,17 @@ commons-email commons-email 1.1 - - - activation - javax.activation - - org.nutz nutz-integration-shiro - 1.b.53 + 1.b.53.r2 + + + shiro-core + org.apache.shiro + + org.apache.shiro @@ -239,21 +167,6 @@ slf4j-log4j12 1.7.5 - - org.apache.commons - commons-vfs2 - 2.0 - - - maven-scm-api - org.apache.maven.scm - - - maven-scm-provider-svnexe - org.apache.maven.scm - - - org.brickred socialauth @@ -281,20 +194,39 @@ src/main/resources - com/rekoe/web/freemarker/*.* - - - - src/main/java - - **/*.properties - **/*.js + com/rekoe/mvc/*.* false rk_svnadmin + + org.apache.maven.plugins + maven-resources-plugin + 2.6 + + UTF-8 + + + + org.apache.maven.plugins + maven-jar-plugin + 2.6 + + + + jar + + prepare-package + + + src/main/resources/**/* + + + + + org.apache.maven.plugins maven-compiler-plugin @@ -305,6 +237,30 @@ UTF-8 + + org.apache.maven.plugins + maven-war-plugin + 2.3 + + true + WEB-INF/web.xml + WEB-INF/classes/com/** + + + src/main/resources + WEB-INF/classes + + msg/**/* + log4j.properties + oauth_consumer.properties + quartz.properties + shiro.ini + ehcache.xml + + + + + org.apache.maven.plugins maven-surefire-plugin diff --git a/src/main/java/com/rekoe/MainModule.java b/src/main/java/com/rekoe/MainModule.java new file mode 100644 index 0000000..d363b36 --- /dev/null +++ b/src/main/java/com/rekoe/MainModule.java @@ -0,0 +1,24 @@ +package com.rekoe; + +import org.nutz.mvc.annotation.ChainBy; +import org.nutz.mvc.annotation.Encoding; +import org.nutz.mvc.annotation.Fail; +import org.nutz.mvc.annotation.IocBy; +import org.nutz.mvc.annotation.Localization; +import org.nutz.mvc.annotation.Modules; +import org.nutz.mvc.annotation.SetupBy; +import org.nutz.mvc.annotation.Views; +import org.nutz.mvc.ioc.provider.ComboIocProvider; +import org.nutz.plugins.view.freemarker.FreemarkerViewMaker; + +@Modules(scanPackage = true, packages = { "com.rekoe.module" }) +@IocBy(type = ComboIocProvider.class, args = { "*json", "/ioc", "*anno", "com.rekoe", "*tx", "*org.nutz.integration.quartz.QuartzIocLoader", "*org.nutz.plugins.view.freemarker.FreemarkerIocLoader", "*async" }) +@SetupBy(MvcSetup.class) +@Fail(">>:/admin/common/unauthorized.rk") +@Encoding(input = "UTF-8", output = "UTF-8") +@ChainBy(args = "com/rekoe/mvc/mvc-chains.js") +@Views({ FreemarkerViewMaker.class }) +@Localization(value = "msg/", defaultLocalizationKey = "zh-CN") +public class MainModule { + +} diff --git a/src/main/java/com/rekoe/MvcSetup.java b/src/main/java/com/rekoe/MvcSetup.java new file mode 100644 index 0000000..d1427c8 --- /dev/null +++ b/src/main/java/com/rekoe/MvcSetup.java @@ -0,0 +1,68 @@ +package com.rekoe; + +import java.util.HashMap; +import java.util.List; + +import org.apache.shiro.crypto.RandomNumberGenerator; +import org.apache.shiro.crypto.SecureRandomNumberGenerator; +import org.apache.shiro.crypto.hash.Sha256Hash; +import org.nutz.dao.Dao; +import org.nutz.dao.impl.FileSqlManager; +import org.nutz.dao.sql.Sql; +import org.nutz.dao.util.Daos; +import org.nutz.ioc.Ioc; +import org.nutz.mvc.NutConfig; +import org.nutz.mvc.Setup; +import org.nutz.plugins.view.freemarker.FreeMarkerConfigurer; + +import com.rekoe.domain.User; +import com.rekoe.service.UserService; + +import freemarker.template.Configuration; + +/** + * @author 科技㊣²º¹³
+ * 2014年2月3日 下午4:48:45
+ * http://www.rekoe.com
+ * QQ:5382211 + */ +public class MvcSetup implements Setup { + + @SuppressWarnings("serial") + @Override + public void init(NutConfig config) { + Ioc ioc = config.getIoc(); + // 加载freemarker自定义标签 自定义宏路径 + ioc.get(Configuration.class).setAutoImports(new HashMap(2) { + { + put("p", "/ftl/pony/index.ftl"); + put("s", "/ftl/spring.ftl"); + } + }); + ioc.get(FreeMarkerConfigurer.class, "mapTags"); + Dao dao = ioc.get(Dao.class); + // dao.clear(OAuthUser.class); + Daos.createTablesInPackage(dao, User.class.getPackage().getName(), false); + if (0 == dao.count(User.class)) { + FileSqlManager fm = new FileSqlManager("init_system_h2.sql"); + List sqlList = fm.createCombo(fm.keys()); + dao.execute(sqlList.toArray(new Sql[sqlList.size()])); + List userList = dao.query(User.class, null); + for (User user : userList) { + RandomNumberGenerator rng = new SecureRandomNumberGenerator(); + String salt = rng.nextBytes().toBase64(); + String hashedPasswordBase64 = new Sha256Hash("123", salt, 1024).toBase64(); + user.setSalt(salt); + user.setPassword(hashedPasswordBase64); + dao.update(user); + } + } + UserService userService = ioc.get(UserService.class); + userService.initFormPackages("com.rekoe"); + } + + @Override + public void destroy(NutConfig config) { + + } +} diff --git a/src/main/java/com/rekoe/domain/AuthType.java b/src/main/java/com/rekoe/domain/AuthType.java deleted file mode 100644 index 0c36862..0000000 --- a/src/main/java/com/rekoe/domain/AuthType.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.rekoe.domain; - -public enum AuthType { - - DEFAULT("DEFAULT"), TOKEN("TOKEN"), QQ_HTML5("QQ_HTML5"); - - public String display; - - AuthType(String display) { - this.display = display; - } - - public String getDisplay() { - return display; - } -} diff --git a/src/main/java/com/rekoe/domain/CdkeyCategory.java b/src/main/java/com/rekoe/domain/CdkeyCategory.java deleted file mode 100644 index afc6c2f..0000000 --- a/src/main/java/com/rekoe/domain/CdkeyCategory.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; - -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.EL; -import org.nutz.dao.entity.annotation.Name; -import org.nutz.dao.entity.annotation.Prev; -import org.nutz.dao.entity.annotation.Table; - -/** - * @author 科技㊣²º¹³
- * 2014年4月19日 上午8:54:23
- * http://www.rekoe.com
- * QQ:5382211
- */ -@Table("cdkey_category") -public class CdkeyCategory implements Serializable { - - private static final long serialVersionUID = 7685127380108984960L; - @Name - @Prev(els = { @EL("uuid()") }) - private String id; - - @Column - private String name; - - @Column(hump = true) - private int cdkeyType; - - public CdkeyCategory() { - super(); - } - - public CdkeyCategory(String name, int cdkeyType) { - super(); - this.name = name; - this.cdkeyType = cdkeyType; - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getCdkeyType() { - return cdkeyType; - } - - public void setCdkeyType(int cdkeyType) { - this.cdkeyType = cdkeyType; - } -} diff --git a/src/main/java/com/rekoe/domain/CdkeyEntity.java b/src/main/java/com/rekoe/domain/CdkeyEntity.java deleted file mode 100644 index 1e9988e..0000000 --- a/src/main/java/com/rekoe/domain/CdkeyEntity.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.rekoe.domain; - -import java.util.Date; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Id; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; - -@Table("cdkey_${taskid}") -@TableIndexes({ @Index(name = "cdk_${taskid}_index", fields = { "cdkey" }, unique = true), @Index(name = "cdk_${taskid}_used_index", fields = { "used" }, unique = false) }) -public class CdkeyEntity { - - @Id - private long id; - @Column - private String cdkey; - - @Column("is_used") - @ColDefine(type = ColType.BOOLEAN) - private boolean used; - - @Column(hump = true) - @ColDefine(type = ColType.TIMESTAMP) - private Date createTime; - - public boolean isUsed() { - return used; - } - - public void setUsed(boolean used) { - this.used = used; - } - - public CdkeyEntity() { - super(); - } - - public CdkeyEntity(String cdkey, Date createTime) { - super(); - this.cdkey = cdkey; - this.createTime = createTime; - } - - public long getId() { - return id; - } - - public void setId(long id) { - this.id = id; - } - - public Date getCreateTime() { - return createTime; - } - - public void setCreateTime(Date createTime) { - this.createTime = createTime; - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/domain/CdkeyLog.java b/src/main/java/com/rekoe/domain/CdkeyLog.java deleted file mode 100644 index c2ffd20..0000000 --- a/src/main/java/com/rekoe/domain/CdkeyLog.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; -import java.util.Date; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.EL; -import org.nutz.dao.entity.annotation.Id; -import org.nutz.dao.entity.annotation.Prev; -import org.nutz.dao.entity.annotation.Table; - -@Table("cdkey_log") -public class CdkeyLog implements Serializable { - - private static final long serialVersionUID = -6797252917202955579L; - - @Id - private long id; - @Column - private int pid; - @Column(hump = true) - private String providerId; - @Column - private String mac; - - @Column - @ColDefine(type = ColType.TIMESTAMP) - @Prev(els = @EL("$me.now()")) - private Date createTime; - - public CdkeyLog() { - super(); - } - - public CdkeyLog(int pid, String providerId, String mac) { - super(); - this.pid = pid; - this.providerId = providerId; - this.mac = mac; - } - - public Date now() { - return new Date(); - } - - public long getId() { - return id; - } - - public void setId(long id) { - this.id = id; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public String getProviderId() { - return providerId; - } - - public void setProviderId(String providerId) { - this.providerId = providerId; - } - - public String getMac() { - return mac; - } - - public void setMac(String mac) { - this.mac = mac; - } - - public Date getCreateTime() { - return createTime; - } - - public void setCreateTime(Date createTime) { - this.createTime = createTime; - } - -} diff --git a/src/main/java/com/rekoe/domain/GameServer.java b/src/main/java/com/rekoe/domain/GameServer.java deleted file mode 100644 index 9fc54a2..0000000 --- a/src/main/java/com/rekoe/domain/GameServer.java +++ /dev/null @@ -1,222 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.List; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Comment; -import org.nutz.dao.entity.annotation.Default; -import org.nutz.dao.entity.annotation.Id; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Many; -import org.nutz.dao.entity.annotation.ManyMany; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; -import org.nutz.lang.util.NutMap; - -import com.rekoe.valueadaptor.NutMapValueAdaptor; -import com.rekoe.valueadaptor.StringJsonAdaptor; - -@Table("system_server") -@TableIndexes({ @Index(name = "g_pid_index", fields = { "pid" }, unique = true) }) -public class GameServer implements Serializable { - - private static final long serialVersionUID = 4391955362256919755L; - - @Id - private int id; - - @Column(hump = true) - @Comment("平台名称") - private String platformName; - - @Column("platform_id") - @Comment("平台编号") - private int pid; - - @Column("is_open") - @Comment("是否开启") - private boolean open; - - @Column(hump = true) - @Comment("充值地址") - @ColDefine(width = 225) - private String payUrl; - - @Column(hump = true) - @Comment("登陆服地址") - @ColDefine(width = 225) - private String loginUrl; - - @ManyMany(target = User.class, relation = "system_user_server", from = "SERVERID", to = "USERID") - private List users; - - @Many(target = OfficialServer.class, field = "pid") - private List officialServers; - - @Column("ver") - @Comment("当前版本号") - private String version; - - @Column - @Comment("是否提审") - @ColDefine(type = ColType.BOOLEAN) - private boolean verify; - - @Column("is_black_open") - @Comment("是否开启白名单") - @ColDefine(type = ColType.BOOLEAN) - private boolean blackOpen; - - @Column("black_list") - @Comment("白名单列表") - @ColDefine(type = ColType.TEXT, adaptor = StringJsonAdaptor.class) - private List items = new ArrayList(); - - @Column(hump = true) - private String clientSecret; - - @Column(hump = true) - @Comment("认证方式") - @Default("DEFAULT") - protected AuthType authType; - - @Column(hump = true) - @ColDefine(type = ColType.TEXT, adaptor = NutMapValueAdaptor.class) - private NutMap mobileAuth; - - public NutMap getMobileAuth() { - if (mobileAuth == null) { - mobileAuth = NutMap.NEW(); - } - return mobileAuth; - } - - public void setMobileAuth(NutMap config) { - this.mobileAuth = config; - } - - public GameServer addMobileAuth(String id, NutMap config) { - this.mobileAuth.addv(id, config); - return this; - } - - public boolean isBlackOpen() { - return blackOpen; - } - - public String getClientSecret() { - return clientSecret; - } - - public void setClientSecret(String clientSecret) { - this.clientSecret = clientSecret; - } - - public void setBlackOpen(boolean black) { - this.blackOpen = black; - } - - public List getItems() { - return items; - } - - public AuthType getAuthType() { - return authType; - } - - public void setAuthType(AuthType authType) { - this.authType = authType; - } - - public void setItems(List items) { - this.items = items; - } - - public String getVersion() { - return version; - } - - public void setVersion(String version) { - this.version = version; - } - - public boolean isVerify() { - return verify; - } - - public void setVerify(boolean verify) { - this.verify = verify; - } - - public List getOfficialServers() { - return officialServers; - } - - public void setOfficialServers(List officialServers) { - this.officialServers = officialServers; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getPlatformName() { - return platformName; - } - - public void setPlatformName(String platformName) { - this.platformName = platformName; - } - - public boolean isOpen() { - return open; - } - - public void setOpen(boolean open) { - this.open = open; - } - - public List getUsers() { - return users; - } - - public void setUsers(List users) { - this.users = users; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public String getPayUrl() { - return payUrl; - } - - public void setPayUrl(String payUrl) { - this.payUrl = payUrl; - } - - public String getLoginUrl() { - return loginUrl; - } - - public void setLoginUrl(String loginUrl) { - this.loginUrl = loginUrl; - } - - public boolean isUseMobileAuth() { - return getMobileAuth().getBoolean("mobileAuth", false); - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/domain/Notice.java b/src/main/java/com/rekoe/domain/Notice.java deleted file mode 100644 index 2240259..0000000 --- a/src/main/java/com/rekoe/domain/Notice.java +++ /dev/null @@ -1,138 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; -import java.util.Date; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Default; -import org.nutz.dao.entity.annotation.Id; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.json.JsonField; - -/** - * @author 科技㊣²º¹³
- * 2014年2月3日 下午4:48:45
- * http://www.rekoe.com
- * QQ:5382211 - */ -@Table("sg_notice") -public class Notice implements Serializable { - - private static final long serialVersionUID = 1566985676414681818L; - - @Id(auto=true) - private long id; - - @Column(hump = true) - @ColDefine(type = ColType.TIMESTAMP) - @JsonField(ignore = true) - private Date createDate; - - @Column - @Default("#FF0000") - private String color; - - @Column(hump = true) - @ColDefine(type = ColType.TIMESTAMP) - @JsonField(ignore = true) - private Date modifyDate; - - @Column - @ColDefine(type = ColType.TEXT) - @JsonField(ignore = true) - private String content; - - @Column("is_publication") - @ColDefine(type = ColType.BOOLEAN) - @JsonField(ignore = true) - private boolean publication; - - @Column("is_top") - @ColDefine(type = ColType.BOOLEAN) - @JsonField(ignore = true) - private boolean top; - - @Column - @ColDefine(type = ColType.VARCHAR, width = 255) - private String title; - - @Column - @Default("1001") - @JsonField(ignore = true) - private int pid; - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public long getId() { - return id; - } - - public void setId(long id) { - this.id = id; - } - - public Date getCreateDate() { - return createDate; - } - - public void setCreateDate(Date createDate) { - this.createDate = createDate; - } - - public Date getModifyDate() { - return modifyDate; - } - - public void setModifyDate(Date modifyDate) { - this.modifyDate = modifyDate; - } - - public String getContent() { - return content; - } - - public void setContent(String content) { - this.content = content; - } - - public boolean isPublication() { - return publication; - } - - public void setPublication(boolean publication) { - this.publication = publication; - } - - public boolean isTop() { - return top; - } - - public void setTop(boolean top) { - this.top = top; - } - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public String getColor() { - return color; - } - - public void setColor(String color) { - this.color = color; - } - -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/domain/OAuthClient.java b/src/main/java/com/rekoe/domain/OAuthClient.java deleted file mode 100644 index a7ef0b5..0000000 --- a/src/main/java/com/rekoe/domain/OAuthClient.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; - -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Id; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; - -@Table("sg_oauth_client") -@TableIndexes({ @Index(name = "sg_oauth_client_index", fields = { "clientName" }, unique = true), @Index(name = "sg_oc_secret_index", fields = { "clientId", "clientSecret" }, unique = false) }) -public class OAuthClient implements Serializable { - - private static final long serialVersionUID = 2345879369118031587L; - @Id - private long id; - - @Column(hump = true) - private String clientName; - - @Column(hump = true) - private String clientId; - - @Column(hump = true) - private String clientSecret; - - public Long getId() { - return id; - } - - public void setId(Long id) { - this.id = id; - } - - public String getClientName() { - return clientName; - } - - public void setClientName(String clientName) { - this.clientName = clientName; - } - - public String getClientId() { - return clientId; - } - - public void setClientId(String clientId) { - this.clientId = clientId; - } - - public String getClientSecret() { - return clientSecret; - } - - public void setClientSecret(String clientSecret) { - this.clientSecret = clientSecret; - } - - @Override - public String toString() { - return "Client{" + "id=" + id + ", clientName='" + clientName + '\'' + ", clientId='" + clientId + '\'' + ", clientSecret='" + clientSecret + '\'' + '}'; - } -} diff --git a/src/main/java/com/rekoe/domain/OAuthUser.java b/src/main/java/com/rekoe/domain/OAuthUser.java deleted file mode 100644 index 0732a31..0000000 --- a/src/main/java/com/rekoe/domain/OAuthUser.java +++ /dev/null @@ -1,135 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Comment; -import org.nutz.dao.entity.annotation.Default; -import org.nutz.dao.entity.annotation.EL; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Name; -import org.nutz.dao.entity.annotation.Prev; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; -import org.nutz.json.JsonField; - -@Table("sg_oauth_user") -@TableIndexes({ @Index(name = "sg_user_data_index", fields = { "userName" }, unique = true), @Index(name = "sg_user_phone_index", fields = { "userName", "phoneCode" }, unique = false) }) -public class OAuthUser implements Serializable { - - private static final long serialVersionUID = -2879607754801933480L; - - @Name - @Prev(els = @EL("uuid()")) - @JsonField(ignore = true) - private String id; - - @Column(hump = true) - @JsonField(value = "name") - private String userName; - - @Column - @JsonField(ignore = true) - private String password; - - @Column - @JsonField(ignore = true) - private String salt; - - @Column(hump = true) - @ColDefine(type = ColType.INT, width = 16) - @JsonField(ignore = true) - private long phoneCode; - - @Column(hump = true) - @ColDefine(type = ColType.INT, width = 16) - @JsonField(value = "uid") - private long userId; - - @Column("is_locked") - @JsonField(value = "locked") - private boolean locked; - - @Column("is_bind") - @JsonField(ignore = true) - @Default("0") - private boolean bind; - - @Column(hump = true) - @Comment("绑定前的渠道") - private String bindProviderId; - - public String getBindProviderId() { - return bindProviderId; - } - - public void setBindProviderId(String bindProviderId) { - this.bindProviderId = bindProviderId; - } - - public boolean isBind() { - return bind; - } - - public void setBind(boolean bind) { - this.bind = bind; - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getUserName() { - return userName; - } - - public void setUserName(String userName) { - this.userName = userName; - } - - public String getPassword() { - return password; - } - - public void setPassword(String password) { - this.password = password; - } - - public String getSalt() { - return salt; - } - - public void setSalt(String salt) { - this.salt = salt; - } - - public long getPhoneCode() { - return phoneCode; - } - - public void setPhoneCode(long phoneCode) { - this.phoneCode = phoneCode; - } - - public long getUserId() { - return userId; - } - - public void setUserId(long userId) { - this.userId = userId; - } - - public boolean isLocked() { - return locked; - } - - public void setLocked(boolean locked) { - this.locked = locked; - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/domain/OfficialServer.java b/src/main/java/com/rekoe/domain/OfficialServer.java deleted file mode 100644 index 8e2240e..0000000 --- a/src/main/java/com/rekoe/domain/OfficialServer.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Comment; -import org.nutz.dao.entity.annotation.Default; -import org.nutz.dao.entity.annotation.Id; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.One; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; - -/** - * 正式服 - * - * @author kouxian - * - */ -@Table("official_server") -@TableIndexes({ @Index(name = "g_sid_pid_index", fields = { "pid", "sid" }, unique = true) }) -public class OfficialServer implements Serializable { - - private static final long serialVersionUID = 6978032147399501026L; - - @Id - private long id; - - @Column - private int sid; - - @Column - @ColDefine(width = 225) - private String url; - - @Column - private String name; - - @Column - private short status; - - @Column("pid") - private int pid; - - @One(target = GameServer.class, field = "pid") - private GameServer gameServer; - - @Column(hump = true) - @Default("0") - @ColDefine(type = ColType.BOOLEAN) - @Comment("是否开启白名单") - private boolean openWhiteList; - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public GameServer getGameServer() { - return gameServer; - } - - public void setGameServer(GameServer gameServer) { - this.gameServer = gameServer; - } - - public long getId() { - return id; - } - - public void setId(long id) { - this.id = id; - } - - public int getSid() { - return sid; - } - - public void setSid(int sid) { - this.sid = sid; - } - - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public short getStatus() { - return status; - } - - public void setStatus(short status) { - this.status = status; - } - - public boolean isOpenWhiteList() { - return openWhiteList; - } - - public void setOpenWhiteList(boolean openWhiteList) { - this.openWhiteList = openWhiteList; - } - -} diff --git a/src/main/java/com/rekoe/domain/PayRefund.java b/src/main/java/com/rekoe/domain/PayRefund.java deleted file mode 100644 index 060547a..0000000 --- a/src/main/java/com/rekoe/domain/PayRefund.java +++ /dev/null @@ -1,111 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; -import java.util.Date; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Comment; -import org.nutz.dao.entity.annotation.EL; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Name; -import org.nutz.dao.entity.annotation.Prev; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; - -@Table("pay_refund") -@TableIndexes({ @Index(name = "pay_refund_index", fields = { "paymentid" }, unique = false), @Index(name = "pay_status_index", fields = { "status" }, unique = false) }) -public class PayRefund implements Serializable { - - private static final long serialVersionUID = -6311504223475095588L; - @Name - @Comment("ID主键") - @Prev(els = { @EL("uuid()") }) - private String id; - @Column - @ColDefine(type = ColType.TIMESTAMP) - @Comment("创建时间") - private Date createTime; - @Column - private String passportid; - @Column("payment_id") - private String paymentid; - @Column - private String name; - @Column(hump = true) - private String requestId; - - @Column(hump = true) - @ColDefine(type = ColType.TEXT) - private String changedFields; - - @Column("do_status") - @Comment("订单处理状态") - private boolean status; - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public Date getCreateTime() { - return createTime; - } - - public void setCreateTime(Date createTime) { - this.createTime = createTime; - } - - public String getPassportid() { - return passportid; - } - - public void setPassportid(String passportid) { - this.passportid = passportid; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getPaymentid() { - return paymentid; - } - - public void setPaymentid(String paymentid) { - this.paymentid = paymentid; - } - - public String getRequestId() { - return requestId; - } - - public void setRequestId(String requestId) { - this.requestId = requestId; - } - - public boolean isStatus() { - return status; - } - - public void setStatus(boolean status) { - this.status = status; - } - - public String getChangedFields() { - return changedFields; - } - - public void setChangedFields(String changedFields) { - this.changedFields = changedFields; - } - -} diff --git a/src/main/java/com/rekoe/domain/PlatformConfig.java b/src/main/java/com/rekoe/domain/PlatformConfig.java deleted file mode 100644 index bc498a6..0000000 --- a/src/main/java/com/rekoe/domain/PlatformConfig.java +++ /dev/null @@ -1,90 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Comment; -import org.nutz.dao.entity.annotation.EL; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Name; -import org.nutz.dao.entity.annotation.Prev; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; -import org.nutz.lang.util.NutMap; - -import com.rekoe.valueadaptor.NutMapValueAdaptor; - -@Table("platform_config") -@TableIndexes({ @Index(name = "p_pid_index", fields = { "sid", "provider" }, unique = true) }) -public class PlatformConfig implements Serializable { - - private static final long serialVersionUID = -4694161925835479316L; - - @Name - @Prev(els = @EL("uuid()")) - private String id; - - @Column - private int sid; - - @Column - @Comment("平台") - private String provider; - - @Column - @ColDefine(type = ColType.TEXT, adaptor = NutMapValueAdaptor.class) - private NutMap config; - - public PlatformConfig() { - super(); - } - - public PlatformConfig(int sid, NutMap config) { - super(); - this.sid = sid; - this.provider = config.getString("provider"); - this.config = config; - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public int getSid() { - return sid; - } - - public void setSid(int sid) { - this.sid = sid; - } - - public String getProvider() { - return provider; - } - - public void setProvider(String provider) { - this.provider = provider; - } - - public NutMap getConfig() { - if (config == null) { - config = NutMap.NEW(); - } - return config; - } - - public void setConfig(NutMap config) { - this.config = config; - } - - public PlatformConfig addPlatform(String id, NutMap config) { - this.config.addv(id, config); - return this; - } -} diff --git a/src/main/java/com/rekoe/domain/PlatformUser.java b/src/main/java/com/rekoe/domain/PlatformUser.java deleted file mode 100644 index 89ae583..0000000 --- a/src/main/java/com/rekoe/domain/PlatformUser.java +++ /dev/null @@ -1,138 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; -import java.util.Date; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Comment; -import org.nutz.dao.entity.annotation.Default; -import org.nutz.dao.entity.annotation.Id; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; -import org.nutz.lang.Times; - -@Table("platform_user") -@TableIndexes({ @Index(name = "passportid_pfid_pid_index", fields = { "passportid", "pfid", "pid" }, unique = true) }) -public class PlatformUser implements Serializable { - - private static final long serialVersionUID = -2735176124180310964L; - - @Id - private long id; - - @Column - private String passportid; - - @Column(hump = true) - @ColDefine(type = ColType.TIMESTAMP, insert = true) - private Date createTime; - - @Column("is_locked") - private boolean locked; - - @Column - private long openid; - - @Column("pfid") - @Comment("渠道号") - @ColDefine(type = ColType.VARCHAR, width = 50) - private String pfid; - - @Column("pid") - @Comment("平台号") - private int pid; - - @Column - @Comment("IP") - @Default("127.0.0.1") - private String addr; - - public PlatformUser() { - super(); - } - - public PlatformUser(int pid, String passportid, long openid, String pfid, String addr) { - this.pid = pid; - this.passportid = passportid; - this.createTime = Times.now(); - this.openid = openid; - this.pfid = pfid; - this.addr = addr; - } - - public PlatformUser(int pid, String passportid, long openid, String pfid) { - this.pid = pid; - this.passportid = passportid; - this.createTime = Times.now(); - this.openid = openid; - this.pfid = pfid; - } - - public long getOpenid() { - return openid; - } - - public String getAddr() { - return addr; - } - - public void setAddr(String addr) { - this.addr = addr; - } - - public void setOpenid(long openid) { - this.openid = openid; - } - - public long getId() { - return id; - } - - public void setId(long id) { - this.id = id; - } - - public String getPassportid() { - return passportid; - } - - public void setPassportid(String passportid) { - this.passportid = passportid; - } - - public Date getCreateTime() { - return createTime; - } - - public void setCreateTime(Date createTime) { - this.createTime = createTime; - } - - public boolean isLocked() { - return locked; - } - - public void setLocked(boolean locked) { - this.locked = locked; - } - - public String getPfid() { - return pfid; - } - - public void setPfid(String pfid) { - this.pfid = pfid; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - -} diff --git a/src/main/java/com/rekoe/domain/ReportAds.java b/src/main/java/com/rekoe/domain/ReportAds.java deleted file mode 100644 index d825e6c..0000000 --- a/src/main/java/com/rekoe/domain/ReportAds.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.EL; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Name; -import org.nutz.dao.entity.annotation.Prev; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; - -@Table("sg_report_ads") -@TableIndexes({ @Index(name = "report_ads_index", fields = { "pid", "pfid" }, unique = false) }) -public class ReportAds implements Serializable { - - private static final long serialVersionUID = -8361228159606140014L; - - @Name - @Prev(els = { @EL("uuid()") }) - private String id; - - @Column - private int pid; - - @Column - private String pfid; - - @Column - @ColDefine(type = ColType.VARCHAR, width = 100) - private String idfa; - - @Column - @ColDefine(type = ColType.VARCHAR, width = 100) - private String idfv; - - @Column(hump = true) - @ColDefine(type = ColType.VARCHAR, width = 100) - private String talkingDataId; - - public ReportAds() { - super(); - } - - public ReportAds(int pid, String pfid, String idfa, String idfv, String talkingDataId) { - super(); - this.pid = pid; - this.pfid = pfid; - this.idfa = idfa; - this.idfv = idfv; - this.talkingDataId = talkingDataId; - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public String getPfid() { - return pfid; - } - - public void setPfid(String pfid) { - this.pfid = pfid; - } - - public String getIdfa() { - return idfa; - } - - public void setIdfa(String idfa) { - this.idfa = idfa; - } - - public String getIdfv() { - return idfv; - } - - public void setIdfv(String idfv) { - this.idfv = idfv; - } - - public String getTalkingDataId() { - return talkingDataId; - } - - public void setTalkingDataId(String talkingDataId) { - this.talkingDataId = talkingDataId; - } - -} diff --git a/src/main/java/com/rekoe/domain/ServerHistory.java b/src/main/java/com/rekoe/domain/ServerHistory.java deleted file mode 100644 index dd459f2..0000000 --- a/src/main/java/com/rekoe/domain/ServerHistory.java +++ /dev/null @@ -1,102 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; -import java.util.Date; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.ColType; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Id; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; -import org.nutz.lang.Times; - -@Table("server_history") -@TableIndexes({ @Index(name = "passportid_pid_index", fields = { "openid", "pid", "sid" }, unique = false) }) -public class ServerHistory implements Serializable { - - private static final long serialVersionUID = 4746739180924296807L; - - @Id - private long id; - - @Column - private int pid; - - @Column(hump = true) - @ColDefine(type = ColType.TIMESTAMP) - private Date createTime; - - @Column(hump = true) - @ColDefine(type = ColType.TIMESTAMP) - private Date modifyTime; - - @Column - private long openid; - - @Column - private int sid; - - public ServerHistory(long openid, int pid, int sid) { - super(); - this.pid = pid; - this.openid = openid; - this.createTime = Times.now(); - this.modifyTime = this.createTime; - this.sid = sid; - } - - public ServerHistory() { - super(); - } - - public long getId() { - return id; - } - - public void setId(long id) { - this.id = id; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public Date getCreateTime() { - return createTime; - } - - public void setCreateTime(Date createTime) { - this.createTime = createTime; - } - - public long getOpenid() { - return openid; - } - - public void setOpenid(long openid) { - this.openid = openid; - } - - public Date getModifyTime() { - return modifyTime; - } - - public void setModifyTime(Date modifyTime) { - this.modifyTime = modifyTime; - } - - public int getSid() { - return sid; - } - - public void setSid(int sid) { - this.sid = sid; - } - -} diff --git a/src/main/java/com/rekoe/domain/User.java b/src/main/java/com/rekoe/domain/User.java index 47cde04..9cc7d5f 100644 --- a/src/main/java/com/rekoe/domain/User.java +++ b/src/main/java/com/rekoe/domain/User.java @@ -3,7 +3,6 @@ package com.rekoe.domain; import java.io.Serializable; import java.util.Date; import java.util.List; -import java.util.Map; import org.nutz.dao.entity.annotation.ColDefine; import org.nutz.dao.entity.annotation.ColType; @@ -15,10 +14,7 @@ import org.nutz.dao.entity.annotation.Table; import org.nutz.dao.entity.annotation.TableIndexes; /** - * @author 科技㊣²º¹³ - * 2014年2月3日 下午4:48:45 - * http://www.rekoe.com - * QQ:5382211 + * @author 科技㊣²º¹³ 2014年2月3日 下午4:48:45 http://www.rekoe.com QQ:5382211 */ @Table("system_user") @TableIndexes({ @Index(name = "user_name", fields = { "name" }, unique = true), @Index(name = "user_openid", fields = { "openid" }, unique = true) }) @@ -62,9 +58,6 @@ public class User implements Serializable { @ColDefine(type = ColType.BOOLEAN) private boolean system; - @ManyMany(target = GameServer.class, relation = "system_user_server", from = "USERID", to = "SERVERID", key = "id") - private Map servers; - public String getProviderid() { return providerid; } @@ -161,12 +154,4 @@ public class User implements Serializable { this.system = system; } - public Map getServers() { - return servers; - } - - public void setServers(Map servers) { - this.servers = servers; - } - } diff --git a/src/main/java/com/rekoe/domain/VerifyServer.java b/src/main/java/com/rekoe/domain/VerifyServer.java deleted file mode 100644 index a58946f..0000000 --- a/src/main/java/com/rekoe/domain/VerifyServer.java +++ /dev/null @@ -1,111 +0,0 @@ -package com.rekoe.domain; - -import java.io.Serializable; - -import org.nutz.dao.entity.annotation.ColDefine; -import org.nutz.dao.entity.annotation.Column; -import org.nutz.dao.entity.annotation.Comment; -import org.nutz.dao.entity.annotation.EL; -import org.nutz.dao.entity.annotation.Index; -import org.nutz.dao.entity.annotation.Name; -import org.nutz.dao.entity.annotation.One; -import org.nutz.dao.entity.annotation.Prev; -import org.nutz.dao.entity.annotation.Table; -import org.nutz.dao.entity.annotation.TableIndexes; - -/** - * 提审服 - * - * @author kouxian - * - */ -@Table("verify_server") -@TableIndexes({ @Index(name = "g_sid_index", fields = { "pid" }, unique = true) }) -public class VerifyServer implements Serializable { - - private static final long serialVersionUID = -2235259090910419768L; - - @Name - @Prev(els = { @EL("uuid()") }) - private String id; - - @Column - @ColDefine(width = 225) - private String url; - - @Column - private String name; - - @Column(hump = true) - @Comment("登陆服地址") - @ColDefine(width = 225) - private String loginUrl; - - @Column(hump = true) - @Comment("充值地址") - @ColDefine(width = 225) - private String payUrl; - - @Column("pid") - private int pid; - - @One(target = GameServer.class, field = "pid") - private GameServer gameServer; - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getUrl() { - return url; - } - - public void setUrl(String url) { - this.url = url; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getLoginUrl() { - return loginUrl; - } - - public void setLoginUrl(String loginUrl) { - this.loginUrl = loginUrl; - } - - public String getPayUrl() { - return payUrl; - } - - public void setPayUrl(String payUrl) { - this.payUrl = payUrl; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public GameServer getGameServer() { - return gameServer; - } - - public void setGameServer(GameServer gameServer) { - this.gameServer = gameServer; - } - -} diff --git a/src/main/java/com/rekoe/filter/ChectServerExitsActionFilter.java b/src/main/java/com/rekoe/filter/ChectServerExitsActionFilter.java deleted file mode 100644 index 89db8ae..0000000 --- a/src/main/java/com/rekoe/filter/ChectServerExitsActionFilter.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.rekoe.filter; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.commons.lang3.StringUtils; -import org.nutz.dao.Cnd; -import org.nutz.integration.shiro.NutShiro; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.mvc.ActionContext; -import org.nutz.mvc.ActionFilter; -import org.nutz.mvc.View; -import org.nutz.mvc.view.UTF8JsonView; -import org.nutz.mvc.view.ViewWrapper; -import org.nutz.plugins.view.freemarker.FreeMarkerConfigurer; -import org.nutz.plugins.view.freemarker.FreemarkerView; - -import com.rekoe.common.Message; -import com.rekoe.domain.GameServer; -import com.rekoe.service.GameServerService; - -@IocBean -public class ChectServerExitsActionFilter implements ActionFilter { - - @Inject - private FreeMarkerConfigurer freeMarkerConfigurer; - - @Inject - private GameServerService gameServerService; - - public View match(final ActionContext ctx) { - HttpServletRequest req = ctx.getRequest(); - String pid = req.getParameter("pid"); - if (StringUtils.isNotBlank(pid)) { - GameServer gameServer = gameServerService.fetch(Cnd.where("pid", "=", pid)); - if (Lang.isEmpty(gameServer)) { - if (NutShiro.isAjax(ctx.getRequest())) { - ctx.getResponse().setHeader("loginStatus", getResStatus()); - return new ViewWrapper(UTF8JsonView.COMPACT, getResStatus()); - } - return getErrView(ctx.getRequest()); - } else { - req.getSession().setAttribute("sid", gameServer.getId()); - } - } - return null; - } - - public String getResStatus() { - return "server_not_exits"; - } - - public View getErrView(HttpServletRequest req) { - return new ViewWrapper(new FreemarkerView(freeMarkerConfigurer, "template/admin/common/error"), Message.error("server_not_exits", req)); - } -} diff --git a/src/main/java/com/rekoe/filter/ServerPermisionActionFilter.java b/src/main/java/com/rekoe/filter/ServerPermisionActionFilter.java deleted file mode 100644 index 6abb045..0000000 --- a/src/main/java/com/rekoe/filter/ServerPermisionActionFilter.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.rekoe.filter; - -import java.util.Collection; -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.commons.lang3.math.NumberUtils; -import org.apache.shiro.SecurityUtils; -import org.apache.shiro.subject.Subject; -import org.nutz.integration.shiro.NutShiro; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.mvc.ActionContext; -import org.nutz.mvc.ActionFilter; -import org.nutz.mvc.View; -import org.nutz.mvc.view.UTF8JsonView; -import org.nutz.mvc.view.ViewWrapper; -import org.nutz.plugins.view.freemarker.FreeMarkerConfigurer; -import org.nutz.plugins.view.freemarker.FreemarkerView; - -import com.rekoe.common.Message; -import com.rekoe.domain.GameServer; -import com.rekoe.domain.User; - -@IocBean -public class ServerPermisionActionFilter implements ActionFilter { - - @Inject - private FreeMarkerConfigurer freeMarkerConfigurer; - - public View match(final ActionContext ctx) { - HttpServletRequest req = ctx.getRequest(); - Object sid = req.getParameter("platformid"); - if (Lang.isEmpty(sid)) { - return getErrView(req, ctx.getResponse()); - } - boolean isRight = false; - Subject subject = SecurityUtils.getSubject(); - if (subject.getPrincipal() instanceof User) { - User user = (User) subject.getPrincipal(); - Map servers = user.getServers(); - if (user.isSystem()) { - isRight = true; - } else if (!Lang.isEmpty(servers)) { - int pid = NumberUtils.toInt(sid.toString()); - Collection games = servers.values(); - for (GameServer game : games) { - if (game.getPid() == pid) { - isRight = true; - break; - } - } - } - } - if (isRight) { - return null; - } - return getErrView(req, ctx.getResponse()); - } - - public String getResStatus() { - return "unauthorized"; - } - - public View getErrView(HttpServletRequest req, HttpServletResponse resp) { - if (NutShiro.isAjax(req)) { - resp.setHeader("loginStatus", getResStatus()); - return new ViewWrapper(UTF8JsonView.COMPACT, getResStatus()); - } - return new ViewWrapper(new FreemarkerView(freeMarkerConfigurer, "template/admin/common/error"), Message.error(getResStatus(), req)); - } -} diff --git a/src/main/java/com/rekoe/mobile/AbstractParam.java b/src/main/java/com/rekoe/mobile/AbstractParam.java deleted file mode 100644 index fc492ad..0000000 --- a/src/main/java/com/rekoe/mobile/AbstractParam.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.rekoe.mobile; - -public abstract class AbstractParam { - - public abstract String getProviderId(); - - public abstract int getPid(); -} diff --git a/src/main/java/com/rekoe/mobile/AuthProvider.java b/src/main/java/com/rekoe/mobile/AuthProvider.java deleted file mode 100644 index a285753..0000000 --- a/src/main/java/com/rekoe/mobile/AuthProvider.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.rekoe.mobile; - -public abstract class AuthProvider { - - public abstract String getProviderId(); - - public abstract Profile verifyResponse(T param) throws Exception; - - public abstract Class getEntityClass(); - -} diff --git a/src/main/java/com/rekoe/mobile/Profile.java b/src/main/java/com/rekoe/mobile/Profile.java deleted file mode 100644 index fb1ae3a..0000000 --- a/src/main/java/com/rekoe/mobile/Profile.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.rekoe.mobile; - -import java.io.Serializable; - -import org.nutz.lang.util.NutMap; - -public class Profile implements Serializable { - - public static final String TOKEN = "token"; - private static final long serialVersionUID = -3916223452935420808L; - - private String providerId; - private String passportid; - private int pid; - private NutMap pros = NutMap.NEW(); - - public Profile(String providerId, String passportid, int pid) { - super(); - this.providerId = providerId; - this.passportid = passportid; - this.pid = pid; - } - - public Profile(String providerId, long passportid, int pid) { - super(); - this.providerId = providerId; - this.passportid = String.valueOf(passportid); - this.pid = pid; - } - - public String getToken() { - return pros.getString(TOKEN); - } - - public int getPid() { - return pid; - } - - public String getProviderId() { - return providerId; - } - - public void setProviderId(String providerId) { - this.providerId = providerId; - } - - public String getPassportid() { - return passportid; - } - - public void setPassportid(String passportid) { - this.passportid = passportid; - } - - public Profile addv(String key, Object obj) { - pros.addv(key, obj); - return this; - } - - public NutMap getPros() { - return pros; - } - -} diff --git a/src/main/java/com/rekoe/mobile/exception/SignatureException.java b/src/main/java/com/rekoe/mobile/exception/SignatureException.java deleted file mode 100644 index d8f215c..0000000 --- a/src/main/java/com/rekoe/mobile/exception/SignatureException.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - =========================================================================== - Copyright (c) 2010 BrickRed Technologies Limited - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sub-license, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - =========================================================================== - - */ -package com.rekoe.mobile.exception; - -public class SignatureException extends Exception { - - private static final long serialVersionUID = -3832456866408848000L; - - public SignatureException() { - super(); - } - - /** - * @param message - */ - public SignatureException(final String message) { - super(message); - } - - /** - * @param cause - */ - public SignatureException(final Throwable cause) { - super(cause); - } - - /** - * @param message - * @param cause - */ - public SignatureException(final String message, final Throwable cause) { - super(message, cause); - } -} diff --git a/src/main/java/com/rekoe/mobile/exception/SocialAuthConfigurationException.java b/src/main/java/com/rekoe/mobile/exception/SocialAuthConfigurationException.java deleted file mode 100644 index f591ab5..0000000 --- a/src/main/java/com/rekoe/mobile/exception/SocialAuthConfigurationException.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - =========================================================================== - Copyright (c) 2010 BrickRed Technologies Limited - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sub-license, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - =========================================================================== - - */ -package com.rekoe.mobile.exception; - -public class SocialAuthConfigurationException extends Exception { - - private static final long serialVersionUID = 477153534655510364L; - - public SocialAuthConfigurationException() { - super(); - } - - /** - * @param message - */ - public SocialAuthConfigurationException(final String message) { - super(message); - } - - /** - * @param cause - */ - public SocialAuthConfigurationException(final Throwable cause) { - super(cause); - } - - /** - * @param message - * @param cause - */ - public SocialAuthConfigurationException(final String message, - final Throwable cause) { - super(message, cause); - } -} diff --git a/src/main/java/com/rekoe/mobile/exception/SocialAuthException.java b/src/main/java/com/rekoe/mobile/exception/SocialAuthException.java deleted file mode 100644 index 43bde86..0000000 --- a/src/main/java/com/rekoe/mobile/exception/SocialAuthException.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - =========================================================================== - Copyright (c) 2010 BrickRed Technologies Limited - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sub-license, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - =========================================================================== - - */ -package com.rekoe.mobile.exception; - -public class SocialAuthException extends Exception { - - private static final long serialVersionUID = -1873507695230807487L; - - public SocialAuthException() { - super(); - } - - /** - * @param message - */ - public SocialAuthException(final String message) { - super(message); - } - - /** - * @param cause - */ - public SocialAuthException(final Throwable cause) { - super(cause); - } - - /** - * @param message - * @param cause - */ - public SocialAuthException(final String message, final Throwable cause) { - super(message, cause); - } -} diff --git a/src/main/java/com/rekoe/mobile/exception/SocialAuthManagerStateException.java b/src/main/java/com/rekoe/mobile/exception/SocialAuthManagerStateException.java deleted file mode 100644 index e245fda..0000000 --- a/src/main/java/com/rekoe/mobile/exception/SocialAuthManagerStateException.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - =========================================================================== - Copyright (c) 2010 BrickRed Technologies Limited - - Permission is hereby granted, free of charge, to any person obtaining a copy - of this software and associated documentation files (the "Software"), to deal - in the Software without restriction, including without limitation the rights - to use, copy, modify, merge, publish, distribute, sub-license, and/or sell - copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in - all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - THE SOFTWARE. - =========================================================================== - - */ -package com.rekoe.mobile.exception; - -public class SocialAuthManagerStateException extends Exception { - - private static final long serialVersionUID = -4089035676676970803L; - private static final String errorMessage = "This is not the same SocailAuthManager object that was used for login."; - private static final String resolution = "Please check if you have called getAuthenticationUrl() method before calling connect()"; - - public SocialAuthManagerStateException() { - super(); - } - - @Override - public String toString() { - return errorMessage + resolution; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/AbstractProvider.java b/src/main/java/com/rekoe/mobile/provider/AbstractProvider.java deleted file mode 100644 index 04d90fb..0000000 --- a/src/main/java/com/rekoe/mobile/provider/AbstractProvider.java +++ /dev/null @@ -1,199 +0,0 @@ -package com.rekoe.mobile.provider; - -import java.io.Serializable; -import java.util.Map; - -import org.nutz.http.Http; -import org.nutz.http.Request; -import org.nutz.http.Request.METHOD; -import org.nutz.http.Response; -import org.nutz.http.Sender; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.json.Json; -import org.nutz.lang.Lang; -import org.nutz.lang.Mirror; -import org.nutz.lang.Strings; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.domain.PlatformConfig; -import com.rekoe.mobile.AbstractParam; -import com.rekoe.mobile.AuthProvider; -import com.rekoe.service.PlatformConfigService; - -public abstract class AbstractProvider extends AuthProvider implements Serializable { - - private static final long serialVersionUID = 3293830764207197084L; - - private Mirror mirror; - - private static final Log log = Logs.get(); - - @Inject - private PlatformConfigService platformConfigService; - - /** - * 本抽象类能提供一些帮助方法,减少重复写实体类型的麻烦 - */ - public AbstractProvider() { - try { - Class entryClass = Mirror.getTypeParam(getClass(), 0); - mirror = Mirror.me(entryClass); - if (log.isDebugEnabled()) - log.debugf("Get TypeParams for self : %s", entryClass.getName()); - } catch (Throwable e) { - if (log.isWarnEnabled()) - log.warn("!!!Fail to get TypeParams for self!", e); - } - } - - public PlatformConfig getPlatformConfig(int pid) { - PlatformConfig pc = platformConfigService.getPlatformConfig(pid, getProviderId()); - if (Lang.isEmpty(pc)) { - throw Lang.makeThrow(NullPointerException.class, "Can`t find %s PlatformConfig", getProviderId()); - } - return pc; - } - - /** - * 获取实体类型 - * - * @return 实体类型 - */ - public Class getEntityClass() { - return mirror.getType(); - } - - public String HttpGet(String url) { - return HttpGet(url, def_num); - } - - private String HttpGet(String url, int num) { - try { - return Http.get(url).getContent(); - } catch (Exception e) { - log.errorf("net Connect Err,url=%s", url); - if (num > 0 && num < max) { - num--; - HttpGet(url, num); - } - } - return "{}"; - } - - public String httpPost(String url, Map params) { - return httpPost(url, params, def_num); - } - - private String httpPost(String url, Map params, int num) { - try { - Response res = Http.post2(url, params, 6000); - if (res.isOK()) { - return res.getContent(); - } - } catch (Exception e) { - log.errorf("net Connect Err,url=%s", url); - if (num > 0 && num < max) { - num--; - httpPost(url, params, num); - } - } - return "{}"; - } - - public String HttpsGet(String url) { - return HttpsGet(url, def_num); - } - - private String HttpsGet(String url, int num) { - try { - Http.disableJvmHttpsCheck(); - return Http.get(url).getContent(); - } catch (Exception e) { - log.errorf("net Connect Err,url=%s", url); - if (num > 0 && num < max) { - num--; - HttpsGet(url, num); - } - } - return "{}"; - } - - public String httpsPost(String url, Map params) { - return httpsPost(url, params, def_num); - } - - private String httpsPost(String url, Map params, int num) { - try { - Http.disableJvmHttpsCheck(); - Response res = Http.post2(url, params, 6000); - if (res.isOK()) { - return res.getContent(); - } - } catch (Exception e) { - log.errorf("net Connect Err,url=%s", url); - if (num > 0 && num < max) { - num--; - httpsPost(url, params, num); - } - } - return "{}"; - } - - public String httpsPostBody(String url, String data) { - return httpsPostBody(url, data, def_num); - } - - public String httpPostBody(String url, String data) { - return httpPostBody(url, data, def_num); - } - - private String httpPostBody(String url, String data, int num) { - Request req = Request.create(url, METHOD.POST); - req.getHeader().set("Content-Type", "application/json:charset=utf-8 "); - req.setData(data); - try { - Response resp = Sender.create(req).send(); - return resp.getContent(); - } catch (Exception e) { - log.errorf("net Connect Err,url=%s", url); - if (num > 0 && num < max) { - num--; - httpPostBody(url, data, num); - } - } - return "{}"; - } - - private String httpsPostBody(String url, String data, int num) { - Http.disableJvmHttpsCheck(); - Request req = Request.create(url, METHOD.POST); - req.getHeader().set("Content-Type", "application/json:charset=utf-8 "); - req.setData(data); - try { - Response resp = Sender.create(req).send(); - return resp.getContent(); - } catch (Exception e) { - log.errorf("net Connect Err,url=%s", url); - if (num > 0 && num < max) { - num--; - httpsPostBody(url, data, num); - } - } - return "{}"; - } - - public Map result2Json(String jsonStr, Class eleType) throws Exception { - if (Strings.isBlank(jsonStr)) { - throw Lang.makeThrow("%s callBack is Blank", getProviderId()); - } - return Json.fromJsonAsMap(eleType, jsonStr); - } - - public Map result2Json(String jsonStr, Class eleType, String def) throws Exception { - return Json.fromJsonAsMap(eleType, Strings.isBlank(jsonStr) ? def : jsonStr); - } - - private final int max = 5; - private final int def_num = 1; -} diff --git a/src/main/java/com/rekoe/mobile/provider/PlatformProvider.java b/src/main/java/com/rekoe/mobile/provider/PlatformProvider.java deleted file mode 100644 index f5a2952..0000000 --- a/src/main/java/com/rekoe/mobile/provider/PlatformProvider.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.rekoe.mobile.provider; - -public class PlatformProvider { - - private final String providerId; - private final String name; - private final String pfid; - - public PlatformProvider(final String providerId, final String name, final String pfid) { - this.providerId = providerId; - this.name = name; - this.pfid = pfid; - } - - public String getProviderId() { - return providerId; - } - - public String getName() { - return name; - } - - public String getPfid() { - return pfid; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/PlatformProviderFactory.java b/src/main/java/com/rekoe/mobile/provider/PlatformProviderFactory.java deleted file mode 100644 index a8e73b3..0000000 --- a/src/main/java/com/rekoe/mobile/provider/PlatformProviderFactory.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.rekoe.mobile.provider; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.nutz.lang.Lang; - -public class PlatformProviderFactory { - - private Map platforms = new HashMap(); - - public void setPlatformProviders(List> platformProviders) { - int len = platformProviders.size(); - for (int i = 0; i < len; i++) { - List args = platformProviders.get(i); - int j = args.size(); - if (j != 3) { - continue; - } - platforms.put(args.get(1), new PlatformProvider(args.get(0), args.get(2), args.get(1))); - } - } - - public PlatformProvider getPlatformProvider(String pfid) { - PlatformProvider pf = platforms.get(pfid); - if (Lang.isEmpty(pf)) { - Lang.makeThrow("Can`t define type[%s]", pfid); - } - return pf; - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/mobile/provider/a91/A91Param.java b/src/main/java/com/rekoe/mobile/provider/a91/A91Param.java deleted file mode 100644 index b3be2c2..0000000 --- a/src/main/java/com/rekoe/mobile/provider/a91/A91Param.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.rekoe.mobile.provider.a91; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class A91Param extends AbstractParam implements Serializable{ - - private static final long serialVersionUID = -4493840542767841651L; - private String sessionid; - private int pid; - - public void setSessionid(int pid, String sessionid) { - this.sessionid = sessionid; - this.pid = pid; - } - - public String getSessionid() { - return sessionid; - } - - public void setSessionid(String sessionid) { - this.sessionid = sessionid; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - @Override - public String getProviderId(){ - return Constants.A91; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/a91/A91Provider.java b/src/main/java/com/rekoe/mobile/provider/a91/A91Provider.java deleted file mode 100644 index c252f71..0000000 --- a/src/main/java/com/rekoe/mobile/provider/a91/A91Provider.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.rekoe.mobile.provider.a91; - -import java.net.URLDecoder; -import java.util.HashMap; -import java.util.Map; - -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.lang.Lang; -import org.nutz.log.Log; -import org.nutz.log.Logs; -import org.nutz.repo.Base64; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.domain.PlatformConfig; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.A91) -public class A91Provider extends AbstractProvider { - - private static final long serialVersionUID = 1L; - private final static Log log = Logs.get(); - private final String VALID_TOKEN_ADDR = "http://querysdkapi.91.com/CpLoginStateQuery.ashx";// 接口地址 - - @Override - public String getProviderId() { - return Constants.A91; - } - - @Override - public Profile verifyResponse(A91Param param) throws Exception { - PlatformConfig platformConfig = getPlatformConfig(param.getPid()); - String str = platformConfig.getConfig().getString("appid") + param.getSessionid() + platformConfig.getConfig().getString("secret");// 签名 - String sign = Lang.md5(str); - Map params = new HashMap<>(); - params.put("AppID", platformConfig.getConfig().getString("appid")); - params.put("AccessToken", param.getSessionid()); - params.put("Sign", sign.toLowerCase()); - String result = httpPost(VALID_TOKEN_ADDR, params); - A91ReturnParam ret = Json.fromJson(A91ReturnParam.class, result); - if (ret.getResultCode() == 1) { - String con = URLDecoder.decode(ret.getContent(), "utf-8"); - String temp = platformConfig.getConfig().getString("appid") + ret.getResultCode() + con + platformConfig.getConfig().getString("secret"); - String sign1 = Lang.md5(temp); - if (sign1.equalsIgnoreCase(ret.getSign())) { - A91UserInfo info = Json.fromJson(A91UserInfo.class, new String(Base64.decode(con))); - return new Profile(getProviderId(), info.getUID(), param.getPid()); - } - } else { - log.error(result); - } - return null; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/a91/A91ReturnParam.java b/src/main/java/com/rekoe/mobile/provider/a91/A91ReturnParam.java deleted file mode 100644 index badf9c5..0000000 --- a/src/main/java/com/rekoe/mobile/provider/a91/A91ReturnParam.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.rekoe.mobile.provider.a91; - -import org.nutz.json.JsonField; - -public class A91ReturnParam { - - @JsonField("AppID") - private int appID; - @JsonField("ResultCode") - private int resultCode; - @JsonField("ResultMsg") - private String resultMsg; - @JsonField("Sign") - private String sign; - @JsonField("Content") - private String content; - - - - public int getAppID() { - return appID; - } - public void setAppID(int appID) { - this.appID = appID; - } - public int getResultCode() { - return resultCode; - } - public void setResultCode(int resultCode) { - this.resultCode = resultCode; - } - public String getResultMsg() { - return resultMsg; - } - public void setResultMsg(String resultMsg) { - this.resultMsg = resultMsg; - } - public String getSign() { - return sign; - } - public void setSign(String sign) { - this.sign = sign; - } - public String getContent() { - return content; - } - public void setContent(String content) { - this.content = content; - } - - - -} diff --git a/src/main/java/com/rekoe/mobile/provider/a91/A91UserInfo.java b/src/main/java/com/rekoe/mobile/provider/a91/A91UserInfo.java deleted file mode 100644 index 23198dd..0000000 --- a/src/main/java/com/rekoe/mobile/provider/a91/A91UserInfo.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.rekoe.mobile.provider.a91; - -public class A91UserInfo { - private String UID; - - public String getUID() { - return UID; - } - - public void setUID(String uID) { - UID = uID; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/google/GoogleParam.java b/src/main/java/com/rekoe/mobile/provider/google/GoogleParam.java deleted file mode 100644 index a370267..0000000 --- a/src/main/java/com/rekoe/mobile/provider/google/GoogleParam.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.rekoe.mobile.provider.google; - -import java.io.Serializable; - -import com.rekoe.mobile.provider.googlep.GooglePParam; -import com.rekoe.utils.Constants; - -public class GoogleParam extends GooglePParam implements Serializable { - - private static final long serialVersionUID = -1122775243733543089L; - - @Override - public String getProviderId() { - return Constants.GOOGLE; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/google/GoogleProvider.java b/src/main/java/com/rekoe/mobile/provider/google/GoogleProvider.java deleted file mode 100644 index 08139a6..0000000 --- a/src/main/java/com/rekoe/mobile/provider/google/GoogleProvider.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.rekoe.mobile.provider.google; - -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.mobile.provider.googlep.GooglePProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.GOOGLE) -public class GoogleProvider extends GooglePProvider { - - private static final long serialVersionUID = 7944880275608182543L; - - @Override - public String getProviderId() { - return Constants.GOOGLE; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/googlep/GooglePParam.java b/src/main/java/com/rekoe/mobile/provider/googlep/GooglePParam.java deleted file mode 100644 index 92880ed..0000000 --- a/src/main/java/com/rekoe/mobile/provider/googlep/GooglePParam.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.rekoe.mobile.provider.googlep; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class GooglePParam extends AbstractParam implements Serializable { - - private static final long serialVersionUID = -1122775243733543089L; - - private String token; - - private int pid; - - public GooglePParam() { - } - - @Override - public String getProviderId() { - return Constants.GOOGLE_PLAY; - } - - @Override - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public String getToken() { - return token; - } - - public void setToken(String token) { - this.token = token; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/googlep/GooglePProvider.java b/src/main/java/com/rekoe/mobile/provider/googlep/GooglePProvider.java deleted file mode 100644 index 37b92c6..0000000 --- a/src/main/java/com/rekoe/mobile/provider/googlep/GooglePProvider.java +++ /dev/null @@ -1,141 +0,0 @@ -package com.rekoe.mobile.provider.googlep; - -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.lang3.StringUtils; -import org.nutz.http.Request; -import org.nutz.http.Request.METHOD; -import org.nutz.http.Sender; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.json.JsonFormat; -import org.nutz.lang.Lang; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.google.api.client.googleapis.auth.oauth2.GoogleCredential; -import com.google.api.client.http.HttpTransport; -import com.google.api.client.http.javanet.NetHttpTransport; -import com.google.api.client.json.jackson2.JacksonFactory; -import com.google.api.services.oauth2.Oauth2; -import com.google.api.services.oauth2.model.Tokeninfo; -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.domain.PlatformConfig; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.GOOGLE_PLAY) -public class GooglePProvider extends AbstractProvider { - - private static final long serialVersionUID = 7944880275608182543L; - private final static Log log = Logs.get(); - - private final HttpTransport TRANSPORT = new NetHttpTransport(); - private final JacksonFactory JSON_FACTORY = new JacksonFactory(); - - @Override - public String getProviderId() { - return Constants.GOOGLE_PLAY; - } - - /** - * https://developers.google.com/identity/sign-in/android/offline-access - */ - @Override - public Profile verifyResponse(GooglePParam param) throws Exception { - TokenStatus info = validToken(param); - if (info.isValid()) { - Profile profile = new Profile(getProviderId(), info.getGplus_id(), param.getPid()); - profile.addv(Profile.TOKEN, param.getToken()); - return profile; - } - log.errorf("Err message %s", info.getMessage()); - return null; - } - - private TokenStatus validToken(GooglePParam param) throws IOException { - PlatformConfig platformConfig = getPlatformConfig(param.getPid()); - String client_id = platformConfig.getConfig().getString("client_id"); - String applicationName = platformConfig.getConfig().getString("application_name", "zsdpay-1203"); - String accessToken = param.getToken(); - TokenStatus accessStatus = new TokenStatus(); - if (StringUtils.isNotBlank(accessToken)) { - try { - GoogleCredential credential = new GoogleCredential().setAccessToken(accessToken); - Oauth2 oauth2 = new Oauth2.Builder(TRANSPORT, JSON_FACTORY, credential).setApplicationName(applicationName).build(); - Tokeninfo tokenInfo = oauth2.tokeninfo().setAccessToken(accessToken).execute(); - if (tokenInfo.containsKey("error")) { - accessStatus.setValid(false); - accessStatus.setId(""); - accessStatus.setMessage("Invalid Access Token."); - } else if (!Lang.equals(client_id, tokenInfo.getIssuedTo())) { - accessStatus.setValid(false); - accessStatus.setId(""); - accessStatus.setMessage("Access Token not meant for this app."); - } else { - accessStatus.setValid(true); - accessStatus.setId(tokenInfo.getUserId()); - accessStatus.setMessage("Access Token is valid."); - } - } catch (IOException e) { - accessStatus.setValid(false); - accessStatus.setId(""); - accessStatus.setMessage("Invalid Access Token."); - } - } else { - accessStatus.setMessage("Access Token not provided"); - } - return accessStatus; - } - - public static void main(String[] args) { - HttpTransport TRANSPORT = new NetHttpTransport(); - JacksonFactory JSON_FACTORY = new JacksonFactory(); - String applicationName = "zsdpay-1203"; - String token = "ya29.fgLVUDBWXuM91LAtvMdBXXWhCmKctjb44SK7Th8BO1yQ3DLfe3n_85Xi7PeLtQFsGEGOpQ"; - String client_id = "232182541248-8guj6heku6vpgdb7a3shmco33ns69lpm.apps.googleusercontent.com"; - String accessToken = token; - TokenStatus accessStatus = new TokenStatus(); - if (StringUtils.isNotBlank(accessToken)) { - try { - GoogleCredential credential = new GoogleCredential().setAccessToken(accessToken); - Oauth2 oauth2 = new Oauth2.Builder(TRANSPORT, JSON_FACTORY, credential).setApplicationName(applicationName).build(); - Tokeninfo tokenInfo = oauth2.tokeninfo().setAccessToken(accessToken).execute(); - if (tokenInfo.containsKey("error")) { - accessStatus.setValid(false); - accessStatus.setId(""); - accessStatus.setMessage("Invalid Access Token."); - } else if (!Lang.equals(client_id, tokenInfo.getIssuedTo())) { - accessStatus.setValid(false); - accessStatus.setId(""); - accessStatus.setMessage("Access Token not meant for this app."); - } else { - accessStatus.setValid(true); - accessStatus.setId(tokenInfo.getUserId()); - accessStatus.setMessage("Access Token is valid."); - } - } catch (IOException e) { - accessStatus.setValid(false); - accessStatus.setId(""); - accessStatus.setMessage("Invalid Access Token."); - } - } else { - accessStatus.setMessage("Access Token not provided"); - } - System.out.println(Json.toJson(accessStatus)); - } - - public static void main1(String[] args) { - Request req = Request.create("http://127.0.0.1:8080/api/list?pfid=1006200110011004", METHOD.POST); - req.getHeader().set("Content-Type", "application/octet-stream;charset=UTF-8"); - Map params = new HashMap(); - params.put("pid", 1001); - params.put("token", "ya29.dgJTpUrOQ9g1RHfXKXimjWHNSTKW5OPpb9--W51L_J5_u8anU_je2gAFFa4br_0NsRJY5g"); - req.setData(Json.toJson(params, JsonFormat.compact())); - Sender.create(req).setTimeout(6000).send(); - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/googlep/TokenStatus.java b/src/main/java/com/rekoe/mobile/provider/googlep/TokenStatus.java deleted file mode 100644 index c10dcab..0000000 --- a/src/main/java/com/rekoe/mobile/provider/googlep/TokenStatus.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.rekoe.mobile.provider.googlep; - -public class TokenStatus { - - private boolean valid; - private String gplus_id; - private String message; - - public TokenStatus() { - valid = false; - gplus_id = ""; - message = ""; - } - - public void setValid(boolean v) { - this.valid = v; - } - - public void setId(String gplus_id) { - this.gplus_id = gplus_id; - } - - public void setMessage(String message) { - this.message = message; - } - - public String getGplus_id() { - return gplus_id; - } - - public void setGplus_id(String gplus_id) { - this.gplus_id = gplus_id; - } - - public boolean isValid() { - return valid; - } - - public String getMessage() { - return message; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/guest/GuestParam.java b/src/main/java/com/rekoe/mobile/provider/guest/GuestParam.java deleted file mode 100644 index 9820ea6..0000000 --- a/src/main/java/com/rekoe/mobile/provider/guest/GuestParam.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.rekoe.mobile.provider.guest; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class GuestParam extends AbstractParam implements Serializable { - - private static final long serialVersionUID = 1240692439054026809L; - private String openid; - private int pid; - - public GuestParam() { - super(); - } - - public GuestParam(int pid, String passportid) { - super(); - this.openid = passportid; - this.pid = pid; - } - - public String getOpenid() { - return openid; - } - - public void setOpenid(String openid) { - this.openid = openid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - @Override - public String getProviderId() { - return Constants.GUEST; - } - - @Override - public int getPid() { - return this.pid; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/guest/GuestProvider.java b/src/main/java/com/rekoe/mobile/provider/guest/GuestProvider.java deleted file mode 100644 index 67fb3b5..0000000 --- a/src/main/java/com/rekoe/mobile/provider/guest/GuestProvider.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.rekoe.mobile.provider.guest; - -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.GUEST) -public class GuestProvider extends AbstractProvider { - - private static final long serialVersionUID = 2882126009485835543L; - - @Override - public Profile verifyResponse(GuestParam param) throws Exception { - return new Profile(getProviderId(), param.getOpenid(), param.getPid()); - } - - @Override - public String getProviderId() { - return Constants.GUEST; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/hw/HwParam.java b/src/main/java/com/rekoe/mobile/provider/hw/HwParam.java deleted file mode 100644 index c9ebe8d..0000000 --- a/src/main/java/com/rekoe/mobile/provider/hw/HwParam.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.rekoe.mobile.provider.hw; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class HwParam extends AbstractParam implements Serializable { - - private static final long serialVersionUID = -1122775243733543089L; - private String accessToken; - private int pid; - - public HwParam() { - } - - @Override - public String getProviderId() { - return Constants.HW; - } - - @Override - public int getPid() { - return pid; - } - - public String getAccessToken() { - return accessToken; - } - - public void setAccessToken(String accessToken) { - this.accessToken = accessToken; - } - - public void setPid(int pid) { - this.pid = pid; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/hw/HwProvider.java b/src/main/java/com/rekoe/mobile/provider/hw/HwProvider.java deleted file mode 100644 index 24f5412..0000000 --- a/src/main/java/com/rekoe/mobile/provider/hw/HwProvider.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.rekoe.mobile.provider.hw; - -import java.io.IOException; - -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.lang.Lang; -import org.nutz.lang.Strings; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.HW) -public class HwProvider extends AbstractProvider { - - private static final long serialVersionUID = 7944880275608182543L; - private final static Log log = Logs.get(); - // 验证accessToken地址 - private static final String VALID_TOKEN_ADDR = "https://api.vmall.com/rest.php"; - - @Override - public String getProviderId() { - return Constants.HW; - } - - @Override - public Profile verifyResponse(HwParam param) throws Exception { - UserInfo info = validToken(param); - if (!Lang.isEmpty(info) && !Strings.isBlank(info.getUserID())) { - return new Profile(getProviderId(), info.getUserID(), param.getPid()); - } else { - log.errorf("Can`t find user info on platform %s", getProviderId()); - } - - return null; - } - - private UserInfo validToken(HwParam param) throws IOException { - if (Lang.isEmpty(param)) { - log.errorf("Can`t get %s Param", getProviderId()); - return null; - } - String accessToken = param.getAccessToken(); - if (!Strings.isBlank(accessToken)) { - String postBody = "nsp_svc=OpenUP.User.getInfo&nsp_ts="; - postBody += String.valueOf(System.currentTimeMillis() / 1000); - postBody += "&access_token=" + java.net.URLEncoder.encode(accessToken, "utf-8"); - - String result = httpsPostBody(VALID_TOKEN_ADDR, postBody); - return Json.fromJson(UserInfo.class, result); - } else { - log.errorf("%s access token is missing %s", getProviderId(), accessToken); - } - return null; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/hw/UserInfo.java b/src/main/java/com/rekoe/mobile/provider/hw/UserInfo.java deleted file mode 100644 index 6c33b3d..0000000 --- a/src/main/java/com/rekoe/mobile/provider/hw/UserInfo.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.rekoe.mobile.provider.hw; - -public class UserInfo { - private String userID; - - private String userName; - - private String languageCode; - - private int userState; - - private int userValidStatus; - - /** - * @return the userID - */ - public String getUserID(){ - return userID; - } - - /** - * @param userID the userID to set - */ - public void setUserID(String userID){ - this.userID = userID; - } - - /** - * @return the userName - */ - public String getUserName(){ - return userName; - } - - /** - * @param userName the userName to set - */ - public void setUserName(String userName){ - this.userName = userName; - } - - /** - * @return the languageCode - */ - public String getLanguageCode(){ - return languageCode; - } - - /** - * @param languageCode the languageCode to set - */ - public void setLanguageCode(String languageCode){ - this.languageCode = languageCode; - } - - /** - * @return the userState - */ - public int getUserState(){ - return userState; - } - - /** - * @param userState the userState to set - */ - public void setUserState(int userState){ - this.userState = userState; - } - - /** - * @return the userValidStatus - */ - public int getUserValidStatus(){ - return userValidStatus; - } - - /** - * @param userValidStatus the userValidStatus to set - */ - public void setUserValidStatus(int userValidStatus){ - this.userValidStatus = userValidStatus; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/msdk/MSDKParam.java b/src/main/java/com/rekoe/mobile/provider/msdk/MSDKParam.java deleted file mode 100644 index 4d2f4c1..0000000 --- a/src/main/java/com/rekoe/mobile/provider/msdk/MSDKParam.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.rekoe.mobile.provider.msdk; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class MSDKParam extends AbstractParam implements Serializable { - private static final long serialVersionUID = -8345954529141180606L; - private String openid; - private String ip; - - public String getIp() { - return ip; - } - - public void setIp(String ip) { - this.ip = ip; - } - - private int pid; - - public String getOpenid() { - return openid; - } - - public void setOpenid(String openid) { - this.openid = openid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - @Override - public String getProviderId() { - return Constants.MSDK; - } - - @Override - public int getPid() { - return pid; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/msdk/MSDKProvider.java b/src/main/java/com/rekoe/mobile/provider/msdk/MSDKProvider.java deleted file mode 100644 index edd5fcc..0000000 --- a/src/main/java/com/rekoe/mobile/provider/msdk/MSDKProvider.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.rekoe.mobile.provider.msdk; - -import java.util.HashMap; -import java.util.Map; - -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.json.JsonFormat; -import org.nutz.lang.Lang; -import org.nutz.lang.util.NutMap; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.domain.PlatformConfig; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -/** - * - * @author kouxian - * - */ -@IocBean -@PlatformProvider(name = Constants.MSDK) -public class MSDKProvider extends AbstractProvider { - - private static final long serialVersionUID = 2882126009485835543L; - - private final static Log log = Logs.get(); - - public final static String MSDK_PROFILE = "MSDK_PROFILE"; - public final static String MSDK_PARAM = "MSDK_PARAM"; - - @Override - public String getProviderId() { - return Constants.MSDK; - } - - @Override - public Profile verifyResponse(MSDKParam p) throws Exception { - PlatformConfig platformConfig = getPlatformConfig(p.getPid()); - NutMap config = platformConfig.getConfig(); - String appkey = config.getString("appkey"); - long appid = config.getAs("appid", Long.class); - Map params = new HashMap(); - params.put("appid", appid); - params.put("openid", p.getOpenid()); - params.put("openkey", appkey); - params.put("userip", p.getIp()); - String uri = makeUri(p.getOpenid(), appid, appkey); - String url = config.getString("valid_token_url") + uri; - String data = Json.toJson(params, JsonFormat.compact()); - if (log.isDebugEnabled()) { - log.debugf("url >> %s", url); - } - String res = httpPostBody(url, data); - if (log.isDebugEnabled()) { - log.debugf("back >> %s", res); - } - try { - MSDKUserInfo userInfo = Json.fromJson(MSDKUserInfo.class, res); - if (userInfo.getRet() == 0) { - Profile profile = new Profile(getProviderId(), p.getOpenid(), p.getPid()); - profile.addv(MSDK_PROFILE, p); - profile.addv(MSDK_PARAM, userInfo); - profile.addv(Profile.TOKEN, p.getOpenid()); - return profile; - } else { - log.error(res); - } - } catch (Exception e) { - log.error(e); - } - return null; - } - - private String makeUri(String openid, long appid, String appkey) { - long timestamp = System.currentTimeMillis(); - String sig = Lang.md5(appkey + timestamp); - return new StringBuilder().append("/?timestamp=").append(timestamp).append("&appid=").append(appid).append("&sig=").append(sig).append("&openid=").append(openid).append("&encode=1").toString(); - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/mobile/provider/msdk/MSDKUserInfo.java b/src/main/java/com/rekoe/mobile/provider/msdk/MSDKUserInfo.java deleted file mode 100644 index f9d7009..0000000 --- a/src/main/java/com/rekoe/mobile/provider/msdk/MSDKUserInfo.java +++ /dev/null @@ -1,204 +0,0 @@ -package com.rekoe.mobile.provider.msdk; - -import java.io.Serializable; - -import org.nutz.json.JsonField; - -public class MSDKUserInfo implements Serializable { - - private static final long serialVersionUID = 580303315270742465L; - - private int ret = -1; - @JsonField(value = "is_lost") - private int isLost = 1; - private String nickname; - private String gender; - private String country; - private String province; - private String city; - private String figureurl; - @JsonField(value = "is_yellow_vip") - private int isYellowVip; - @JsonField(value = "is_yellow_year_vip") - private int isYellowYearVip; - @JsonField(value = "yellow_vip_level") - private int yellowVipLevel; - @JsonField(value = "is_yellow_high_vip") - private int isYellowHighVip; - @JsonField(value = "is_blue_vip") - private boolean isBlueVip; - @JsonField(value = "is_blue_year_vip") - private boolean isBlueYearVip; - @JsonField(value = "is_super_blue_vip") - private boolean isSuperBlueVip; - @JsonField(value = "blue_vip_level") - private int blueVipLevel; - @JsonField(value = "a3366_level") - private int a3366Level; - @JsonField(value = "a3366_level_name") - private String a3366LevelName; - @JsonField(value = "a3366_grow_level") - private int a3366GrowLevel; - @JsonField(value = "a3366_grow_value") - private int a3366GrowValue; - - public int getRet() { - return ret; - } - - public void setRet(int ret) { - this.ret = ret; - } - - public int getIsLost() { - return isLost; - } - - public void setIsLost(int isLost) { - this.isLost = isLost; - } - - public String getNickname() { - return nickname; - } - - public void setNickname(String nickname) { - this.nickname = nickname; - } - - public String getGender() { - return gender; - } - - public void setGender(String gender) { - this.gender = gender; - } - - public String getCountry() { - return country; - } - - public void setCountry(String country) { - this.country = country; - } - - public String getProvince() { - return province; - } - - public void setProvince(String province) { - this.province = province; - } - - public String getCity() { - return city; - } - - public void setCity(String city) { - this.city = city; - } - - public String getFigureurl() { - return figureurl; - } - - public void setFigureurl(String figureurl) { - this.figureurl = figureurl; - } - - public int getIsYellowVip() { - return isYellowVip; - } - - public void setIsYellowVip(int isYellowVip) { - this.isYellowVip = isYellowVip; - } - - public int getIsYellowYearVip() { - return isYellowYearVip; - } - - public void setIsYellowYearVip(int isYellowYearVip) { - this.isYellowYearVip = isYellowYearVip; - } - - public int getYellowVipLevel() { - return yellowVipLevel; - } - - public void setYellowVipLevel(int yellowVipLevel) { - this.yellowVipLevel = yellowVipLevel; - } - - public int getIsYellowHighVip() { - return isYellowHighVip; - } - - public void setIsYellowHighVip(int isYellowHighVip) { - this.isYellowHighVip = isYellowHighVip; - } - - public boolean isBlueVip() { - return isBlueVip; - } - - public void setBlueVip(boolean isBlueVip) { - this.isBlueVip = isBlueVip; - } - - public boolean isBlueYearVip() { - return isBlueYearVip; - } - - public void setBlueYearVip(boolean isBlueYearVip) { - this.isBlueYearVip = isBlueYearVip; - } - - public boolean isSuperBlueVip() { - return isSuperBlueVip; - } - - public void setSuperBlueVip(boolean isSuperBlueVip) { - this.isSuperBlueVip = isSuperBlueVip; - } - - public int getBlueVipLevel() { - return blueVipLevel; - } - - public void setBlueVipLevel(int blueVipLevel) { - this.blueVipLevel = blueVipLevel; - } - - public int getA3366Level() { - return a3366Level; - } - - public void setA3366Level(int a3366Level) { - this.a3366Level = a3366Level; - } - - public String getA3366LevelName() { - return a3366LevelName; - } - - public void setA3366LevelName(String a3366LevelName) { - this.a3366LevelName = a3366LevelName; - } - - public int getA3366GrowLevel() { - return a3366GrowLevel; - } - - public void setA3366GrowLevel(int a3366GrowLevel) { - this.a3366GrowLevel = a3366GrowLevel; - } - - public int getA3366GrowValue() { - return a3366GrowValue; - } - - public void setA3366GrowValue(int a3366GrowValue) { - this.a3366GrowValue = a3366GrowValue; - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/mobile/provider/qihu360/QiHu360Param.java b/src/main/java/com/rekoe/mobile/provider/qihu360/QiHu360Param.java deleted file mode 100644 index 71924bc..0000000 --- a/src/main/java/com/rekoe/mobile/provider/qihu360/QiHu360Param.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.rekoe.mobile.provider.qihu360; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class QiHu360Param extends AbstractParam implements Serializable { - - private static final long serialVersionUID = -4558333251854028360L; - private String sessionid; - private int pid; - - public String getSessionid() { - return sessionid; - } - - public void setSessionid(int pid, String sessionid) { - this.sessionid = sessionid; - this.pid = pid; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public void setSessionid(String sessionid) { - this.sessionid = sessionid; - } - - @Override - public String getProviderId() { - return Constants.QIHU360; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/qihu360/QiHu360Provider.java b/src/main/java/com/rekoe/mobile/provider/qihu360/QiHu360Provider.java deleted file mode 100644 index ffae446..0000000 --- a/src/main/java/com/rekoe/mobile/provider/qihu360/QiHu360Provider.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.rekoe.mobile.provider.qihu360; - -import java.util.HashMap; -import java.util.Map; - -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Strings; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.QIHU360) -public class QiHu360Provider extends AbstractProvider { - - private static final long serialVersionUID = 2882126009485835543L; - - private static final Map ENDPOINTS; - - static { - ENDPOINTS = new HashMap(); - ENDPOINTS.put(Constants.OAUTH_AUTHORIZATION_URL, "https://openapi.360.cn/user/me.json?access_token="); - } - - @Override - public String getProviderId() { - return Constants.QIHU360; - } - - @Override - public Profile verifyResponse(QiHu360Param param) throws Exception { - String params = HttpsGet((ENDPOINTS.get(Constants.OAUTH_AUTHORIZATION_URL) + param.getSessionid())); - if (!Strings.isBlank(params)) { - Map result = result2Json(params, String.class); - String userId = result.get("id"); - if (!Strings.isBlank(params)) { - return new Profile(getProviderId(), userId, param.getPid()); - } - } - return null; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/qq/QQParam.java b/src/main/java/com/rekoe/mobile/provider/qq/QQParam.java deleted file mode 100644 index 4366e2d..0000000 --- a/src/main/java/com/rekoe/mobile/provider/qq/QQParam.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.rekoe.mobile.provider.qq; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class QQParam extends AbstractParam implements Serializable { - - private static final long serialVersionUID = -4898427425935858898L; - private String openid; - private String openkey; - private String pf; - private String platform; - - public String getPlatform() { - return platform; - } - - public void setPlatform(String platform) { - this.platform = platform; - } - - public String getPf() { - return pf; - } - - public void setPf(String pf) { - this.pf = pf; - } - - private int pid; - - public String getOpenid() { - return openid; - } - - public void setOpenid(String openid) { - this.openid = openid; - } - - public String getOpenkey() { - return openkey; - } - - public void setOpenkey(String openkey) { - this.openkey = openkey; - } - - public void setPid(int pid) { - this.pid = pid; - } - - @Override - public String getProviderId() { - return Constants.QQ; - } - - @Override - public int getPid() { - return pid; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/qq/QQProvider.java b/src/main/java/com/rekoe/mobile/provider/qq/QQProvider.java deleted file mode 100644 index 36155b7..0000000 --- a/src/main/java/com/rekoe/mobile/provider/qq/QQProvider.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.rekoe.mobile.provider.qq; - -import java.io.UnsupportedEncodingException; -import java.net.URLEncoder; - -import javax.crypto.Mac; -import javax.crypto.spec.SecretKeySpec; - -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.json.JsonFormat; -import org.nutz.lang.Strings; -import org.nutz.log.Log; -import org.nutz.log.Logs; -import org.nutz.repo.Base64; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.domain.PlatformConfig; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.QQ) -public class QQProvider extends AbstractProvider { - - private static final long serialVersionUID = 2882126009485835543L; - - private final static Log log = Logs.get(); - - public final static String QQPARAM_KEY = "param"; - public final static String USERINFO_KEY = "userinfo"; - - @Override - public String getProviderId() { - return Constants.QQ; - } - - @Override - public Profile verifyResponse(QQParam p) throws Exception { - PlatformConfig platformConfig = getPlatformConfig(p.getPid()); - String appkey = platformConfig.getConfig().getString("appkey"); - String appid = platformConfig.getConfig().getString("appid"); - String validateUrl = platformConfig.getConfig().getString("validate_url"); - String uri = paramEncode("/v3/user/get_info"); - String param = "appid=" + appid + "&format=json&openid=" + p.getOpenid() + "&openkey=" + p.getOpenkey() + "&pf=" + p.getPf(); - String get = "GET&" + uri + "&" + paramEncode(param); - String sig = getSignature(get, appkey); - String url = validateUrl + "/v3/user/get_info?openid=" + paramEncode(p.getOpenid()) + "&openkey=" + paramEncode(p.getOpenkey()) + "&appid=" + appid + "&sig=" + paramEncode(sig) + "&pf=" + paramEncode(p.getPf()) + "&format=" + paramEncode("json"); - String qqRes = HttpGet(url); - QQUserInfo userInf = Json.fromJson(QQUserInfo.class, qqRes); - if (userInf.getRet() == 0) {// , - Profile profile = new Profile(getProviderId(), p.getOpenid(), p.getPid()); - profile.addv(USERINFO_KEY, userInf); - profile.addv(QQPARAM_KEY, p); - return profile; - } else { - log.errorf("ProviderId >> %s,Param >> %s", getProviderId(), Json.toJson(p, JsonFormat.compact())); - log.error(qqRes); - } - return null; - } - - private String paramEncode(String param) throws UnsupportedEncodingException { - return URLEncoder.encode(Strings.isBlank(param) ? "" : param, "UTF-8"); - } - - private final String HMAC_SHA1 = "HmacSHA1"; - - public String getSignature(String data, String key) throws Exception { - key += "&"; - data = encodeCompnentURL(data); - byte[] keyBytes = key.getBytes(); - SecretKeySpec signingKey = new SecretKeySpec(keyBytes, HMAC_SHA1); - Mac mac = Mac.getInstance(HMAC_SHA1); - mac.init(signingKey); - byte[] rawHmac = mac.doFinal(data.getBytes()); - return Base64.encodeToString(rawHmac, false); - } - - private String encodeCompnentURL(String url) throws UnsupportedEncodingException { - String temp = url.replace("*", "%2A"); - return temp; - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/mobile/provider/qq/QQUserInfo.java b/src/main/java/com/rekoe/mobile/provider/qq/QQUserInfo.java deleted file mode 100644 index 7b62f5e..0000000 --- a/src/main/java/com/rekoe/mobile/provider/qq/QQUserInfo.java +++ /dev/null @@ -1,208 +0,0 @@ -package com.rekoe.mobile.provider.qq; - -import java.io.Serializable; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -public class QQUserInfo implements Serializable { - - private static final long serialVersionUID = -6009549946309845409L; - private int ret = -1; - private int is_lost = 1; - private String nickname; - private String gender; - private String country; - private String province; - private String city; - private String figureurl; - private int is_yellow_vip; - private int is_yellow_year_vip; - private int yellow_vip_level; - private int is_yellow_high_vip; - // 是否蓝钻,是返回蓝钻等级,不是返回-1 - private boolean is_blue_vip; - // 是否年费蓝钻 - private boolean is_blue_year_vip; - // 也许是豪华蓝钻 - private boolean is_super_blue_vip; - // 蓝钻等级 - private int blue_vip_level; - private int a3366_level; - private String a3366_level_name; - private int a3366_grow_level; - private int a3366_grow_value; - - public int getA3366_level() { - return a3366_level; - } - - public void setA3366_level(int a3366_level) { - this.a3366_level = a3366_level; - } - - public String getA3366_level_name() { - return a3366_level_name; - } - - public void setA3366_level_name(String a3366_level_name) { - this.a3366_level_name = a3366_level_name; - } - - public int getA3366_grow_level() { - return a3366_grow_level; - } - - public void setA3366_grow_level(int a3366_grow_level) { - this.a3366_grow_level = a3366_grow_level; - } - - public int getA3366_grow_value() { - return a3366_grow_value; - } - - public void setA3366_grow_value(int a3366_grow_value) { - this.a3366_grow_value = a3366_grow_value; - } - - public int getRet() { - return ret; - } - - public void setRet(int ret) { - this.ret = ret; - } - - public int getIs_lost() { - return is_lost; - } - - public void setIs_lost(int is_lost) { - this.is_lost = is_lost; - } - - public String getNickname() { - return nickname; - } - - public void setNickname(String nickname) { - if (!checkName(nickname)) - this.nickname = nickname; - } - - public String getGender() { - return gender; - } - - public void setGender(String gender) { - this.gender = gender; - } - - public String getCountry() { - return country; - } - - public void setCountry(String country) { - this.country = country; - } - - public String getProvince() { - return province; - } - - public void setProvince(String province) { - this.province = province; - } - - public String getCity() { - return city; - } - - public void setCity(String city) { - this.city = city; - } - - public String getFigureurl() { - return figureurl; - } - - public void setFigureurl(String figureurl) { - this.figureurl = figureurl; - } - - public int getIs_yellow_vip() { - return is_yellow_vip; - } - - public void setIs_yellow_vip(int is_yellow_vip) { - this.is_yellow_vip = is_yellow_vip; - } - - public int getIs_yellow_year_vip() { - return is_yellow_year_vip; - } - - public void setIs_yellow_year_vip(int is_yellow_year_vip) { - this.is_yellow_year_vip = is_yellow_year_vip; - } - - public int getYellow_vip_level() { - return yellow_vip_level; - } - - public void setYellow_vip_level(int yellow_vip_level) { - this.yellow_vip_level = yellow_vip_level; - } - - public int getIs_yellow_high_vip() { - return is_yellow_high_vip; - } - - public void setIs_yellow_high_vip(int is_yellow_high_vip) { - this.is_yellow_high_vip = is_yellow_high_vip; - } - - public boolean isIs_blue_vip() { - return is_blue_vip; - } - - public void setIs_blue_vip(boolean is_blue_vip) { - this.is_blue_vip = is_blue_vip; - } - - public boolean isIs_blue_year_vip() { - return is_blue_year_vip; - } - - public void setIs_blue_year_vip(boolean is_blue_year_vip) { - this.is_blue_year_vip = is_blue_year_vip; - } - - public boolean isIs_super_blue_vip() { - return is_super_blue_vip; - } - - public void setIs_super_blue_vip(boolean is_super_blue_vip) { - this.is_super_blue_vip = is_super_blue_vip; - } - - public int getBlue_vip_level() { - return blue_vip_level; - } - - public void setBlue_vip_level(int blue_vip_level) { - this.blue_vip_level = blue_vip_level; - } - - public static boolean checkName(String name) { - if (isMatches("[\\w]*", name)) - return false; - return isMatches("[\u1F601-\u1F64F]+", name); - } - - public static boolean isMatches(String regex, String str) { - Pattern p = Pattern.compile(regex); - Matcher m = p.matcher(str); - boolean b = m.matches(); - return b; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/rk/RKParam.java b/src/main/java/com/rekoe/mobile/provider/rk/RKParam.java deleted file mode 100644 index 2a35b0b..0000000 --- a/src/main/java/com/rekoe/mobile/provider/rk/RKParam.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.rekoe.mobile.provider.rk; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class RKParam extends AbstractParam implements Serializable { - - private static final long serialVersionUID = 1240692439054026809L; - private String code; - - private int pid; - - public RKParam() { - super(); - } - - public void setPid(int pid) { - this.pid = pid; - } - - @Override - public String getProviderId() { - return Constants.RK; - } - - @Override - public int getPid() { - return this.pid; - } - - public String getCode() { - return code; - } - - public void setCode(String code) { - this.code = code; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/rk/RKProvider.java b/src/main/java/com/rekoe/mobile/provider/rk/RKProvider.java deleted file mode 100644 index e29ddb8..0000000 --- a/src/main/java/com/rekoe/mobile/provider/rk/RKProvider.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.rekoe.mobile.provider.rk; - -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.lang3.StringUtils; -import org.nutz.http.Http; -import org.nutz.http.Response; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.lang.util.NutMap; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.domain.PlatformConfig; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.RK) -public class RKProvider extends AbstractProvider { - - private static final long serialVersionUID = 2882126009485835543L; - - private final static Log log = Logs.get(); - - private final static String TOKEN_VALIDATE = "/oauth/accessToken"; - private final static String TOKEN_FOR_USER = "/v1/openapi/userinfo?access_token="; - - @Override - public Profile verifyResponse(RKParam param) throws Exception { - String code = param.getCode(); - PlatformConfig platformConfig = getPlatformConfig(param.getPid()); - String clientId = platformConfig.getConfig().getString("client_id"); - String grantType = platformConfig.getConfig().getString("grant_type"); - String clientSecret = platformConfig.getConfig().getString("client_secret"); - String redirectUri = platformConfig.getConfig().getString("redirect_uri"); - String validateUrl = platformConfig.getConfig().getString("validate_url"); - Map params = new HashMap(); - params.put("client_id", clientId); - params.put("grant_type", grantType); - params.put("client_secret", clientSecret); - params.put("code", code); - params.put("redirect_uri", redirectUri); - try { - Response res = Http.post2(validateUrl + TOKEN_VALIDATE, params, 60); - if (res.isOK()) { - String resultToken = res.getContent(); - NutMap map = Json.fromJson(NutMap.class, resultToken); - String accessToken = map.getString("access_token"); - params.clear(); - if (StringUtils.isNotBlank(accessToken)) { - params.put("access_token", accessToken); - String resultvValidateToken = Http.get(validateUrl + TOKEN_FOR_USER + accessToken).getContent(); - NutMap userInfo = Json.fromJson(NutMap.class, resultvValidateToken); - return new Profile(getProviderId(), userInfo.getString("uid"), param.getPid()); - } - log.error(resultToken); - } - } catch (Exception e) { - log.errorf("url:[%s]", validateUrl); - } - return null; - } - - @Override - public String getProviderId() { - return Constants.RK; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/sg/SGParam.java b/src/main/java/com/rekoe/mobile/provider/sg/SGParam.java deleted file mode 100644 index b84a564..0000000 --- a/src/main/java/com/rekoe/mobile/provider/sg/SGParam.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.rekoe.mobile.provider.sg; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class SGParam extends AbstractParam implements Serializable { - - private static final long serialVersionUID = 1240692439054026809L; - private String openid; - private int pid; - - public SGParam() { - super(); - } - - public SGParam(int pid, String passportid) { - super(); - this.openid = passportid; - this.pid = pid; - } - - public String getOpenid() { - return openid; - } - - public void setOpenid(String openid) { - this.openid = openid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - @Override - public String getProviderId() { - return Constants.SG; - } - - @Override - public int getPid() { - return this.pid; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/sg/SGProvider.java b/src/main/java/com/rekoe/mobile/provider/sg/SGProvider.java deleted file mode 100644 index 80033df..0000000 --- a/src/main/java/com/rekoe/mobile/provider/sg/SGProvider.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.rekoe.mobile.provider.sg; - -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.SG) -public class SGProvider extends AbstractProvider { - - private static final long serialVersionUID = 2882126009485835543L; - - @Override - public Profile verifyResponse(SGParam param) throws Exception { - return new Profile(getProviderId(), param.getOpenid(), param.getPid()); - } - - @Override - public String getProviderId() { - return Constants.SG; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/uc/UCResponse.java b/src/main/java/com/rekoe/mobile/provider/uc/UCResponse.java deleted file mode 100644 index a332dc0..0000000 --- a/src/main/java/com/rekoe/mobile/provider/uc/UCResponse.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.rekoe.mobile.provider.uc; - -public class UCResponse { - - private UCResponseState state; - private UCResponseData data; - - public UCResponse(UCResponseState state, UCResponseData data) { - this.state = state; - this.data = data; - } - - public UCResponse(UCResponseState state) { - this.state = state; - } - - public UCResponseState getState() { - return state; - } - - public UCResponseData getData() { - return data; - } - - public void setData(UCResponseData data) { - this.data = data; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/uc/UCResponseData.java b/src/main/java/com/rekoe/mobile/provider/uc/UCResponseData.java deleted file mode 100644 index 21e68c8..0000000 --- a/src/main/java/com/rekoe/mobile/provider/uc/UCResponseData.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.rekoe.mobile.provider.uc; - -public class UCResponseData { - private String accountId; - private String nickName; - - public String getAccountId(){ - return accountId; - } - - public void setAccountId(String accountId){ - this.accountId = accountId; - } - - public String getNickName(){ - return nickName; - } - - public void setNickName(String nickName){ - this.nickName = nickName; - } -} diff --git a/src/main/java/com/rekoe/mobile/provider/uc/UCResponseState.java b/src/main/java/com/rekoe/mobile/provider/uc/UCResponseState.java deleted file mode 100644 index 2faef94..0000000 --- a/src/main/java/com/rekoe/mobile/provider/uc/UCResponseState.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.rekoe.mobile.provider.uc; - -public class UCResponseState { - - private int code; - private String msg; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public String getMsg() { - return msg; - } - - public void setMsg(String msg) { - this.msg = msg; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/uc/UcParam.java b/src/main/java/com/rekoe/mobile/provider/uc/UcParam.java deleted file mode 100644 index a084fe2..0000000 --- a/src/main/java/com/rekoe/mobile/provider/uc/UcParam.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.rekoe.mobile.provider.uc; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class UcParam extends AbstractParam implements Serializable{ - - private static final long serialVersionUID = -2473883638175694140L; - private String sid; - private int pid; - - public String getSid() { - return sid; - } - - public UcParam() { - } - - public UcParam(int pid, String sid) { - this.sid = sid; - this.pid = pid; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public void setSid(String sid) { - this.sid = sid; - } - - @Override - public String getProviderId() { - return Constants.UC; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/uc/UcProvider.java b/src/main/java/com/rekoe/mobile/provider/uc/UcProvider.java deleted file mode 100644 index 00dc75f..0000000 --- a/src/main/java/com/rekoe/mobile/provider/uc/UcProvider.java +++ /dev/null @@ -1,108 +0,0 @@ -package com.rekoe.mobile.provider.uc; - -import java.util.HashMap; -import java.util.Map; - -import org.nutz.http.Request; -import org.nutz.http.Request.METHOD; -import org.nutz.http.Response; -import org.nutz.http.Sender; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.json.JsonFormat; -import org.nutz.lang.Lang; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.domain.PlatformConfig; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; - -@IocBean -@PlatformProvider(name = Constants.UC) -public class UcProvider extends AbstractProvider { - - private static final long serialVersionUID = 2882126009485835543L; - private final static Log log = Logs.get(); - - @Override - public String getProviderId() { - return Constants.UC; - } - - @Override - public Profile verifyResponse(UcParam param) throws Exception { - PlatformConfig platformConfig = getPlatformConfig(param.getPid()); - String appkey = platformConfig.getConfig().getString("appkey"); - int appid = platformConfig.getConfig().getInt("appid"); - int secret = platformConfig.getConfig().getInt("secret"); - String validateUrl = platformConfig.getConfig().getString("validate_url"); - UCResponse response = response2(param.getSid(), appid, appkey, secret, validateUrl); - if (response.getState().getCode() == 1) { - Profile profile = new Profile(getProviderId(), response.getData().getAccountId(), param.getPid()); - profile.addv("token", param.getSid()); - return profile; - } - return null; - } - - @Deprecated - public UCResponse response(String sid, int appid, String appKey, String validateUrl) { - Map params = new HashMap<>(); - params.put("id", System.currentTimeMillis()); - params.put("service", "ucid.bind.create"); - params.put("sign", Lang.md5("gameUser=" + sid + appKey)); - Map gameParams = new HashMap<>(); - gameParams.put("gameId", appid); - params.put("game", gameParams); - Map dataParams = new HashMap<>(); - params.put("data", dataParams); - dataParams.put("gameUser", sid); - String json = httpPostBody(validateUrl, Json.toJson(params, JsonFormat.compact())); - Map m = Json.fromJsonAsMap(Object.class, json); - Object obj = m.get("state"); - UCResponseState state = Lang.map2Object((Map) obj, UCResponseState.class); - UCResponse res = new UCResponse(state); - if (state.getCode() == 1) { - res.setData(Lang.map2Object((Map) m.get("data"), UCResponseData.class)); - } else { - log.error(json); - } - return res; - } - - private UCResponse response2(String sid, int appid, String appKey, int secret, String validateUrl) { - Map params = new HashMap<>(); - params.put("id", System.currentTimeMillis()); - params.put("service", "ucid.user.sidInfo"); - params.put("encrypt", "md5"); - params.put("sign", Lang.md5(secret + "sid=" + sid + appKey)); - Map gameParams = new HashMap<>(); - gameParams.put("cpId", secret); - gameParams.put("gameId", appid); - gameParams.put("channelId", 2); - gameParams.put("serverId", 0); - params.put("game", gameParams); - Map dataParams = new HashMap<>(); - dataParams.put("sid", sid); - params.put("data", dataParams); - Request req = Request.create(validateUrl, METHOD.POST); - req.getHeader().set("Content-Type", "application/json:charset=utf-8 "); - req.setData(Json.toJson(params, JsonFormat.compact())); - Response resp = Sender.create(req).send(); - String json = resp.getContent(); - Map m = Json.fromJsonAsMap(Object.class, json); - Object obj = m.get("state"); - UCResponseState state = Lang.map2Object((Map) obj, UCResponseState.class); - UCResponse res = new UCResponse(state); - if (state.getCode() == 1) { - res.setData(Lang.map2Object((Map) m.get("data"), UCResponseData.class)); - } else { - log.error(json); - } - return res; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/xiaomi/XiaoMiParam.java b/src/main/java/com/rekoe/mobile/provider/xiaomi/XiaoMiParam.java deleted file mode 100644 index 7c35e65..0000000 --- a/src/main/java/com/rekoe/mobile/provider/xiaomi/XiaoMiParam.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.rekoe.mobile.provider.xiaomi; - -import java.io.Serializable; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.utils.Constants; - -public class XiaoMiParam extends AbstractParam implements Serializable { - - private static final long serialVersionUID = -5138092630114580043L; - private String uid; - private String token; - private int pid; - - public XiaoMiParam() { - super(); - } - - public XiaoMiParam(int pid, String uid, String token) { - super(); - this.uid = uid; - this.uid = token; - this.pid = pid; - } - - public String getUid() { - return uid; - } - - public void setUid(String uid) { - this.uid = uid; - } - - public String getToken() { - return token; - } - - public void setToken(String token) { - this.token = token; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - @Override - public String getProviderId() { - return Constants.XIAOMI; - } - -} diff --git a/src/main/java/com/rekoe/mobile/provider/xiaomi/XiaoMiProvider.java b/src/main/java/com/rekoe/mobile/provider/xiaomi/XiaoMiProvider.java deleted file mode 100644 index 332d63a..0000000 --- a/src/main/java/com/rekoe/mobile/provider/xiaomi/XiaoMiProvider.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.rekoe.mobile.provider.xiaomi; - -import java.text.MessageFormat; -import java.util.HashMap; -import java.util.Map; - -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.domain.PlatformConfig; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.utils.Constants; -import com.rekoe.utils.HmacSHA1Encryption; - -@IocBean -@PlatformProvider(name = Constants.XIAOMI) -public class XiaoMiProvider extends AbstractProvider { - - private static final long serialVersionUID = 2882126009485835543L; - - private final static Log log = Logs.get(); - - private final static String PARAM_URL_STR = "appId={0}&session={1}&uid={2}&signature={3}"; - private final static String ENCRYPT_TEXT = "appId={0}&session={1}&uid={2}"; - private static final Map ENDPOINTS; - - private final String ERROR_CODE = "{\"errcode\":-1}"; - static { - ENDPOINTS = new HashMap(); - ENDPOINTS.put(Constants.OAUTH_AUTHORIZATION_URL, "http://mis.migc.xiaomi.com/api/biz/service/verifySession.do?"); - } - - public Map checkUserAndroidMiLogin(String sdkUin, String sdkToken, String appid, String secret) throws Exception { - String encryptText = MessageFormat.format(ENCRYPT_TEXT, appid, sdkToken, sdkUin); - String signature = HmacSHA1Encryption.HmacSHA1Encrypt(encryptText, secret); - String getUrl = ENDPOINTS.get(Constants.OAUTH_AUTHORIZATION_URL) + MessageFormat.format(PARAM_URL_STR, appid, sdkToken, sdkUin, signature); - return result2Json(HttpGet(getUrl), Integer.class, ERROR_CODE); - } - - @Override - public String getProviderId() { - return Constants.XIAOMI; - } - - @Override - public Profile verifyResponse(XiaoMiParam param) throws Exception { - PlatformConfig platformConfig = getPlatformConfig(param.getPid()); - Map params = checkUserAndroidMiLogin(param.getUid(), param.getToken(), platformConfig.getConfig().getString("appid"), platformConfig.getConfig().getString("secret")); - if (params.get("errcode") == 200) { - return new Profile(getProviderId(), param.getUid(), param.getPid()); - } else { - log.errorf("ProviderId:%s,errCode:%s", getProviderId(), params); - } - return null; - } -} diff --git a/src/main/java/com/rekoe/module/AccessTokenModule.java b/src/main/java/com/rekoe/module/AccessTokenModule.java deleted file mode 100644 index 6ac6941..0000000 --- a/src/main/java/com/rekoe/module/AccessTokenModule.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.rekoe.module; - -import java.net.URISyntaxException; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.oltu.oauth2.as.issuer.MD5Generator; -import org.apache.oltu.oauth2.as.issuer.OAuthIssuer; -import org.apache.oltu.oauth2.as.issuer.OAuthIssuerImpl; -import org.apache.oltu.oauth2.as.request.OAuthTokenRequest; -import org.apache.oltu.oauth2.as.response.OAuthASResponse; -import org.apache.oltu.oauth2.common.OAuth; -import org.apache.oltu.oauth2.common.error.OAuthError; -import org.apache.oltu.oauth2.common.exception.OAuthProblemException; -import org.apache.oltu.oauth2.common.exception.OAuthSystemException; -import org.apache.oltu.oauth2.common.message.OAuthResponse; -import org.apache.oltu.oauth2.common.message.types.GrantType; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.POST; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.filter.OauthCrossOriginFilter; -import com.rekoe.service.OAuthService; -import com.rekoe.utils.Constants; - -@IocBean -@At("/oauth") -public class AccessTokenModule { - - @Inject - private OAuthService oAuthService; - - /** - * @api {post} /oauth/accessToken 换取accessToken - * - * @apiGroup User - * @apiVersion 1.0.0 - * @apiSampleRequest http://warlogin.shanggame.com/oauth/accessToken - * - * @apiParam {String} client_id 应用id - * @apiParam {String} client_secret 应用secret - * - * @apiParam {String} grant_type=authorization_code 用于传递授权码的参数名 - * @apiParam {String} code 用户登录授权后的授权码 - * @apiParam {String} [redirect_uri=http://www.rekoe.com] 回调地址 - * - * @apiSuccess {int} expires_in=3600 accessToken过期时间 单位(秒) - * @apiSuccess {String} access_token accessToken值 - * - * @apiSuccessExample {json} Success-Response: - * {"expires_in":3600,"access_token":"223ae05dfbb0794396fb60a0960c197e"} - */ - - @At - @Ok("raw:json") - @Filters(@By(type = OauthCrossOriginFilter.class)) - public String accessToken(HttpServletRequest request) throws URISyntaxException, OAuthSystemException { - try { - // 构建OAuth请求 - OAuthTokenRequest oauthRequest = new OAuthTokenRequest(request); - // 检查提交的客户端id是否正确 - if (!oAuthService.checkClientId(oauthRequest.getClientId())) { - OAuthResponse response = OAuthASResponse.errorResponse(HttpServletResponse.SC_BAD_REQUEST).setError(OAuthError.TokenResponse.INVALID_CLIENT).setErrorDescription(Constants.INVALID_CLIENT_ID).buildJSONMessage(); - return response.getBody(); - } - // 检查客户端安全KEY是否正确 - if (!oAuthService.checkClientSecret(oauthRequest.getClientSecret())) { - OAuthResponse response = OAuthASResponse.errorResponse(HttpServletResponse.SC_UNAUTHORIZED).setError(OAuthError.TokenResponse.UNAUTHORIZED_CLIENT).setErrorDescription(Constants.INVALID_CLIENT_ID).buildJSONMessage(); - return response.getBody(); - } - String authCode = oauthRequest.getParam(OAuth.OAUTH_CODE); - // 检查验证类型,此处只检查AUTHORIZATION_CODE类型,其他的还有PASSWORD或REFRESH_TOKEN - if (oauthRequest.getParam(OAuth.OAUTH_GRANT_TYPE).equals(GrantType.AUTHORIZATION_CODE.toString())) { - if (!oAuthService.checkAuthCode(authCode)) { - OAuthResponse response = OAuthASResponse.errorResponse(HttpServletResponse.SC_BAD_REQUEST).setError(OAuthError.TokenResponse.INVALID_GRANT).setErrorDescription(Constants.INVALID_AUTH_CODE).buildJSONMessage(); - return response.getBody(); - } - } - // 生成Access Token - OAuthIssuer oauthIssuerImpl = new OAuthIssuerImpl(new MD5Generator()); - final String accessToken = oauthIssuerImpl.accessToken(); - oAuthService.addAccessToken(accessToken, oAuthService.getUsernameByAuthCode(authCode)); - // 生成OAuth响应 - OAuthResponse response = OAuthASResponse.tokenResponse(HttpServletResponse.SC_OK).setAccessToken(accessToken).setExpiresIn(String.valueOf(oAuthService.getExpireIn())).buildJSONMessage(); - // 根据OAuthResponse生成ResponseEntity - return response.getBody(); - } catch (OAuthProblemException e) { - // 构建错误响应 - OAuthResponse res = OAuthASResponse.errorResponse(HttpServletResponse.SC_BAD_REQUEST).error(e).buildJSONMessage(); - return res.getBody(); - } - } - - /** - * 验证accessToken - * - * @param accessToken - * @return - */ - @At - @POST - public void checkAccessToken(@Param("accessToken") String accessToken, HttpServletResponse res) { - boolean b = oAuthService.checkAccessToken(accessToken); - if (b) { - res.setStatus(HttpServletResponse.SC_OK); - } else { - res.setStatus(HttpServletResponse.SC_UNAUTHORIZED); - } - } - -} diff --git a/src/main/java/com/rekoe/module/AuthorizeAction.java b/src/main/java/com/rekoe/module/AuthorizeAction.java deleted file mode 100644 index 23ee6d3..0000000 --- a/src/main/java/com/rekoe/module/AuthorizeAction.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.rekoe.module; - -import java.net.URISyntaxException; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.oltu.oauth2.as.issuer.MD5Generator; -import org.apache.oltu.oauth2.as.issuer.OAuthIssuerImpl; -import org.apache.oltu.oauth2.as.request.OAuthAuthzRequest; -import org.apache.oltu.oauth2.common.OAuth; -import org.apache.oltu.oauth2.common.exception.OAuthProblemException; -import org.apache.oltu.oauth2.common.exception.OAuthSystemException; -import org.apache.oltu.oauth2.common.message.types.ResponseType; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Strings; -import org.nutz.lang.util.NutMap; -import org.nutz.log.Log; -import org.nutz.log.Logs; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.POST; - -import com.rekoe.domain.OAuthUser; -import com.rekoe.filter.OauthCrossOriginFilter; -import com.rekoe.utils.CommonUtils; - -/** - * @apiDefine TOKEN_ERROR - * @apiError 403 The accesstoken is invaild - */ -/** - * @apiDefine TOKEN - * @apiParam {String} accesstoken 访问凭证 - * - */ -@At("/api/v1/") -@IocBean -@Filters(@By(type = OauthCrossOriginFilter.class)) -public class AuthorizeAction { - - private final static Log log = Logs.get(); - - @Inject - private com.rekoe.service.OAuthService oAuthService; - @Inject - private com.rekoe.service.OAuthClientService oAuthClientService; - @Inject - private com.rekoe.service.OAuthUserService oAuthUserService; - - /** - * @apiDefine CODE_200 - * @apiSuccess (Reponse 200) {number} code 200 - * @apiSuccess (Reponse 200) {json} [data='""'] 如果有数据返回 - * @apiSuccessExample {json} Response 200 - * { - * "code":200, - * "feedback":0, - * "msg","Ok" - * } - */ - - /** - * @api {post} /api/v1/authorize 请求授权码 - * @apiSampleRequest http://warlogin.shanggame.com/api/v1/authorize - * @apiDescription 用户输入正确的用户名和密码以POST方式提交后会重定向到用户所填的回调地址并在地址后携带授权码. - * @apiGroup User - * @apiVersion 1.0.0 - * - * @apiParam {String} username 用户名 - * @apiParam {String} password 密码 - * @apiParam {String} client_id 应用id - * @apiParam {String} response_type=code 返回授权码的标识 - * - * @apiSuccess (成功返回值) {int} feedback 响应状态 0 为成功 - * @apiSuccess (成功返回值) {String} msg 错误描述 - * @apiSuccess (成功返回值) {String} code 授权码 - * @apiSuccessExample {json} Success-Response: - * { - * "code":"c1b0a32d71101d00f4c96a134ec6bd42", - * "feedback": 0, - * "msg": "Ok" - * } - */ - - @At - @Ok("json") - @POST - public NutMap authorize(HttpServletRequest request, HttpServletResponse res) throws URISyntaxException, OAuthSystemException { - try { - // 构建OAuth 授权请求 - OAuthAuthzRequest oauthRequest = new OAuthAuthzRequest(request); - // 检查传入的客户端id是否正确 - if (!oAuthService.checkClientId(oauthRequest.getClientId())) { - return NutMap.NEW().addv("feedback", 2); - } - - // 如果用户没有登录,跳转到登陆页面 - if (!login(request)) {// 登录失败时跳转到登陆页面 - return NutMap.NEW().addv("feedback", 3).addv("msg", "登陆失败"); - } - - String username = request.getParameter("username"); // 获取用户名 - // responseType目前仅支持CODE,另外还有TOKEN - NutMap map = NutMap.NEW(); - String responseType = oauthRequest.getParam(OAuth.OAUTH_RESPONSE_TYPE); - if (responseType.equals(ResponseType.CODE.toString())) { - OAuthIssuerImpl oauthIssuerImpl = new OAuthIssuerImpl(new MD5Generator()); - String authorizationCode = oauthIssuerImpl.authorizationCode(); - oAuthService.addAuthCode(authorizationCode, username); - map.addv("code", authorizationCode); - } else { - return map.addv("feedback", 4).addv("msg", "参数错误"); - } - map.addv("feedback", 0).addv("msg", "Ok"); - return map; - } catch (OAuthProblemException e) { - log.error(e); - } - return null; - } - - private boolean login(HttpServletRequest request) { - NutMap parames = CommonUtils.getRequestParametersMap(request); - String username = parames.getString("username"); - String password = parames.getString("password"); - if (Strings.isEmpty(username) || Strings.isEmpty(password)) { - return false; - } - try { - OAuthUser user = oAuthUserService.findByUsername(username); - if (user != null) { - if (!oAuthUserService.checkUser(username, password, user.getSalt(), user.getPassword())) { - return false; - } else { - return true; - } - } else { - return false; - } - } catch (Exception e) { - log.error(e); - return false; - } - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/module/BaseAction.java b/src/main/java/com/rekoe/module/BaseAction.java index fe60df2..236d071 100644 --- a/src/main/java/com/rekoe/module/BaseAction.java +++ b/src/main/java/com/rekoe/module/BaseAction.java @@ -13,34 +13,19 @@ import org.apache.commons.lang3.StringUtils; import org.nutz.dao.Dao; import org.nutz.dao.entity.Record; import org.nutz.dao.util.Daos; -import org.nutz.ioc.loader.annotation.Inject; import org.nutz.log.Log; import org.nutz.log.Logs; import org.nutz.web.ajax.AjaxReturn; import com.rekoe.common.Message; -import com.rekoe.domain.GameServer; -import com.rekoe.service.GameServerService; public class BaseAction { private final static Log log = Logs.get(); - @Inject - public GameServerService gameServerService; - protected Message responseMessage(AjaxReturn result, HttpServletRequest req) { return result.isOk() ? Message.success("admin.common.ok", req) : Message.error(StringUtils.defaultString(result.getMsg(), "admin.common.resopnse.error"), req); } - public GameServer getServer(int id) { - GameServer server = gameServerService.getServer(id); - return server; - } - - public List getAllServerIDs() { - return gameServerService.getAllIds(); - } - public int getPage(Integer page) { return page == null ? 1 : page.intValue(); } diff --git a/src/main/java/com/rekoe/module/CdkeyBean.java b/src/main/java/com/rekoe/module/CdkeyBean.java deleted file mode 100644 index 84453e6..0000000 --- a/src/main/java/com/rekoe/module/CdkeyBean.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.rekoe.module; - -public class CdkeyBean { - - private String sign; - private String cdkey; - private String mac; - private int pid; - private String providerId; - - public CdkeyBean() { - super(); - } - - public CdkeyBean(String sign, String cdkey, String mac, int pid, String providerId) { - super(); - this.sign = sign; - this.cdkey = cdkey; - this.mac = mac; - this.pid = pid; - this.providerId = providerId; - } - - public String getSign() { - return sign; - } - - public void setSign(String sign) { - this.sign = sign; - } - - public String getMac() { - return mac; - } - - public void setMac(String mac) { - this.mac = mac; - } - - public int getPid() { - return pid; - } - - public void setPid(int pid) { - this.pid = pid; - } - - public String getProviderId() { - return providerId; - } - - public void setProviderId(String providerId) { - this.providerId = providerId; - } - - public String getCdkey() { - return cdkey; - } - - public void setCdkey(String cdkey) { - this.cdkey = cdkey; - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/module/ExchargeAction.java b/src/main/java/com/rekoe/module/ExchargeAction.java deleted file mode 100644 index f74927f..0000000 --- a/src/main/java/com/rekoe/module/ExchargeAction.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.rekoe.module; - -import org.nutz.ioc.impl.PropertiesProxy; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.lang.util.NutMap; -import org.nutz.log.Log; -import org.nutz.log.Logs; -import org.nutz.mvc.adaptor.JsonAdaptor; -import org.nutz.mvc.annotation.AdaptBy; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.POST; - -import com.rekoe.domain.CdkeyLog; -import com.rekoe.service.CdKeyCategoryService; -import com.rekoe.service.CdKeyLogService; -import com.rekoe.service.CdKeyService; - -@IocBean -@At("/excharge") -public class ExchargeAction { - - private final static Log log = Logs.get(); - @Inject - private CdKeyService cdKeyService; - - @Inject - private CdKeyCategoryService cdKeyCategoryService; - - @Inject - private CdKeyLogService cdKeyLogService; - - @Inject - private PropertiesProxy conf; - - @At - @Ok("json") - @POST - @AdaptBy(type = JsonAdaptor.class) - public NutMap cdk(CdkeyBean bean) { - StringBuffer sb = new StringBuffer("cdk."); - sb.append(bean.getPid()).append(".secret"); - String secret = conf.get(sb.toString()); - String sign = Lang.md5(bean.getCdkey() + "|" + bean.getMac() + "|" + bean.getPid() + "|" + secret); - if (log.isDebugEnabled()) { - log.debugf("secretKey : %s", sb); - log.debugf("secret : %s", secret); - log.debugf("Cdkey : %s", bean.getCdkey()); - log.debugf("Mac : %s", bean.getMac()); - log.debugf("Pid : %s", bean.getPid()); - log.debugf("Sign : %s", bean.getSign()); - log.debugf("P_Sign : %s", sign); - } - - if (Lang.equals(sign, bean.getSign())) { - int type = cdKeyCategoryService.getType(bean.getCdkey()); - if (cdKeyCategoryService.isExists(type)) { - if (cdKeyService.use(bean.getCdkey(), type)) { - cdKeyLogService.insert(new CdkeyLog(bean.getPid(), bean.getProviderId(), bean.getMac())); - return NutMap.NEW().addv("feedback", 0).addv("mesage", "ok"); - } - return NutMap.NEW().addv("feedback", 92).addv("mesage", "已失效"); - } - return NutMap.NEW().addv("feedback", 93).addv("mesage", "不存在"); - } - return NutMap.NEW().addv("feedback", 61).addv("mesage", "签名失败"); - } -} diff --git a/src/main/java/com/rekoe/module/NoticeModule.java b/src/main/java/com/rekoe/module/NoticeModule.java deleted file mode 100644 index d541520..0000000 --- a/src/main/java/com/rekoe/module/NoticeModule.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.rekoe.module; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - -import javax.servlet.http.HttpServletRequest; - -import org.nutz.dao.Cnd; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.Ok; - -import com.rekoe.domain.Notice; -import com.rekoe.filter.OauthCrossOriginFilter; -import com.rekoe.service.NoticeService; - -@IocBean -@At("/notice") -@Filters(@By(type = OauthCrossOriginFilter.class)) -public class NoticeModule { - - @Inject - private NoticeService noticeService; - - /** - * @api {post} /notice/:pid/list 获得公告列表 - * @apiParam {Number} pid 申请的游戏编码ID - * @apiGroup notice - * @apiVersion 1.0.0 - * @apiSampleRequest http://warlogin.shanggame.com/notice/:pid/list - * @apiSuccess {Object[]} notices List of notice. - * @apiSuccess {String} notices.color 公告标题颜色. - * @apiSuccess {String} notices.title 公告标题. - * @apiSuccess {number} notices.id 公告ID. - * @apiSuccessExample {json} Success-Response: - * [ - * { - * "color": "#FFFFF", "title": "xxxx" ,"id":1 - * } - * ] - */ - - @At("/?/list") - @Ok("json") - public Object list(int pid) { - List list = noticeService.query(Cnd.where("pid", "=", pid).and("publication", "=", true).desc("top"), null); - if (Lang.isEmpty(list)) { - return new ArrayList(); - } - return list; - } - - /** - * @api {post} /notice/view/:id 公告内容详细 - * - * @apiParam {Number} id ID. - * - * @apiGroup notice - * @apiVersion 1.0.0 - * @apiSampleRequest http://warlogin.shanggame.com/notice/view/:id - */ - - @At("/view/?") - @Ok("raw") - public String view(long id,HttpServletRequest req) throws IOException { - Notice article =noticeService.fetch(id); - if (Lang.isEmpty(article)) { - return "empty"; - } - return article.getContent(); - } - -} diff --git a/src/main/java/com/rekoe/module/OAuthUserAction.java b/src/main/java/com/rekoe/module/OAuthUserAction.java deleted file mode 100644 index 57df39b..0000000 --- a/src/main/java/com/rekoe/module/OAuthUserAction.java +++ /dev/null @@ -1,324 +0,0 @@ -package com.rekoe.module; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; - -import org.apache.commons.lang3.StringUtils; -import org.apache.commons.lang3.math.NumberUtils; -import org.apache.oltu.oauth2.as.issuer.MD5Generator; -import org.apache.oltu.oauth2.as.issuer.OAuthIssuerImpl; -import org.apache.oltu.oauth2.common.exception.OAuthSystemException; -import org.nutz.castor.Castors; -import org.nutz.dao.Chain; -import org.nutz.dao.Cnd; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.lang.util.NutMap; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.POST; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.domain.GameServer; -import com.rekoe.domain.OAuthUser; -import com.rekoe.domain.PlatformUser; -import com.rekoe.filter.OauthCrossOriginFilter; -import com.rekoe.mobile.provider.PlatformProviderFactory; -import com.rekoe.service.GameServerService; -import com.rekoe.service.IdWorkerService; -import com.rekoe.service.OAuthService; -import com.rekoe.service.OAuthUserService; -import com.rekoe.service.PlatformUserService; -import com.rekoe.utils.CommonUtils; -import com.rekoe.utils.Constants; - -@IocBean -@At("/auth") -@Filters(@By(type = OauthCrossOriginFilter.class)) -public class OAuthUserAction { - - private final static String PHONE_KEY = "rk_phone_key"; - private final static String PHONE_NUMBER = "rk_phone_number"; - private final static String OAUTH_USER_KEY = "rk_oauth_user_key"; - - @Inject - private OAuthUserService oAuthUserService; - - @Inject - private OAuthService oAuthService; - - @Inject - private GameServerService gameServerService; - - /** - * @api {post} /auth/user/create 创建账号并获取授权码 - * - * @apiGroup User - * @apiVersion 1.0.0 - * @apiSampleRequest http://warlogin.shanggame.com/auth/user/create - * @apiParam {String} name 用户名 - * @apiParam {String} password 密码 - * @apiParam {String} captcha 手机收到的验证码 - * @apiParamExample {String} Request-Example: - * user.name=xxx&user.password=xxx&captcha=xxx - * @apiSuccess {int} feedback 响应状态 0 为成功 1 账号被占用 - * @apiSuccess {String} code 授权码 - */ - - /** - * 普通注册 - * - * @param user - * @return - * @throws OAuthSystemException - */ - @At("/user/create") - @Ok("json") - @POST - public NutMap create(HttpServletRequest req) throws OAuthSystemException { - HttpSession session = req.getSession(); - Object phoneCodeObj = session.getAttribute(PHONE_KEY); - Object phoneObj = session.getAttribute(PHONE_NUMBER); - if (Lang.isEmpty(phoneCodeObj) || Lang.isEmpty(phoneObj)) { - return NutMap.NEW().addv("feedback", 404); - } - NutMap parames = CommonUtils.getRequestParametersMap(req); - int captcha = parames.getInt("captcha",0); - String name = parames.getString("name"); - String pwd = parames.getString("password"); - - int phoneCode = Castors.me().castTo(phoneCodeObj,int.class); - if (StringUtils.isBlank(pwd) || StringUtils.isBlank(name) || captcha != phoneCode) { - return NutMap.NEW().addv("feedback", 1); - } - long phone = Castors.me().castTo(phoneObj, long.class); - NutMap map = NutMap.NEW(); - if (checkOauthUser(name)) { - OAuthIssuerImpl oauthIssuerImpl = new OAuthIssuerImpl(new MD5Generator()); - String authorizationCode = oauthIssuerImpl.authorizationCode(); - oAuthService.addAuthCode(authorizationCode, name); - map.addv("code", authorizationCode); - OAuthUser user = new OAuthUser(); - user.setPhoneCode(phone); - user.setPassword(pwd); - user.setUserName(name); - oAuthUserService.createUser(user); - session.setAttribute(PHONE_KEY, null); - session.setAttribute(PHONE_NUMBER, null); - } else { - return map.addv("feedback", 1); - } - return map.addv("feedback", 0); - } - - /** - * @api {post} /auth/rest/pwd 密码重置 - * - * @apiGroup User - * @apiVersion 1.0.0 - * @apiSampleRequest http://warlogin.shanggame.com/auth/rest/pwd - * - * @apiParam {String} captcha 手机收到的验证码 - * @apiParam {String} password 需要重置的新密码 - * - * @apiSuccess {int} feedback 响应状态 0 为成功 - * @apiSuccessExample {json} Success-Response: - * { "feedback": 0 } - */ - - @At("/rest/pwd") - @Ok("json") - @POST - public NutMap restpwd(HttpServletRequest req) throws OAuthSystemException { - HttpSession session = req.getSession(); - Object phoneCodeObj = session.getAttribute(PHONE_KEY); - Object nameObj = session.getAttribute(OAUTH_USER_KEY); - if (Lang.isEmpty(phoneCodeObj) || Lang.isEmpty(nameObj)) { - return NutMap.NEW().addv("feedback", 404); - } - NutMap parames = CommonUtils.getRequestParametersMap(req); - int captcha = parames.getInt("captcha",0); - String pwd = parames.getString("password"); - String name = Castors.me().castToString(nameObj); - int phoneCode = Castors.me().castTo(phoneCodeObj,int.class); - if (StringUtils.isBlank(pwd) || captcha!=phoneCode) { - return NutMap.NEW().addv("feedback", 1); - } - - OAuthIssuerImpl oauthIssuerImpl = new OAuthIssuerImpl(new MD5Generator()); - String authorizationCode = oauthIssuerImpl.authorizationCode(); - oAuthService.addAuthCode(authorizationCode, name); - oAuthUserService.updateByChain(name, pwd); - session.setAttribute(PHONE_KEY, null); - session.setAttribute(OAUTH_USER_KEY, null); - return NutMap.NEW().addv("feedback", 0).addv("code", authorizationCode); - } - - private boolean checkOauthUser(String name) { - if (CommonUtils.isUsername(name) && StringUtils.isNotBlank(name) && Lang.isEmpty(oAuthUserService.findByUsername(name))) { - return true; - } - return false; - } - - /** - * @api {post} /auth/phone/captcha 获取手机验证码 - * - * @apiGroup User - * @apiVersion 1.0.0 - * @apiSampleRequest http://warlogin.shanggame.com/auth/phone/captcha - * - * @apiParam {Number} phone 手机号 - * @apiParam {Number} pid 引用所属游戏平台编号 - * - * @apiSuccess {int} feedback 响应状态 0 为成功, 100手机号非法, 101未注册的游戏平台 - * @apiSuccessExample {json} Success-Response: - * { "feedback": 0 } - */ - - @At("/phone/captcha") - @Ok("raw:json") - @POST - public String regCaptcha(@Param("phone") String phone, @Param("pid") int pid, HttpSession session) { - if (!NumberUtils.isNumber(phone) || phone.length() != 11) { - return "{\"feedback\":100}"; - } - GameServer gameServer = gameServerService.getByPid(pid); - if (Lang.isEmpty(gameServer)) { - return "{\"feedback\":101}"; - } - int code = CommonUtils.nextInt(1000, 9999); - boolean isRight = gameServerService.sendPhoneMail(gameServer, phone, "29337", code + "", "30"); - if (isRight) { - session.setAttribute(PHONE_KEY, code); - session.setAttribute(PHONE_NUMBER, phone); - return "{\"feedback\":0,\"session\":\"" + session.getId() + "\"}"; - } - return "{\"feedback\":102}"; - } - - /** - * @api {post} /auth/rest/captcha 获取手机验证码-密码重置 - * - * @apiGroup User - * @apiVersion 1.0.0 - * @apiSampleRequest http://warlogin.shanggame.com/auth/rest/captcha - * - * @apiParam {String} name 用户名 - * @apiParam {Number} phone 手机号 - * @apiParam {Number} pid 引用所属游戏平台编号 - * - * @apiSuccess {int} feedback 响应状态 0 为成功, 100手机号非法, 101未注册的游戏平台 - * @apiSuccessExample {json} Success-Response: - * { "feedback": 0 } - */ - - @At("/rest/captcha") - @Ok("raw:json") - @POST - public String restCaptcha(@Param("phone") String phone, @Param("name") String name, @Param("pid") int pid, HttpSession session) { - if (!NumberUtils.isNumber(phone) || phone.length() != 11) { - return "{\"feedback\":100}"; - } - GameServer gameServer = gameServerService.getByPid(pid); - if (Lang.isEmpty(gameServer)) { - return "{\"feedback\":101}"; - } - boolean isOk = oAuthUserService.checkRestPwd(name, NumberUtils.toLong(phone)); - if (isOk) { - int code = CommonUtils.nextInt(100000, 999999); - boolean isRight = gameServerService.sendPhoneMail(gameServer, phone, "29337", code + "", "30"); - if (isRight) { - session.setAttribute(PHONE_KEY, code); - session.setAttribute(OAUTH_USER_KEY, name); - return "{\"feedback\":0,\"session\":\"" + session.getId() + "\"}"; - } - } - return "{\"feedback\":102}"; - } - - @Inject - private PlatformUserService platformUserService; - - @Inject - private PlatformProviderFactory platformProviderFactory; - - @Inject - private IdWorkerService idFactory; - - private final Object obj = new Object(); - - /** - * @api {post} /auth/account/bind 账号绑定 - * - * @apiGroup User - * @apiVersion 1.0.0 - * @apiSampleRequest http://warlogin.shanggame.com/auth/account/bind - * - * @apiParam {String} name 用户名 - * @apiParam {String} password 密码 - * @apiParam {Number} pid 引用所属游戏平台编号 - * @apiParam {String} captcha 手机收到的验证码 - * @apiParam {String} guestid 需要绑定的游客ID - * - * @apiSuccess {int} feedback 响应状态 0 为成功, 100手机号非法, 101未注册的游戏平台 - * @apiSuccessExample {json} Success-Response: - * { "feedback": 0 } - */ - - @At("/account/bind") - @Ok("json") - @POST - public NutMap bindAccount(HttpServletRequest req) { - HttpSession session = req.getSession(); - Object phoneCodeObj = session.getAttribute(PHONE_KEY); - Object phoneObj = session.getAttribute(PHONE_NUMBER); - if (Lang.isEmpty(phoneCodeObj) || Lang.isEmpty(phoneObj)) { - return NutMap.NEW().addv("feedback", 404); - } - NutMap parames = CommonUtils.getRequestParametersMap(req); - int pid = parames.getInt("pid", -1); - String pwd = parames.getString("password"); - if (StringUtils.isBlank(pwd)) { - return NutMap.NEW().addv("feedback", 501).addv("msg", "密码不可以为空"); - } - int captcha = parames.getInt("captcha", 0); - int phoneCode = Castors.me().castTo(phoneCodeObj, int.class); - if (captcha != phoneCode) { - return NutMap.NEW().addv("feedback", 502).addv("msg", "验证码错误"); - } - String guestid = parames.getString("guestid"); - if (StringUtils.isBlank(guestid)) { - return NutMap.NEW().addv("feedback", 503).addv("msg", "游客ID不可以为空"); - } - PlatformUser platformUser = platformUserService.getPlatformUser(pid, guestid, Constants.GUEST); - if (Lang.isEmpty(platformUser)) { - return NutMap.NEW().addv("feedback", 405).addv("msg", "未找到此游客记录"); - } - long phone = Castors.me().castTo(phoneObj, long.class); - String name = parames.getString("name"); - if (checkOauthUser(name)) { - // 创建账号 - long newOpenid = idFactory.nextId(); - synchronized (obj) { - OAuthUser user = new OAuthUser(); - user.setPhoneCode(phone); - user.setPassword(pwd); - user.setUserName(name); - user.setBind(true); - user.setBindProviderId(platformUser.getPfid()); - user = oAuthUserService.createUser(user, platformUser.getOpenid()); - platformUser.setOpenid(newOpenid); - platformUserService.update(Chain.make("openid", newOpenid), Cnd.where("id", "=", platformUser.getId())); - session.setAttribute(PHONE_KEY, null); - session.setAttribute(PHONE_NUMBER, null); - } - } else { - return NutMap.NEW().addv("feedback", 504).addv("msg", "账号已被占用"); - } - return NutMap.NEW().addv("feedback", 0); - } -} diff --git a/src/main/java/com/rekoe/module/ReportAdsModule.java b/src/main/java/com/rekoe/module/ReportAdsModule.java deleted file mode 100644 index 39f14c8..0000000 --- a/src/main/java/com/rekoe/module/ReportAdsModule.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.rekoe.module; - -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.POST; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.domain.ReportAds; -import com.rekoe.filter.OauthCrossOriginFilter; -import com.rekoe.service.ReportAdsService; - -@At("/report") -@IocBean -@Filters(@By(type = OauthCrossOriginFilter.class)) -public class ReportAdsModule { - - @Inject - private ReportAdsService reportAdsService; - - /** - * @api {POST} /report/ads 数据汇报 - * @apiSampleRequest http://warlogin.shanggame.com/report/ads - * @apiGroup report - * @apiVersion 1.0.0 - * - * - * @apiParam {Number} pid 申请的游戏编号 - * @apiParam {String} pfid 接入的平台编号 - * @apiParam {String} idfa idfa - * @apiParam {String} idfv idfv - * @apiParam {String} talkingDataId talkingDataId - * - * @apiSuccess {json} msg OK - * - */ - - @At - @Ok("raw:json") - @POST - public String ads(@Param("pid") int pid, @Param("pfid") String pfid, @Param("idfa") String idfa, - @Param("idfv") String idfv, @Param("talkingDataId") String talkingDataId) { - reportAdsService.add(new ReportAds(pid, pfid, idfa, idfv, talkingDataId)); - return "{\"msg\":\"ok\"}"; - } -} diff --git a/src/main/java/com/rekoe/module/Status.java b/src/main/java/com/rekoe/module/Status.java deleted file mode 100644 index 546a730..0000000 --- a/src/main/java/com/rekoe/module/Status.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.rekoe.module; - -import java.io.Serializable; - -public class Status implements Serializable { - - private static final long serialVersionUID = -7767253096192148313L; - private int code; - - private String msg; - - public int getCode() { - return code; - } - - public void setCode(int code) { - this.code = code; - } - - public String getMsg() { - return msg; - } - - public void setMsg(String msg) { - this.msg = msg; - } - -} diff --git a/src/main/java/com/rekoe/module/Test.java b/src/main/java/com/rekoe/module/Test.java deleted file mode 100644 index feaf302..0000000 --- a/src/main/java/com/rekoe/module/Test.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.rekoe.module; - -import java.io.IOException; -import java.io.InputStream; -import java.io.Reader; - -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Streams; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.Ok; - -import com.rekoe.filter.OauthCrossOriginFilter; - -@IocBean -@At("/api/v2") -@Filters(@By(type = OauthCrossOriginFilter.class)) -public class Test { - - /** - * @api {POST} /api/v2/hello/:id - * @apiGroup Account - * @apiVersion 1.0.3 - * @apiDescription just a test - * @apiPermission anyone - * @apiSampleRequest http://106.2.185.120:8080/api/v2/hello/:id - * - * @apiParam {String} name object - * @apiParam {Number} age object - * @apiSuccess {json} result User object - * - * @apiSuccessExample {json} Success-Response: - * { "firstname": "test", lastname": "sails", "country":"cn" } - * - * @apiParamExample {json} Request - * { "firstname": "test", "lastname": "sails", "country":"cn" } - * - */ - - /** - * @api {POST} /api/v2/hello/:id - * @apiGroup Account - * @apiVersion 1.0.4 - * @apiDescription just a test - * @apiPermission anyone - * @apiSampleRequest http://106.2.185.120:8080/api/v2/hello/:id - * - * @apiParam {String} name object - * @apiParam {Number} age object - * @apiSuccess {json} result User object - * - * @apiSuccessExample {json} Success-Response: - * { "firstname": "test", lastname": "sails", "country":"cn" } - * - * @apiParamExample {json} Request - * { "firstname": "test", "lastname": "sails", "country":"cn" } - * - */ - @At("/hello/?") - @Ok("raw:json") - public String hello(long id,InputStream is) throws IOException { - System.out.println(id); - Reader reader = Streams.utf8r(is); - return Streams.readAndClose(reader); - } -} diff --git a/src/main/java/com/rekoe/module/UserInfoAction.java b/src/main/java/com/rekoe/module/UserInfoAction.java deleted file mode 100644 index 921a268..0000000 --- a/src/main/java/com/rekoe/module/UserInfoAction.java +++ /dev/null @@ -1,124 +0,0 @@ -package com.rekoe.module; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.oltu.oauth2.common.OAuth; -import org.apache.oltu.oauth2.common.error.OAuthError; -import org.apache.oltu.oauth2.common.exception.OAuthProblemException; -import org.apache.oltu.oauth2.common.exception.OAuthSystemException; -import org.apache.oltu.oauth2.common.message.OAuthResponse; -import org.apache.oltu.oauth2.common.message.types.ParameterStyle; -import org.apache.oltu.oauth2.common.utils.OAuthUtils; -import org.apache.oltu.oauth2.rs.request.OAuthAccessResourceRequest; -import org.apache.oltu.oauth2.rs.response.OAuthRSResponse; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.GET; -import org.nutz.mvc.annotation.Ok; - -import com.rekoe.domain.OAuthUser; -import com.rekoe.filter.OauthCrossOriginFilter; -import com.rekoe.service.OAuthService; -import com.rekoe.service.OAuthUserService; -import com.rekoe.utils.Constants; - -@IocBean -@At("/v1/openapi") -public class UserInfoAction { - - @Inject - private OAuthService oAuthService; - - @Inject - private OAuthUserService oAuthUserService; - - /** - * @api {get} /v1/openapi/userinfo 获取账号详细 - *@apiSampleRequest http://warlogin.shanggame.com/v1/openapi/userinfo - * @apiGroup User - * @apiVersion 1.0.0 - * - * - * @apiParam {String} access_token 为上一步获取的access_token - * - * @apiSuccess {long} uid 用户id - * @apiSuccess {String} name 用户名 - * @apiSuccess {boolean} [locked] 是否锁定 - * - */ - - @At - @Ok("json") - @GET - @Filters(@By(type = OauthCrossOriginFilter.class)) - public Object userinfo(HttpServletRequest request, HttpServletResponse res) throws OAuthSystemException, OAuthProblemException { - return checkAccessToken(request, res); - } - - /** - * 不校验accessToken - * - * @param request - * @return - * @throws OAuthSystemException - * @throws OAuthProblemException - */ - public OAuthUser nocheckAccessToken(HttpServletRequest request) throws OAuthSystemException, OAuthProblemException { - // 构建OAuth资源请求 - OAuthAccessResourceRequest oauthRequest = new OAuthAccessResourceRequest(request, ParameterStyle.QUERY); - // 获取Access Token - String accessToken = oauthRequest.getAccessToken(); - // 获取用户名 - String username = oAuthService.getUsernameByAccessToken(accessToken); - OAuthUser user = oAuthUserService.findByUsername(username); - return user; - } - - /** - * 校验accessToken - * - * @param request - * @return - * @throws OAuthSystemException - */ - private Object checkAccessToken(HttpServletRequest request, HttpServletResponse res) throws OAuthSystemException { - try { - // 构建OAuth资源请求 - OAuthAccessResourceRequest oauthRequest = new OAuthAccessResourceRequest(request, ParameterStyle.QUERY); - // 获取Access Token - String accessToken = oauthRequest.getAccessToken(); - // 验证Access Token - if (!oAuthService.checkAccessToken(accessToken)) { - // 如果不存在/过期了,返回未验证错误,需重新验证 - OAuthResponse oauthResponse = OAuthRSResponse.errorResponse(HttpServletResponse.SC_UNAUTHORIZED).setRealm(Constants.RESOURCE_SERVER_NAME).setError(OAuthError.ResourceResponse.INVALID_TOKEN).buildHeaderMessage(); - res.addHeader("Content-Type", "application/json; charset=utf-8"); - Status status = new Status(); - status.setCode(Constants.HTTPSTATUS_UNAUTHORIZED); - status.setMsg(Constants.INVALID_ACCESS_TOKEN); - res.setStatus(oauthResponse.getResponseStatus()); - return status; - } - // 获取用户名 - String username = oAuthService.getUsernameByAccessToken(accessToken); - OAuthUser user = oAuthUserService.findByUsername(username); - return user; - } catch (OAuthProblemException e) { - // 检查是否设置了错误码 - String errorCode = e.getError(); - if (OAuthUtils.isEmpty(errorCode)) { - OAuthResponse oauthResponse = OAuthRSResponse.errorResponse(HttpServletResponse.SC_UNAUTHORIZED).setRealm(Constants.RESOURCE_SERVER_NAME).buildHeaderMessage(); - res.addHeader(OAuth.HeaderType.WWW_AUTHENTICATE, oauthResponse.getHeader(OAuth.HeaderType.WWW_AUTHENTICATE)); - res.setStatus(Constants.HTTPSTATUS_UNAUTHORIZED); - return null; - } - OAuthResponse oauthResponse = OAuthRSResponse.errorResponse(HttpServletResponse.SC_UNAUTHORIZED).setRealm(Constants.RESOURCE_SERVER_NAME).setError(e.getError()).setErrorDescription(e.getDescription()).setErrorUri(e.getUri()).buildHeaderMessage(); - res.addHeader(OAuth.HeaderType.WWW_AUTHENTICATE, oauthResponse.getHeader(OAuth.HeaderType.WWW_AUTHENTICATE)); - res.setStatus(Constants.HTTPSTATUS_BAD_REQUEST); - return null; - } - } -} \ No newline at end of file diff --git a/src/main/java/com/rekoe/module/admin/AdminAccountAct.java b/src/main/java/com/rekoe/module/admin/AdminAccountAct.java deleted file mode 100644 index 814da62..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminAccountAct.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.rekoe.module.admin; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.commons.lang3.math.NumberUtils; -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.common.Message; -import com.rekoe.common.page.Pagination; -import com.rekoe.service.PlatformUserService; - -@IocBean -@At("/admin/app/account") -public class AdminAccountAct { - - @Inject - private PlatformUserService platformUserService; - - @At - @Ok("fm:template.admin.app.account.list") - @RequiresPermissions({ "app.account:view" }) - @PermissionTag(name = "账号浏览", tag = "平台用户", enable = true) - public Pagination list(@Param(value = "pageNumber", df = "1") Integer pageNumber, @Param("keyword") String keyword, @Param("type") int type, HttpServletRequest req) { - req.setAttribute("keyword", keyword); - req.setAttribute("type", type); - switch (type) { - case 1: - return platformUserService.getPlatformUserListPagerByPid(pageNumber, 20, keyword); - default: - return platformUserService.getPlatformUserListPagerByOpenid(pageNumber, 20, NumberUtils.toLong(keyword)); - } - } - - @At - @Ok("json") - @RequiresPermissions({ "app.account:lock" }) - @PermissionTag(name = "账号锁定", tag = "平台用户", enable = true) - public Message lock(@Param("id") String id, @Param("lock") boolean lock, HttpServletRequest req) { - platformUserService.lock(id, lock); - return Message.success("admin.message.success", req); - } -} diff --git a/src/main/java/com/rekoe/module/admin/AdminCdKeyCategoryAct.java b/src/main/java/com/rekoe/module/admin/AdminCdKeyCategoryAct.java deleted file mode 100644 index 89b6971..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminCdKeyCategoryAct.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.rekoe.module.admin; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.util.List; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.nutz.dao.entity.Record; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.common.Message; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.CdkeyCategory; -import com.rekoe.module.BaseAction; -import com.rekoe.service.CdKeyCategoryService; -import com.rekoe.service.CdKeyService; - -@IocBean -@At("/admin/cdkey/") -public class AdminCdKeyCategoryAct extends BaseAction { - - @Inject - private CdKeyCategoryService cdKeyCategoryService; - @Inject - private CdKeyService cdKeyService; - - @At("/category/list") - @Ok("fm:template.admin.cdkey.category_list") - @RequiresPermissions("system.cdkey:category.view") - @PermissionTag(name = "分类浏览", tag = "CDK分类", enable = true) - public Pagination category_list(@Param(value = "pageNumber", df = "1") int pageNumber) { - return cdKeyCategoryService.getCategoryListByPager(pageNumber); - } - - @At("/category/add") - @Ok("fm:template.admin.cdkey.category_add") - @RequiresPermissions("system.cdkey:category.add") - @PermissionTag(name = "添加分类", tag = "CDK分类", enable = true) - public void category_add() { - } - - @At("/category/save") - @Ok("json") - @RequiresPermissions("system.cdkey:category.add") - @PermissionTag(name = "添加分类", tag = "CDK分类", enable = false) - public Message category_save(@Param("name") String name, @Param("type") int type, HttpServletRequest req) { - if (cdKeyCategoryService.isNotExists(type)) { - cdKeyCategoryService.insert(new CdkeyCategory(name, type)); - return Message.success("ok", req); - } - return Message.error("error.type.exists", req); - } - - @At("/category/edit") - @Ok("fm:template.admin.cdkey.category_edit") - @RequiresPermissions("system.cdkey:category.edit") - @PermissionTag(name = "编辑分类", tag = "CDK分类", enable = true) - public CdkeyCategory category_edit(@Param("id") String id) { - return cdKeyCategoryService.fetchByID(id); - } - - @At("/category/update") - @Ok("json") - @RequiresPermissions("system.cdkey:category.edit") - @PermissionTag(name = "编辑分类", tag = "CDK分类", enable = false) - public Message category_update(@Param("::cc.") CdkeyCategory cc, HttpServletRequest req) { - cdKeyCategoryService.update(cc); - return Message.success("ok", req); - } - - @At - @Ok("fm:template.admin.cdkey.add") - @RequiresPermissions("system.cdkey:add") - @PermissionTag(name = "添加CDK", tag = "CDK", enable = true) - public String add(@Param("type") String type, HttpServletRequest req) { - req.setAttribute("rule", type.length()); - return type; - } - - @At - @Ok("json") - @RequiresPermissions("system.cdkey:add") - @PermissionTag(name = "添加CDK", tag = "CDK", enable = false) - public Message save(@Param("type") String taskid, @Param("num") int num, @Param("len") int len, HttpServletRequest req) { - if ((taskid).length() > len) { - return Message.error("长度不能小于" + taskid.length(), req); - } - cdKeyService.addCdkey(taskid, num, len); - return Message.success("ok", req); - } - - @At - @Ok("down") - @RequiresPermissions("system.cdkey:down") - @PermissionTag(name = "下载CDK", tag = "CDK", enable = true) - public ByteArrayOutputStream down(@Param("type") int type) throws IOException { - List records = cdKeyService.searchDown(type, false); - return loadDown(records); - } -} diff --git a/src/main/java/com/rekoe/module/admin/AdminGameServerAct.java b/src/main/java/com/rekoe/module/admin/AdminGameServerAct.java deleted file mode 100644 index 30fed95..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminGameServerAct.java +++ /dev/null @@ -1,165 +0,0 @@ -package com.rekoe.module.admin; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.apache.shiro.authz.annotation.RequiresUser; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.lang.util.NutMap; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Attr; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; -import org.nutz.web.Webs; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.common.Message; -import com.rekoe.common.PlatformVO; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.AuthType; -import com.rekoe.domain.GameServer; -import com.rekoe.domain.User; -import com.rekoe.service.GameServerService; -import com.rekoe.service.UserService; - -@IocBean(create = "init") -@At("/admin/server") -public class AdminGameServerAct { - - @Inject - private GameServerService gameServerService; - - @Inject - private UserService userService; - - private List authTypeList = new ArrayList<>(); - - public void init() { - authTypeList.add(new PlatformVO(AuthType.TOKEN.getDisplay(), AuthType.TOKEN.getDisplay())); - authTypeList.add(new PlatformVO(AuthType.DEFAULT.getDisplay(), AuthType.DEFAULT.getDisplay())); - authTypeList.add(new PlatformVO(AuthType.QQ_HTML5.getDisplay(), AuthType.QQ_HTML5.getDisplay())); - } - - @At - @Ok("fm:template.admin.server.list") - @RequiresPermissions("server:view") - @PermissionTag(name = "应用浏览", tag = "游戏应用", enable = true) - public Pagination list(@Param(value = "pageNumber", df = "1") int pageNumber) { - return gameServerService.getObjectListByPager(pageNumber, 20); - } - - @At("/change/?") - @Ok("json") - @RequiresUser - public Message select(@Param("id") int id, @Attr(Webs.ME) User user, HttpServletRequest req, HttpSession session) { - GameServer server = user.getServers().get(id); - if (!Lang.isEmpty(server)) { - session.setAttribute("sid", id); - return Message.success("button.submit.success", req); - } - return Message.error("admin.message.error", req); - } - - @At - @Ok("fm:template.admin.server.add") - @RequiresPermissions("server:add") - @PermissionTag(name = "添加应用", tag = "游戏应用", enable = true) - public List add() { - return authTypeList; - } - - @At - @Ok("json") - @RequiresPermissions("server:add") - @PermissionTag(name = "添加应用", tag = "游戏应用", enable = false) - public Message o_save(@Param("::p.") GameServer server, HttpServletRequest req, @Param("..") NutMap map) { - if (gameServerService.canAdd(server.getPid())) { - gameServerService.insert(server); - return Message.success("button.submit.success", req); - } - Iterator> iterator = map.entrySet().iterator(); - while (iterator.hasNext()) { - Entry entry = iterator.next(); - String key = entry.getKey(); - if (key.startsWith("p.")) { - iterator.remove(); - } - } - server.setMobileAuth(map); - return Message.error("admin.message.error", req); - } - - @At - @Ok("fm:template.admin.server.edit") - @RequiresPermissions("server:edit") - @PermissionTag(name = "编辑应用", tag = "游戏应用", enable = true) - public GameServer edit(@Param("id") int id, HttpServletRequest request) throws Throwable { - GameServer server = gameServerService.getServer(id); - if (Lang.isEmpty(server)) { - throw new Throwable(); - } - request.setAttribute("authTypes", authTypeList); - return server; - } - - @At - @Ok(">>:/admin/game_server/list") - @RequiresPermissions("server:edit") - @PermissionTag(name = "编辑应用", tag = "游戏应用", enable = false) - public void update(@Param("::server.") GameServer server, @Param("..") NutMap map) { - gameServerService.update(server); - } - - @At - @Ok("fm:template.admin.server.servers_edit") - @RequiresUser - public void v_servers_edit(@Param("id") long id, HttpServletRequest request) { - User user = userService.view(id); - List list = gameServerService.getAllIds(); - List servers = new ArrayList(); - for (Integer iid : list) { - GameServer server = gameServerService.getServer(iid.intValue()); - if (!Lang.isEmpty(server)) { - servers.add(server); - } - } - List userServeridList = new ArrayList(); - Map serverMap = user.getServers(); - if (!Lang.isEmpty(serverMap)) { - Iterator userlist = serverMap.keySet().iterator(); - while (userlist.hasNext()) { - int serverid = userlist.next(); - userServeridList.add(serverid); - } - } - request.setAttribute("serverList", servers); - request.setAttribute("serverIds", userServeridList); - } - - @At - @Ok("json") - @RequiresPermissions("server:add") - @PermissionTag(name = "添加应用", tag = "游戏应用", enable = false) - public Message o_update(@Param("::p.") GameServer server, HttpServletRequest req, @Param("..") NutMap map) { - Iterator> iterator = map.entrySet().iterator(); - while (iterator.hasNext()) { - Entry entry = iterator.next(); - String key = entry.getKey(); - if (key.startsWith("p.")) { - iterator.remove(); - } - } - server.setMobileAuth(map); - gameServerService.update(server); - return Message.success("button.submit.success", req); - } -} diff --git a/src/main/java/com/rekoe/module/admin/AdminNoticeAct.java b/src/main/java/com/rekoe/module/admin/AdminNoticeAct.java deleted file mode 100644 index d49398a..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminNoticeAct.java +++ /dev/null @@ -1,149 +0,0 @@ -package com.rekoe.module.admin; - -import java.io.File; -import java.io.IOException; -import java.util.Date; -import java.util.List; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.apache.shiro.authz.annotation.RequiresUser; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Files; -import org.nutz.lang.Times; -import org.nutz.lang.random.R; -import org.nutz.lang.util.NutMap; -import org.nutz.mvc.annotation.AdaptBy; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Fail; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.POST; -import org.nutz.mvc.annotation.Param; -import org.nutz.mvc.upload.TempFile; -import org.nutz.mvc.upload.UploadAdaptor; -import org.nutz.mvc.view.HttpStatusView; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.common.Message; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.GameServer; -import com.rekoe.domain.Notice; -import com.rekoe.service.GameServerService; -import com.rekoe.service.NoticeService; - -/** - * @author 科技㊣²º¹³
- * 2014年2月3日 下午4:48:45
- * http://www.rekoe.com
- * QQ:5382211
- * 公告系统 - */ -@IocBean -@At("/admin/notice") -public class AdminNoticeAct { - - @Inject - private NoticeService noticeService; - - @Inject - private GameServerService gameServerService; - - @At - @Ok("fm:template.admin.notice.list") - @RequiresPermissions("system.notice") - @PermissionTag(name = "浏览公告", tag = "游戏公告", enable = false) - public Pagination list(@Param(value = "pageNumber", df = "1") int pageNumber) { - return noticeService.getObjListByPager(pageNumber, 20, null); - } - - @At - @Ok("fm:template.admin.notice.add") - @RequiresPermissions("system.notice:add") - @PermissionTag(name = "添加公告", tag = "游戏公告", enable = true) - public List add() { - return gameServerService.list(); - } - - @At - @Ok("json") - @RequiresPermissions("system.notice:add") - @PermissionTag(name = "添加公告", tag = "游戏公告", enable = false) - public Message save(@Param("::notice.") Notice notice, HttpServletRequest req) { - Date now = Times.now(); - notice.setCreateDate(now); - notice.setModifyDate(now); - noticeService.insert(notice); - return Message.success("button.submit.success", req); - } - - @At - @Ok("fm:template.admin.notice.edit") - @RequiresPermissions("system.notice:edit") - @PermissionTag(name = "编辑公告", tag = "游戏公告", enable = true) - public List edit(long id, HttpServletRequest req) { - Notice art = noticeService.fetch(id); - req.setAttribute("notice", art); - return gameServerService.list(); - } - - @At - @Ok("json") - @RequiresPermissions("system.notice:edit") - @PermissionTag(name = "编辑公告", tag = "游戏公告", enable = false) - public Message update(@Param("::notice.") Notice notice, HttpServletRequest req) { - notice.setModifyDate(Times.now()); - noticeService.update(notice); - return Message.success("button.submit.success", req); - } - - @At - @Ok("json") - @RequiresPermissions("system.notice:delete") - @PermissionTag(name = "删除公告", tag = "游戏公告", enable = true) - public Message delete(@Param("id") long id, HttpServletRequest req) { - noticeService.delete(id); - return Message.success("button.submit.success", req); - } - - @Inject("java:$conf.get('topic.image.dir')") - protected String imageDir; - private final static String NEWS_FILE_PATH = "/upload/notice/"; - - @SuppressWarnings("deprecation") - @AdaptBy(type = UploadAdaptor.class, args = { "${app.root}/WEB-INF/tmp2" }) - @POST - @At - @Ok("json") - @RequiresUser - public Object upload(@Param("file") TempFile tmp, HttpServletRequest req, HttpServletResponse resp) throws IOException { - resp.setContentType("application/json"); - NutMap jsonrpc = new NutMap(); - if (tmp == null || tmp.getSize() == 0) { - return jsonrpc.setv("msg", "空文件"); - } - if (tmp.getSize() > 2 * 1024 * 1024) { - return jsonrpc.setv("msg", "文件太大了"); - } - String id = R.UU32(); - String path = "/" + id.substring(0, 2) + "/" + id.substring(2); - File f = new File(imageDir + NEWS_FILE_PATH + path); - Files.createNewFile(f); - Files.copyFile(tmp.getFile(), f); - jsonrpc.setv("url", req.getRequestURI() + path); - jsonrpc.setv("success", true); - return jsonrpc; - } - - @Ok("raw:jpg") - @At("/upload/?/?") - @Fail("http:404") - public Object image(String p, String p2) throws IOException { - if ((p + p2).contains(".")) - return HttpStatusView.HTTP_404; - File f = new File(imageDir + NEWS_FILE_PATH, p + "/" + p2); - return f; - } -} diff --git a/src/main/java/com/rekoe/module/admin/AdminOauthClientAct.java b/src/main/java/com/rekoe/module/admin/AdminOauthClientAct.java deleted file mode 100644 index cf05f5f..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminOauthClientAct.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.rekoe.module.admin; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.commons.lang3.StringUtils; -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.POST; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.common.Message; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.OAuthClient; -import com.rekoe.service.OAuthClientService; - -@IocBean -@At("/admin/oauth/client") -public class AdminOauthClientAct { - - @Inject - private OAuthClientService oAuthClientService; - - @At - @Ok("fm:template.admin.oauth_client.list") - @RequiresPermissions({ "oauth.client:view" }) - @PermissionTag(name = "浏览", tag = "OauthClient", enable = true) - public Pagination list(@Param(value = "pageNumber", df = "1") int page) { - return oAuthClientService.getListPager(page); - } - - @At - @Ok("fm:template.admin.oauth_client.add") - @PermissionTag(name = "添加", tag = "OauthClient", enable = true) - @RequiresPermissions({ "oauth.client:add" }) - public void add() { - } - - @At - @POST - @Ok("json") - @RequiresPermissions({ "oauth.client:add" }) - @PermissionTag(name = "浏览", tag = "OauthClient", enable = false) - public Message o_save(@Param("::client.") OAuthClient client, HttpServletRequest req) { - if (StringUtils.isBlank(client.getClientName())) { - return Message.error("error.code.name.empty", req); - } - if (oAuthClientService.check(client.getClientName())) { - oAuthClientService.createClient(client); - return Message.success("ok", req); - } - /** 被占用 **/ - return Message.error("error.code.name.occupied", req); - } - - @At - @Ok("fm:template.admin.oauth_client.edit") - @RequiresPermissions({ "oauth.client:edit" }) - @PermissionTag(name = "编辑", tag = "OauthClient", enable = true) - public OAuthClient edit(@Param("id") long id) { - return oAuthClientService.findOne(id); - } - - @At - @Ok("json") - @POST - @RequiresPermissions({ "oauth.client:edit" }) - @PermissionTag(name = "编辑", tag = "OauthClient", enable = false) - public Message o_update(@Param("::client.") OAuthClient client, HttpServletRequest req) { - oAuthClientService.updateClient(client); - return Message.success("OK", req); - } - - @At - @POST - @Ok("json") - @RequiresPermissions({ "oauth.client:delete" }) - @PermissionTag(name = "删除", tag = "OauthClient", enable = true) - public Message delete(long id, HttpServletRequest req) { - oAuthClientService.deleteClient(id); - return Message.success("ok", req); - } - -} diff --git a/src/main/java/com/rekoe/module/admin/AdminOauthUserAct.java b/src/main/java/com/rekoe/module/admin/AdminOauthUserAct.java deleted file mode 100644 index 7f4e042..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminOauthUserAct.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.rekoe.module.admin; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.POST; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.common.Message; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.OAuthUser; -import com.rekoe.service.OAuthUserService; - -@IocBean -@At("/admin/oauth/user") -public class AdminOauthUserAct { - - @Inject - private OAuthUserService oAuthUserService; - - @At - @Ok("fm:template.admin.oauth_user.list") - @RequiresPermissions({ "oauth.user:view" }) - @PermissionTag(name = "浏览", tag = "OauthUser", enable = true) - public Pagination list(@Param(value = "pageNumber", df = "1") int page) { - return oAuthUserService.getListPager(page); - } - - @At - @Ok("fm:template.admin.oauth_user.edit") - @RequiresPermissions({ "oauth.user:edit" }) - @PermissionTag(name = "浏览", tag = "OauthUser", enable = true) - public OAuthUser edit(@Param("id") long id) { - return oAuthUserService.findOne(id); - } - - @At - @Ok("json") - @POST - @RequiresPermissions({ "oauth.user:edit" }) - @PermissionTag(name = "浏览", tag = "OauthUser", enable = false) - public Message o_update(@Param("::user.") OAuthUser user, HttpServletRequest req) { - //oAuthUserService.updateUser(user); - return Message.success("OK", req); - } - -} diff --git a/src/main/java/com/rekoe/module/admin/AdminOfficialAct.java b/src/main/java/com/rekoe/module/admin/AdminOfficialAct.java deleted file mode 100644 index a407eff..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminOfficialAct.java +++ /dev/null @@ -1,128 +0,0 @@ -package com.rekoe.module.admin; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.shiro.authz.annotation.RequiresUser; -import org.nutz.dao.Cnd; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.mvc.Scope; -import org.nutz.mvc.View; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Attr; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; -import org.nutz.mvc.view.ViewWrapper; -import org.nutz.plugins.view.freemarker.FreeMarkerConfigurer; -import org.nutz.plugins.view.freemarker.FreemarkerView; -import org.nutz.web.Webs; - -import com.rekoe.common.Message; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.GameServer; -import com.rekoe.domain.OfficialServer; -import com.rekoe.domain.User; -import com.rekoe.domain.VerifyServer; -import com.rekoe.filter.ChectServerExitsActionFilter; -import com.rekoe.filter.SelectServerActionFilter; -import com.rekoe.service.GameServerService; -import com.rekoe.service.OfficialServerService; -import com.rekoe.service.VerifyServerService; - -@IocBean -@At("/admin/official_server") -public class AdminOfficialAct { - - @Inject - private VerifyServerService verifyServerService; - - @Inject - private OfficialServerService officialServerService; - - @Inject - private FreeMarkerConfigurer freeMarkerConfigurer; - - @Inject - private GameServerService gameServerService; - - @At - @Filters(@By(type = SelectServerActionFilter.class, args = { "ioc:selectServerActionFilter" })) - public View view(@Attr(scope = Scope.SESSION, value = Webs.ME) User user, @Param("pid") int pid) { - VerifyServer verifyServer = verifyServerService.fetch(Cnd.where("pid", "=", pid)); - GameServer server = gameServerService.fetch(Cnd.where("pid", "=", pid)); - if (Lang.isEmpty(server)) { - throw Lang.makeThrow("Not Fond PID[%s] Server", pid); - } - GameServer userServer = user.getServers().get(server.getId()); - if (Lang.isEmpty(userServer)) { - throw Lang.makeThrow("You Not Have This Server[%s] Permission ", server.getPlatformName()); - } - if (Lang.isEmpty(verifyServer)) { - return new ViewWrapper(new FreemarkerView(freeMarkerConfigurer, "template/admin/game_server/server/verify/add"), server); - } - verifyServer.setGameServer(server); - return new ViewWrapper(new FreemarkerView(freeMarkerConfigurer, "template/admin/game_server/server/verify/edit"), verifyServer); - } - - @At - @Ok("json") - //@Filters(@By(type = SelectServerActionFilter.class, args = { "ioc:selectServerActionFilter" })) - @RequiresUser - public Message o_save(@Attr(scope = Scope.SESSION, value = "sid") int sid, @Param("::p.") OfficialServer vserver, HttpServletRequest req) { - GameServer gameServer = gameServerService.fetch(sid); - OfficialServer verifyServer = officialServerService.fetch(Cnd.where("pid", "=", gameServer.getPid()).and("sid", "=", vserver.getSid())); - if (!Lang.isEmpty(verifyServer)) { - throw Lang.makeThrow("Not Fond PID[%s] Server", vserver.getPid()); - } - vserver.setPid(gameServer.getPid()); - boolean isRight = officialServerService.insert(vserver); - if (isRight) { - return Message.success("button.submit.success", req); - } - return Message.error("admin.message.error", req); - } - - @At - @Ok("json") - @Filters(@By(type = SelectServerActionFilter.class, args = { "ioc:selectServerActionFilter" })) - public Message o_update(@Param("::p.") OfficialServer vserver, HttpServletRequest req) { - OfficialServer verifyServer = officialServerService.fetch(Cnd.where("pid", "=", vserver.getPid())); - if (Lang.isEmpty(verifyServer)) { - throw Lang.makeThrow("Not Fond PID[%s] Server", vserver.getPid()); - } - officialServerService.update(vserver); - return Message.success("button.submit.success", req); - } - - @At - @Ok("fm:template.admin.server.official.list") - @Filters(@By(type = ChectServerExitsActionFilter.class, args = { "ioc:chectServerExitsActionFilter" })) - public Pagination list(@Attr(scope = Scope.SESSION, value = "sid") int sid, @Param("pageNumber") Integer pageNumber) { - GameServer gameServer = gameServerService.fetch(sid); - return list_view(gameServer.getPid(), pageNumber); - } - - @At - @Ok("fm:template.admin.server.official.list_view") - @Filters(@By(type = ChectServerExitsActionFilter.class, args = { "ioc:chectServerExitsActionFilter" })) - public Pagination list_view(@Param("pid") int pid, @Param(value="pageNumber",df="1") Integer pageNumber) { - return officialServerService.getObjListByPager(pageNumber, Cnd.where("pid", "=", pid).desc("sid")); - } - - @At - @Ok("fm:template.admin.server.official.add") - @RequiresUser - public void add() { - - } - - @At - @Ok("fm:template.admin.server.official.edit") - @RequiresUser - public OfficialServer edit(@Param("id") String id) { - return officialServerService.fetch(Cnd.where("id", "=", id)); - } -} diff --git a/src/main/java/com/rekoe/module/admin/AdminPlatformConfigAction.java b/src/main/java/com/rekoe/module/admin/AdminPlatformConfigAction.java deleted file mode 100644 index 12196ca..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminPlatformConfigAction.java +++ /dev/null @@ -1,185 +0,0 @@ -package com.rekoe.module.admin; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.nutz.dao.Cnd; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.lang.util.NutMap; -import org.nutz.mvc.Mvcs; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.By; -import org.nutz.mvc.annotation.Filters; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.common.AppleVO; -import com.rekoe.common.GooglePVO; -import com.rekoe.common.GoogleVO; -import com.rekoe.common.Message; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.PlatformConfig; -import com.rekoe.filter.ServerPermisionActionFilter; -import com.rekoe.service.PlatformConfigService; - -@IocBean -@At("/admin/platform_config") -@Filters(@By(type = ServerPermisionActionFilter.class, args = { "ioc:serverPermisionActionFilter" })) -public class AdminPlatformConfigAction { - - @Inject - private PlatformConfigService platformConfigService; - - @At - @Ok("fm:template.admin.server.platform.list") - @RequiresPermissions("admin.platform") - @PermissionTag(name = "浏览列表", tag = "平台接入", enable = false) - public Pagination list(@Param("platformid") int sid, @Param(value = "pageNumber", df = "1") int pageNumber) { - Mvcs.getReq().setAttribute("platformid", sid); - return platformConfigService.getListByPager(pageNumber, sid); - } - - @At - @Ok("fm:template.admin.server.platform.add") - @RequiresPermissions("admin.platform:add") - @PermissionTag(name = "添加平台", tag = "平台接入", enable = true) - public int add(@Param("platformid") int sid) { - return sid; - } - - @At - @Ok("fm:template.admin.server.platform.edit") - @RequiresPermissions("admin.platform:edit") - @PermissionTag(name = "编辑平台", tag = "平台接入") - public PlatformConfig edit(@Param("platformid") int sid, @Param("id") String id) { - return platformConfigService.fetch(Cnd.where("id", "=", id)); - } - - @At - @Ok("fm:template.admin.server.platform.${obj}.add_${obj}") - @RequiresPermissions("admin.platform") - @PermissionTag(name = "浏览列表", tag = "平台接入", enable = false) - public String add_view(@Param("platformid") int sid, @Param(value = "provider", df = "uc") String provider) { - Mvcs.getReq().setAttribute("platformid", sid); - return provider; - } - - @At - @Ok("json") - @RequiresPermissions("admin.platform:add") - @PermissionTag(name = "添加平台", tag = "平台接入", enable = false) - public Message o_save(@Param("platformid") int sid, @Param("..") NutMap map, HttpServletRequest req) { - PlatformConfig platformConfig = platformConfigService.fetch(Cnd.where("sid", "=", sid).and("provider", "=", map.getString("provider"))); - if (Lang.isEmpty(platformConfig)) { - platformConfigService.insert(new PlatformConfig(sid, map)); - } else { - return Message.error("duplate.data", req); - } - return Message.success("ok", req); - } - - @At - @Ok("json") - @RequiresPermissions("admin.platform:edit") - @PermissionTag(name = "编辑平台", tag = "平台接入", enable = false) - public Message o_update(@Param("platformid") int sid, @Param("id") String id, @Param("..") NutMap map, HttpServletRequest req) { - map.remove("platformid"); - map.remove("id"); - PlatformConfig platformConfig = platformConfigService.fetch(Cnd.where("id", "=", id)); - platformConfig.setConfig(map); - platformConfigService.update(platformConfig); - return Message.success("ok", req); - } - - @At("/googleP/o_update") - @Ok("json") - @RequiresPermissions("admin.platform:edit") - @PermissionTag(name = "编辑平台", tag = "平台接入", enable = false) - public Message google_play_update(@Param("platformid") int sid, @Param("id") String id, @Param("::p.") GooglePVO googlePVO, HttpServletRequest req) { - PlatformConfig platformConfig = platformConfigService.fetch(Cnd.where("id", "=", id)); - platformConfig.setConfig(Lang.obj2nutmap(googlePVO)); - platformConfigService.update(platformConfig); - return Message.success("ok", req); - } - - @At("/googleP/o_save") - @Ok("json") - @RequiresPermissions("admin.platform:add") - @PermissionTag(name = "添加平台", tag = "平台接入", enable = false) - public Message google_play_save(@Param("platformid") int sid, @Param("provider") String provider, @Param("::p.") GooglePVO googlePVO, HttpServletRequest req) { - PlatformConfig platformConfig = platformConfigService.fetch(Cnd.where("sid", "=", sid).and("provider", "=", provider)); - if (Lang.isEmpty(platformConfig)) { - NutMap map = Lang.obj2nutmap(googlePVO); - map.put("provider", provider); - platformConfigService.insert(new PlatformConfig(sid, map)); - } else { - return Message.error("duplate.data", req); - } - return Message.success("ok", req); - } - - /** - * google - */ - - @At("/google/o_update") - @Ok("json") - @RequiresPermissions("admin.platform:edit") - @PermissionTag(name = "编辑平台", tag = "平台接入", enable = false) - public Message google_update(@Param("platformid") int sid, @Param("id") String id, @Param("::p.") GoogleVO googleVO, HttpServletRequest req) { - PlatformConfig platformConfig = platformConfigService.fetch(Cnd.where("id", "=", id)); - platformConfig.setConfig(Lang.obj2nutmap(googleVO)); - platformConfigService.update(platformConfig); - return Message.success("ok", req); - } - - @At("/google/o_save") - @Ok("json") - @RequiresPermissions("admin.platform:add") - @PermissionTag(name = "添加平台", tag = "平台接入", enable = false) - public Message google_save(@Param("platformid") int sid, @Param("provider") String provider, @Param("::p.") GoogleVO googleVO, HttpServletRequest req) { - PlatformConfig platformConfig = platformConfigService.fetch(Cnd.where("sid", "=", sid).and("provider", "=", provider)); - if (Lang.isEmpty(platformConfig)) { - NutMap map = Lang.obj2nutmap(googleVO); - map.put("provider", provider); - platformConfigService.insert(new PlatformConfig(sid, map)); - } else { - return Message.error("duplate.data", req); - } - return Message.success("ok", req); - } - - /** - * apple - */ - - @At("/apple/o_update") - @Ok("json") - @RequiresPermissions("admin.platform:edit") - @PermissionTag(name = "编辑平台", tag = "平台接入", enable = false) - public Message apple_update(@Param("platformid") int sid, @Param("id") String id, @Param("::p.") AppleVO appleVO, HttpServletRequest req) { - PlatformConfig platformConfig = platformConfigService.fetch(Cnd.where("id", "=", id)); - platformConfig.setConfig(Lang.obj2nutmap(appleVO)); - platformConfigService.update(platformConfig); - return Message.success("ok", req); - } - - @At("/apple/o_save") - @Ok("json") - @RequiresPermissions("admin.platform:add") - @PermissionTag(name = "添加平台", tag = "平台接入", enable = false) - public Message apple_save(@Param("platformid") int sid, @Param("provider") String provider, @Param("::p.") AppleVO appleVO, HttpServletRequest req) { - PlatformConfig platformConfig = platformConfigService.fetch(Cnd.where("sid", "=", sid).and("provider", "=", provider)); - if (Lang.isEmpty(platformConfig)) { - NutMap map = Lang.obj2nutmap(appleVO); - map.put("provider", provider); - platformConfigService.insert(new PlatformConfig(sid, map)); - } else { - return Message.error("duplate.data", req); - } - return Message.success("ok", req); - } -} diff --git a/src/main/java/com/rekoe/module/admin/AdminReportAdsAct.java b/src/main/java/com/rekoe/module/admin/AdminReportAdsAct.java deleted file mode 100644 index c2334f0..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminReportAdsAct.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.rekoe.module.admin; - -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.util.Collection; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Attr; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; -import org.nutz.web.Webs; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.domain.GameServer; -import com.rekoe.domain.User; -import com.rekoe.module.BaseAction; -import com.rekoe.service.GameServerService; -import com.rekoe.service.ReportAdsService; - -@IocBean -@At("/admin/report/ads") -public class AdminReportAdsAct extends BaseAction { - - @Inject - private ReportAdsService reportAdsService; - - @Inject - private GameServerService gameServerService; - - @At - @Ok("fm:template.admin.report.ads.search") - @RequiresPermissions({ "report:ads" }) - @PermissionTag(name = "设备号汇报搜索", tag = "数据统计") - public Collection search(@Attr(Webs.ME) User user) { - return user.getServers().values(); - } - - @At - @Ok("down") - @RequiresPermissions({ "report:ads.down" }) - @PermissionTag(name = "设备号数据下载", tag = "数据统计") - public ByteArrayOutputStream down(@Param("pid") int pid) throws IOException { - return loadDown(reportAdsService.getList(pid)); - } -} diff --git a/src/main/java/com/rekoe/module/admin/AdminUserAct.java b/src/main/java/com/rekoe/module/admin/AdminUserAct.java index 89e6f0d..1e2cac4 100644 --- a/src/main/java/com/rekoe/module/admin/AdminUserAct.java +++ b/src/main/java/com/rekoe/module/admin/AdminUserAct.java @@ -1,8 +1,6 @@ package com.rekoe.module.admin; -import java.util.HashMap; import java.util.List; -import java.util.Map; import javax.servlet.http.HttpServletRequest; @@ -33,10 +31,8 @@ import com.alibaba.druid.util.DruidWebUtils; import com.rekoe.annotation.PermissionTag; import com.rekoe.common.Message; import com.rekoe.common.page.Pagination; -import com.rekoe.domain.GameServer; import com.rekoe.domain.Role; import com.rekoe.domain.User; -import com.rekoe.service.GameServerService; import com.rekoe.service.RoleService; import com.rekoe.service.UserService; @@ -55,9 +51,6 @@ public class AdminUserAct { @Inject private RoleService roleService; - @Inject - private GameServerService gameServerService; - @At @Ok("fm:template.admin.common.main") @RequiresAuthentication @@ -132,12 +125,6 @@ public class AdminUserAct { if (isSupper) { roleList = roleService.list(); } - List serverList = gameServerService.loadAll(); - int systemSize = serverList.size(); - int userSize = editUser.getServers().size(); - boolean allServer = userSize >= systemSize; - req.setAttribute("allServer", allServer); - req.setAttribute("serverList", serverList); req.setAttribute("roleList", roleList); return editUser; } @@ -148,28 +135,6 @@ public class AdminUserAct { public Object update(@Param("id") long id, @Param("allServer") Boolean allServer, @Param("serverIds") Integer[] serverIds, @Param("roleIds") Integer[] roleIds) { User user = userService.fetch(id); userService.removeUserUpdata(user); - allServer = user.isSystem() ? true : allServer; - if (allServer) { - List serverList = gameServerService.loadAll(); - Map serverMap = user.getServers(); - if (Lang.isEmpty(serverMap)) { - serverMap = new HashMap<>(); - user.setServers(serverMap); - } - for (GameServer server : serverList) { - serverMap.put(server.getId(), server); - } - } else { - List serverList = gameServerService.loadAllByIds(serverIds); - Map serverMap = user.getServers(); - if (Lang.isEmpty(serverMap)) { - serverMap = new HashMap<>(); - user.setServers(serverMap); - } - for (GameServer server : serverList) { - serverMap.put(server.getId(), server); - } - } user.setRoles(roleService.loadRoles(roleIds)); userService.insertRelations(user); return user; diff --git a/src/main/java/com/rekoe/module/admin/AdminVerifyAct.java b/src/main/java/com/rekoe/module/admin/AdminVerifyAct.java deleted file mode 100644 index d0a137e..0000000 --- a/src/main/java/com/rekoe/module/admin/AdminVerifyAct.java +++ /dev/null @@ -1,91 +0,0 @@ -package com.rekoe.module.admin; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.shiro.authz.annotation.RequiresUser; -import org.nutz.dao.Cnd; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.mvc.View; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Attr; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; -import org.nutz.mvc.view.ViewWrapper; -import org.nutz.plugins.view.freemarker.FreeMarkerConfigurer; -import org.nutz.plugins.view.freemarker.FreemarkerView; -import org.nutz.web.Webs; - -import com.rekoe.common.Message; -import com.rekoe.domain.GameServer; -import com.rekoe.domain.User; -import com.rekoe.domain.VerifyServer; -import com.rekoe.service.GameServerService; -import com.rekoe.service.VerifyServerService; - -/** - * 提审服务器配置 - * @author kouxian - * - */ -@IocBean -@At("/admin/verify") -public class AdminVerifyAct { - - @Inject - private VerifyServerService verifyServerService; - - @Inject - private FreeMarkerConfigurer freeMarkerConfigurer; - - @Inject - private GameServerService gameServerService; - - @At - @RequiresUser - public View view(@Attr(Webs.ME) User user, @Param("pid") int pid) { - VerifyServer verifyServer = verifyServerService.fetch(Cnd.where("pid", "=", pid)); - GameServer server = gameServerService.fetch(Cnd.where("pid", "=", pid)); - if (Lang.isEmpty(server)) { - throw Lang.makeThrow("Not Fond PID[%s] Server", pid); - } - GameServer userServer = user.getServers().get(server.getId()); - if (Lang.isEmpty(userServer)) { - throw Lang.makeThrow("You Not Have This Server[%s] Permission ", server.getPlatformName()); - } - if (Lang.isEmpty(verifyServer)) { - return new ViewWrapper(new FreemarkerView(freeMarkerConfigurer, "template/admin/server/verify/add"), server); - } - verifyServer.setGameServer(server); - return new ViewWrapper(new FreemarkerView(freeMarkerConfigurer, "template/admin/server/verify/edit"), verifyServer); - } - - @At - @Ok("json") - @RequiresUser - public Message o_save(@Param("::p.") VerifyServer vserver, HttpServletRequest req) { - VerifyServer verifyServer = verifyServerService.fetch(Cnd.where("pid", "=", vserver.getPid())); - if (!Lang.isEmpty(verifyServer)) { - throw Lang.makeThrow("Not Fond PID[%s] Server", vserver.getPid()); - } - vserver.setPid(vserver.getPid()); - boolean isRight = verifyServerService.insert(vserver); - if (isRight) { - return Message.success("button.submit.success", req); - } - return Message.error("admin.message.error", req); - } - - @At - @Ok("json") - @RequiresUser - public Message o_update(@Param("::p.") VerifyServer vserver, HttpServletRequest req) { - VerifyServer verifyServer = verifyServerService.fetch(Cnd.where("pid", "=", vserver.getPid())); - if (Lang.isEmpty(verifyServer)) { - throw Lang.makeThrow("Not Fond PID[%s] Server", vserver.getPid()); - } - verifyServerService.update(vserver); - return Message.success("button.submit.success", req); - } -} diff --git a/src/main/java/com/rekoe/module/admin/PayRefundAct.java b/src/main/java/com/rekoe/module/admin/PayRefundAct.java deleted file mode 100644 index 2bb8512..0000000 --- a/src/main/java/com/rekoe/module/admin/PayRefundAct.java +++ /dev/null @@ -1,152 +0,0 @@ -package com.rekoe.module.admin; - -import java.util.List; - -import javax.servlet.http.HttpServletRequest; - -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.nutz.dao.Chain; -import org.nutz.dao.Cnd; -import org.nutz.ioc.impl.PropertiesProxy; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.lang.Lang; -import org.nutz.log.Log; -import org.nutz.log.Logs; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; - -import com.rekoe.annotation.PermissionTag; -import com.rekoe.common.Message; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.PayRefund; -import com.rekoe.domain.PlatformUser; -import com.rekoe.module.facebook.pay.Order; -import com.rekoe.service.PayFefundService; -import com.rekoe.service.PlatformUserService; -import com.restfb.Parameter; -import com.restfb.batch.BatchRequest; -import com.restfb.batch.BatchRequest.BatchRequestBuilder; -import com.restfb.batch.BatchResponse; - -@IocBean -@At("/admin/pay_refund") -public class PayRefundAct { - - private final static Log log = Logs.get(); - /** - * /PAYMENT_ID/refunds - */ - @Inject - private PayFefundService payFefundService; - - @At - @Ok("fm:template.admin.pay_refund.list") - @RequiresPermissions("admin.pay:refund") - @PermissionTag(name = "退单管理", tag = "退单管理", enable = true) - public Pagination list(@Param(value = "pageNumber", df = "1") Integer pageNumber) { - return payFefundService.getPayRefundListByPager(pageNumber); - } - - @At - @Ok("fm:template.admin.pay_refund.view") - @RequiresPermissions("admin.pay:refund") - @PermissionTag(name = "退单管理", tag = "退单管理", enable = false) - public Order view(@Param("id") String id, @Param("appid") String appid, HttpServletRequest req) throws Exception { - return edit(id, appid, req); - } - - @At - @Ok("fm:template.admin.pay_refund.edit") - @RequiresPermissions("admin.pay:refund") - @PermissionTag(name = "退单管理", tag = "退单管理", enable = false) - public Order edit(@Param("id") String id, @Param("appid") String appid, HttpServletRequest req) throws Exception { - req.setAttribute("appid", appid); - return Json.fromJson(Order.class, payFefundService.facebookFetch(id)); - } - - @At - @Ok("json") - @RequiresPermissions("admin.pay:refund") - @PermissionTag(name = "退单管理", tag = "退单管理", enable = false) - public Message refund(@Param("appid") String appid, @Param("id") String id, @Param("currency") String currency, @Param("amount") String amount, @Param("reason") String reason, HttpServletRequest req) throws Exception { - BatchRequest postRequest = new BatchRequestBuilder(id + "/refunds").method("POST").body(Parameter.with("reason", reason), Parameter.with("currency", currency), Parameter.with("amount", amount)).build(); - List list = payFefundService.getFacebookClient().executeBatch(postRequest); - BatchResponse res = list.get(0); - String result = res.getBody(); - disputeResult disputeResult = Json.fromJson(disputeResult.class, result); - if (!Lang.isEmpty(disputeResult) && disputeResult.isSuccess()) { - PayRefund payRefund = payFefundService.fetchByKeyId(appid); - payRefund.setStatus(true); - payFefundService.update(payRefund); - return Message.success("admin.message.success", req); - } - com.rekoe.module.facebook.pay.Error pay = Json.fromJson(com.rekoe.module.facebook.pay.Error.class, result); - return Message.error(pay.getError().getMessage(), req); - } - - @At - @Ok("json") - @RequiresPermissions("admin.pay:refund") - @PermissionTag(name = "退单管理", tag = "退单管理", enable = false) - public Message dispute(@Param("appid") String appid, @Param("id") String id, @Param("reason") String reason, HttpServletRequest req) throws Exception { - BatchRequest postRequest = new BatchRequestBuilder(id + "/dispute").method("POST").body(Parameter.with("reason", reason)).build(); - List list = payFefundService.getFacebookClient().executeBatch(postRequest); - BatchResponse res = list.get(0); - String result = res.getBody(); - log.infof("dispute res[%s]", result); - disputeResult disputeResult = Json.fromJson(disputeResult.class, result); - if (!Lang.isEmpty(disputeResult) && disputeResult.isSuccess()) { - PayRefund payRefund = payFefundService.fetchByKeyId(appid); - payRefund.setStatus(true); - payFefundService.update(payRefund); - return Message.success("admin.message.success", req); - } - com.rekoe.module.facebook.pay.Error pay = Json.fromJson(com.rekoe.module.facebook.pay.Error.class, result); - return Message.error(pay.getError().getMessage(), req); - } - - public static void main(String[] args) { - String json = "[{\"success\":true}]"; - List rest = Json.fromJsonAsList(disputeResult.class, json); - System.out.println(rest.get(0).isSuccess()); - } - - public static class disputeResult { - private boolean success; - - public boolean isSuccess() { - return success; - } - - public void setSuccess(boolean success) { - this.success = success; - } - } - - @Inject - private PlatformUserService platformUserService; - @Inject - private PropertiesProxy conf; - - @At - @Ok("json") - @RequiresPermissions("admin.pay:refund") - @PermissionTag(name = "退单管理", tag = "退单管理", enable = false) - public Message update(@Param("id") String id, HttpServletRequest req) { - PayRefund payRefund = payFefundService.fetchByID(id); - if (Lang.isEmpty(payRefund)) { - return Message.error("admin.common.error.notfund", req); - } - String passportid = payRefund.getPassportid(); - PlatformUser platformUser = platformUserService.getPlatformUser(conf.getInt("facebook.pid"), passportid, conf.get("facebook.pfid")); - if (Lang.isEmpty(platformUser)) { - return Message.error("admin.common.error.notfund", req); - } - platformUser.setLocked(true); - platformUserService.update(Chain.make("is_locked", true), Cnd.where("id", "=", platformUser.getId())); - return Message.success("admin.message.success", req); - } -} diff --git a/src/main/java/com/rekoe/module/admin/WelcomeAct.java b/src/main/java/com/rekoe/module/admin/WelcomeAct.java index 4501cf7..6308025 100644 --- a/src/main/java/com/rekoe/module/admin/WelcomeAct.java +++ b/src/main/java/com/rekoe/module/admin/WelcomeAct.java @@ -1,20 +1,12 @@ package com.rekoe.module.admin; -import java.util.ArrayList; -import java.util.Collection; - import javax.servlet.http.HttpServletRequest; -import org.apache.shiro.SecurityUtils; import org.apache.shiro.authz.annotation.RequiresUser; -import org.nutz.castor.Castors; import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; import org.nutz.mvc.annotation.At; import org.nutz.mvc.annotation.Ok; -import com.rekoe.domain.GameServer; -import com.rekoe.domain.User; import com.rekoe.module.BaseAction; @IocBean @@ -29,15 +21,6 @@ public class WelcomeAct extends BaseAction { @Ok("fm:template.admin.top") @RequiresUser public boolean top(HttpServletRequest req) { - Object obj = SecurityUtils.getSubject().getPrincipal(); - if (obj instanceof User) { - User user = Castors.me().castTo(obj, User.class); - Collection servers = Lang.isEmpty(user.getServers()) ? (new ArrayList()) : ((User) obj).getServers().values(); - req.setAttribute("servers", servers); - return Lang.equals("local", user.getProviderid()); - } else { - req.setAttribute("servers", new ArrayList()); - } return true; } diff --git a/src/main/java/com/rekoe/module/facebook/FaceBookLoginAct.java b/src/main/java/com/rekoe/module/facebook/FaceBookLoginAct.java deleted file mode 100644 index d47796e..0000000 --- a/src/main/java/com/rekoe/module/facebook/FaceBookLoginAct.java +++ /dev/null @@ -1,179 +0,0 @@ -package com.rekoe.module.facebook; - -import java.io.PrintWriter; -import java.util.List; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; - -import org.apache.commons.lang3.StringUtils; -import org.brickred.socialauth.util.OAuthConfig; -import org.nutz.ioc.impl.PropertiesProxy; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.lang.Times; -import org.nutz.mvc.View; -import org.nutz.mvc.adaptor.JsonAdaptor; -import org.nutz.mvc.annotation.AdaptBy; -import org.nutz.mvc.annotation.At; -import org.nutz.mvc.annotation.Ok; -import org.nutz.mvc.annotation.Param; -import org.nutz.mvc.view.ViewWrapper; -import org.nutz.mvc.view.VoidView; -import org.nutz.plugins.view.freemarker.FreeMarkerConfigurer; -import org.nutz.plugins.view.freemarker.FreemarkerView; -import org.nutz.web.ajax.Ajax; -import org.nutz.web.ajax.AjaxReturn; - -import com.rekoe.domain.OfficialServer; -import com.rekoe.domain.PlatformUser; -import com.rekoe.domain.ServerHistory; -import com.rekoe.module.facebook.pay.PayObject; -import com.rekoe.service.IdWorkerService; -import com.rekoe.service.OfficialServerService; -import com.rekoe.service.PayFefundService; -import com.rekoe.service.PlatformUserService; -import com.rekoe.service.ServerHistoryService; -import com.restfb.DefaultFacebookClient; -import com.restfb.FacebookClient; -import com.restfb.types.User; - -@IocBean -@At("/facebook") -public class FaceBookLoginAct { - - public static final String OAUTH_ID = "facebook"; - private final String FB_URL = "https://apps.facebook.com/"; - private final String FB_TYPE_USER = "me"; - @Inject("java:conf.get('facebook.pid')") - private static int PLARFORM_ID = 1002; - @Inject("java:conf.get('facebook.pfid')") - private static String PFID; - @Inject("java:conf.get('facebook.namespace')") - private static String NAMESPACE; - @Inject("java:conf.get('facebook.feed.upstream.url')") - private static String FEED_UPSTREAM_URL; - @Inject - private PlatformUserService platformUserService; - - @Inject - private IdWorkerService idFactory; - - @Inject - private FreeMarkerConfigurer freeMarkerConfigurer; - - @Inject - private ServerHistoryService serverHistoryService; - - @Inject - private OfficialServerService officialServerService; - - @Inject - private PropertiesProxy conf; - @Inject - private PayFefundService payFefundService; - - @At - public View login(@Param("signed_request") String code, HttpServletRequest req, HttpServletResponse res, HttpSession session) throws Exception { - OAuthConfig oAuthConfig = payFefundService.getConfig().getProviderConfig(OAUTH_ID); - String appId = oAuthConfig.get_consumerKey(); - boolean isRight = true; - if (StringUtils.isBlank(code)) { - isRight = false; - } - if (isRight) { - FacebookSignedRequest facebookSR = FacebookSignedRequest.getFacebookSignedRequest(code, FacebookSignedRequest.class); - String accessToken = facebookSR.getOauth_token(); - if (StringUtils.isBlank(accessToken)) { - isRight = false; - } else { - OfficialServer server = officialServerService.getRecommendServer(PLARFORM_ID); - FacebookClient facebookClient = new DefaultFacebookClient(accessToken); - User user = facebookClient.fetchObject(FB_TYPE_USER, User.class); - PlatformUser platformUser = platformUserService.getPlatformUser(PLARFORM_ID, user.getId(), PFID); - if (Lang.isEmpty(platformUser)) { - long openid = idFactory.nextId(); - platformUser = platformUserService.add(PLARFORM_ID, user.getId(), openid, PFID); - ServerHistory entity = new ServerHistory(platformUser.getOpenid(), PLARFORM_ID, server.getSid()); - serverHistoryService.add(entity); - req.setAttribute("sid", server.getSid()); - } else { - if (platformUser.isLocked()) { - return new ViewWrapper(new FreemarkerView(freeMarkerConfigurer, "template/admin/common/lock"), ""); - } - ServerHistory entity = serverHistoryService.getLastLoginServer(platformUser.getOpenid(), PLARFORM_ID); - if (!Lang.isEmpty(entity)) { - req.setAttribute("sid", entity.getSid()); - } - } - ServerHistory hisroty = serverHistoryService.getLoginServerList(platformUser.getOpenid(), PLARFORM_ID, 1); - req.setAttribute("top", server); - req.setAttribute("userHistory", hisroty); - req.setAttribute("user", user); - req.setAttribute("code", code); - req.setAttribute("ads", req.getQueryString()); - req.setAttribute("zone", server); - } - } - if (isRight) { - res.addHeader("P3P", "CP=CAO PSA OUR IDC DSP COR ADM DEVi TAIi PSD IVAi IVDi CONi HIS IND CNT"); - List zones = officialServerService.getShowList(PLARFORM_ID); - req.setAttribute("zones", zones); - req.setAttribute("namespace", NAMESPACE); - req.setAttribute("appId", appId); - req.setAttribute("feed_upstream_url", FEED_UPSTREAM_URL); - return new ViewWrapper(new FreemarkerView(freeMarkerConfigurer, "template/front/zone/in"), zones); - } else { - String url = "http://www.facebook.com/dialog/oauth?client_id=" + appId + "&scope=email,publish_actions&redirect_uri=" + FB_URL + NAMESPACE + "/?" + req.getQueryString(); - res.setContentType("text/html"); - PrintWriter writer = res.getWriter(); - writer.print(""); - writer.close(); - return new VoidView(); - } - } - - @At("/change/?/?") - @Ok("json") - public AjaxReturn change(int sid, String passportid) { - PlatformUser platformUser = platformUserService.getPlatformUser(PLARFORM_ID, passportid, PFID); - if (Lang.isEmpty(platformUser)) { - return Ajax.fail(); - } - if (platformUser.isLocked()) { - return Ajax.fail(); - } - OfficialServer officialServer = officialServerService.getOfficialServer(PLARFORM_ID, sid); - if (Lang.isEmpty(officialServer)) { - return Ajax.fail(); - } - ServerHistory entity = serverHistoryService.getServerHistory(platformUser.getOpenid(), PLARFORM_ID, sid); - if (Lang.isEmpty(entity)) { - entity = new ServerHistory(platformUser.getOpenid(), PLARFORM_ID, sid); - serverHistoryService.add(entity); - } else { - entity.setModifyTime(Times.now()); - serverHistoryService.update(entity); - } - return Ajax.ok().setData(officialServer); - } - - @At - @Ok("redirect:${obj}") - public String upstream() { - return "https://apps.facebook.com/" + NAMESPACE + "/"; - } - - @At - @AdaptBy(type = JsonAdaptor.class) - @Ok("raw") - public String refund(PayObject pay, @Param("::hub.") ReFund reFund) { - payFefundService.push(pay); - if (Lang.isEmpty(reFund)) { - return "ok"; - } - return reFund.getChallenge(); - } -} diff --git a/src/main/java/com/rekoe/module/facebook/FacebookSignedRequest.java b/src/main/java/com/rekoe/module/facebook/FacebookSignedRequest.java deleted file mode 100644 index 7e8700f..0000000 --- a/src/main/java/com/rekoe/module/facebook/FacebookSignedRequest.java +++ /dev/null @@ -1,125 +0,0 @@ -package com.rekoe.module.facebook; - -import org.nutz.json.Json; -public class FacebookSignedRequest { - - private String algorithm; - private Long expires; - private Long issued_at; - private String oauth_token; - private Long user_id; - private FacebookSignedRequestUser user; - - public static T getFacebookSignedRequest(String signedRequest, Class clazz) throws Exception { - String payload = signedRequest.split("[.]", 2)[1]; - payload = payload.replace("-", "+").replace("_", "/").trim(); - String jsonString = new String(org.nutz.repo.Base64.decodeFast(payload.getBytes())); - return Json.fromJson(clazz, jsonString); - - } - - public static void main(String[] args) { - String payload = "eyJhbGdvcml0aG0iOiJITUFDLVNIQTI1NiIsImV4cGlyZXMiOjE0MDI5MDIwMDAsImlzc3VlZF9hdCI6MTQwMjg5Njk3MSwib2F1dGhfdG9rZW4iOiJDQUFVZVZjb25FWkJrQkFIdFJtdjJOTVpBRUdvU3NGOENzb1lNYlZxZTVmNXRtYU9jRHdGWkF4QklKUHRaQWVYM3JEajlJVmVZVE5OcmJ6SkdaQmhNUU1oRW80enpXUGI2QTlLTnJVWkFXWkFjUjF2S0Y2WGhFdlNmWkJJbUNoSERHOEt4SVhiRlQ0VkNNSEFTZXNoblVnWkFSc3p3R3RqS0hodHJKZlVjM0ZaQkRoT295OGJUeEEzbFpCbG1xRlhaQU44REUyWVA4aUFxcFhWTlB3WkRaRCIsInVzZXIiOnsiY291bnRyeSI6InVzIiwibG9jYWxlIjoiemhfQ04iLCJhZ2UiOnsibWluIjoyMX19LCJ1c2VyX2lkIjoiMTAwMDAxNzI4NTc5ODU4In0"; - //{"algorithm":"HMAC-SHA256","expires":1402902000,"issued_at":1402896971,"oauth_token":"CAAUeVconEZBkBAHtRmv2NMZAEGoSsF8CsoYMbVqe5f5tmaOcDwFZAxBIJPtZAeX3rDj9IVeYTNNrbzJGZBhMQMhEo4zzWPb6A9KNrUZAWZAcR1vKF6XhEvSfZBImChHDG8KxIXbFT4VCMHASeshnUgZARszwGtjKHhtrJfUc3FZBDhOoy8bTxA3lZBlmqFXZAN8DE2YP8iAqpXVNPwZDZD","user":{"country":"us","locale":"zh_CN","age":{"min":21}},"user_id":"100001728579858"} - String jsonString = new String(org.nutz.repo.Base64.decodeFast(payload.getBytes())); - System.out.println(jsonString);} - public String getAlgorithm() { - return algorithm; - } - - public void setAlgorithm(String algorithm) { - this.algorithm = algorithm; - } - - public Long getExpires() { - return expires; - } - - public void setExpires(Long expires) { - this.expires = expires; - } - - public Long getIssued_at() { - return issued_at; - } - - public void setIssued_at(Long issued_at) { - this.issued_at = issued_at; - } - - public String getOauth_token() { - return oauth_token; - } - - public void setOauth_token(String oauth_token) { - this.oauth_token = oauth_token; - } - - public Long getUser_id() { - return user_id; - } - - public void setUser_id(Long user_id) { - this.user_id = user_id; - } - - public FacebookSignedRequestUser getUser() { - return user; - } - - public void setUser(FacebookSignedRequestUser user) { - this.user = user; - } - - public static class FacebookSignedRequestUser { - - private String country; - private String locale; - private FacebookSignedRequestUserAge age; - - public String getCountry() { - return country; - } - - public void setCountry(String country) { - this.country = country; - } - - public String getLocale() { - return locale; - } - - public void setLocale(String locale) { - this.locale = locale; - } - - public FacebookSignedRequestUserAge getAge() { - return age; - } - - public void setAge(FacebookSignedRequestUserAge age) { - this.age = age; - } - - public static class FacebookSignedRequestUserAge { - private int min; - private int max; - - public int getMin() { - return min; - } - - public void setMin(int min) { - this.min = min; - } - - public int getMax() { - return max; - } - - public void setMax(int max) { - this.max = max; - } - } - } -} diff --git a/src/main/java/com/rekoe/module/facebook/ReFund.java b/src/main/java/com/rekoe/module/facebook/ReFund.java deleted file mode 100644 index db094ac..0000000 --- a/src/main/java/com/rekoe/module/facebook/ReFund.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.rekoe.module.facebook; - -/** - * @author 科技㊣²º¹³
- * 2014年6月15日 下午8:35:20
- * http://www.rekoe.com
- * QQ:5382211
- */ -public class ReFund { - - private String challenge; - private String mode; - private String verify_token; - - public String getMode() { - return mode; - } - - public void setMode(String mode) { - this.mode = mode; - } - - public String getVerify_token() { - return verify_token; - } - - public void setVerify_token(String verify_token) { - this.verify_token = verify_token; - } - - public String getChallenge() { - return challenge; - } - - public void setChallenge(String challenge) { - this.challenge = challenge; - } -} diff --git a/src/main/java/com/rekoe/service/CdKeyCategoryService.java b/src/main/java/com/rekoe/service/CdKeyCategoryService.java deleted file mode 100644 index 4700fe9..0000000 --- a/src/main/java/com/rekoe/service/CdKeyCategoryService.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.rekoe.service; - -import java.util.List; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import org.apache.commons.lang3.math.NumberUtils; -import org.nutz.dao.Cnd; -import org.nutz.dao.pager.Pager; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.CdkeyCategory; - -@IocBean(fields = { "dao" }) -public class CdKeyCategoryService extends BaseService { - public List list() { - List list = query(null, null); - return list; - } - - public boolean insert(CdkeyCategory cdkeycategory) { - dao().insert(cdkeycategory); - return true; - } - - public CdkeyCategory fetchByID(String id) { - return dao().fetch(getEntityClass(), Cnd.where("id", "=", id)); - } - - public CdkeyCategory view(String id) { - return fetchByID(id); - } - - public void update(CdkeyCategory cdkeycategory) { - dao().update(cdkeycategory, "(name)$"); - } - - public boolean isNotExists(int type) { - return Lang.isEmpty(dao().fetch(getEntityClass(), Cnd.where("cdkeyType", "=", type))); - } - - protected int getPageNumber(Integer pageNumber) { - return Lang.isEmpty(pageNumber) ? 1 : pageNumber; - } - - public Pagination getCategoryListByPager(Integer pageNumber) { - int pageSize = 20; - pageNumber = getPageNumber(pageNumber); - Pager pager = dao().createPager(pageNumber, pageSize); - List list = dao().query(CdkeyCategory.class, null, pager); - pager.setRecordCount(dao().count(CdkeyCategory.class, null)); - return new Pagination(pageNumber, pageSize, pager.getRecordCount(), list); - } - - public boolean isExists(int type) { - return !isNotExists(type); - } - - private String getDigit(String text) { - StringBuffer sb = new StringBuffer(); - Pattern p = Pattern.compile("(\\d+)"); - Matcher m = p.matcher(text); - while (m.find()) { - String find = m.group(1); - sb.append(find); - } - return sb.toString(); - } - - public int getType(String cdk) { - return NumberUtils.toInt(getDigit(cdk), -1); - } - - public boolean isExists(String cdkey) { - int type = NumberUtils.toInt(getDigit(cdkey), -1); - return !isNotExists(type); - } - -} diff --git a/src/main/java/com/rekoe/service/CdKeyLogService.java b/src/main/java/com/rekoe/service/CdKeyLogService.java deleted file mode 100644 index 6521560..0000000 --- a/src/main/java/com/rekoe/service/CdKeyLogService.java +++ /dev/null @@ -1,19 +0,0 @@ -package com.rekoe.service; - -import org.nutz.dao.Dao; -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.domain.CdkeyLog; - -@IocBean(fields = { "dao" }) -public class CdKeyLogService extends BaseService { - - public CdKeyLogService() { - } - - public CdKeyLogService(Dao dao) { - super(dao); - } - - -} diff --git a/src/main/java/com/rekoe/service/CdKeyService.java b/src/main/java/com/rekoe/service/CdKeyService.java deleted file mode 100644 index 6ba833a..0000000 --- a/src/main/java/com/rekoe/service/CdKeyService.java +++ /dev/null @@ -1,197 +0,0 @@ -package com.rekoe.service; - -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.BlockingQueue; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.LinkedBlockingQueue; - -import org.apache.commons.lang3.StringUtils; -import org.nutz.dao.Chain; -import org.nutz.dao.Cnd; -import org.nutz.dao.ConnCallback; -import org.nutz.dao.Dao; -import org.nutz.dao.Sqls; -import org.nutz.dao.entity.Record; -import org.nutz.dao.sql.Sql; -import org.nutz.dao.sql.SqlCallback; -import org.nutz.dao.util.Daos; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.lang.Times; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.domain.CdkeyCategory; -import com.rekoe.domain.CdkeyEntity; -import com.rekoe.utils.StringGenerator; - -@IocBean(fields = { "dao" }, create = "init") -public class CdKeyService extends BaseService { - - private final static String CDKEY_SUFFIX = "cdkey_"; - - private final static Log log = Logs.get(); - private final Map CDKEY_PROCESS_STATUS_ON = new HashMap(); - private Object lock = new Object(); - - private ExecutorService executorService; - - public CdKeyService() { - } - - public CdKeyService(Dao dao) { - } - - public void init() { - executorService = Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors()); - /** - * 修复下表结构 - */ - Sql sql = Sqls.create("select cdkey_type from $table"); - sql.setEntity(dao().getEntity(CdkeyCategory.class)); - sql.vars().set("table", sql.getEntity().getTableName()); - final List typeList = new ArrayList<>(); - sql.setCallback(new SqlCallback() { - - @Override - public Object invoke(Connection conn, ResultSet rs, Sql sql) throws SQLException { - while (rs.next()) { - typeList.add(rs.getInt(1)); - } - return null; - } - }); - dao().execute(sql); - for (int id : typeList) { - Daos.migration(dao(), CdkeyEntity.class, true, true, id); - } - } - - public boolean use(String cdkey, int taskid) { - Dao dao = Daos.ext(dao(), taskid); - return dao.update(CdkeyEntity.class, Chain.make("is_used", true), Cnd.where("cdkey", "=", cdkey).and("is_used", "=", false)) > 0; - } - - public boolean addCdkey(final String taskid, final int num, final int len) { - synchronized (lock) { - Boolean isRight = CDKEY_PROCESS_STATUS_ON.get(taskid); - if (Lang.isEmpty(isRight) || !isRight) { - CDKEY_PROCESS_STATUS_ON.put(taskid, true); - executorService.execute(new Runnable() { - @Override - public void run() { - try { - Date now = Times.now(); - List linkd = new ArrayList(); - Dao dao = Daos.ext(dao(), taskid); - boolean exists = dao.exists(CdkeyEntity.class); - Set temp = new HashSet<>(); - Set set = new HashSet(); - if (!exists) { - dao.create(CdkeyEntity.class, false); - } else { - Sql sql = Sqls.create("select cdkey from $table"); - sql.setEntity(dao.getEntity(CdkeyEntity.class)); - sql.vars().set("table", sql.getEntity().getTableName() + taskid); - sql.setCallback(Sqls.callback.strList()); - dao.execute(sql); - List list = sql.getList(String.class); - linkd.addAll(list); - for (String str : list) { - temp.add(str.toLowerCase()); - } - } - int count = 0; - int safeCount = 0; - BlockingQueue queue = new LinkedBlockingQueue(); - StringGenerator sg = new StringGenerator(len, len); - while (true) { - String key = sg.next(); - String newStrKey = getRandomStr(key, taskid); - if (temp.contains(newStrKey.toLowerCase())) { - safeCount++; - continue; - } - count++; - if (count > num) { - break; - } - if (safeCount > 10000) { - break; - } - set.add(newStrKey); - } - for (String $key : set) { - queue.add(new CdkeyEntity($key, now)); - linkd.add($key); - } - List list = new ArrayList<>(); - while (true) { - if (queue.size() >= 100) { - queue.drainTo(list, 100); - dao.fastInsert(list); - list.clear(); - } else if (queue.size() != 0) { - queue.drainTo(list, 50); - dao.fastInsert(list); - list.clear(); - } else { - list.clear(); - break; - } - } - } catch (Exception e) { - log.error(e); - } - CDKEY_PROCESS_STATUS_ON.put(taskid, false); - } - }); - return true; - } - return false; - } - } - - public List cdkTables() { - final List tables = new ArrayList(); - dao().run(new ConnCallback() { - @Override - public void invoke(java.sql.Connection conn) throws Exception { - String showTables = "show tables"; - java.sql.PreparedStatement ppstat = conn.prepareStatement(showTables); - ResultSet rest = ppstat.executeQuery(); - while (rest.next()) { - String table = rest.getString(1); - if (StringUtils.contains(table, CDKEY_SUFFIX)) { - if (!StringUtils.containsOnly(table, CDKEY_SUFFIX)) { - tables.add(table); - } - } - } - } - }); - return tables; - } - - public List searchDown(int taskid, boolean used) { - Dao dao = Daos.ext(dao(), taskid); - Sql sql = Sqls.create("select * from $table $condition"); - sql.setEntity(dao.getEntity(CdkeyEntity.class)); - sql.vars().set("table", sql.getEntity().getTableName() + taskid); - sql.setCondition(used ? Cnd.where("used", "=", true) : null); - sql.setCallback(Sqls.callback.records()); - dao.execute(sql); - return sql.getList(Record.class); - } - -} diff --git a/src/main/java/com/rekoe/service/GameServerService.java b/src/main/java/com/rekoe/service/GameServerService.java deleted file mode 100644 index c476b16..0000000 --- a/src/main/java/com/rekoe/service/GameServerService.java +++ /dev/null @@ -1,179 +0,0 @@ -package com.rekoe.service; - -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import net.sf.ehcache.util.concurrent.ConcurrentHashMap; - -import org.nutz.aop.interceptor.async.Async; -import org.nutz.dao.Cnd; -import org.nutz.dao.Condition; -import org.nutz.dao.Dao; -import org.nutz.dao.Sqls; -import org.nutz.dao.sql.Sql; -import org.nutz.dao.sql.SqlCallback; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.lang.util.NutMap; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.cloopen.rest.sdk.CCPRestSDK; -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.GameServer; -import com.rekoe.domain.OAuthUser; - -@IocBean(args = { "refer:dao" }) -public class GameServerService extends BaseService { - - private final static Log log = Logs.get(); - - private ConcurrentHashMap ccpSDKMaps = new ConcurrentHashMap(5); - - public GameServerService() { - super(); - } - - @Async - public boolean sendPhoneMail(GameServer server, OAuthUser user, String templateId, String... str) { - boolean isRight = sendPhoneMail(server, user.getPhoneCode() + "", templateId, str); - return isRight; - } - - public boolean sendPhoneMail(GameServer server, String phone, String templateId, String ...str) { - int pid = server.getPid(); - CCPRestSDK temp = ccpSDKMaps.get(pid); - if (Lang.isEmpty(temp)) { - NutMap config = server.getMobileAuth(); - String accountSid = config.getString("accountSid",""); - String accountToken = config.getString("accountToken",""); - String AppId = config.getString("AppId"); - String serverIP = config.getString("serverIP"); - String serverPort = config.getString("serverPort"); - CCPRestSDK restAPI = new CCPRestSDK(); - restAPI.init(serverIP, serverPort); - restAPI.setAccount(accountSid, accountToken); - restAPI.setAppId(AppId); - ccpSDKMaps.putIfAbsent(pid, restAPI); - } - CCPRestSDK restAPI = ccpSDKMaps.get(pid); - if (!Lang.isEmpty(restAPI) && server.isUseMobileAuth()) { - //Map result = restAPI.sendTemplateSMS("13691366833", "29337", new String[]{"91366","30"}); - Map result = restAPI.sendTemplateSMS(phone, templateId, str); - if (log.isDebugEnabled()) { - log.debug(result); - } - String res = result.get("statusCode").toString(); - boolean isRight = "000000".equalsIgnoreCase(res); - return isRight; - } - return false; - } - - public static void main(String[] args) { - String accountSid = "aaf98f894ecd7d6a014ed7b7ccd30fbb"; - String accountToken = "9951c6eacb424918a36e2c6d4185c491"; - String AppId = "aaf98f894ecd7d6a014ed7bb0e8d0fce"; - String serverIP = "app.cloopen.com"; - String serverPort = "8883"; - CCPRestSDK restAPI = new CCPRestSDK(); - restAPI.init(serverIP, serverPort); - restAPI.setAccount(accountSid, accountToken); - restAPI.setAppId(AppId); - //Map result = restAPI.sendTemplateSMS("13810275348", "29337", new String[]{"91366","30"}); - Map result = restAPI.sendTemplateSMS("13691366833", "29337", new String[]{"91366","30"}); - System.out.println(result); - } - public GameServerService(Dao dao) { - super(dao); - } - - public List list(Condition cdn) { - List list = query(cdn, null); - return list; - } - - public void update(GameServer server) { - if (server.getItems() == null) { - server.setItems(new ArrayList()); - } - if (server.isUseMobileAuth()) { - NutMap config = server.getMobileAuth(); - String accountSid = config.getString("accountSid"); - String accountToken = config.getString("accountToken"); - String AppId = config.getString("AppId"); - String serverIP = config.getString("serverIP"); - String serverPort = config.getString("serverPort"); - CCPRestSDK restAPI = new CCPRestSDK(); - restAPI.init(serverIP, serverPort); - // restAPI.init("app.cloopen.com", "8883"); - restAPI.setAccount(accountSid, accountToken); - restAPI.setAppId(AppId); - ccpSDKMaps.putIfAbsent(server.getPid(), restAPI); - } - dao().update(server, "(platformName|open|payUrl|loginUrl|version|verify|blackOpen|blackList|clientSecret|authType|mobileAuth)$"); - } - - public boolean insert(GameServer server) { - return super.insert(server); - } - - /** - * 获得所有的服务器ID - */ - public List getAllIds() { - Dao dao = dao(); - Sql sql = Sqls.create("select id from system_server $condition"); - sql.setCondition(Cnd.where("is_open", "=", true)); - sql.setCallback(new SqlCallback() { - @Override - public Object invoke(Connection conn, ResultSet rs, Sql sql) throws SQLException { - List results = new ArrayList(); - while (rs.next()) { - results.add(rs.getInt(1)); - } - return results; - } - }); - dao.execute(sql); - return sql.getList(Integer.class); - } - - public GameServer getServer(int serverid) { - GameServer server = dao().fetch(GameServer.class, Cnd.where("id", "=", serverid)); - return server; - } - - public Pagination getObjectListByPager(Integer pageNumber, int pageSize) { - return getObjListByPager(dao(), pageNumber, pageSize, null); - } - - public List loadAll() { - List gss = dao().query(getEntityClass(), Cnd.where("is_open", "=", true)); - return gss; - } - - public List loadAllByIds(Integer[] serverIds) { - List gss = dao().query(getEntityClass(), Cnd.where("id", "iN", serverIds)); - return gss; - } - - public boolean canAdd(int pid) { - return Lang.isEmpty(dao().fetch(getEntityClass(), Cnd.where("pid", "=", pid))); - } - - public GameServer getByPid(int pid) { - GameServer server = dao().fetch(getEntityClass(), Cnd.where("pid", "=", pid)); - return server; - } - - public List list() { - List gss = dao().query(getEntityClass(), null); - return gss; - } - -} diff --git a/src/main/java/com/rekoe/service/NoticeService.java b/src/main/java/com/rekoe/service/NoticeService.java deleted file mode 100644 index 4d6d37c..0000000 --- a/src/main/java/com/rekoe/service/NoticeService.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import org.nutz.dao.Cnd; -import org.nutz.dao.Condition; -import org.nutz.dao.Dao; -import org.nutz.dao.FieldFilter; -import org.nutz.dao.pager.Pager; -import org.nutz.dao.util.Daos; -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.Notice; - -/** - * @author 科技㊣²º¹³
- * 2014年2月3日 下午4:48:45
- * http://www.rekoe.com
- * QQ:5382211 - */ -@IocBean(fields = { "dao" }) -public class NoticeService extends BaseService { - public NoticeService() { - super(); - } - - public NoticeService(Dao dao) { - super(dao); - } - - public List list() { - return query(null, null); - } - - public List getIndexNewList(int limit, String desc) { - return getListByCnd(Cnd.NEW().limit(1, limit).desc(desc)); - } - - public List getListByCnd(Condition cnd) { - return dao().query(getEntityClass(), cnd); - } - - public void update(final Notice art) { - Daos.ext(dao(), FieldFilter.create(Notice.class, null, "^(createDate)$", true)).update(art); - } - - public Pagination getObjListByPager(int pageNumber, String keyWorld) { - Pager pager = dao().createPager(pageNumber, 10); - Cnd cnd = Cnd.where("title", "like", "%" + keyWorld + "%"); - List list = dao().query(getEntityClass(), cnd, pager); - pager.setRecordCount(dao().count(getEntityClass(), cnd)); - Pagination pagination = new Pagination(pageNumber, 10, pager.getRecordCount(), list); - return pagination; - } -} diff --git a/src/main/java/com/rekoe/service/OAuthClientService.java b/src/main/java/com/rekoe/service/OAuthClientService.java deleted file mode 100644 index 2536cab..0000000 --- a/src/main/java/com/rekoe/service/OAuthClientService.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.OAuthClient; - -public interface OAuthClientService { - - public OAuthClient createClient(OAuthClient client); - - public OAuthClient updateClient(OAuthClient client); - - public void deleteClient(Long clientId); - - public OAuthClient findOne(Long clientId); - - public List findAll(); - - public OAuthClient findByClientId(String clientId); - - public OAuthClient findByClientSecret(String clientSecret); - - public Pagination getListPager(int pageNumber); - - public boolean check(String name); -} diff --git a/src/main/java/com/rekoe/service/OAuthService.java b/src/main/java/com/rekoe/service/OAuthService.java deleted file mode 100644 index 43b66d8..0000000 --- a/src/main/java/com/rekoe/service/OAuthService.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.rekoe.service; - -public interface OAuthService { - - //添加 auth code - public void addAuthCode(String authCode, String username); - //添加 access token - public void addAccessToken(String accessToken, String username); - - //验证auth code是否有效 - boolean checkAuthCode(String authCode); - //验证access token是否有效 - boolean checkAccessToken(String accessToken); - - String getUsernameByAuthCode(String authCode); - String getUsernameByAccessToken(String accessToken); - - - //auth code / access token 过期时间 - long getExpireIn(); - - - public boolean checkClientId(String clientId); - - public boolean checkClientSecret(String clientSecret); - - -} diff --git a/src/main/java/com/rekoe/service/OAuthServiceImpl.java b/src/main/java/com/rekoe/service/OAuthServiceImpl.java deleted file mode 100644 index b3d2feb..0000000 --- a/src/main/java/com/rekoe/service/OAuthServiceImpl.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.rekoe.service; - -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.repo.cache.simple.LRUCache; - -@IocBean(name = "oAuthService") -public class OAuthServiceImpl implements OAuthService { - - private LRUCache cache = new LRUCache(1024); - - @Inject - private OAuthClientService oAuthClientService; - - @Override - public void addAuthCode(String authCode, String username) { - cache.put(authCode, username); - } - - @Override - public void addAccessToken(String accessToken, String username) { - cache.put(accessToken, username); - } - - @Override - public String getUsernameByAuthCode(String authCode) { - return cache.get(authCode); - } - - @Override - public String getUsernameByAccessToken(String accessToken) { - return cache.get(accessToken); - } - - @Override - public boolean checkAuthCode(String authCode) { - return cache.get(authCode) != null; - } - - @Override - public boolean checkAccessToken(String accessToken) { - return cache.get(accessToken) != null; - } - - @Override - public boolean checkClientId(String clientId) { - return oAuthClientService.findByClientId(clientId) != null; - } - - @Override - public boolean checkClientSecret(String clientSecret) { - return oAuthClientService.findByClientSecret(clientSecret) != null; - } - - @Override - public long getExpireIn() { - return 3600L; - } -} diff --git a/src/main/java/com/rekoe/service/OAuthUserService.java b/src/main/java/com/rekoe/service/OAuthUserService.java deleted file mode 100644 index e1fae0a..0000000 --- a/src/main/java/com/rekoe/service/OAuthUserService.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.OAuthUser; - -public interface OAuthUserService { - /** - * 创建用户 - * - * @param user - */ - public OAuthUser createUser(OAuthUser user); - public OAuthUser createUser(OAuthUser user, long userid); - public OAuthUser updateUser(OAuthUser user); - - public boolean updateByChain(String name, String pwd); - - public void deleteUser(String userId); - - /** - * 修改密码 - * - * @param userId - * @param newPassword - */ - public void changePassword(String userId, String newPassword); - - OAuthUser findOne(long userId); - - List findAll(); - - /** - * 根据用户名查找用户 - * - * @param username - * @return - */ - public OAuthUser findByUsername(String username); - - /** - * 验证登录 - * - * @param username - * 用户名 - * @param password - * 密码 - * @param salt - * 盐 - * @param encryptpwd - * 加密后的密码 - * @return - */ - boolean checkUser(String username, String password, String salt, String encryptpwd); - - public boolean checkRestPwd(String name, long phone); - - public Pagination getListPager(int pageNumber); - public String getRandomCode(); -} diff --git a/src/main/java/com/rekoe/service/OAuthUserServiceImpl.java b/src/main/java/com/rekoe/service/OAuthUserServiceImpl.java deleted file mode 100644 index 68fba24..0000000 --- a/src/main/java/com/rekoe/service/OAuthUserServiceImpl.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import org.nutz.dao.Chain; -import org.nutz.dao.Cnd; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.OAuthUser; - -@IocBean(name = "oAuthUserService", fields = { "dao" }) -public class OAuthUserServiceImpl extends BaseService implements OAuthUserService { - - @Inject - private PasswordHelper passwordHelper; - - @Inject - private IdWorkerService idFactory; - - /** - * 创建用户 - * - * @param user - */ - public OAuthUser createUser(OAuthUser user) { - return createUser(user, idFactory.nextId()); - } - - public OAuthUser createUser(OAuthUser user, long userid) { - passwordHelper.encryptPassword(user); - user.setUserId(userid); - return dao().insert(user); - } - - @Override - public OAuthUser updateUser(OAuthUser user) { - dao().update(user); - return user; - } - - @Override - public void deleteUser(String userId) { - dao().delete(getEntityClass(), userId); - } - - /** - * 修改密码 - * - * @param userId - * @param newPassword - */ - public void changePassword(String userId, String newPassword) { - OAuthUser user = dao().fetch(getEntityClass(), userId); - user.setPassword(newPassword); - passwordHelper.encryptPassword(user); - updateUser(user); - } - - @Override - public OAuthUser findOne(long userId) { - return dao().fetch(getEntityClass(), Cnd.where("userId", "=", userId)); - } - - @Override - public List findAll() { - return dao().query(getEntityClass(), null); - } - - /** - * 根据用户名查找用户 - * - * @param username - * @return - */ - public OAuthUser findByUsername(String username) { - return dao().fetch(getEntityClass(), Cnd.where("userName", "=", username)); - } - - /** - * 验证登录 - * - * @param username - * 用户名 - * @param password - * 密码 - * @param salt - * 盐 - * @param encryptpwd - * 加密后的密码 - * @return - */ - public boolean checkUser(String username, String password, String salt, String encryptpwd) { - String pwd = passwordHelper.encryptPassword(username, password, salt); - return pwd.equals(encryptpwd); - } - - @Override - public boolean checkRestPwd(String name, long phoneCode) { - return !Lang.isEmpty(dao().fetch(getEntityClass(), Cnd.where("userName", "=", name).and("phoneCode", "=", phoneCode))); - } - - @Override - public boolean updateByChain(String name, String pwd) { - String salt = passwordHelper.buildSalt(); - String passpord = passwordHelper.encryptPassword(name, pwd, salt); - dao().update(getEntityClass(), Chain.make("password", passpord).add("salt", salt), Cnd.where("userName", "=", name)); - return true; - } - - public Pagination getListPager(int pageNumber) { - return getObjListByPager(pageNumber, DEFAULT_PAGE_NUMBER, null); - } - - public String getRandomCode() { - return getRandomIntStr(6); - } -} diff --git a/src/main/java/com/rekoe/service/OauthClientServiceImpl.java b/src/main/java/com/rekoe/service/OauthClientServiceImpl.java deleted file mode 100644 index c1fb053..0000000 --- a/src/main/java/com/rekoe/service/OauthClientServiceImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import org.nutz.dao.Cnd; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.lang.random.R; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.OAuthClient; - -@IocBean(name = "oAuthClientService", fields = { "dao" }) -public class OauthClientServiceImpl extends BaseService implements OAuthClientService { - - @Override - public OAuthClient createClient(OAuthClient client) { - client.setClientId(R.UU32()); - client.setClientSecret(R.UU32()); - return dao().insert(client); - } - - @Override - public OAuthClient updateClient(OAuthClient client) { - dao().update(client, "^(clientId|clientSecret)$"); - return client; - } - - @Override - public void deleteClient(Long clientId) { - dao().delete(getEntityClass(), clientId); - } - - @Override - public OAuthClient findOne(Long id) { - return dao().fetch(getEntityClass(), id); - } - - @Override - public List findAll() { - return dao().query(getEntityClass(), null); - } - - @Override - public OAuthClient findByClientId(String clientId) { - return dao().fetch(getEntityClass(), Cnd.where("clientId", "=", clientId)); - } - - @Override - public OAuthClient findByClientSecret(String clientSecret) { - return dao().fetch(getEntityClass(), Cnd.where("clientSecret", "=", clientSecret)); - } - - public Pagination getListPager(int pageNumber) { - return getObjListByPager(pageNumber, DEFAULT_PAGE_NUMBER, null); - } - - @Override - public boolean check(String name) { - return Lang.isEmpty(dao().fetch(getEntityClass(), Cnd.where("clientName", "=", name))); - } -} diff --git a/src/main/java/com/rekoe/service/OfficialServerService.java b/src/main/java/com/rekoe/service/OfficialServerService.java deleted file mode 100644 index 588d3e4..0000000 --- a/src/main/java/com/rekoe/service/OfficialServerService.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import org.nutz.dao.Chain; -import org.nutz.dao.Cnd; -import org.nutz.dao.Dao; -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.domain.OfficialServer; - -/** - * 服务器列表 - * - * @author kouxian - * - */ -@IocBean(args = { "refer:dao" }) -public class OfficialServerService extends BaseService { - - /** - * 推荐 - */ - public static final short SERVER_TYPE_STATUS_RECOMMEND = 1; - - /** - * 正常 - */ - public static final short SERVER_TYPE_STATUS_NORMAL = 2; - - /** - * 拥挤 繁忙 - */ - public static final short SERVER_TYPE_STATUS_BUSY = 3; - - /** - * 关闭 - */ - - public static final short SERVER_TYPE_STATUS_CLOSE = 4; - - public OfficialServerService(Dao dao) { - super(dao); - } - - public void update(OfficialServer v) { - if (v.getStatus() == SERVER_TYPE_STATUS_RECOMMEND) { - dao().update(getEntityClass(), Chain.make("status", SERVER_TYPE_STATUS_NORMAL), Cnd.where("status", "=", SERVER_TYPE_STATUS_RECOMMEND).and("pid", "=", v.getPid())); - } - dao().update(v, "(sid|url|name|status|open|openWhiteList)$"); - } - - /** - * 如果添加的服务器为推荐服务器 那需要把原来的推荐服务器设置为默认开启状态 "0":"关闭","1":"推荐","2":"拥挤","3":"正常" - */ - public boolean insert(OfficialServer offic) { - if (offic.getStatus() == SERVER_TYPE_STATUS_RECOMMEND) { - dao().update(getEntityClass(), Chain.make("status", SERVER_TYPE_STATUS_NORMAL), Cnd.where("status", "=", SERVER_TYPE_STATUS_RECOMMEND).and("pid", "=", offic.getPid()).and("status", "<>", SERVER_TYPE_STATUS_CLOSE)); - } - return super.insert(offic); - } - - public List getList(int pid) { - return dao().query(getEntityClass(), Cnd.where("pid", "=", pid)); - } - - public List getShowList(int pid) { - return dao().query(getEntityClass(), Cnd.where("pid", "=", pid).and("status", "<>", SERVER_TYPE_STATUS_CLOSE)); - } - - /** - * 获得推荐服务器 - * - * @param pid - * @return - */ - public OfficialServer getRecommendServer(int pid) { - return dao().fetch(getEntityClass(), Cnd.where("pid", "=", pid).and("status", "=", SERVER_TYPE_STATUS_RECOMMEND)); - } - - public OfficialServer getOfficialServer(int pid, int sid) { - return dao().fetch(getEntityClass(), Cnd.where("pid", "=", pid).and("sid", "=", sid)); - } -} diff --git a/src/main/java/com/rekoe/service/PasswordHelper.java b/src/main/java/com/rekoe/service/PasswordHelper.java deleted file mode 100644 index f3297c5..0000000 --- a/src/main/java/com/rekoe/service/PasswordHelper.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.rekoe.service; - -import org.apache.shiro.crypto.RandomNumberGenerator; -import org.apache.shiro.crypto.SecureRandomNumberGenerator; -import org.apache.shiro.crypto.hash.SimpleHash; -import org.apache.shiro.util.ByteSource; -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.domain.OAuthUser; - -@IocBean -public class PasswordHelper { - - private RandomNumberGenerator randomNumberGenerator = new SecureRandomNumberGenerator(); - - private String algorithmName = "md5"; - private int hashIterations = 2; - - public void setRandomNumberGenerator(RandomNumberGenerator randomNumberGenerator) { - this.randomNumberGenerator = randomNumberGenerator; - } - - public void setAlgorithmName(String algorithmName) { - this.algorithmName = algorithmName; - } - - public void setHashIterations(int hashIterations) { - this.hashIterations = hashIterations; - } - - public void encryptPassword(OAuthUser user) { - user.setSalt(buildSalt()); - user.setPassword(encryptPassword(user.getUserName(), user.getPassword(), user.getSalt())); - } - - /** - * 根据用户名和盐值加密 - * - * @param username - * @param password - * @param salt - */ - public String encryptPassword(String username, String password, String salt) { - String pwd = new SimpleHash(algorithmName, password, ByteSource.Util.bytes(salt), hashIterations).toHex(); - return pwd; - } - - public String buildSalt() { - return randomNumberGenerator.nextBytes().toHex(); - } -} diff --git a/src/main/java/com/rekoe/service/PayFefundService.java b/src/main/java/com/rekoe/service/PayFefundService.java deleted file mode 100644 index 2a2734a..0000000 --- a/src/main/java/com/rekoe/service/PayFefundService.java +++ /dev/null @@ -1,247 +0,0 @@ -package com.rekoe.service; - -import java.io.File; -import java.io.FileInputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; -import java.util.concurrent.TimeUnit; - -import javax.mail.internet.AddressException; -import javax.mail.internet.InternetAddress; - -import org.apache.commons.mail.EmailException; -import org.apache.commons.mail.HtmlEmail; -import org.brickred.socialauth.SocialAuthConfig; -import org.brickred.socialauth.util.OAuthConfig; -import org.nutz.dao.Cnd; -import org.nutz.dao.Dao; -import org.nutz.dao.pager.Pager; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.json.Json; -import org.nutz.json.JsonFormat; -import org.nutz.lang.Files; -import org.nutz.lang.Lang; -import org.nutz.lang.Times; -import org.nutz.lang.stream.NullInputStream; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.PayRefund; -import com.rekoe.module.facebook.FaceBookLoginAct; -import com.rekoe.module.facebook.pay.Entry; -import com.rekoe.module.facebook.pay.FacebookRequestResult; -import com.rekoe.module.facebook.pay.Order; -import com.rekoe.module.facebook.pay.PayObject; -import com.restfb.DefaultFacebookClient; -import com.restfb.FacebookClient; -import com.restfb.Parameter; -import com.restfb.batch.BatchRequest; -import com.restfb.batch.BatchRequest.BatchRequestBuilder; -import com.restfb.batch.BatchResponse; - -import freemarker.template.Configuration; -import freemarker.template.Template; - -@IocBean(fields = { "dao" }, create = "init", depose = "depose") -public class PayFefundService extends BaseService { - - private static final Log log = Logs.get(); - protected ExecutorService es; - protected FacebookClient facebookClient; - - private SocialAuthConfig config; - - public void init() throws Exception { - - SocialAuthConfig config = new SocialAuthConfig(); - File devConfig = Files.findFile("oauth_consumer.properties_dev"); // 开发期所使用的配置文件 - if (devConfig == null) - devConfig = Files.findFile("oauth_consumer.properties"); // 真实环境所使用的配置文件 - if (devConfig == null) - config.load(new NullInputStream()); - else - config.load(new FileInputStream(devConfig)); - this.config = config; - try { - OAuthConfig oAuthConfig = config.getProviderConfig(FaceBookLoginAct.OAUTH_ID); - facebookClient = new DefaultFacebookClient(oAuthConfig.get_consumerKey() + "|" + oAuthConfig.get_consumerSecret()); - } catch (Exception e) { - log.error(e); - } - es = Executors.newFixedThreadPool(16); - } - - public SocialAuthConfig getConfig() { - return config; - } - - public void depose() { - es.shutdown(); - try { - es.awaitTermination(30, TimeUnit.SECONDS); - } catch (InterruptedException e) { - log.info("PayFefundService shutdown", e); - } - es = null; - } - - public PayFefundService() { - super(); - } - - public PayFefundService(Dao dao) { - super(dao); - } - - public boolean insert(PayRefund payRefund) { - dao().insert(payRefund); - return true; - } - - public void update(PayRefund payRefund) { - dao().update(payRefund); - } - - public String facebookFetch(String id) { - return facebookClient.fetchObject(id, String.class); - } - - public PayRefund fetchByID(String paymentid) { - PayRefund payRefund = fetch(Cnd.where("paymentid", "=", paymentid)); - return payRefund; - } - - public PayRefund fetchByKeyId(String appid) { - PayRefund payRefund = fetch(Cnd.where("id", "=", appid)); - return payRefund; - } - - public FacebookClient getFacebookClient() { - return facebookClient; - } - - public void push(final PayObject pay) { - ExecutorService es = this.es; - if (es == null || es.isShutdown()) { - log.info("PayFefundService.queue is shutdown, ignore push"); - return; - } - if (!Lang.isEmpty(pay)) { - es.execute(new Runnable() { - @Override - public void run() { - List entryList = pay.getEntryList(); - for (Entry entry : entryList) { - String id = entry.getId(); - PayRefund payRefund = new PayRefund(); - payRefund.setCreateTime(Times.now()); - payRefund.setPaymentid(id); - payRefund.setChangedFields(Json.toJson(entry.getChangedFields(), JsonFormat.compact())); - boolean isRight = entry.getChangedFields().contains("disputes"); - String http = facebookFetch(id); - Order order = Json.fromJson(Order.class, http); - if (!Lang.isEmpty(order) && isRight) { - payRefund.setName(order.getUser().getName()); - payRefund.setPassportid(order.getUser().getId()); - payRefund.setRequestId(order.getRequestID()); - payRefund.setStatus(!isRight); - insert(payRefund); - } - } - - } - }); - } - } - - @Inject - private Configuration configuration; - - public void sendOrderEmail(final Order order) { - es.execute(new Runnable() { - @Override - public void run() { - try { - Map root = new HashMap(); - root.put("obj", order); - root.put("base", "/"); - String str = processTemplateIntoString(configuration, "/template/admin/pay_refund/view.ftl", root); - HtmlEmail email = new HtmlEmail(); - email.setHostName("smtp.163.com");// 邮件服务器 - email.setSmtpPort(25); - email.setAuthentication("koukou890", "rekoenet");// smtp认证的用户名和密码 - List inter = new ArrayList(); - inter.add(new InternetAddress("koukou890@qq.com")); - email.setTo(inter); - email.setFrom("koukou890@163.com", "Hero-Defense");// 发信者 - email.setSubject("Order Disputes[Hero-Defense]");// 标题 - email.setCharset("UTF-8");// 编码格式 - // email.setMsg("这是一封用户发起Disputs的提醒邮件");// 内容 - email.setHtmlMsg(str); - email.send();// 发送 - } catch (AddressException | EmailException e) { - log.error(e.getMessage(), e); - } - } - }); - } - - public String processTemplateIntoString(Configuration cfg, String path, Map root) { - String result = null; - try { - Template template = cfg.getTemplate(path); - cfg.setDefaultEncoding("UTF-8"); - java.io.StringWriter writer = new java.io.StringWriter(); - template.process(root, writer); - result = writer.toString(); - } catch (Exception e) { - log.error(e.getMessage(), e); - } - return result; - } - - public Pagination getPayRefundListByPager(Integer pageNumber) { - pageNumber = getPageNumber(pageNumber); - Pager pager = dao().createPager(pageNumber, 20); - List list = dao().query(getEntityClass(), Cnd.orderBy().desc("createTime"), pager); - pager.setRecordCount(dao().count(getEntityClass(), null)); - return new Pagination(pageNumber, 20, pager.getRecordCount(), list); - } - - public static void main(String[] args) { - FacebookClient facebookClient = new DefaultFacebookClient("1440728696165353|3a4e87ac4f8ea6eb4d0bfcc266cd618c"); - BatchRequest postRequest = new BatchRequestBuilder("617649511680969" + "/dispute").method("POST").body(Parameter.with("reason", "GRANTED_REPLACEMENT_ITEM"), Parameter.with("currency", "USD"), Parameter.with("amount", 1.9)).build(); - List list = facebookClient.executeBatch(postRequest); - System.out.println(list); - BatchResponse res = list.get(0); - String result = res.getBody(); - System.out.println(result); - } - - public void publish(final List passportidList, final String message) { - es.execute(new Runnable() { - @Override - public void run() { - for (String uid : passportidList) - publish(uid, message); - } - }); - } - - public void publish(String passportid, String message) { - try { - FacebookRequestResult publishEventResponse = facebookClient.publish(passportid + "/notifications", FacebookRequestResult.class, Parameter.with("template", message)); - log.infof("Published event ID: %s", publishEventResponse.isSuccess()); - } catch (Exception e) { - // accountService.update(passportid, Chain.make("install", false), - // Cnd.where("passportid", "=", passportid)); - log.errorf("passportid[%s] ,msg [%s]", passportid, e.getMessage()); - } - } -} diff --git a/src/main/java/com/rekoe/service/PlatformConfigService.java b/src/main/java/com/rekoe/service/PlatformConfigService.java deleted file mode 100644 index 3020825..0000000 --- a/src/main/java/com/rekoe/service/PlatformConfigService.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import org.nutz.dao.Cnd; -import org.nutz.dao.Dao; -import org.nutz.dao.pager.Pager; -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.PlatformConfig; - -/** - * @author 科技㊣²º¹³
- * Mar 27, 2013 6:09:25 PM
- * QQ:5382211 - */ -@IocBean(args = { "refer:dao" }) -public class PlatformConfigService extends BaseService { - - public PlatformConfigService(Dao dao) { - super(dao); - } - - public Pagination getListByPager(int pageNumber, int sid) { - Cnd cnd = Cnd.where("sid", "=", sid); - Pager pager = dao().createPager(pageNumber, 20); - List list = dao().query(getEntityClass(), cnd, pager); - pager.setRecordCount(dao().count(getEntityClass(), cnd)); - return new Pagination(pageNumber, 20, pager.getRecordCount(), list); - } - - public PlatformConfig getPlatformConfig(int sid, String provider) { - return dao().fetch(getEntityClass(), Cnd.where("sid", "=", sid).and("provider", "=", provider)); - } - - public void update(PlatformConfig conf) { - dao().update(conf,"^(config)$"); - } -} diff --git a/src/main/java/com/rekoe/service/PlatformProviderService.java b/src/main/java/com/rekoe/service/PlatformProviderService.java deleted file mode 100644 index 2f87020..0000000 --- a/src/main/java/com/rekoe/service/PlatformProviderService.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.rekoe.service; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.nutz.ioc.Ioc; -import org.nutz.ioc.loader.annotation.Inject; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Lang; -import org.nutz.resource.Scans; - -import com.rekoe.annotation.PlatformProvider; -import com.rekoe.mobile.AbstractParam; -import com.rekoe.mobile.provider.AbstractProvider; - -@IocBean -public class PlatformProviderService { - - private Map> providersMap = new HashMap<>(); - - @Inject("refer:$ioc") - private Ioc ioc; - - @SuppressWarnings("unchecked") - public void init() { - List> clazzList = Scans.me().scanPackage("com.rekoe.mobile.provider"); - for (Class clzz : clazzList) { - PlatformProvider platformProvider = clzz.getAnnotation(PlatformProvider.class); - if (Lang.isEmpty(platformProvider)) { - continue; - } - AbstractProvider provider = (AbstractProvider) ioc.get(clzz); - providersMap.put(platformProvider.name(), provider); - } - } - - public AbstractProvider getAbstractProvider(String key) { - return providersMap.get(key); - } -} diff --git a/src/main/java/com/rekoe/service/PlatformUserService.java b/src/main/java/com/rekoe/service/PlatformUserService.java deleted file mode 100644 index bf7cd31..0000000 --- a/src/main/java/com/rekoe/service/PlatformUserService.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.rekoe.service; - -import org.apache.commons.lang3.StringUtils; -import org.nutz.dao.Chain; -import org.nutz.dao.Cnd; -import org.nutz.dao.Dao; -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.common.page.Pagination; -import com.rekoe.domain.PlatformUser; - -@IocBean(args = { "refer:dao" }) -public class PlatformUserService extends BaseService { - - public PlatformUserService(Dao dao) { - super(dao); - } - - public PlatformUser getPlatformUser(int pid, String passportid, String pfid) { - PlatformUser user = dao().fetch(getEntityClass(), Cnd.where("pid", "=", pid).and("passportid", "=", passportid).and("pfid", "=", pfid)); - return user; - } - - public PlatformUser add(int pid, String passportid, long openid, String pfid, String addr) { - return dao().insert(new PlatformUser(pid, passportid, openid, pfid, addr)); - } - - public PlatformUser add(int pid, String passportid, long openid, String pfid) { - return dao().insert(new PlatformUser(pid, passportid, openid, pfid)); - } - - public Pagination getPlatformUserListPagerByPid(Integer pageNumber, int pageSize, String name) { - return getObjListByPager(pageNumber, pageSize, StringUtils.isBlank(name) ? Cnd.orderBy().desc("createTime") : Cnd.where("passportid", "=", name)); - } - - public Pagination getPlatformUserListPagerByOpenid(Integer pageNumber, int pageSize, long openid) { - return getObjListByPager(pageNumber, pageSize, openid == 0 ? Cnd.orderBy().desc("createTime") : Cnd.where("openid", "=", openid).desc("createTime")); - } - - public void lock(String id, boolean lock) { - dao().update(PlatformUser.class, Chain.make("locked", lock), Cnd.where("id", "=", id)); - } -} diff --git a/src/main/java/com/rekoe/service/ReportAdsService.java b/src/main/java/com/rekoe/service/ReportAdsService.java deleted file mode 100644 index ebb322e..0000000 --- a/src/main/java/com/rekoe/service/ReportAdsService.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import org.nutz.aop.interceptor.async.Async; -import org.nutz.dao.Cnd; -import org.nutz.dao.Sqls; -import org.nutz.dao.entity.Record; -import org.nutz.dao.sql.Sql; -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.domain.ReportAds; - -@IocBean(fields = { "dao" }) -public class ReportAdsService extends BaseService { - - @Async - public void add(ReportAds reportAds) { - dao().insert(reportAds); - } - - public List getList(int pid) { - Sql sql = Sqls.create("select pfid,idfa,idfv,talking_data_id from $table $condition"); - sql.vars().set("table", dao().getEntity(getEntityClass()).getTableName()); - sql.setCallback(Sqls.callback.records()); - sql.setCondition(Cnd.where("pid", "=", pid)); - dao().execute(sql); - return sql.getList(Record.class); - } -} diff --git a/src/main/java/com/rekoe/service/ServerHistoryService.java b/src/main/java/com/rekoe/service/ServerHistoryService.java deleted file mode 100644 index 20fab11..0000000 --- a/src/main/java/com/rekoe/service/ServerHistoryService.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.rekoe.service; - -import java.util.List; - -import org.nutz.dao.Cnd; -import org.nutz.dao.Dao; -import org.nutz.ioc.loader.annotation.IocBean; -import org.nutz.lang.Times; -import org.nutz.log.Log; -import org.nutz.log.Logs; - -import com.rekoe.domain.ServerHistory; - -@IocBean(args = { "refer:dao" }) -public class ServerHistoryService extends BaseService { - - private final static Log log = Logs.get(); - - /** - * Daos.ext(dao(), FieldFilter.create(getEntityClass(), - * FieldMatcher.make(null, "(createTime|passportid|pid)$", - * true))).update(server); - * - * @param dao - */ - public ServerHistoryService(Dao dao) { - super(dao); - } - - /** - * 更新最后登陆时间 - * - * @param server - */ - public void update(ServerHistory server) { - server.setModifyTime(Times.now()); - dao().update(server, "(modifyTime)$"); - } - - public boolean add(ServerHistory server) { - try { - dao().insert(server); - } catch (Exception e) { - log.error(e); - return false; - } - return true; - } - - /** - * 获取用户最后登陆的服务器 - * - * @param passportid - * @param pid - * @return - */ - public ServerHistory getLastLoginServer(long openid, int pid) { - return dao().fetch(getEntityClass(), Cnd.where("openid", "=", openid).and("pid", "=", pid).desc("modifyTime")); - } - - public ServerHistory getServerHistory(long openid, int pid, int sid) { - return dao().fetch(getEntityClass(), Cnd.where("openid", "=", openid).and("pid", "=", pid).and("sid", "=", sid)); - } - public List getLoginServerList(long openid, int pid) { - return dao().query(getEntityClass(), Cnd.where("openid", "=", openid).and("pid", "=", pid)); - } - - public ServerHistory getLoginServerList(long openid, int pid,int limit) { - return dao().fetch(getEntityClass(), Cnd.where("openid", "=", openid).and("pid", "=", pid).desc("modifyTime")); - } -} diff --git a/src/main/java/com/rekoe/service/VerifyServerService.java b/src/main/java/com/rekoe/service/VerifyServerService.java deleted file mode 100644 index ba2c8d7..0000000 --- a/src/main/java/com/rekoe/service/VerifyServerService.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.rekoe.service; - -import org.nutz.dao.Cnd; -import org.nutz.dao.Dao; -import org.nutz.ioc.loader.annotation.IocBean; - -import com.rekoe.domain.VerifyServer; - -/** - * 提审服 - * - * @author kouxian - * - */ -@IocBean(args = { "refer:dao" }) -public class VerifyServerService extends BaseService { - - public VerifyServerService(Dao dao) { - super(dao); - } - - public void update(VerifyServer v) { - dao().update(v, "(gid|url|name|loginUrl|payUrl|open)$"); - } - - public VerifyServer getVerifyServer(int pid) { - return dao().fetch(getEntityClass(), Cnd.where("pid", "=", pid)); - } -} diff --git a/src/main/java/com/rekoe/shiro/realm/AbstractNutAuthoRealm.java b/src/main/java/com/rekoe/shiro/realm/AbstractNutAuthoRealm.java index 61e6425..4105623 100644 --- a/src/main/java/com/rekoe/shiro/realm/AbstractNutAuthoRealm.java +++ b/src/main/java/com/rekoe/shiro/realm/AbstractNutAuthoRealm.java @@ -13,7 +13,6 @@ import org.nutz.mvc.Mvcs; import com.rekoe.domain.Role; import com.rekoe.domain.User; -import com.rekoe.mobile.Profile; import com.rekoe.service.RoleService; import com.rekoe.service.UserService; @@ -69,19 +68,12 @@ public abstract class AbstractNutAuthoRealm extends AuthorizingRealm { @Override protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) { Object object = principals.getPrimaryPrincipal(); - if (object.getClass().isAssignableFrom(User.class)) { - User user = Castors.me().castTo(object, User.class); - SimpleAuthorizationInfo info = new SimpleAuthorizationInfo(); - info.addRoles(getUserService().getRoleNameList(user)); - for (Role role : user.getRoles()) { - info.addStringPermissions(getRoleService().getPermissionNameList(role)); - } - return info; - } else if (object.getClass().isAssignableFrom(Profile.class)) { - SimpleAuthorizationInfo info = new SimpleAuthorizationInfo(); - info.addStringPermission("auth.login"); - return info; + User user = Castors.me().castTo(object, User.class); + SimpleAuthorizationInfo info = new SimpleAuthorizationInfo(); + info.addRoles(getUserService().getRoleNameList(user)); + for (Role role : user.getRoles()) { + info.addStringPermissions(getRoleService().getPermissionNameList(role)); } - return null; + return info; } } diff --git a/src/main/java/com/rekoe/shiro/realm/AuthToken.java b/src/main/java/com/rekoe/shiro/realm/AuthToken.java deleted file mode 100644 index b74aefe..0000000 --- a/src/main/java/com/rekoe/shiro/realm/AuthToken.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.rekoe.shiro.realm; - -import org.apache.shiro.authc.AuthenticationToken; - -import com.rekoe.mobile.AbstractParam; - -public class AuthToken implements AuthenticationToken { - - private static final long serialVersionUID = -8469592895652806116L; - - private AbstractParam param; - - public AuthToken(AbstractParam param) { - this.param = param; - } - - @Override - public AbstractParam getPrincipal() { - return param; - } - - @Override - public AbstractParam getCredentials() { - return param; - } - - public AbstractParam getParam() { - return param; - } - -} diff --git a/src/main/java/com/rekoe/shiro/realm/AuthTokenRealm.java b/src/main/java/com/rekoe/shiro/realm/AuthTokenRealm.java deleted file mode 100644 index d17ee3b..0000000 --- a/src/main/java/com/rekoe/shiro/realm/AuthTokenRealm.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.rekoe.shiro.realm; - -import org.apache.shiro.authc.AuthenticationException; -import org.apache.shiro.authc.AuthenticationInfo; -import org.apache.shiro.authc.AuthenticationToken; -import org.apache.shiro.authc.DisabledAccountException; -import org.apache.shiro.authc.SimpleAuthenticationInfo; -import org.apache.shiro.authc.UnknownAccountException; -import org.nutz.castor.Castors; -import org.nutz.ioc.Ioc; -import org.nutz.json.Json; -import org.nutz.json.JsonFormat; -import org.nutz.lang.Lang; -import org.nutz.log.Log; -import org.nutz.log.Logs; -import org.nutz.mvc.Mvcs; - -import com.rekoe.mobile.AbstractParam; -import com.rekoe.mobile.Profile; -import com.rekoe.mobile.provider.AbstractProvider; -import com.rekoe.service.PlatformProviderService; - -/** - * @author 科技㊣²º¹³
- * 2014年2月3日 下午4:48:45
- * http://www.rekoe.com
- * QQ:5382211 - */ -public class AuthTokenRealm extends AbstractNutAuthoRealm { - - private final static Log log = Logs.get(); - - private PlatformProviderService platformProviderService; - - public AuthTokenRealm() { - setAuthenticationTokenClass(AuthToken.class); - } - - private PlatformProviderService getPlatformProviderService() { - if (Lang.isEmpty(platformProviderService)) { - Ioc ioc = Mvcs.getIoc(); - this.platformProviderService = ioc.get(PlatformProviderService.class); - } - return platformProviderService; - } - - @Override - protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken token) throws DisabledAccountException { - AuthToken oauthToken = Castors.me().castTo(token, AuthToken.class); - AbstractParam param = oauthToken.getPrincipal(); - AbstractProvider platformProvider = getPlatformProviderService().getAbstractProvider(param.getProviderId()); - if (Lang.isEmpty(platformProvider)) { - throw Lang.makeThrow(UnknownAccountException.class, "UnknownPlatformProvider [ %s ] ERROR.", param.getProviderId()); - } - Profile profile = null; - try { - profile = platformProvider.verifyResponse(param); - } catch (Exception e) { - log.errorf("PlatformProvider [%s] verifyResponse ERROR: %s", param.getProviderId(), e); - } - if (Lang.isEmpty(profile)) { - throw Lang.makeThrow(AuthenticationException.class, " [ %s ] Authentication ERROR.", Json.toJson(param, JsonFormat.compact())); - } - SimpleAuthenticationInfo account = new SimpleAuthenticationInfo(profile, param, getName()); - return account; - } - -} diff --git a/src/main/java/com/rekoe/web/freemarker/PlatformPermissionDirective.java b/src/main/java/com/rekoe/web/freemarker/PlatformPermissionDirective.java deleted file mode 100644 index b993056..0000000 --- a/src/main/java/com/rekoe/web/freemarker/PlatformPermissionDirective.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.rekoe.web.freemarker; - -import java.io.IOException; -import java.util.Map; - -import org.apache.shiro.SecurityUtils; -import org.apache.shiro.subject.Subject; -import org.nutz.lang.Lang; - -import com.rekoe.domain.GameServer; -import com.rekoe.domain.User; -import com.rekoe.utils.DirectiveUtils; - -import freemarker.core.Environment; -import freemarker.template.TemplateDirectiveBody; -import freemarker.template.TemplateDirectiveModel; -import freemarker.template.TemplateException; -import freemarker.template.TemplateModel; - -public class PlatformPermissionDirective implements TemplateDirectiveModel { - - @SuppressWarnings({ "unchecked", "rawtypes" }) - @Override - public void execute(Environment env, Map params, TemplateModel[] loopVars, TemplateDirectiveBody body) throws TemplateException, IOException { - int sid = DirectiveUtils.getInt("sid", params); - Subject subject = SecurityUtils.getSubject(); - if (subject.getPrincipal() instanceof User) { - User user = (User) subject.getPrincipal(); - if (user.isSystem()) { - body.render(env.getOut()); - } else { - Map servers = user.getServers(); - if (Lang.isEmpty(servers.get(sid))) { - env.getOut().append("无权限操作"); - }else{ - body.render(env.getOut()); - } - } - } - } -} diff --git a/src/main/java/com/rekoe/web/freemarker/Sid2NameDirective.java b/src/main/java/com/rekoe/web/freemarker/Sid2NameDirective.java deleted file mode 100644 index 96fdf48..0000000 --- a/src/main/java/com/rekoe/web/freemarker/Sid2NameDirective.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.rekoe.web.freemarker; - -import java.io.IOException; -import java.util.Map; - -import org.nutz.lang.Lang; - -import com.rekoe.domain.OfficialServer; -import com.rekoe.service.OfficialServerService; -import com.rekoe.utils.DirectiveUtils; - -import freemarker.core.Environment; -import freemarker.template.TemplateDirectiveBody; -import freemarker.template.TemplateDirectiveModel; -import freemarker.template.TemplateException; -import freemarker.template.TemplateModel; - -public class Sid2NameDirective implements TemplateDirectiveModel { - - private OfficialServerService officialServerService; - - public Sid2NameDirective(OfficialServerService officialServerService) { - this.officialServerService = officialServerService; - } - - @SuppressWarnings({ "unchecked", "rawtypes" }) - @Override - public void execute(Environment env, Map params, TemplateModel[] loopVars, TemplateDirectiveBody body) throws TemplateException, IOException { - int sid = DirectiveUtils.getInt("sid", params); - int pid = DirectiveUtils.getInt("pid", params); - OfficialServer officialServer = officialServerService.getOfficialServer(pid, sid); - if (Lang.isEmpty(officialServer)) { - env.getOut().append(sid + ""); - } else { - env.getOut().append(officialServer.getName()); - } - } -}