Bladeren bron

Merge branch 'cygx_10.4' of http://8.136.199.33:3000/hongze/hongze_cygx into debug

xingzai 1 jaar geleden
bovenliggende
commit
9b1dc1bff0

+ 31 - 0
controllers/activity_sign.go

@@ -89,8 +89,39 @@ func (this *ActivitySignCoAntroller) Detail() {
 			return
 		}
 	}
+
+	//记录签到信息到用户到会表
+	if user.CompanyId > 1 {
+		totalOfflineMeeting, err := models.GetCygxActivityOfflineMeetingDetailCount(condition, pars)
+		if err != nil {
+			br.Msg = "获取失败"
+			br.ErrMsg = "获取失败,Err:" + err.Error()
+			return
+		}
+		if totalOfflineMeeting == 0 {
+			itemOfflineMeeting := new(models.CygxActivityOfflineMeetingDetail)
+			itemOfflineMeeting.UserId = user.UserId
+			itemOfflineMeeting.ActivityId = activityId
+			itemOfflineMeeting.CreateTime = time.Now()
+			itemOfflineMeeting.Mobile = user.Mobile
+			itemOfflineMeeting.CompanyId = user.CompanyId
+			itemOfflineMeeting.CompanyName = user.CompanyName
+			itemOfflineMeeting.IsMeeting = 1
+			err = models.AddCygxActivityOfflineMeetingDetail(itemOfflineMeeting)
+			if err != nil {
+				br.Msg = "签到失败"
+				br.ErrMsg = "获取失败AddCygxActivityOfflineMeetingDetail,Err:" + err.Error()
+				return
+			}
+		}
+	}
+
 	//添加日志记录
 	go services.AddCygxActivitySigninLog(item)
+
+	//把报名信息写入签到到会表
+	go services.AddCygxActivityOfflineMeetingDetail(activityId)
+
 	if user.Mobile != "" {
 		resp.IsBindingMobile = true
 	}

+ 8 - 0
models/activity.go

@@ -1026,6 +1026,14 @@ func GetActivityListByCondition(condition string, pars []interface{}) (items []*
 	return
 }
 
