add bypass (test only)

This commit is contained in:
Sola
2015-12-10 12:10:58 +08:00
parent d24075f2ce
commit 02c99609f6
4 changed files with 23 additions and 20 deletions

View File

@@ -53,6 +53,13 @@ public class Authorize extends HttpServlet {
} }
Long l = fetchedTime.remove(wechat); Long l = fetchedTime.remove(wechat);
Command c = fetchedCommand.remove(wechat); Command c = fetchedCommand.remove(wechat);
// FIXME: 2015/12/10 FOR TEST ONLY
if (request.getParameter("bypass") != null) {
c = Command.fromId(Integer.parseInt(request.getParameter("bypass")));
l = System.currentTimeMillis();
}
if (l == null || c == null) { if (l == null || c == null) {
return new Response(Response.ResponseCode.AUTHORIZE_FAILED); return new Response(Response.ResponseCode.AUTHORIZE_FAILED);
} }

View File

@@ -2,6 +2,7 @@ package love.sola.netsupport.wechat;
import love.sola.netsupport.wechat.handler.QueryHandler; import love.sola.netsupport.wechat.handler.QueryHandler;
import love.sola.netsupport.wechat.handler.RegisterHandler; import love.sola.netsupport.wechat.handler.RegisterHandler;
import love.sola.netsupport.wechat.handler.SubmitHandler;
import me.chanjar.weixin.mp.api.WxMpMessageHandler; import me.chanjar.weixin.mp.api.WxMpMessageHandler;
import java.util.HashMap; import java.util.HashMap;
@@ -19,7 +20,7 @@ public enum Command {
REGISTER(0, RegisterHandler.class), REGISTER(0, RegisterHandler.class),
QUERY(1, QueryHandler.class), QUERY(1, QueryHandler.class),
SUBMIT(2, null), SUBMIT(2, SubmitHandler.class),
; ;
private static final Map<Integer, Command> ID_MAP = new HashMap<>(); private static final Map<Integer, Command> ID_MAP = new HashMap<>();

View File

@@ -1,16 +1,11 @@
package love.sola.netsupport.wechat; package love.sola.netsupport.wechat;
import love.sola.netsupport.config.Settings; import love.sola.netsupport.config.Settings;
import love.sola.netsupport.wechat.handler.QueryHandler;
import love.sola.netsupport.wechat.handler.RegisterHandler; import love.sola.netsupport.wechat.handler.RegisterHandler;
import love.sola.netsupport.wechat.handler.SubmitHandler;
import love.sola.netsupport.wechat.matcher.CheckSpamMatcher; import love.sola.netsupport.wechat.matcher.CheckSpamMatcher;
import love.sola.netsupport.wechat.matcher.RegisterMatcher; import love.sola.netsupport.wechat.matcher.RegisterMatcher;
import me.chanjar.weixin.common.util.StringUtils; import me.chanjar.weixin.common.util.StringUtils;
import me.chanjar.weixin.mp.api.WxMpInMemoryConfigStorage; import me.chanjar.weixin.mp.api.*;
import me.chanjar.weixin.mp.api.WxMpMessageRouter;
import me.chanjar.weixin.mp.api.WxMpService;
import me.chanjar.weixin.mp.api.WxMpServiceImpl;
import me.chanjar.weixin.mp.bean.WxMpXmlMessage; import me.chanjar.weixin.mp.bean.WxMpXmlMessage;
import me.chanjar.weixin.mp.bean.WxMpXmlOutMessage; import me.chanjar.weixin.mp.bean.WxMpXmlOutMessage;
@@ -83,18 +78,18 @@ public class WxMpServlet extends HttpServlet {
.matcher(new RegisterMatcher()) .matcher(new RegisterMatcher())
.handler(new RegisterHandler()) .handler(new RegisterHandler())
.end(); .end();
wxMpMessageRouter.rule() try {
.async(false) registerCommands(wxMpMessageRouter);
.msgType("text") } catch (IllegalAccessException | InstantiationException e) {
.rContent(Command.QUERY.regex) throw new ServletException(e);
.handler(new QueryHandler()) }
.end(); }
wxMpMessageRouter.rule()
.async(false) public static void registerCommands(WxMpMessageRouter router) throws IllegalAccessException, InstantiationException {
.msgType("text") for (Command c : Command.values()) {
.rContent(Command.SUBMIT.regex) WxMpMessageHandler handler = c.handler.newInstance();
.handler(new SubmitHandler()) router.rule().async(false).msgType("text").rContent(c.regex).handler(handler).end();
.end(); }
} }
@Override @Override

View File

@@ -26,7 +26,7 @@ Ticket_Info_Remark: '维修描述: '
Ticket_Info_Update_Time: '更新时间: ' Ticket_Info_Update_Time: '更新时间: '
Ticket_Info_Status: '报修单状态: ' Ticket_Info_Status: '报修单状态: '
#Submit #Submit
Already_Opening_Ticket: "您上次提交的报修单仍在处理中. 若查询报修单状态,请发送 '查询' 。" Already_Opening_Ticket: "您上次提交的报修单仍在处理中. 若需要查询报修单状态,请发送 '查询' 。"
Submit_Title: '在网维工作人员上门解决您的问题之前...' Submit_Title: '在网维工作人员上门解决您的问题之前...'
Submit_Desc: "在网维工作人员上门解决您的问题之前,您可以尝试以下方法来更有效地解决您的问题:\n Submit_Desc: "在网维工作人员上门解决您的问题之前,您可以尝试以下方法来更有效地解决您的问题:\n
重新插拔您电脑的网线以及墙上的端口。\n 重新插拔您电脑的网线以及墙上的端口。\n