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 德宏州中医医院 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 btnList = new ArrayList<>(); WxMenuButton btn1 = new WxMenuButton(); btn1.setType(WxConsts.MENU_BUTTON_CLICK); btn1.setKey("l1"); btn1.setName("微官网"); WxMenuButton btn1_1 = new WxMenuButton(); btn1_1.setType(WxConsts.MENU_BUTTON_VIEW); btn1_1.setName("微官网"); btn1_1.setUrl("http://www.dhzzyyy.net/wx/app.html"); WxMenuButton btn1_2 = new WxMenuButton(); btn1_2.setType(WxConsts.MENU_BUTTON_VIEW); btn1_2.setName("问卷调查"); btn1_2.setUrl("http://www.dhzzyyy.net/wx/questionnaire.html"); WxMenuButton btn1_3 = new WxMenuButton(); btn1_3.setType(WxConsts.MENU_BUTTON_VIEW); btn1_3.setName("电子健康卡"); btn1_3.setUrl(WeChatConfig.getBaseUrl() + "health-card.html"); List subList1 = new ArrayList<>(); subList1.add(btn1_1); subList1.add(btn1_2); subList1.add(btn1_3); btn1.setSub_button(subList1); WxMenuButton btn2 = new WxMenuButton(); btn2.setType(WxConsts.MENU_BUTTON_CLICK); btn2.setKey("l2"); btn2.setName("就医服务"); WxMenuButton btn3 = new WxMenuButton(); btn3.setType(WxConsts.MENU_BUTTON_VIEW); btn3.setKey("l3"); btn3.setUrl(WeChatConfig.getBaseUrl() + "pay-nuclein.html?t=202101271911"); btn3.setName("自助核酸检测"); List 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?t=202101271911"); WxMenuButton btn2_2 = new WxMenuButton(); btn2_2.setType(WxConsts.MENU_BUTTON_VIEW); btn2_2.setName("预约挂号"); btn2_2.setUrl(WeChatConfig.getBaseUrl() + "reg-reserve.html?t=202101271911"); WxMenuButton btn2_3 = new WxMenuButton(); btn2_3.setType(WxConsts.MENU_BUTTON_VIEW); btn2_3.setName("我的账单"); btn2_3.setUrl(WeChatConfig.getBaseUrl() + "pay-info.html?t=202101271911"); WxMenuButton btn2_4 = new WxMenuButton(); btn2_4.setType(WxConsts.MENU_BUTTON_VIEW); btn2_4.setName("报告单"); btn2_4.setUrl(WeChatConfig.getBaseUrl() + "all-result.html?t=202101271911"); WxMenuButton btn2_5 = new WxMenuButton(); btn2_5.setType(WxConsts.MENU_BUTTON_VIEW); btn2_5.setName("身份绑定"); btn2_5.setUrl(WeChatConfig.getBaseUrl() + "my-info.html?t=202101271911"); subList2.add(btn2_1); subList2.add(btn2_2); subList2.add(btn2_3); subList2.add(btn2_4); subList2.add(btn2_5); btn2.setSub_button(subList2); // 将三个按钮设置进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); } }