开发者社区> curiousby> 正文

微信 接入web openId 绑定user

简介:       package cn.hy.weixin.controller; import java.text.SimpleDateFormat; import java.util.
+关注继续查看

 

 

 

package cn.hy.weixin.controller;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.nutz.dao.pager.Pager;
import org.nutz.ioc.annotation.InjectName;
import org.nutz.ioc.loader.annotation.Inject;
import org.nutz.ioc.loader.annotation.IocBean;
import org.nutz.json.Json;
import org.nutz.log.Log;
import org.nutz.log.Logs;
import org.nutz.mvc.annotation.At;
import org.nutz.mvc.annotation.Attr;
import org.nutz.mvc.annotation.Ok;
import org.nutz.mvc.annotation.Param;

import cn.hy.activity.data.Activity;
import cn.hy.activity.data.ActivitySearch;
import cn.hy.activity.service.ActivityService;
import cn.hy.common.CommonResult;
import cn.hy.common.Consts;
import cn.hy.company.data.TCompany;
import cn.hy.company.service.TCompanyService;
import cn.hy.companyThing.CompanyThing;
import cn.hy.returnMoney.data.TUserActivityRel;
import cn.hy.returnMoney.service.TUserActivityRelService;
import cn.hy.ringHome.data.TRing;
import cn.hy.ringHome.service.RingHomeService;
import cn.hy.user.data.TUser;
import cn.hy.user.service.UserService;
import cn.hy.weixin.util.CommonUtil;
import javafx.scene.input.DataFormat;
 
@IocBean
@InjectName
@At("/wx")
public class WeichatController {
	private static final Log log = Logs.getLog(WeichatController.class);
	
	private UserService userService;
	private ActivityService activityService;
	private TCompanyService tCompanyService;
	private RingHomeService ringHomeService;
	private TUserActivityRelService tUserActivityRelService;
	@Inject("refer:userService")
	public void setUserService(UserService userService) {
		this.userService = userService;
	}
	@Inject("refer:activityService")
	public void setActivityService(ActivityService activityService) {
		this.activityService = activityService;
	}
	@Inject("refer:tCompanyService")
	public void settCompanyService(TCompanyService tCompanyService) {
		this.tCompanyService = tCompanyService;
	}
	@Inject("refer:ringHomeService")
	public void setRingHomeService(RingHomeService ringHomeService) {
		this.ringHomeService = ringHomeService;
	}
	@Inject("refer:tUserActivityRelService")
	public void settUserActivityRelService(TUserActivityRelService tUserActivityRelService) {
		this.tUserActivityRelService = tUserActivityRelService;
	}
	
	@At("/tdb")
	@Ok("jsp:weichatjsp.discount_bind")
	public void tdb(@Param("code") String code,@Param("openId") String openId, HttpServletRequest request) {
		log.debug("----toDiscountBind start----");
		if( null != openId && "" != openId ){
			
		}else{
			 openId = CommonUtil.getOpenId(code);
		}
		System.out.println("--------------" + openId);
		TUser tuser = userService.findTUserByOpenId(openId);
		int statucode =0;
		if(null != tuser  &&  null != tuser.getId()  && tuser.getId() >0  ){
			statucode =1;
		}
		System.out.println("statucode--------------" + statucode);
		request.setAttribute("statucode", statucode);
		request.setAttribute("openId", openId);
	}
	
	@At("/TobindBussinessJsp")
	public void singalbindBussiness(@Param("code") String code, HttpServletRequest request) {
		String openId = CommonUtil.getOpenId(code);
		System.out.println("--------------" + openId);
		TUser tuser = userService.findTUserByOpenId(openId);
		int isBindMobile =0; 
		if(null != tuser  &&  null != tuser.getId()  && tuser.getId() >0  ){
			isBindMobile =1; //已绑定手机,跳转到业务绑定
		}
		System.out.println("isBindMobile--------------" + isBindMobile);
		int isBindBusiness = 0;
		if(isBindMobile == 0) { //未绑定手机,跳转到手机
			System.out.println("未绑定手机,跳转到手机 --------------");
		} else if(isBindMobile == 1 && tuser.getMode() == null) {
			isBindBusiness = 1;
			toBusinessJsp(openId, isBindBusiness, request);
		}
		
	}
	
	@Ok("jsp:weichatjsp.discount_open")
	public void toBusinessJsp(String openId, int isBindBusiness, HttpServletRequest request) {
		System.out.println("here.....");
		request.setAttribute("isBindBusiness", isBindBusiness);
		request.setAttribute("openId", openId);
		
	}
	
	
	@At("/toActivitylist")
	@Ok("jsp:weichatjsp.list")
	public void toActivitylist(@Param("code") String code,HttpServletRequest request) { 
		String openId = CommonUtil.getOpenId(code);
		request.setAttribute("openId", openId);
	}
	
	
	@At("/activitylist")
	@Ok("raw")
	public String activitylist(@Param("..") Pager pager,HttpServletRequest request) {
		log.debug("----activitylist start----");
		 ActivitySearch as = new ActivitySearch();
		 return activityService.queryWxActivity(pager.getPageNumber(),Consts.wxPageSize,as);
	}
	
