Browse Source

no message

xingzai 1 year ago
parent
commit
8e8d9810b0
2 changed files with 104 additions and 0 deletions
  1. 103 0
      controllers/cygx/activity.go
  2. 1 0
      models/cygx/activity.go

+ 103 - 0
controllers/cygx/activity.go

@@ -1637,3 +1637,106 @@ func (this *ActivityCoAntroller) ImgToText() {
 	br.Data = resp
 	br.IsAddLog = true
 }
+
+// @Title 活动的置顶与取消置顶
+// @Description 活动的发布与取消发布接口
+// @Param	request	body cygx.ActivityIdRep true "type json string"
+// @Success 200 操作成功
+// @router /activity/tope_change [post]
+func (this *ActivityCoAntroller) TopeChange() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	AdminUser := this.SysUser
+	if AdminUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,用户信息为空"
+		br.Ret = 408
+		return
+	}
+	var req cygx.ActivityIdRep
+	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
+	if err != nil {
+		br.Msg = "参数解析异常!"
+		br.ErrMsg = "参数解析失败,Err:" + err.Error()
+		return
+	}
+	activityId := req.ActivityId
+	item := new(cygx.CygxActivity)
+	activityInfo, errInfo := cygx.GetAddActivityInfoById(activityId)
+	if activityInfo == nil {
+		br.Msg = "操作失败"
+		br.ErrMsg = "活动ID错误,不存在activityId:" + strconv.Itoa(activityId)
+		return
+	}
+	if errInfo != nil {
+		br.Msg = "操作失败"
+		br.ErrMsg = "操作失败,Err:" + errInfo.Error()
+		return
+	}
+	//校验活动后台管理员、销售是否有修改权限
+	havePower, popupMsg, err := cygxService.CheckActivityUpdatePower(AdminUser.AdminId, activityInfo)
+	if err != nil {
+		br.Msg = "获取管理员身份信息失败"
+		br.ErrMsg = "获取管理员身份信息失败,Err:" + err.Error()
+		return
+	}
+	if !havePower {
+		br.Msg = popupMsg
+		return
+	}
+	//if activityInfo.ActiveState != 1 {
+	//	br.Msg = "活动已经开始,无法修改"
+	//	return
+	//}
+	if activityInfo.PublishStatus == 0 {
+		item.PublishStatus = 1
+		item.IsCancel = 0
+		go cygxService.DoActivityOnenIdWxTemplateMsg(activityId)
+		//go cygxService.UpdateResourceData(activityId, "activity", "add", time.Now().Format(utils.FormatDateTime))
+
+		cygxService.UpdateActivityResourceData(activityId) //写入首页最新  cygx_resource_data 表
+	} else {
+		item.PublishStatus = 0
+		item.IsCancel = 1
+	}
+	if activityInfo.PublishStatus == 1 {
+		go services.SendWxMsgWithCygxActivity(req.ActivityId)
+		//同步活动到最新数据表
+		//go cygxService.UpdateResourceData(req.ActivityId, "activity", "delete", "")
+		cygxService.UpdateActivityResourceData(activityId) //写入首页最新  cygx_resource_data 表
+	}
+	item.ActivityId = req.ActivityId
+	if item.PublishStatus == 1 {
+		item.AdminId = AdminUser.AdminId
+		item.AdminName = AdminUser.RealName
+		item.PublishDate = time.Now()
+
+	} else {
+		item.AdminId = activityInfo.AdminId
+		item.AdminName = activityInfo.AdminName
+		item.PublishDate = utils.StrTimeToTime(activityInfo.PublishDate)
+	}
+	err = cygx.ActivityPublishAndCancel(item)
+	if err != nil {
+		br.Msg = "操作失败"
+		br.ErrMsg = "操作失败,Err:" + err.Error()
+		return
+	}
+	if item.PublishStatus == 1 {
+		//易董那边重新发布,重新建会
+		go cygxService.YiDongSaveRoadshowDetail(activityId)
+	} else {
+		//易董那边取消发布并删除
+		go cygxService.YiDongUpdateActivityPublish(activityId)
+	}
+	go cygxService.YanXuanActivityPointsBillActivityPublishAndCancel(activityId, AdminUser.AdminId, item.PublishStatus) //活动发布以及取消发布处理研选扣点
+
+	go elastic.AddComprehensiveActivity(activityId) // 同步Es添加活动
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "操作成功"
+	br.IsAddLog = true //添加操作日志记录
+}

+ 1 - 0
models/cygx/activity.go

@@ -170,6 +170,7 @@ type ActivityDetail struct {
 	ChartPermissionNameDeputy string                    `description:"副行业名称"`
 	BackgroundImg             string                    `description:"封面图片"`
 	ShareImg                  string                    `description:"分享图片"`
+	TopTime                   int                       `description:"置顶时间"`
 }
 
 type ActivityDetailRep struct {