|
@@ -156,6 +156,9 @@ func (this *ActivityCoAntroller) ActivityList() {
|
|
|
if strings.Contains(v.ActivityName, "【") {
|
|
|
list[k].IsBrackets = 1
|
|
|
}
|
|
|
+ if v.SignupNum > v.LimitPeopleNum {
|
|
|
+ list[k].SignupNum = v.LimitPeopleNum
|
|
|
+ }
|
|
|
}
|
|
|
page := paging.GetPaging(currentIndex, pageSize, total)
|
|
|
resp := new(models.GetCygxActivityListRep)
|
|
@@ -216,6 +219,9 @@ func (this *ActivityCoAntroller) ScheduleList() {
|
|
|
if strings.Contains(v.ActivityName, "【") {
|
|
|
list[k].IsBrackets = 1
|
|
|
}
|
|
|
+ if v.SignupNum > v.LimitPeopleNum {
|
|
|
+ list[k].SignupNum = v.LimitPeopleNum
|
|
|
+ }
|
|
|
}
|
|
|
page := paging.GetPaging(currentIndex, pageSize, total)
|
|
|
resp := new(models.GetCygxActivityListRep)
|
|
@@ -294,6 +300,8 @@ func (this *ActivityCoAntroller) Detail() {
|
|
|
if err != nil {
|
|
|
if err.Error() == utils.ErrNoRow() {
|
|
|
resp.HasPermission = 4
|
|
|
+ resp.OperationMode = "Apply"
|
|
|
+ resp.PopupMsg = "您暂无权限参加 【" + activityInfo.ChartPermissionName + "】行业活动,若想参加可以申请开通哦"
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|
|
|
br.Msg = "获取成功"
|
|
@@ -305,12 +313,6 @@ func (this *ActivityCoAntroller) Detail() {
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
- //if errcompanyItem.Error() == utils.ErrNoRow() {
|
|
|
- // br.Msg = "获取信息失败"
|
|
|
- // br.ErrMsg = "判断是否已申请过试用失败,Err:" + errcompanyItem.Error()
|
|
|
- // return
|
|
|
- //}
|
|
|
-
|
|
|
//1专家电话会、2分析师电话会、3公司调研电话会、4公司线下调研、5专家线下沙龙、6分析师线下沙龙
|
|
|
//OperationMode string `description:"操作方式 Apply:立即申请、Call:拨号 为空则为有权限"`
|
|
|
if activityInfo.ActivityTypeId != 1 && activityInfo.ActivityTypeId != 4 && permissionStr == "专家" {
|
|
@@ -339,6 +341,9 @@ func (this *ActivityCoAntroller) Detail() {
|
|
|
resp.PopupMsg = "您暂无权限参加 【" + activityInfo.ChartPermissionName + "】行业活动,若想参加可以申请开通哦"
|
|
|
}
|
|
|
if hasPermission == 1 {
|
|
|
+ if activityInfo.SignupNum > activityInfo.LimitPeopleNum {
|
|
|
+ activityInfo.SignupNum = activityInfo.LimitPeopleNum
|
|
|
+ }
|
|
|
resp.Detail = activityInfo
|
|
|
}
|
|
|
resp.HasPermission = hasPermission
|
|
@@ -370,6 +375,7 @@ func (this *ActivityCoAntroller) SignupAdd() {
|
|
|
//var signupStatus string
|
|
|
signupStatus := ""
|
|
|
var req models.ActivitySingnupRep
|
|
|
+ var total int
|
|
|
err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
|
|
|
if err != nil {
|
|
|
br.Msg = "参数解析异常!"
|
|
@@ -378,16 +384,11 @@ func (this *ActivityCoAntroller) SignupAdd() {
|
|
|
}
|
|
|
activityId := req.ActivityId
|
|
|
signupType := req.SignupType
|
|
|
- //if signupType != 1 && signupType != 2 {
|
|
|
- // br.Msg = "请选择正确的报名方式!"
|
|
|
- // return
|
|
|
- //}
|
|
|
- //SignupStatus string `description:"报名状态:人数已满:FullStarffed、单机构超过两人:TwoPeople、爽约次数过多:BreakPromise、超时:Overtime 、成功:Success"`
|
|
|
- //HasPermission int `description:"1:有该行业权限,正常展示,2:无该行业权限,3:潜在客户,未提交过申请,4:潜在客户,已提交过申请"`
|
|
|
+ //SignupStatus "报名状态:人数已满:FullStarffed、单机构超过两人:TwoPeople、爽约次数过多:BreakPromise、超时:Overtime 、成功:Success"`
|
|
|
+ //HasPermission "1:有该行业权限,正常展示,2:无该行业权限,3:潜在客户,未提交过申请,4:潜在客户,已提交过申请"`
|
|
|
item := new(models.CygxActivitySignup)
|
|
|
resp := new(models.SignupStatus)
|
|
|
hasPermission := 0
|
|
|
-
|
|
|
//判断是否已经申请过
|
|
|
applyCount, err := models.GetApplyRecordCount(uid)
|
|
|
if err != nil && err.Error() != utils.ErrNoRow() {
|
|
@@ -427,8 +428,6 @@ func (this *ActivityCoAntroller) SignupAdd() {
|
|
|
resp.OperationMode = "Call"
|
|
|
hasPermission = 2
|
|
|
} else {
|
|
|
- fmt.Println(activityInfo.ChartPermissionName)
|
|
|
- fmt.Println(permissionStr)
|
|
|
if strings.Contains(permissionStr, activityInfo.ChartPermissionName) {
|
|
|
hasPermission = 1
|
|
|
signupStatus = "Success"
|
|
@@ -436,10 +435,64 @@ func (this *ActivityCoAntroller) SignupAdd() {
|
|
|
if time.Now().After(resultTime.Add(-time.Minute * 60)) {
|
|
|
signupStatus = "Overtime"
|
|
|
}
|
|
|
- total, errtotal := models.GetActivitySignupCount(uid, activityId)
|
|
|
- if errtotal != nil {
|
|
|
+ //人数已满:FullStarffed、单机构超过两人:TwoPeople、爽约次数过多:BreakPromise、超时:Overtime 、成功:Success"`
|
|
|
+ //如果是下面几种情况则对报名信息做判断限制 (公司调研电话会(限制人数)、公司线下调研、专家/分析师线下沙龙)
|
|
|
+
|
|
|
+ if (activityInfo.ActivityTypeId == 3 && activityInfo.IsLimitPeople == 1) || activityInfo.ActivityTypeId > 3 {
|
|
|
+ //判断优先级:总人数限制→单机构2人限制→爽约3次限制
|
|
|
+ total, err = models.GetUserRestrictCount(user.UserId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if total >= 1 {
|
|
|
+ signupStatus = "BreakPromise"
|
|
|
+ item.FailType = 3
|
|
|
+ }
|
|
|
+ total, err = models.GetActivitySignupCompanyCount(activityId, user.CompanyId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if total >= 2 {
|
|
|
+ signupStatus = "TwoPeople"
|
|
|
+ item.FailType = 2
|
|
|
+ }
|
|
|
+ total, err = models.GetActivitySignupSuccessCount(activityId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取客户信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if total >= activityInfo.LimitPeopleNum {
|
|
|
+ signupStatus = "FullStarffed"
|
|
|
+ item.FailType = 1
|
|
|
+ }
|
|
|
+ if signupStatus != "Success" {
|
|
|
+ item.UserId = uid
|
|
|
+ item.ActivityId = activityId
|
|
|
+ item.CreateTime = time.Now()
|
|
|
+ item.Mobile = user.Mobile
|
|
|
+ item.Email = user.Email
|
|
|
+ item.CompanyId = user.CompanyId
|
|
|
+ item.CompanyName = user.CompanyName
|
|
|
+ item.SignupType = signupType
|
|
|
+ //添加报名信息,但是不加入日程
|
|
|
+ _, errSignup := models.AddActivitySignupNoSchedule(item)
|
|
|
+ if errSignup != nil {
|
|
|
+ br.Msg = "操作失败"
|
|
|
+ br.ErrMsg = "操作失败,Err:" + errSignup.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ total, err = models.GetActivitySignupCount(uid, activityId)
|
|
|
+ if err != nil {
|
|
|
br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取失败,Err:" + errtotal.Error()
|
|
|
+ br.ErrMsg = "获取失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
if total > 0 {
|
|
@@ -455,6 +508,7 @@ func (this *ActivityCoAntroller) SignupAdd() {
|
|
|
item.CompanyId = user.CompanyId
|
|
|
item.CompanyName = user.CompanyName
|
|
|
item.SignupType = signupType
|
|
|
+ item.FailType = 0
|
|
|
_, errSignup := models.AddActivitySignup(item)
|
|
|
if errSignup != nil {
|
|
|
br.Msg = "操作失败"
|
|
@@ -479,13 +533,20 @@ func (this *ActivityCoAntroller) SignupAdd() {
|
|
|
resp.OperationMode = "Apply"
|
|
|
resp.PopupMsg = "您暂无权限参加 【" + activityInfo.ChartPermissionName + "】行业活动,若想参加可以申请开通哦"
|
|
|
}
|
|
|
+
|
|
|
resp.SignupType = signupType
|
|
|
resp.SignupStatus = signupStatus
|
|
|
resp.HasPermission = hasPermission
|
|
|
if signupStatus == "Success" {
|
|
|
resp.ActivityId = activityId
|
|
|
}
|
|
|
- if activityId%2 == 1 {
|
|
|
+ total, err = models.GetUserMeetingReminderCount(user.UserId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取日程数量信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if total == 0 {
|
|
|
resp.GoFollow = true
|
|
|
}
|
|
|
br.Ret = 200
|
|
@@ -821,7 +882,14 @@ func (this *ActivityCoAntroller) MeetingReminderAdd() {
|
|
|
resp.HasPermission = hasPermission
|
|
|
resp.SignupStatus = signupStatus
|
|
|
resp.ActivityId = activityId
|
|
|
- if activityId%2 == 1 {
|
|
|
+ var total int
|
|
|
+ total, err = models.GetUserMeetingReminderCount(user.UserId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取信息失败"
|
|
|
+ br.ErrMsg = "获取日程数量信息失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if total == 0 {
|
|
|
resp.GoFollow = true
|
|
|
}
|
|
|
br.Ret = 200
|