微信后端代码
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.

160 lines
6.2 KiB

package com.ynxbd.wx.servlet.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 javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
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 {
private final String WEB_URL = "http://wx.msmgzzxwsy.com/wx/web/";
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_CLICK);
btn1.setKey("l1");
btn1.setName("医院概况");
List<WxMenuButton> subList = new ArrayList<>();
// WxMenuButton btn1_1 = new WxMenuButton();
// btn1_1.setType(WxConsts.MENU_BUTTON_VIEW);
// btn1_1.setName("医院简介");
// btn1_1.setUrl("https://mp.weixin.qq.com/s/z25WaFTuNhjJ-ZEY5odJ0A");
// WxMenuButton btn1_2 = new WxMenuButton();
// btn1_2.setType(WxConsts.MENU_BUTTON_VIEW);
// btn1_2.setName("专家介绍");
// btn1_2.setUrl("https://mp.weixin.qq.com/s/Nqcg8p6QN8a1czHb7yV4Cw");
// WxMenuButton btn1_3 = new WxMenuButton();
// btn1_3.setType(WxConsts.MENU_BUTTON_VIEW);
// btn1_3.setName("科室介绍");
// btn1_3.setUrl(WeChatConfig.getBaseUrl() + "menu/department.html");
// WxMenuButton btn1_4 = new WxMenuButton();
// btn1_4.setType(WxConsts.MENU_BUTTON_VIEW);
// btn1_4.setName("就诊指南");
// btn1_4.setUrl(WeChatConfig.getBaseUrl() + "menu/consultaion.html");
//
// subList.add(btn1_1);
// subList.add(btn1_2);
// subList.add(btn1_3);
// subList.add(btn1_4);
btn1.setSub_button(subList);
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(WEB_URL + "reg-today.html");
WxMenuButton btn2_2 = new WxMenuButton();
btn2_2.setType(WxConsts.MENU_BUTTON_VIEW);
btn2_2.setName("预约挂号");
btn2_2.setUrl(WEB_URL + "reg-reserve.html");
// WxMenuButton btn2_3 = new WxMenuButton();
// btn2_3.setType(WxConsts.MENU_BUTTON_VIEW);
// btn2_3.setName("体检预约");
// btn2_3.setUrl("http://39.129.161.111:8082/HerPeisNet/user/index");
// WxMenuButton btn2_4 = new WxMenuButton();
// btn2_4.setType(WxConsts.MENU_BUTTON_VIEW);
// btn2_4.setName("体检报告");
// btn2_4.setUrl(WeChatConfig.getWebUrl()"http://39.129.161.111:8081/HerPeisReport/weixin_login");
//
// WxMenuButton btn2_5 = new WxMenuButton();
// btn2_5.setType(WxConsts.MENU_BUTTON_VIEW);
// btn2_5.setName("自助核酸检测");
// btn2_5.setUrl(WeChatConfig.getWebUrl() + "pay-nuclein.html");
subList2.add(btn2_1);
subList2.add(btn2_2);
// subList2.add(btn2_3);
// subList2.add(btn2_4);
// subList2.add(btn2_5);
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(WEB_URL + "my-info.html");
WxMenuButton btn3_2 = new WxMenuButton();
btn3_2.setType(WxConsts.MENU_BUTTON_VIEW);
btn3_2.setName("我的账单");
btn3_2.setUrl(WEB_URL + "pay-info.html");
WxMenuButton btn3_3 = new WxMenuButton();
btn3_3.setType(WxConsts.MENU_BUTTON_VIEW);
btn3_3.setName("报告单");
btn3_3.setUrl(WEB_URL + "all-result.html");
// WxMenuButton btn3_3 = new WxMenuButton();
// btn3_2.setType(WxConsts.MENU_BUTTON_VIEW);
// btn3_2.setName("发消息给我");
// btn3_2.setUrl("http://wsxrmyy.s1.natapp.cc/wx/sendmessage.jsp");
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) {
e.printStackTrace();
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}