實現邏輯很簡單,微信就是按照不同的場景id進行生成了不同的二維碼。如果需要幫助可以留言哦!我這有一套java開發的微信推廣統計源碼。按照規則需要推廣的人員直接在公衆號回覆就能得到相關二維碼。本人獨立開發。
部分源碼:
/**
* * 創建場景二維碼
* qq:2421189028
* @return
*/
@ResponseBody
@RequestMapping("createscenepic")
public String test1(HttpServletRequest request,String scene_id){
String json = "{\"action_name\": \"QR_LIMIT_SCENE\", \"action_info\": {\"scene\":
{\"scene_id\": "+scene_id+"}}}";
JSONObject jsona = WeixinUtil.httpRequest(Constant.erweima+WeixinUtil.getAccessToken(),
"POST",json);
log.info("-------"+jsona);
String imgurl = MatrixToImageUtil.createPic(request, 450, 450, "000", scene_id);
return imgurl;
}
if (MessageUtil.REQ_MESSAGE_TYPE_SCAN.equals(event)) {
// 關注時默認回覆
TextMessage textMessage = new TextMessage();
textMessage.setToUserName(fromUserName);
textMessage.setFromUserName(toUserName);
textMessage.setCreateTime(new Date().getTime());
textMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT);
textMessage.setFuncFlag(0);
// 由於href屬性值必須用雙引號引起,這與字符串本身的雙引號衝突,所以要轉義
StringBuffer contentMsg = new StringBuffer();
contentMsg.append("你好,感謝你關注薯立方微信公衆號!");
textMessage.setContent(contentMsg.toString());
// 將文本消息對象轉換成xml字符串
respMessage = MessageUtil.textMessageToXml(textMessage);
}else if (msgType.equals(MessageUtil.REQ_MESSAGE_TYPE_TEXT)) {
//代理商二維碼
//匹配字符串規則 slf姓名slf代理商編號slf
String Content = requestMap.get("Content");
if(Content.startsWith("slf")&&Content.endsWith("slf")&&(Content.split("slf").length==3)){
String scene_id = Content.split("slf")[2];
String imgurl = MatrixToImageUtil.createPic(request, 350, 350, fromUserName,
scene_id);
// 關注時默認回覆
TextMessage textMessage = new TextMessage();
textMessage.setToUserName(fromUserName);
textMessage.setFromUserName(toUserName);
textMessage.setCreateTime(new Date().getTime());
textMessage.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT);
textMessage.setFuncFlag(0);
// 由於href屬性值必須用雙引號引起,這與字符串本身的雙引號衝突,所以要轉義
StringBuffer contentMsg = new StringBuffer();
contentMsg.append("恭喜你編號爲:"+scene_id+"的加盟商\n");
contentMsg.append("由薯立方官方總部爲你下發的推廣二維碼已經生成\n");
contentMsg.append("請點擊“打開圖片”進行保存:\n\n");
//http://www.diguahome.cn/erweima/o456MjnnoNcjx3Od56qjc6DZ7p9U_101.gif
contentMsg.append("<a href=\"http://www.diguahome.cn/"+imgurl+"\">
打開圖片</a>\n")
.append("\n");
contentMsg.append("/:share希望我們合作愉快\n!互利共贏/:share\n\n");
contentMsg.append(" 技術支持:\n 千體網絡科技\n");
textMessage.setContent(contentMsg.toString());
// 將文本消息對象轉換成xml字符串
respMessage = MessageUtil.textMessageToXml(textMessage);
log.info("相應串:"+textMessage);
JSONObject json = WeixinUtil.getWxUserMsgByOpenid(fromUserName);
log.info("----加盟商微信信息" + json);
WxSenceUser wx = (WxSenceUser) JSONObject.toBean(json, WxSenceUser.class);
wx.setCreatetime(new Timestamp(new Date().getTime()));
wx.setUsername(Content.split("slf")[1]);
wx.setSceneid(scene_id);
wxSenceDao.addWxSenceUser(wx);
}
有任何開發疑問可以給我在下方評論,我會盡量幫大家解決!
可以接受合作業務,全新開發微信運營平臺或者是微信相關業務開發!