Browse Source

no message

xingzai 1 year ago
parent
commit
027d5fe984
2 changed files with 39 additions and 3 deletions
  1. 12 1
      controllers/cygx/activity.go
  2. 27 2
      services/cygx/activity_ocr.go

+ 12 - 1
controllers/cygx/activity.go

@@ -89,7 +89,18 @@ func (this *ActivityCoAntroller) PreserveAndPublish() {
 	//处理识图建会的会议信息列表 因为活动发布处理的业务逻辑过多,方便后期统一维护这里 根据 list 数据类型自己拼接 活动的 body  查研观向 11.12
 	listImgToText := req.ListImgToText
 	if len(listImgToText) > 0 {
-		req = cygxService.MakeActivityReqText(listImgToText)
+		var errmsg string
+		req, err, errmsg = cygxService.MakeActivityReqText(listImgToText)
+		if err != nil {
+			br.Msg = "识图建会失败!"
+			br.ErrMsg = "参数解析失败,Err:" + err.Error()
+			return
+		}
+		if errmsg != "" {
+			br.Msg = "识图建会失败," + errmsg
+			br.ErrMsg = "识图建会失败," + errmsg
+			return
+		}
 	}
 	if req.Body == "" {
 		br.Msg = "内容不可为空"

+ 27 - 2
services/cygx/activity_ocr.go

@@ -1,6 +1,7 @@
 package cygx
 
 import (
+	"errors"
 	"hongze/hz_crm_api/models/cygx"
 	"hongze/hz_crm_api/utils"
 	"strconv"
@@ -73,7 +74,7 @@ func ConvertActivityTitmeHM(titmeHM string) (titmeHMNew string) {
 // 活动内容模版
 var ActivityOcrTemplate = "<p>【买方研选-小范围公司线上交流】{{COMPANY}}</p><p>时间:{{TIME}}</p><p>嘉宾:IR</p><p>主持人:IR</p><p>链接参会:(会前一天下午更新)</p><p>备注:</p><p>1、请先报名,我们将于会议前一天提供【Webex】入会链接(可电话拨入or网络端参会);</p><p>2、会议语言:{{LANGUAGE}};</p><p>3、本场会议报名截止时间为会议开始前一天下午3点半;</p><p>4、本次会议扣0.5次研选服务点。</p>"
 
-func MakeActivityReqText(list []*cygx.AliyunOcrTextActivityResp) (req cygx.ActivityRep) {
+func MakeActivityReqText(list []*cygx.AliyunOcrTextActivityResp) (req cygx.ActivityRep, err error, errMsg string) {
 	for _, v := range list {
 		ActivityOcrTmp := ActivityOcrTemplate
 		sliceCompany := strings.Split(v.Company, "(")
@@ -81,8 +82,31 @@ func MakeActivityReqText(list []*cygx.AliyunOcrTextActivityResp) (req cygx.Activ
 		ActivityOcrTmp = strings.Replace(ActivityOcrTmp, "{{COMPANY}}", company, -1)
 		v.TitmeYMD = strings.Replace(v.TitmeYMD, "年", "-", -1)
 		v.TitmeYMD = strings.Replace(v.TitmeYMD, "月", "-", -1)
-		v.TitmeYMD = strings.Replace(v.TitmeYMD, "日", " ", -1)
+		v.TitmeYMD = strings.Replace(v.TitmeYMD, "日", "", -1)
 		weeknum := utils.StrDateTimeToWeek(v.TitmeYMD + " 00:00:00")
+
+		var condition string
+		var pars []interface{}
+		condition = " AND activity_type_id = 3 AND  activity_time = ? AND temporary_label = ? "
+		var activityTime string
+		activityTime = strings.Replace(v.TitmeHM, " ", "", -1)
+		activityTime = strings.Replace(activityTime, "AM", "", -1)
+		activityTime = strings.Replace(activityTime, "PM", "", -1)
+		activityTime = v.TitmeYMD + " " + activityTime + ":00"
+		//fmt.Println(activityTime)
+		pars = append(pars, activityTime, company)
+		total, e := cygx.GetActivityCount(condition, pars)
+		if e != nil {
+			err = errors.New("GetActivityCount,Err" + e.Error())
+			return
+		}
+		//fmt.Println(total)
+
+		//return
+		if total > 0 {
+			errMsg = "相同时段已存在对应活动"
+			return
+		}
 		ActivityOcrTmp = strings.Replace(ActivityOcrTmp, "{{TIME}}", v.TitmeYMD+"("+weeknum+")"+v.TitmeHM, -1)
 		if utils.CheckStrHaveLetter(company) {
 			ActivityOcrTmp = strings.Replace(ActivityOcrTmp, "{{LANGUAGE}}", "中文", -1)
@@ -106,6 +130,7 @@ func MakeActivityReqText(list []*cygx.AliyunOcrTextActivityResp) (req cygx.Activ
 	req.VisibleRange = 2
 	req.IsResearchPoints = 1
 	req.IsNeedEmail = 1
+	// 研选点数
 	pointsSet := new(cygx.CygxActivityPointsSetRsq)
 	pointsSet.PointsObject = "1"
 	pointsSet.UserPointsNum = "0.5"