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

138 lines
4.4 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 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<WxMenuButton> 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<WxMenuButton> 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<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?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);
}
}