`
郑云飞
  • 浏览: 795325 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java微信发送模板消息,ios手机收到的内容为空的问题

 
阅读更多
package com.zero2ipo.mobile.services.weixinMsg.impl;

import com.zero2ipo.core.MobileContants;
import com.zero2ipo.framework.util.StringUtil;
import com.zero2ipo.mobile.services.invitation.IInvitationLetter;
import com.zero2ipo.mobile.services.user.IUserServices;
import com.zero2ipo.mobile.services.weixinMsg.IHdyySuccessService;
import com.zero2ipo.module.entity.user.UserEntity;
import com.zero2ipo.module.entity.yqh.InvitationLetterEntity;
import com.zero2ipo.weixin.config.Config;
import com.zero2ipo.weixin.contants.TemplateMessageContants;
import com.zero2ipo.weixin.services.message.ICoreService;
import com.zero2ipo.weixin.templateMessage.TemplateData;
import com.zero2ipo.weixin.templateMessage.WxTemplate;
import org.springframework.stereotype.Component;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.HashMap;
import java.util.Map;

/**
 * 活动预约成功发送微信消息接口2
 * @author zhengyunfei
 *
 */
@Component("hdyySuccessService")
public class HdyySuccessImpl implements IHdyySuccessService {
	@Resource(name = "coreService")
	ICoreService coreService;
	@Resource(name = "invitationLetterService")
	IInvitationLetter invitationLetterService;
	@Resource(name = "userServices")
	private IUserServices userServices;
	public boolean sendWeixin(HttpServletRequest request, HttpServletResponse response)  {
		HttpSession session = request.getSession();
		Object o = session.getAttribute(MobileContants.USER_SESSION_KEY);
		if(o != null && o instanceof UserEntity)
		{
			UserEntity user = (UserEntity)o;
			System.out.println("当前登陆用户手机号码:=="+user.getMobile()+"\t"+user.getOpenId());
			user=userServices.findUserByUserId(user.getUserId());
			String openId=user.getOpenId();
			if(!StringUtil.isNullOrEmpty(openId)){
				//如果用户绑定了微信账号,则推送一条微信消息给用户
				WxTemplate wxTemplate=getWxTemplate(openId, TemplateMessageContants.HDYY_SUCCESS_TEMPLATE_MSGID,user);
				coreService.send_template_message(Config.APPID,Config.SECRET,openId,wxTemplate );
			}else{
				//通过userId从数据库查询openId,这样便于网页版发送微信消息
				UserEntity u=userServices.findUserByUserId(user.getUserId());
				if(!StringUtil.isNullOrEmpty(u)){
					String opid=u.getOpenId();
					if(!StringUtil.isNullOrEmpty(opid)){
						/**通过网页版活动预约成功,发送微信消息**/
						//WxTemplate wxTemplate=getWxTemplate(opid, TemplateMessageContants.TZYY_SUCCESS_TEMPLATE_MSGID,u);
						//coreService.send_template_message(Config.APPID,Config.SECRET,opid,wxTemplate );
					}
				}
			}
		}
		return true;
	}
	public WxTemplate getWxTemplate(String openId, String msgTemplateId, UserEntity user){
		WxTemplate temp = new WxTemplate();
		temp.setTouser(openId);
		temp.setTemplate_id(msgTemplateId);
		temp.setUrl("http://www.pestreet.cn/mobile/url/lzh/lzh.html");
		temp.setTopcolor("#000CC");
		/**根据会员id查询该会员预约的活动**/
		String userId=user.getUserId();
		if(!StringUtil.isNullOrEmpty(userId)){
			InvitationLetterEntity hdyyEntity=invitationLetterService.findRecentlyHdyyByUserId(userId);
			Map<String,TemplateData> paramMap=new HashMap<String, TemplateData>();
			TemplateData data0=new TemplateData();
			data0.setValue("尊敬的财富街会员,您已经成功预约本次会员活动,敬请留意详细信息");
			data0.setColor("#040188");
			paramMap.put("first", data0);
			TemplateData data1=new TemplateData();
			data1.setValue(hdyyEntity.getName());
			data1.setColor("#040188");
			paramMap.put("activity_name",data1);

			TemplateData data2=new TemplateData();
			data2.setValue("成功");
			data2.setColor("#040188");
			paramMap.put("reserve_results",data2);

			TemplateData data3=new TemplateData();
			data3.setValue(hdyyEntity.getStartTime());
			data3.setColor("#040188");
			paramMap.put("activity_time",data3);

			TemplateData data4=new TemplateData();
			data4.setValue(hdyyEntity.getArea());
			data4.setColor("#040188");
			paramMap.put("activity_address",data4);

			TemplateData remark=new TemplateData();
			remark.setValue("您还可以致电财富街客服专线,详情咨询400-654-7828");
			remark.setColor("#040188");
			paramMap.put("remark",remark);

			temp.setData(paramMap);
		}
		return temp;
	}
}

 当时没有测试一下,微信发送模板消息是否成功,先改变一下字体的颜色,于是在setcolor的时候,图省事,就直接写英文字母的颜色,比如blue,这样导致Android手机可以正常接收模板消息,并且内容为我们预设的内容,但是ios手机会出现内容为空的情况,找了1天,也没找到原因,最终换了下颜色,就可以正常接受了,郁闷死了。



 

  • 大小: 239 KB
分享到:
评论

相关推荐

    【kk梦空间】html5手机婚礼微信请柬制作_手机微信请柬模板.rar

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    学生课程管理系统手机微信页面模板.zip

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    基于uniapp开发的微信商城小程序通用模板.zip

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】: 所有源码都经过严格测试,可以直接运行。 功能在确认正常工作后才上传。 【适用人群】...

    【kk梦空间】学生课程管理系统手机微信页面模板.zip

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    【kk梦空间】绿色的蔬菜水果手机微信商城模板源码.rar

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    kk梦空间中国电信爱心树活动微信专题模板html.rar

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    买花网微信鲜花网触屏版手机wap购物网站模板下载.rar

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    【kk梦空间】政府街道社区wap微信官网模板.zip

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    【kk梦空间】中国电信爱心树活动微信专题模板html.rar

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

    kk梦空间html5魅族手机微信专题页模板源码.rar

    包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用...

Global site tag (gtag.js) - Google Analytics