mirror of
				https://github.com/ZSCNetSupportDept/WechatTicketSystem.git
				synced 2025-10-31 10:26:19 +08:00 
			
		
		
		
	add operator info
This commit is contained in:
		| @@ -2,6 +2,7 @@ package love.sola.netsupport.api.stuff; | ||||
|  | ||||
| import com.google.gson.Gson; | ||||
| import love.sola.netsupport.api.Response; | ||||
| import love.sola.netsupport.enums.Access; | ||||
| import love.sola.netsupport.enums.Attribute; | ||||
| import love.sola.netsupport.pojo.Operator; | ||||
| import love.sola.netsupport.pojo.Ticket; | ||||
| @@ -60,6 +61,9 @@ public class TicketLookup extends HttpServlet { | ||||
| 			} else { | ||||
| 				block = op.getBlock(); | ||||
| 			} | ||||
| 			if (block == 0 && op.getAccess() > Access.LEADER) { | ||||
| 				return new Response(Response.ResponseCode.PERMISSION_DENIED); | ||||
| 			} | ||||
| 			List<Ticket> list = TableTicket.unsolvedByBlock(block); | ||||
| 			return new Response(Response.ResponseCode.OK, list); | ||||
| 		} catch (NumberFormatException e) { | ||||
|   | ||||
| @@ -1,6 +1,8 @@ | ||||
| package love.sola.netsupport.wechat; | ||||
|  | ||||
| import love.sola.netsupport.wechat.handler.*; | ||||
| import love.sola.netsupport.wechat.handler.admin.LoginHandler; | ||||
| import love.sola.netsupport.wechat.handler.admin.OperatorInfoHandler; | ||||
| import me.chanjar.weixin.mp.api.WxMpMessageHandler; | ||||
|  | ||||
| import java.util.HashMap; | ||||
| @@ -22,6 +24,7 @@ public enum Command { | ||||
| 	CANCEL(3, CancelHandler.class), | ||||
| 	PROFILE(4, ProfileHandler.class), | ||||
| 	LOGIN(10, LoginHandler.class), | ||||
| 	OPERATOR_INFO(11, OperatorInfoHandler.class), | ||||
| 	; | ||||
|  | ||||
| 	private static final Map<Integer, Command> ID_MAP = new HashMap<>(); | ||||
|   | ||||
| @@ -2,7 +2,6 @@ package love.sola.netsupport.wechat; | ||||
|  | ||||
| import love.sola.netsupport.config.Settings; | ||||
| import love.sola.netsupport.wechat.handler.RegisterHandler; | ||||
| import love.sola.netsupport.wechat.handler.SignHandler; | ||||
| import love.sola.netsupport.wechat.handler.SubscribeHandler; | ||||
| import love.sola.netsupport.wechat.matcher.CheckSpamMatcher; | ||||
| import love.sola.netsupport.wechat.matcher.RegisterMatcher; | ||||
| @@ -81,7 +80,6 @@ public class WxMpServlet extends HttpServlet { | ||||
| 		} catch (IllegalAccessException | InstantiationException e) { | ||||
| 			throw new ServletException(e); | ||||
| 		} | ||||
| 		wxMpMessageRouter.rule().async(false).msgType("text").rContent("(?i)^Auth \\d{4}").handler(new SignHandler()).end(); | ||||
| 	} | ||||
|  | ||||
| 	public static void registerCommands(WxMpMessageRouter router) throws IllegalAccessException, InstantiationException { | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| package love.sola.netsupport.wechat.handler; | ||||
| package love.sola.netsupport.wechat.handler.admin; | ||||
| 
 | ||||
| import love.sola.netsupport.enums.Access; | ||||
| import love.sola.netsupport.enums.Attribute; | ||||
| @@ -0,0 +1,46 @@ | ||||
| package love.sola.netsupport.wechat.handler.admin; | ||||
|  | ||||
| import love.sola.netsupport.enums.Access; | ||||
| import love.sola.netsupport.pojo.Operator; | ||||
| import love.sola.netsupport.sql.TableOperator; | ||||
| import me.chanjar.weixin.common.exception.WxErrorException; | ||||
| import me.chanjar.weixin.common.session.WxSessionManager; | ||||
| import me.chanjar.weixin.mp.api.WxMpMessageHandler; | ||||
| import me.chanjar.weixin.mp.api.WxMpService; | ||||
| import me.chanjar.weixin.mp.bean.WxMpXmlMessage; | ||||
| import me.chanjar.weixin.mp.bean.WxMpXmlOutMessage; | ||||
| import me.chanjar.weixin.mp.bean.outxmlbuilder.TextBuilder; | ||||
|  | ||||
| import java.util.Map; | ||||
|  | ||||
| import static love.sola.netsupport.config.Lang.format; | ||||
| import static love.sola.netsupport.config.Lang.lang; | ||||
|  | ||||
| /** | ||||
|  * *********************************************** | ||||
|  * Created by Sola on 2015/12/28. | ||||
|  * Don't modify this source without my agreement | ||||
|  * *********************************************** | ||||
|  */ | ||||
| public class OperatorInfoHandler implements WxMpMessageHandler { | ||||
|  | ||||
| 	@Override | ||||
| 	public WxMpXmlOutMessage handle(WxMpXmlMessage wxMessage, Map<String, Object> context, WxMpService wxMpService, WxSessionManager sessionManager) throws WxErrorException { | ||||
| 		TextBuilder out = WxMpXmlOutMessage.TEXT().fromUser(wxMessage.getToUserName()).toUser(wxMessage.getFromUserName()); | ||||
| 		try { | ||||
| 			Operator op = TableOperator.get(wxMessage.getFromUserName()); | ||||
| 			if (op == null) | ||||
| 				out.content(lang("Not_Operator")); | ||||
| 			else if (op.getAccess() == Access.NOLOGIN) { | ||||
| 				out.content(lang("No_Login")); | ||||
| 			} else { | ||||
| 				out.content(format("Operator_Info", op.getId(), op.getName(), op.getAccess(), op.getBlock(), op.getWeek())); | ||||
| 			} | ||||
| 		} catch (Exception e) { | ||||
| 			e.printStackTrace(); | ||||
| 			out.content(lang("Login_Error")); | ||||
| 		} | ||||
| 		return out.build(); | ||||
| 	} | ||||
|  | ||||
| } | ||||
| @@ -1,4 +1,4 @@ | ||||
| package love.sola.netsupport.wechat.handler; | ||||
| package love.sola.netsupport.wechat.handler.admin; | ||||
| 
 | ||||
| import love.sola.netsupport.sql.SQLCore; | ||||
| import me.chanjar.weixin.common.exception.WxErrorException; | ||||
		Reference in New Issue
	
	Block a user
	 Sola
					Sola