You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
			
				
					118 lines
				
				4.2 KiB
			
		
		
			
		
	
	
					118 lines
				
				4.2 KiB
			| 
											3 years ago
										 | package wx_menu;
 | ||
|  | 
 | ||
|  | import com.soecode.wxtools.api.IService;
 | ||
|  | import com.soecode.wxtools.api.WxConsts;
 | ||
|  | import com.soecode.wxtools.api.WxService;
 | ||
|  | import com.soecode.wxtools.bean.WxMenu;
 | ||
|  | import com.soecode.wxtools.bean.WxMenu.WxMenuButton;
 | ||
|  | import com.soecode.wxtools.exception.WxErrorException;
 | ||
|  | import com.ynxbd.wx.config.WeChatConfig;
 | ||
|  | 
 | ||
|  | import javax.servlet.ServletException;
 | ||
|  | import javax.servlet.http.HttpServlet;
 | ||
|  | import javax.servlet.http.HttpServletRequest;
 | ||
|  | import javax.servlet.http.HttpServletResponse;
 | ||
|  | import java.io.IOException;
 | ||
|  | import java.io.PrintWriter;
 | ||
|  | import java.util.ArrayList;
 | ||
|  | import java.util.List;
 | ||
|  | 
 | ||
|  | //@WebServlet("/createmenu")
 | ||
|  | public class CreateMenu_normal extends HttpServlet {
 | ||
|  | 
 | ||
|  | 
 | ||
|  |     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 | ||
|  | 
 | ||
|  |         // 实例化 统一业务API入口
 | ||
|  |         IService iService = new WxService();
 | ||
|  | 
 | ||
|  |         // 验证服务器的有效性
 | ||
|  |         PrintWriter out = response.getWriter();
 | ||
|  |         String signature = request.getParameter("signature");
 | ||
|  |         String timestamp = request.getParameter("timestamp");
 | ||
|  |         String nonce = request.getParameter("nonce");
 | ||
|  |         String echostr = request.getParameter("echostr");
 | ||
|  |         if (iService.checkSignature(signature, timestamp, nonce, echostr)) {
 | ||
|  |             out.print(echostr);
 | ||
|  |         }
 | ||
|  | 
 | ||
|  |         WxMenu menu = new WxMenu();
 | ||
|  |         List<WxMenuButton> btnList = new ArrayList<>();
 | ||
|  | 
 | ||
|  |         WxMenuButton btn1 = new WxMenuButton();
 | ||
|  |         btn1.setType(WxConsts.MENU_BUTTON_VIEW);
 | ||
|  |         btn1.setKey("l1");
 | ||
|  |         btn1.setUrl(WeChatConfig.getBaseUrl() + "health-card.html");
 | ||
|  |         btn1.setName("电子健康卡");
 | ||
|  | 
 | ||
|  |         WxMenuButton btn2 = new WxMenuButton();
 | ||
|  |         btn2.setType(WxConsts.MENU_BUTTON_CLICK);
 | ||
|  |         btn2.setKey("l2");
 | ||
|  |         btn2.setName("微信挂号");
 | ||
|  | 
 | ||
|  |         List<WxMenuButton> subList2 = new ArrayList<>();
 | ||
|  |         WxMenuButton btn2_1 = new WxMenuButton();
 | ||
|  |         btn2_1.setType(WxConsts.MENU_BUTTON_VIEW);
 | ||
|  |         btn2_1.setName("今日挂号");
 | ||
|  |         btn2_1.setUrl(WeChatConfig.getBaseUrl() + "reg-site.html");
 | ||
|  |         WxMenuButton btn2_2 = new WxMenuButton();
 | ||
|  |         btn2_2.setType(WxConsts.MENU_BUTTON_VIEW);
 | ||
|  |         btn2_2.setName("预约挂号");
 | ||
|  |         btn2_2.setUrl(WeChatConfig.getBaseUrl() + "reg-reserve.html");
 | ||
|  |         subList2.add(btn2_1);
 | ||
|  |         subList2.add(btn2_2);
 | ||
|  |         btn2.setSub_button(subList2);
 | ||
|  | 
 | ||
|  |         WxMenuButton btn3 = new WxMenuButton();
 | ||
|  |         btn3.setType(WxConsts.MENU_BUTTON_CLICK);
 | ||
|  |         btn3.setKey("l3");
 | ||
|  |         btn3.setName("我的信息");
 | ||
|  | 
 | ||
|  |         List<WxMenuButton> subList3 = new ArrayList<>();
 | ||
|  |         WxMenuButton btn3_1 = new WxMenuButton();
 | ||
|  |         btn3_1.setType(WxConsts.MENU_BUTTON_VIEW);
 | ||
|  |         btn3_1.setName("报告单");
 | ||
|  |         btn3_1.setUrl(WeChatConfig.getBaseUrl() + "all-result.html");
 | ||
|  | 
 | ||
|  |         WxMenuButton btn3_2 = new WxMenuButton();
 | ||
|  |         btn3_2.setType(WxConsts.MENU_BUTTON_VIEW);
 | ||
|  |         btn3_2.setName("微信支付");
 | ||
|  |         btn3_2.setUrl(WeChatConfig.getBaseUrl() + "pay-info.html");
 | ||
|  | 
 | ||
|  |         WxMenuButton btn3_3 = new WxMenuButton();
 | ||
|  |         btn3_3.setType(WxConsts.MENU_BUTTON_VIEW);
 | ||
|  |         btn3_3.setName("个人信息");
 | ||
|  |         btn3_3.setUrl(WeChatConfig.getBaseUrl() + "my-info.html");
 | ||
|  | 
 | ||
|  |         subList3.add(btn3_1);
 | ||
|  |         subList3.add(btn3_2);
 | ||
|  |         subList3.add(btn3_3);
 | ||
|  |         btn3.setSub_button(subList3);
 | ||
|  | 
 | ||
|  |         // 将三个按钮设置进btnList
 | ||
|  |         btnList.add(btn1);
 | ||
|  |         btnList.add(btn2);
 | ||
|  |         btnList.add(btn3); // 微信支付菜单
 | ||
|  |         // btnList.add(btn3_1);
 | ||
|  |         // btnList.add(btn3_3);
 | ||
|  |         // btnList.add(btn3_2);
 | ||
|  |         // 设置进菜单类
 | ||
|  |         menu.setButton(btnList);
 | ||
|  |         // 调用API即可
 | ||
|  |         try {
 | ||
|  |             // 参数1--menu ,参数2--是否是个性化定制。如果是个性化菜单栏,需要设置MenuRule
 | ||
|  |             iService.createMenu(menu, false);
 | ||
|  |         } catch (WxErrorException e) {
 | ||
|  |             // TODO Auto-generated catch block
 | ||
|  |             e.printStackTrace();
 | ||
|  |         }
 | ||
|  |     }
 | ||
|  | 
 | ||
|  |     protected void doPost(HttpServletRequest request, HttpServletResponse response)
 | ||
|  |             throws ServletException, IOException {
 | ||
|  |         // TODO Auto-generated method stub
 | ||
|  |         doGet(request, response);
 | ||
|  |     }
 | ||
|  | 
 | ||
|  | }
 |