|
@@ -4,8 +4,12 @@ import (
|
|
|
"errors"
|
|
|
"fmt"
|
|
|
"hongze/hongze_cygx/models"
|
|
|
+ "hongze/hongze_cygx/utils"
|
|
|
+ "strconv"
|
|
|
+ "time"
|
|
|
)
|
|
|
|
|
|
+//我的日程 GetScheduleAndSpecilList
|
|
|
func GetScheduleAndSpecilList(user *models.WxUserItem, condition string, startSize, pageSize int) (items []*models.ActivityDetail, err error) {
|
|
|
var conditionSpecil string
|
|
|
var pars, parsSpecil []interface{}
|
|
@@ -21,14 +25,17 @@ func GetScheduleAndSpecilList(user *models.WxUserItem, condition string, startSi
|
|
|
}
|
|
|
var activityIds []int
|
|
|
var activitySpecilalIds []int
|
|
|
- for _, v := range list {
|
|
|
- if v.SignupType == 2 {
|
|
|
+ for k, v := range list {
|
|
|
+ if v.SourceType == 2 {
|
|
|
activitySpecilalIds = append(activitySpecilalIds, v.ActivityId)
|
|
|
+ if v.ActivityType == 2 {
|
|
|
+ list[k].ActivityType = 0
|
|
|
+ }
|
|
|
} else {
|
|
|
activityIds = append(activityIds, v.ActivityId)
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ //处理活动
|
|
|
if len(activityIds) > 0 {
|
|
|
//处理用户是否报名
|
|
|
mapSignUp, e := GetActivitySignUpUserMap(activityIds, user)
|
|
@@ -37,13 +44,12 @@ func GetScheduleAndSpecilList(user *models.WxUserItem, condition string, startSi
|
|
|
return
|
|
|
}
|
|
|
for k, v := range list {
|
|
|
- if v.SignupType != 2 {
|
|
|
+ if v.SourceType != 2 {
|
|
|
if _, ok := mapSignUp[v.ActivityId]; ok {
|
|
|
list[k].IsSignup = 1
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
//处理用户是否预约纪要
|
|
|
mapAppointment, e := GetActivityAppointmentUserMap(activityIds, user)
|
|
|
if e != nil {
|
|
@@ -51,15 +57,57 @@ func GetScheduleAndSpecilList(user *models.WxUserItem, condition string, startSi
|
|
|
return
|
|
|
}
|
|
|
for k, v := range list {
|
|
|
- if v.SignupType != 2 {
|
|
|
+ if v.SourceType != 2 {
|
|
|
if _, ok := mapAppointment[v.ActivityId]; ok {
|
|
|
list[k].IsAppointment = 1
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+ //处理用户是否预约会议提醒
|
|
|
+ mapReminder, e := GetActivityReminderUserMasp(activityIds, user)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetActivityReminderUserMasp, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for k, v := range list {
|
|
|
+ if v.SourceType != 2 {
|
|
|
+ if _, ok := mapReminder[v.ActivityId]; ok {
|
|
|
+ list[k].IsCancelMeetingReminder = 1
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
+ //处理专项产业调研
|
|
|
+ if len(activitySpecilalIds) > 0 {
|
|
|
+ //处理用户是否报名
|
|
|
+ UserMap, e := GetSpecialTripUserMap(activityIds, user.UserId)
|
|
|
+ if e != nil {
|
|
|
+ err = errors.New("GetSpecialTripUserMap, Err: " + e.Error())
|
|
|
+ return
|
|
|
+ }
|
|
|
+ for k, v := range list {
|
|
|
+ if v.SourceType == 2 {
|
|
|
+ if _, ok := UserMap[v.ActivityId]; ok {
|
|
|
+ list[k].IsSignup = 1
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ for k, v := range list {
|
|
|
+ if v.SourceType == 2 {
|
|
|
+ resultTimeStart := utils.StrTimeToTime(v.ActivityTime) //时间字符串格式转时间格式
|
|
|
+ resultTimeEnd := utils.StrTimeToTime(v.ActivityTimeEnd) //时间字符串格式转时间格式
|
|
|
+ if resultTimeStart.After(time.Now()) {
|
|
|
+ list[k].ActiveState = strconv.Itoa(1)
|
|
|
+ } else if time.Now().After(resultTimeEnd) {
|
|
|
+ list[k].ActiveState = strconv.Itoa(2)
|
|
|
+ } else {
|
|
|
+ list[k].ActiveState = strconv.Itoa(3)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
items = list
|
|
|
return
|
|
|
}
|