	@At("/detailActivity")
	@Ok("jsp:weichatjsp.activity_detail")
	public void detailActivity(@Param("openId") String openId,@Param("id") int id,HttpSession session,HttpServletRequest request){
		Activity activity = activityService.getActivityDetail(id);
		TCompany campany = tCompanyService.getCompany(activity.getCompId());
		TRing ring = ringHomeService.getRing(activity.getRingId());
		
		int flag = 0; // 未绑定用户  跳转绑定用户
		TUser tuser = userService.findTUserByOpenId(openId);
		if(null != tuser  &&  null != tuser.getId()  && tuser.getId() >0  ){ 
			if(tuser.getMode() == null){
				flag =1; // 已绑定 用户 ,为绑定 业务 
			}else{
				flag =2; // 绑定 用户 绑定业务
				TUserActivityRel tUserActivityRel = tUserActivityRelService.getTUserActivityRelById(activity.getId(),tuser.getId());
				if(tUserActivityRel !=null){
					flag =3;
				}
			}
		}
		
		request.setAttribute("flag", flag);
		request.setAttribute("openId", openId);
		request.setAttribute("activity", activity);
		request.setAttribute("campany",ring);
		request.setAttribute("ring",ring);
	}
	
	@At("/toBind")
	@Ok("jsp:weichatjsp.bind")
	public void bind(@Param("openId") String openId,@Param("id") int activityId,@Param("flag") int flag,HttpServletRequest request) { 
       log.info("-------------to bind ------------------");
       request.setAttribute("activityId",activityId);
       request.setAttribute("openId",openId);
       request.setAttribute("flag",flag);
	}

	 

	@At("/bindMobile")
	@Ok("json")
	public CommonResult bindMobile(@Param("mobile") String mobile, @Param("openId") String openId,HttpServletRequest request) { 
		List<TUser> list =  userService.findPhone(mobile);
		CommonResult cr = new CommonResult();
		int statucode =0;
		   TUser tuser = null;
		   try{
		   if(list != null && list.size() >0){
			   tuser = list.get(0);
			   tuser.setOpenId(openId);
			   userService.update(tuser);
			   statucode =1;
			   cr.setResultMsg("success");
		   }else{
			   tuser = new TUser();
			   tuser.setPhone(mobile);
			   tuser.setOpenId(openId);
			   userService.insertTUser(tuser);
			   statucode =1;
			   cr.setResultMsg("success");
		   }
		   }catch(Exception e){ 
			   cr.setResultMsg("error");
			   statucode =0;
		   }
		   cr.setResultCode(statucode);
		   return cr;
	}
	
	@At("/bindBussiness")
	@Ok("json")
	public CommonResult bindBussiness(@Param("openId") String openId ,@Param("openType") int  openType ,HttpServletRequest request) { 
		TUser tuser = userService.findTUserByOpenId(openId);
		CommonResult cr = new CommonResult();
		int statucode =0;
		try{  
			   tuser.setMode(openType);
			   userService.update(tuser);
			   statucode =1;
			   cr.setResultMsg("success");
		   }catch(Exception e){ 
			   cr.setResultMsg("error");
			   statucode =0;
		   }
		   cr.setResultCode(statucode);
		   return cr;
	}
	
	
	@At("/addOrder")
	@Ok("json")
	public CommonResult addOrder(@Param("openId") String openId,@Param("id") int id,HttpServletRequest request) { 
		CommonResult cr = new CommonResult();
		int statucode=0;
		try{
		Activity activity = activityService.getActivityDetail(id);  
		TUser tuser = userService.findTUserByOpenId(openId);
		TUserActivityRel  tUserActivityRel =  new TUserActivityRel();
		tUserActivityRel.setActivityId(activity.getId());
		tUserActivityRel.setUserId(tuser.getId());
		tUserActivityRel.setCompId(activity.getCompId());
		if(activity.getRebateWay() == 1)
			tUserActivityRel.setBill(Float.parseFloat(activity.getRebateMemo()));
		if(activity.getRebateWay() == 0)
		tUserActivityRel.setFlow(Integer.parseInt(activity.getRebateMemo()));
		tUserActivityRel.setOrderTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
		tUserActivityRel.setRebateTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(activity.getEndTime()));
		tUserActivityRel.setOrderState(0);
		tUserActivityRel.setOrderEndTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(activity.getEndTime()));
		tUserActivityRelService.insert(tUserActivityRel);
		statucode =1;
		cr.setResultMsg(" insert success");
		}catch(Exception e){
			statucode =0;
			cr.setResultMsg("insert error");
		}
		cr.setResultCode(statucode);
		return cr;
	}
	
	
	

	@At("/activity")
	@Ok("jsp:weichatjsp.discount_bind")
	public void tdb( HttpServletRequest request) {
		System.out.println("activitylist--------------");
		
	}
	@At("/discountBind")
	@Ok("json")
	public CommonResult discountBind( @Param("mobile") String mobile , @Param("openId") String openId ,HttpServletRequest request) {
		System.out.println("mobile"+mobile+"openId" + openId);
		CommonResult cr = new CommonResult();
		int statucode =0;
	   if(mobile ==null || mobile =="" ){
		   statucode =0;
	   }
	   if(openId ==null || openId =="" ){
		   statucode =0;
	   } 
	   
	   List<TUser> list =  userService.findPhone(mobile);
	   TUser tuser = null;
	   try{
	   if(list != null && list.size() >0){
		   tuser = list.get(0);
		   tuser.setOpenId(openId);
		   userService.update(tuser);
		   statucode =1;
		   cr.setResultMsg("success");
	   }else{
		   tuser = new TUser();
		   tuser.setPhone(mobile);
		   tuser.setOpenId(openId);
		   userService.insertTUser(tuser);
		   cr.setResultMsg("success");
		   statucode =2;
	   }
	   }catch(Exception e){ 
		   cr.setResultMsg("error");
		   statucode =0;
	   }
	   cr.setResultCode(statucode);
	   return cr;
	}
	
	
	
}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