+// UpdateCygxActivitySubmitMeetingByActivityId  ,修改活动提交到会状态
+func UpdateCygxActivitySubmitMeetingByActivityId(activityId int) (err error) {
+	o := orm.NewOrm()
+	sql := `UPDATE cygx_activity SET is_submit_meeting = 1 WHERE activity_id  = ? `
+	_, err = o.Raw(sql, activityId).Exec()
+	return
+}
+
 // UpdateCygxActivitySubmitMeetingByYidong  ,跟易董返回的用户状态修改活动以提交到会状态
 func UpdateCygxActivitySubmitMeetingByYidong(yidongActivityId string) (err error) {
 	o := orm.NewOrm()

+ 57 - 0
models/activity_offline_meeting_detail.go

@@ -0,0 +1,57 @@
+package models
+
+import (
+	"github.com/beego/beego/v2/client/orm"
+	"time"
+)
+
+// 报名
+type CygxActivityOfflineMeetingDetail struct {
+	Id          int       `orm:"column(id);pk"`
+	UserId      int       `description:"用户id"`
+	ActivityId  int       `description:"活动ID"`
+	CreateTime  time.Time `description:"创建时间"`
+	Mobile      string    `description:"手机号"`
+	Email       string    `description:"邮箱号"`
+	CompanyId   int       `description:"公司ID"`
+	CompanyName string    `description:"公司名称"`
+	IsMeeting   int       `description:"是否到会  1.是 ,0否"`
+}
+
+// 列表
+func GetOfflineMeetingList(condition string, pars []interface{}) (items []*CygxActivitySignupList, err error) {
+	o := orm.NewOrm()
+	sql := `SELECT  *
+			FROM cygx_activity_offline_meeting_detail   WHERE 1 =1 ` + condition
+	_, err = o.Raw(sql, pars).QueryRows(&items)
+	return
+}
+
+// 批量添加
+func AddCygxActivityOfflineMeetingDetailList(items []*CygxActivityOfflineMeetingDetail) (lastId int64, err error) {
+	lenitems := len(items)
+	if lenitems == 0 {
+		return
+	}
+	o := orm.NewOrm()
+	_, err = o.InsertMulti(1, items)
+	return
+}
+
+// 添加
+func AddCygxActivityOfflineMeetingDetail(item *CygxActivityOfflineMeetingDetail) (err error) {
+	o := orm.NewOrm()
+	_, err = o.Insert(item)
+	return
+}
+
+// 获取数量
+func GetCygxActivityOfflineMeetingDetailCount(condition string, pars []interface{}) (count int, err error) {
+	sqlCount := ` SELECT COUNT(1) AS count  FROM cygx_activity_offline_meeting_detail as art WHERE 1= 1  `
+	if condition != "" {
+		sqlCount += condition
+	}
+	o := orm.NewOrm()
+	err = o.Raw(sqlCount, pars).QueryRow(&count)
+	return
+}

+ 1 - 0
models/db.go

@@ -143,6 +143,7 @@ func init() {
 		new(CygxAboutUsVideoHistory),
 		new(CygxActivitySignin),
 		new(CygxActivitySigninLog),
+		new(CygxActivityOfflineMeetingDetail),
 	)
 	// 记录ORM查询日志
 	orm.Debug = true

+ 67 - 0
services/activity_signin.go

@@ -1,6 +1,7 @@
 package services
 
 import (
+	"errors"
 	"fmt"
 	"hongze/hongze_cygx/models"
 	"hongze/hongze_cygx/utils"
@@ -30,5 +31,71 @@ func AddCygxActivitySigninLog(item *models.CygxActivitySignin) (err error) {
 	itemLog.CountryCode = item.CountryCode
 	itemLog.CreateTime = time.Now()
 	err = models.AddCygxActivitySigninLog(itemLog)
+
 	return
 }
+
+// AddCygxActivityOfflineMeetingDetail 扫码签到日志记录
+func AddCygxActivityOfflineMeetingDetail(activityid int) (err error) {
+	defer func() {
+		if err != nil {
+			fmt.Println(err)
+			go utils.SendAlarmMsg("扫码签到日志记录,失败,活动ID:"+strconv.Itoa(activityid)+err.Error(), 2)
+		}
+	}()
+
+	var condition string
+	var pars []interface{}
+
+	condition = `  AND activity_id = ?`
+	pars = append(pars, activityid)
+	listOfflineMeeting, err := models.GetOfflineMeetingList(condition, pars)
+	if err != nil {
+		err = errors.New("GetOfflineMeetingList, Err: " + err.Error())
+		return
+	}
+	mapOfflineMeeting := make(map[int]bool)
+	for _, v := range listOfflineMeeting {
+		mapOfflineMeeting[v.UserId] = true
+	}
+	pars = make([]interface{}, 0)
+	condition = ` AND do_fail_type = 0 AND activity_id  = ?`
+	pars = append(pars, activityid)
+	listSignup, e := models.GetActivitySignupList(condition, pars)
+	if e != nil {
+		err = errors.New("GetResourceDataList, Err: " + e.Error())
+		return
+	}
+
+	var items []*models.CygxActivityOfflineMeetingDetail
+	for _, v := range listSignup {
+		if !mapOfflineMeeting[v.UserId] {
+			item := new(models.CygxActivityOfflineMeetingDetail)
+			item.UserId = v.UserId
+			item.ActivityId = v.ActivityId
+			item.CreateTime = v.CreateTime
+			item.Mobile = v.Mobile
+			item.CompanyId = v.CompanyId
+			item.CompanyName = v.CompanyName
+			item.IsMeeting = 1
+			items = append(items, item)
+		}
+	}
+
+	//添加线下到会信息记录
+	_, err = models.AddCygxActivityOfflineMeetingDetailList(items)
+	if err != nil {
+		err = errors.New("AddCygxActivityOfflineMeetingDetailList, Err: " + err.Error())
+		return
+	}
+
+	//修改活动是否提交到会状态
+	err = models.UpdateCygxActivitySubmitMeetingByActivityId(activityid)
+	if err != nil {
+		err = errors.New("UpdateCygxActivitySubmitMeetingByActivityId, Err: " + err.Error())
+		return
+	}
+
+	return
+
+}

+ 5 - 5
services/send_company_user.go

@@ -50,7 +50,7 @@ type OriginalUserInfoResp struct {
 	RealName string `json:"RealName"`
 }
 
-//c
+// c
 func SendComapnyToShanghai(url, jsonCompany, postType string) (err error) {
 	var msg string
 	defer func() {
@@ -158,7 +158,7 @@ func DotongbuShangHai(cont context.Context) (err error) {
 		}
 	}
 
-	condition = ` AND p.is_suspend = 0  AND p.modify_time > ` + "'" + updateTime + "'"
+	condition = ` AND p.is_suspend = 0  AND a.modify_time > ` + "'" + updateTime + "'"
 	companyIds = strings.TrimRight(companyIds, ",")
 
 	fmt.Println("获取冻结跟流失的用户", len(listFreezeAndLoss))
@@ -510,7 +510,7 @@ func DotongbuShangHaiSendEmail(cont context.Context) (err error) {
 	return
 }
 
-//DeleteUserDotongbuShangHaApi 删除用户进行同步
+// DeleteUserDotongbuShangHaApi 删除用户进行同步
 func DeleteUserDotongbuShangHaiApi() (err error) {
 	var msg string
 	defer func() {
@@ -581,7 +581,7 @@ func DeleteUserDotongbuShangHaiApi() (err error) {
 	return
 }
 
-//获取用户的Token
+// 获取用户的Token
 func GetShangHaiCrmApiToken() (token string, err error) {
 	var msg string
 	defer func() {
@@ -627,7 +627,7 @@ func GetShangHaiCrmApiToken() (token string, err error) {
 	return
 }
 
-//处理被禁用的用户,将禁用用户的状态转冻结
+// 处理被禁用的用户,将禁用用户的状态转冻结
 func CompanySuspend() (err error) {
 	var msg string
 	defer func() {