|
@@ -347,3 +347,94 @@ func AddctivitySignupDetailListByHand(itemsDetail []*cygx.CygxActivityAttendance
|
|
|
|
|
|
return err
|
|
|
}
|
|
|
+
|
|
|
+// AddctivitySignupDetailListByAdminSignup 已结束的活动,管理员手动添加报名,把信息写入到联系人列表参会信息中
|
|
|
+func AddctivitySignupDetailListByAdminSignup(activityIdsStr string) (err error) {
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ go alarm_msg.SendAlarmMsg(fmt.Sprint("已结束的活动,管理员手动添加报名,把信息写入到联系人列表参会信息中 ErrMsg:"+err.Error(), "activityIds:", activityIdsStr), 2)
|
|
|
+ }
|
|
|
+ }()
|
|
|
+
|
|
|
+ var condition string
|
|
|
+ var pars []interface{}
|
|
|
+ condition = ` AND active_state = 3 AND activity_id IN (` + activityIdsStr + `) `
|
|
|
+ list, e := cygx.GetActivityListAll(condition, pars, 0, 9999)
|
|
|
+ if e != nil && e.Error() != utils.ErrNoRow() {
|
|
|
+ err = errors.New("GetWxUserOutboundMobiles, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(list) == 0 {
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ var activityIds []int
|
|
|
+
|
|
|
+ for _, v := range list {
|
|
|
+ activityIds = append(activityIds, v.ActivityId)
|
|
|
+ }
|
|
|
+
|
|
|
+ actLen := len(activityIds)
|
|
|
+ condition = ` AND activity_id IN (` + utils.GetOrmInReplace(actLen) + `)`
|
|
|
+ pars = append(pars, activityIds)
|
|
|
+
|
|
|
+ //获取已经写入的信息,并建立map
|
|
|
+ signUpDetailList, err := cygx.GetSignupDetailList(condition, pars)
|
|
|
+ if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ mapsignUpDetai := make(map[string]string)
|
|
|
+ if len(signUpDetailList) > 0 {
|
|
|
+ for _, v := range signUpDetailList {
|
|
|
+ mapsignUpDetai[fmt.Sprint("ActivityId", v.ActivityId, "Mobile", v.Mobile)] = v.Mobile
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ pars = make([]interface{}, 0)
|
|
|
+ condition = ` AND activity_id IN (` + utils.GetOrmInReplace(actLen) + `) AND do_fail_type = 0`
|
|
|
+ pars = append(pars, activityIds)
|
|
|
+ //获取成功报名的人员信息
|
|
|
+ signUpList, err := cygx.GetSignupDetailBySignup(condition, pars)
|
|
|
+ if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
+ return err
|
|
|
+ }
|
|
|
+ //建立外呼号与手机号的绑定
|
|
|
+ mapsignUp := make(map[string]string)
|
|
|
+ if len(signUpList) > 0 {
|
|
|
+ for _, v := range signUpList {
|
|
|
+ mapsignUp[fmt.Sprint(v.OutboundMobile)] = v.Mobile
|
|
|
+ }
|
|
|
+ }
|
|
|
+ var items []*cygx.CygxActivitySignupDetail
|
|
|
+ if len(signUpList) > 0 {
|
|
|
+ for _, v := range signUpList {
|
|
|
+ if _, ok := mapsignUpDetai[fmt.Sprint("ActivityId", v.ActivityId, "Mobile", v.Mobile)]; !ok {
|
|
|
+ item := new(cygx.CygxActivitySignupDetail)
|
|
|
+ item.UserId = v.UserId
|
|
|
+ item.RealName = v.RealName
|
|
|
+ item.SellerName = v.SellerName
|
|
|
+ item.ActivityId = v.ActivityId
|
|
|
+ item.CreateTime = v.CreateTime
|
|
|
+ item.Mobile = v.Mobile
|
|
|
+ item.OutboundMobile = v.OutboundMobile
|
|
|
+ item.Email = v.Email
|
|
|
+ item.CompanyId = v.CompanyId
|
|
|
+ item.CompanyName = v.CompanyName
|
|
|
+ item.SignupType = v.SignupType
|
|
|
+ item.FailType = v.FailType
|
|
|
+ item.DoFailType = v.DoFailType
|
|
|
+ items = append(items, item)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if len(items) > 0 {
|
|
|
+ e = cygx.AddCygxActivitySignupDetail(items)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("AddCygxActivitySignupDetail, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return err
|
|
|
+}
|