捐助开发者

在兴趣的驱动下,写一个免费的东西,有欣喜,也还有汗水,希望你喜欢我的作品,同时也能支持一下。 当然,有钱捧个钱场(右上角的爱心标志,支持支付宝和PayPal捐助),没钱捧个人场,谢谢各位。



 
 
 谢谢您的赞助,我会做的更好!

 

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
微信商户平台转账到零钱功能接入实战
近期营销活动中需要商户转账到微信用户零钱,实战角度说下接入过程,期间用的时间也比较多,把遇到的问题以及如何处理问题过程记录一下,希望对有同样需求的同学有所帮助,尽量少用一些时间,更专注业务处理.本文仅以发起商家转账( /v3/transfer/batches)功能进行讲解.
636 0
JAVA实现接入企业微信报警
JAVA实现接入企业微信报警
146 0
【微信小程序】2、SpringBoot整合WxJava接入微信客服(下)
上篇文章中已经开启了微信小程序的消息推送:【微信小程序】1、SpringBoot整合WxJava开启消息推送,接下来我们就对微信中用户发送的客服消息,转发到微信客服来处理回复
100 0
【微信小程序】2、SpringBoot整合WxJava接入微信客服(上)
上篇文章中已经开启了微信小程序的消息推送:【微信小程序】1、SpringBoot整合WxJava开启消息推送,接下来我们就对微信中用户发送的客服消息,转发到微信客服来处理回复
162 0
企业微信开发(1)——接入企业微信
本文目录 1. 准备工作 2. 创建应用 3. 验证URL 4. 验证
340 0
如何正确的在项目中接入微信JS-SDK
微信JS-SDK的功能 如果你点进来,那么我相信你应该知道微信的JS-SDK可以用来做什么了。微信的官方文档描述如下。 微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包。 通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照、选图、语音、位置等手机系统的能力,同时可以直接使用微信分享、扫一扫等微信特有的能力,为微信用户提供更优质的网页体验。
1932 0
微信x5webview接入实战
应用中许多网页由于优化的不够理想,出现加载慢,加载时间长等,而且因为碎片化导致兼容性问题,有一些网页有视频内容,产品还提出各种小窗需求,搞得心力憔悴。找到公开的有crosswalk和x5webview,经过分析和研究决定上x5weview,他的好处有哪些呢? 1.
2792 0
laravel 5.6接入微信第三方授权登陆的主要步骤
这方面,php已很成熟了, 综合下面这个链接,基本上调试一下就可以搞定了。
2870 0
微信扫码支付、网站接入微信支付-java
如果你的网站想接入微信支付,那么你的有个公众号(微信公众平台),然后开通支付功能,在微信商户平台操作。仔细看哦,这是两个平台,商家平台有详细的接入流程,这里只介绍程序方面。
1418 0
+关注
curiousby
echo
文章
问答
文章排行榜
最热
最新
相关电子书
更多
边缘安全,让Web加速有保障
立即下载
使用CNFS搭建弹性Web服务
立即下载
WEB框架0day漏洞的发掘及分析经验分享
立即下载