Ver código fonte

潜在客户报名之后信息回显

xingzai 1 ano atrás
pai
commit
34d972589d
3 arquivos alterados com 59 adições e 42 exclusões
  1. 37 17
      controllers/activity_sign.go
  2. 21 25
      models/activity_signin.go
  3. 1 0
      services/activity_signin.go

+ 37 - 17
controllers/activity_sign.go

@@ -62,8 +62,8 @@ func (this *ActivitySignCoAntroller) Detail() {
 	}
 	var condition string
 	var pars []interface{}
-	condition = " AND  user_id = ?  AND activity_id = ?  "
-	pars = append(pars, uid, activityId)
+	condition = " AND  open_id = ?  AND activity_id = ?  "
+	pars = append(pars, user.OpenId, activityId)
 	total, err := models.GetCygxActivitySigninCount(condition, pars)
 	if err != nil {
 		br.Msg = "获取失败"
@@ -80,6 +80,7 @@ func (this *ActivitySignCoAntroller) Detail() {
 	item.CompanyName = user.CompanyName
 	item.IsSignup = totalMySuccess
 	item.CountryCode = user.CountryCode
+	item.OpenId = user.OpenId
 	item.CreateTime = time.Now()
 	if total == 0 && user.Mobile != "" {
 		err = models.AddCygxActivitySignin(item)
@@ -92,6 +93,9 @@ func (this *ActivitySignCoAntroller) Detail() {
 
 	//记录签到信息到用户到会表
 	if user.CompanyId > 1 {
+		pars = make([]interface{}, 0)
+		condition = " AND  user_id = ?  AND activity_id = ?  "
+		pars = append(pars, user.UserId, activityId)
 		totalOfflineMeeting, err := models.GetCygxActivityOfflineMeetingDetailCount(condition, pars)
 		if err != nil {
 			br.Msg = "获取失败"
@@ -114,13 +118,12 @@ func (this *ActivitySignCoAntroller) Detail() {
 				return
 			}
 		}
-	}
-
-	//添加日志记录
-	go services.AddCygxActivitySigninLog(item)
+		//添加日志记录
+		go services.AddCygxActivitySigninLog(item)
 
-	//把报名信息写入签到到会表
-	go services.AddCygxActivityOfflineMeetingDetail(activityId, user)
+		//把报名信息写入签到到会表
+		go services.AddCygxActivityOfflineMeetingDetail(activityId, user)
+	}
 
 	if user.Mobile != "" || total > 0 {
 		resp.IsBindingMobile = true
@@ -134,16 +137,18 @@ func (this *ActivitySignCoAntroller) Detail() {
 	detail.RealName = user.RealName
 	detail.CompanyName = user.CompanyName
 
+	//用于前端二次回显
 	if user.RealName == "" {
 		pars = make([]interface{}, 0)
-		condition = " AND  user_id = ?  AND activity_id = ?  "
-		pars = append(pars, uid, activityId)
+		condition = " AND  open_id = ?  AND activity_id = ?  "
+		pars = append(pars, user.OpenId, activityId)
 		signinDetail, err := models.GetCygxActivitySigninDetail(condition, pars)
 		if err != nil {
 			br.Msg = "签到失败"
 			br.ErrMsg = "获取失败GetCygxActivitySigninDetail,Err:" + err.Error()
 			return
 		}
+		detail.BusinessCard = signinDetail.BusinessCard
 		detail.Mobile = signinDetail.Mobile
 		detail.RealName = signinDetail.RealName
 		detail.CompanyName = signinDetail.CompanyName
@@ -173,6 +178,7 @@ func (this *ActivitySignCoAntroller) ByHand() {
 		br.Ret = 408
 		return
 	}
+
 	uid := user.UserId
 	resp := new(models.CygxActivitySigninDetailResp)
 	var req models.CygxActivitySigninReq
@@ -216,8 +222,8 @@ func (this *ActivitySignCoAntroller) ByHand() {
 
 	var condition string
 	var pars []interface{}
-	condition = " AND  user_id = ?  AND activity_id = ?  "
-	pars = append(pars, uid, activityId)
+	condition = " AND  open_id = ?  AND activity_id = ?  "
+	pars = append(pars, user.OpenId, activityId)
 	total, err := models.GetCygxActivitySigninCount(condition, pars)
 	if err != nil {
 		br.Msg = "获取失败"
@@ -273,6 +279,7 @@ func (this *ActivitySignCoAntroller) ByHand() {
 	item.CompanyName = user.CompanyName
 	item.IsSignup = totalMySuccess
 	item.BusinessCard = BusinessCard
+	item.OpenId = user.OpenId
 	item.CreateTime = time.Now()
 	if total == 0 {
 		err = models.AddCygxActivitySignin(item)
@@ -282,14 +289,27 @@ func (this *ActivitySignCoAntroller) ByHand() {
 			return
 		}
 	} else {
-
+		pars = make([]interface{}, 0)
+		condition = " AND  open_id = ?  AND activity_id = ?  "
+		pars = append(pars, user.OpenId, activityId)
+		signinDetail, err := models.GetCygxActivitySigninDetail(condition, pars)
+		if err != nil {
+			br.Msg = "签到失败"
+			br.ErrMsg = "获取失败GetCygxActivitySigninDetail,Err:" + err.Error()
+			return
+		}
+		item.Id = signinDetail.Id
+		err = models.UpdateCygxActivitySignin(item)
+		if err != nil {
+			br.Msg = "签到失败"
+			br.ErrMsg = "获取失败,UpdateCygxActivitySignin,Err:" + err.Error()
+			return
+		}
 	}
 	detail := new(models.CygxActivitySigninResp)
 	if totalMySuccess > 0 {
 		detail.IsSignup = true
 	}
-	item.RealName = RealName
-	item.CompanyName = CompanyName
 	//添加日志记录
 	go services.AddCygxActivitySigninLog(item)
 	if user.CompanyId <= 1 {
@@ -298,8 +318,8 @@ func (this *ActivitySignCoAntroller) ByHand() {
 	detail.ActivityId = activityId
 	detail.ActivityName = activityInfo.ActivityName
 	detail.Mobile = Mobile
-	detail.RealName = user.RealName
-	detail.CompanyName = user.CompanyName
+	detail.RealName = RealName
+	detail.CompanyName = CompanyName
 	resp.Detail = detail
 	resp.IsBindingMobile = true
 	br.Ret = 200

+ 21 - 25
models/activity_signin.go

@@ -18,6 +18,7 @@ type CygxActivitySignin struct {
 	RealName     string    `description:"用户实际名称"`
 	IsSignup     int       `description:"是否报名了"`
 	CountryCode  string    `description:"手机国家区号"`
+	OpenId       string    `description:"Openid"`
 }
 
 type CygxActivitySigninLog struct {
@@ -33,6 +34,7 @@ type CygxActivitySigninLog struct {
 	RealName     string    `description:"用户实际名称"`
 	IsSignup     int       `description:"是否报名了"`
 	CountryCode  string    `description:"手机国家区号"`
+	OpenId       string    `description:"Openid"`
 }
 
 type CygxActivitySigninResp struct {
@@ -87,31 +89,25 @@ func AddCygxActivitySignin(item *CygxActivitySignin) (err error) {
 }
 
 // 修改
-//func UpdateCygxActivitySignin(item *CygxActivitySignin) (err error) {
-//	o := orm.NewOrm()
-//	updateParams := make(map[string]interface{})
-//	updateParams["PublishTime"] = item.PublishTime
-//	updateParams["ModifyTime"] = item.ModifyTime
-//	updateParams["ColumnName"] = item.ColumnName
-//	updateParams["Title"] = item.Title
-//	updateParams["Status"] = item.Status
-//	updateParams["Body"] = item.Body
-//	updateParams["IsCancel"] = item.IsCancel
-//	updateParams["VisibleRange"] = item.VisibleRange
-//	updateParams["Abstract"] = item.Abstract
-//	updateParams["Department"] = item.Department
-//	updateParams["MatchTypeId"] = item.MatchTypeId
-//	updateParams["ChartPermissionId"] = item.ChartPermissionId
-//	updateParams["ChartPermissionName"] = item.ChartPermissionName
-//	ptrStructOrTableName := "cygx_product_interior"
-//	whereParam := map[string]interface{}{"user_id": item.UserId}
-//	qs := o.QueryTable(ptrStructOrTableName)
-//	for expr, exprV := range whereParam {
-//		qs = qs.Filter(expr, exprV)
-//	}
-//	_, err = qs.Update(updateParams)
-//	return
-//}
+func UpdateCygxActivitySignin(item *CygxActivitySignin) (err error) {
+	o := orm.NewOrm()
+	updateParams := make(map[string]interface{})
+	updateParams["Mobile"] = item.Mobile
+	updateParams["Email"] = item.Email
+	updateParams["CompanyId"] = item.CompanyId
+	updateParams["CompanyName"] = item.CompanyName
+	updateParams["BusinessCard"] = item.BusinessCard
+	updateParams["RealName"] = item.RealName
+	updateParams["CountryCode"] = item.CountryCode
+	ptrStructOrTableName := "cygx_activity_signin"
+	whereParam := map[string]interface{}{"id": item.Id}
+	qs := o.QueryTable(ptrStructOrTableName)
+	for expr, exprV := range whereParam {
+		qs = qs.Filter(expr, exprV)
+	}
+	_, err = qs.Update(updateParams)
+	return
+}
 
 // 添加日志
 func AddCygxActivitySigninLog(item *CygxActivitySigninLog) (err error) {

+ 1 - 0
services/activity_signin.go

@@ -29,6 +29,7 @@ func AddCygxActivitySigninLog(item *models.CygxActivitySignin) (err error) {
 	itemLog.IsSignup = item.IsSignup
 	itemLog.BusinessCard = item.BusinessCard
 	itemLog.CountryCode = item.CountryCode
+	itemLog.OpenId = item.OpenId
 	itemLog.CreateTime = time.Now()
 	err = models.AddCygxActivitySigninLog(itemLog)
 	if err != nil {