Pārlūkot izejas kodu

查研观向14.8

zhangchuanxing 5 dienas atpakaļ
vecāks
revīzija
27303159d5

+ 111 - 35
controllers/cygx/morning_meeting_review.go

@@ -90,7 +90,7 @@ func (this *MorningMeetingController) List() {
 		return
 		return
 	}
 	}
 
 
-	condition += ` ORDER BY publish_time DESC  `
+	condition += ` ORDER BY meeting_time DESC ,id DESC  `
 	resp := new(cygx.CygxMorningMeetingReviewsList)
 	resp := new(cygx.CygxMorningMeetingReviewsList)
 	list, err := cygx.GetCygxMorningMeetingReviewsList(condition, pars, startSize, pageSize)
 	list, err := cygx.GetCygxMorningMeetingReviewsList(condition, pars, startSize, pageSize)
 	if err != nil {
 	if err != nil {
@@ -109,6 +109,7 @@ func (this *MorningMeetingController) List() {
 			Status:        item.Status,
 			Status:        item.Status,
 			PartNums:      item.PartNums,
 			PartNums:      item.PartNums,
 			IndustryNames: item.IndustryNames,
 			IndustryNames: item.IndustryNames,
+			OpUserName:    item.OpUserName,
 		}
 		}
 		if item.Status == 1 {
 		if item.Status == 1 {
 			respItem.PublishTime = item.PublishTime.Local().Format(utils.FormatDateTime)
 			respItem.PublishTime = item.PublishTime.Local().Format(utils.FormatDateTime)
@@ -165,19 +166,26 @@ func (this *MorningMeetingController) PreserveAndPublish() {
 	}
 	}
 	industryNames := strings.Join(industryNameslice, ",")
 	industryNames := strings.Join(industryNameslice, ",")
 
 
-	if reqList.MeetingId <= 0 {
-		//先新增主表
-		reviewItem := cygx.CygxMorningMeetingReviews{
-			MeetingTime:   meetingTime,
-			CreateTime:    time.Now(),
-			ModifyTime:    time.Now(),
-			PartNums:      len(reqList.List),
-			IndustryNames: industryNames,
-		}
+	//先新增主表
+	reviewItem := cygx.CygxMorningMeetingReviews{
+		MeetingTime:   meetingTime,
+		CreateTime:    time.Now(),
+		ModifyTime:    time.Now(),
+		PartNums:      len(reqList.List),
+		IndustryNames: industryNames,
+		OpUserId:      sysUser.AdminId,
+		OpUserName:    sysUser.RealName,
+	}
+	if reqList.DoType == 1 {
+		reviewItem.Status = 2
+	}
 
 
+	if reqList.MeetingId <= 0 {
 		if reqList.DoType == 1 {
 		if reqList.DoType == 1 {
-			reviewItem.PublishTime = time.Now()
-			reviewItem.Status = 1
+			//reviewItem.PublishTime = time.Now()
+			//reviewItem.Status = 2
+		} else {
+			reviewItem.Status = 5
 		}
 		}
 
 
 		meetingId, err := cygx.AddCygxMorningMeetingReviews(&reviewItem)
 		meetingId, err := cygx.AddCygxMorningMeetingReviews(&reviewItem)
@@ -254,10 +262,10 @@ func (this *MorningMeetingController) PreserveAndPublish() {
 			br.Msg = "保存成功"
 			br.Msg = "保存成功"
 			br.Data = meetingId
 			br.Data = meetingId
 		} else {
 		} else {
-			for _, item := range reqList.List {
-				go services.SendWxMsgWithCygxMorningMeeting(int(meetingId), item.IndustryId, item.IndustryName)
-				go cygxService.UpdateIndustrialManagementTimeLineDateList3ByRedis(item.IndustryId) //处理产业管理时间线相关内容的数据
-			}
+			//for _, item := range reqList.List {
+			//go services.SendWxMsgWithCygxMorningMeeting(int(meetingId), item.IndustryId, item.IndustryName)
+			//	go cygxService.UpdateIndustrialManagementTimeLineDateList3ByRedis(item.IndustryId) //处理产业管理时间线相关内容的数据
+			//}
 			//添加到首页最新
 			//添加到首页最新
 			listchapter, err := cygx.GetCygxMorningMeetingReviewsListById(int(meetingId))
 			listchapter, err := cygx.GetCygxMorningMeetingReviewsListById(int(meetingId))
 			if err != nil {
 			if err != nil {
@@ -267,8 +275,9 @@ func (this *MorningMeetingController) PreserveAndPublish() {
 			}
 			}
 			for _, itemchapter := range listchapter {
 			for _, itemchapter := range listchapter {
 				//go cygxService.UpdateResourceData(itemchapter.Id, "meetingreviewchapt", "add", time.Now().Format(utils.FormatDateTime))
 				//go cygxService.UpdateResourceData(itemchapter.Id, "meetingreviewchapt", "add", time.Now().Format(utils.FormatDateTime))
-				go cygxService.UpdateMeetingreviewchaptResourceData(itemchapter.Id) //写入首页最新  cygx_resource_data 表
-				go elastic.AddComprehensiveMeetingreviewchapt(itemchapter.Id)       //Es添加晨会精华
+				//go cygxService.UpdateMeetingreviewchaptResourceData(itemchapter.Id)                                 //写入首页最新  cygx_resource_data 表
+				//go elastic.AddComprehensiveMeetingreviewchapt(itemchapter.Id)                                       //Es添加晨会精华
+				go cygxService.AddCygxMorningMeetingReviewLog(itemchapter, "提交审核", sysUser.RealName, sysUser.AdminId, 2) //添加晨会精华日志信息,并发送模版消息
 			}
 			}
 			br.Msg = "发布成功"
 			br.Msg = "发布成功"
 			br.Data = meetingId
 			br.Data = meetingId
@@ -285,22 +294,14 @@ func (this *MorningMeetingController) PreserveAndPublish() {
 			return
 			return
 		}
 		}
 
 
-		reviewItem := cygx.CygxMorningMeetingReviews{
-			Id:            reqList.MeetingId,
-			MeetingTime:   meetingTime,
-			ModifyTime:    time.Now(),
-			PartNums:      len(reqList.List),
-			IndustryNames: industryNames,
-		}
-
 		if reqList.DoType == 1 {
 		if reqList.DoType == 1 {
-			reviewItem.PublishTime = time.Now()
-			reviewItem.Status = 1
+			//reviewItem.PublishTime = time.Now()
+			//reviewItem.Status = 2
 		} else {
 		} else {
-			reviewItem.PublishTime = reviewInfo.PublishTime
+			//reviewItem.PublishTime = reviewInfo.PublishTime
 			reviewItem.Status = reviewInfo.Status
 			reviewItem.Status = reviewInfo.Status
 		}
 		}
-
+		reviewItem.Id = reqList.MeetingId
 		err = cygx.UpdateCygxMorningMeetingReviews(&reviewItem)
 		err = cygx.UpdateCygxMorningMeetingReviews(&reviewItem)
 		if err != nil {
 		if err != nil {
 			br.Msg = "更新晨报点评失败!"
 			br.Msg = "更新晨报点评失败!"
@@ -439,13 +440,14 @@ func (this *MorningMeetingController) PreserveAndPublish() {
 		if reqList.DoType == 0 {
 		if reqList.DoType == 0 {
 			br.Msg = "保存成功"
 			br.Msg = "保存成功"
 		} else {
 		} else {
-			for _, item := range reqList.List {
-				go services.SendWxMsgWithCygxMorningMeeting(reqList.MeetingId, item.IndustryId, item.IndustryName)
-				go cygxService.UpdateIndustrialManagementTimeLineDateList3ByRedis(item.IndustryId) //处理产业管理时间线相关内容的数据
-			}
+			//for _, item := range reqList.List {
+			//	go services.SendWxMsgWithCygxMorningMeeting(reqList.MeetingId, item.IndustryId, item.IndustryName)
+			//	go cygxService.UpdateIndustrialManagementTimeLineDateList3ByRedis(item.IndustryId) //处理产业管理时间线相关内容的数据
+			//}
 			for _, itemchapter := range listchapter {
 			for _, itemchapter := range listchapter {
 				//go cygxService.UpdateResourceData(itemchapter.Id, "meetingreviewchapt", "add", time.Now().Format(utils.FormatDateTime))
 				//go cygxService.UpdateResourceData(itemchapter.Id, "meetingreviewchapt", "add", time.Now().Format(utils.FormatDateTime))
-				go cygxService.UpdateMeetingreviewchaptResourceData(itemchapter.Id) //写入首页最新  cygx_resource_data 表
+				//go cygxService.UpdateMeetingreviewchaptResourceData(itemchapter.Id) //写入首页最新  cygx_resource_data 表
+				go cygxService.AddCygxMorningMeetingReviewLog(itemchapter, "提交审核", sysUser.RealName, sysUser.AdminId, 2) //添加晨会精华日志信息,并发送模版消息
 			}
 			}
 			br.Msg = "发布成功"
 			br.Msg = "发布成功"
 		}
 		}
@@ -882,3 +884,77 @@ func MorningMeetingHistoryListExport(this *MorningMeetingController, resp cygx.C
 	br.Success = true
 	br.Success = true
 	br.Msg = "导出成功"
 	br.Msg = "导出成功"
 }
 }
+
+// @Title 提交审核与撤回审核接口
+// @Description 提交审核与撤回审核接口
+// @Param	request	body cygx.MorningReviewApproveSubmiteq true "type json string"
+// @Success 200 Ret=200 取消发布成功
+// @router /morningMeeting/approve/submit [post]
+func (this *MorningMeetingController) ApproveSubmitReport() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+	var req cygx.MorningReviewApproveSubmiteq
+	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
+	if err != nil {
+		br.Msg = "参数解析异常!"
+		br.ErrMsg = "参数解析失败,Err:" + err.Error()
+		return
+	}
+	reviewId := req.ReviewId
+	status := req.Status
+	if reviewId <= 0 {
+		br.Msg = "参数错误"
+		br.ErrMsg = "参数错误,晨会id不可为空"
+		return
+	}
+	if status != 2 && status != 4 {
+		br.Msg = "操作失败"
+		br.ErrMsg = "发布状态错误"
+		return
+	}
+	var operate string
+	if status == 2 {
+		operate = "提交审核"
+	} else {
+		operate = "撤回"
+	}
+
+	//reviewInfo, err := cygx.GetMorningMeetingReviewById(reviewId)
+	//if err != nil {
+	//	br.Msg = "取消发布失败"
+	//	br.ErrMsg = "取消发布失败,Err:" + err.Error()
+	//	return
+	//}
+
+	//添加到首页最新
+	listchapter, err := cygx.GetCygxMorningMeetingReviewsListById(reviewId)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取数据失败,Err:" + err.Error()
+		return
+	}
+
+	err = cygx.UpdateMorningMeetingReviewStatusById(status, reviewId)
+	if err != nil {
+		br.Msg = "操作失败"
+		br.ErrMsg = "操作失败失败,Err:" + err.Error()
+		return
+	}
+	for _, itemchapter := range listchapter {
+		go cygxService.AddCygxMorningMeetingReviewLog(itemchapter, operate, sysUser.RealName, sysUser.AdminId, status) //添加晨会精华日志信息,并发送模版消息
+	}
+
+	br.Ret = 200
+	br.Success = true
+	br.Msg = operate + "成功"
+}

+ 19 - 1
models/cygx/cygx_morning_meeting_reviews.go

@@ -17,6 +17,8 @@ type CygxMorningMeetingReviews struct {
 	Status        int       `json:"status"`       // 0:未发布,1:已发布
 	Status        int       `json:"status"`       // 0:未发布,1:已发布
 	PartNums      int       `json:"partNums"`     // 段落数
 	PartNums      int       `json:"partNums"`     // 段落数
 	IndustryNames string    `json:"industryName"` // 产业名称
 	IndustryNames string    `json:"industryName"` // 产业名称
+	OpUserId      int       `description:"操作人编号"`
+	OpUserName    string    `description:"操作人名称"`
 }
 }
 
 
 // 添加晨报点评
 // 添加晨报点评
@@ -59,6 +61,7 @@ type CygxMorningMeetingReviewItem struct {
 	IndustryNames string `json:"industryName"` // 产业名称
 	IndustryNames string `json:"industryName"` // 产业名称
 	Pv            int    `description:"PV"`
 	Pv            int    `description:"PV"`
 	Uv            int    `description:"UV"`
 	Uv            int    `description:"UV"`
+	OpUserName    string `description:"操作人名称"`
 }
 }
 
 
 type CygxMorningMeetingReviewsList struct {
 type CygxMorningMeetingReviewsList struct {
@@ -81,6 +84,14 @@ func PublishMorningMeetingReviewById(reviewId int) (err error) {
 	return
 	return
 }
 }
 
 
+// 发布报告
+func UpdateMorningMeetingReviewStatusById(status, reviewId int) (err error) {
+	o := orm.NewOrmUsingDB("hz_cygx")
+	sql := `UPDATE cygx_morning_meeting_reviews SET status= ?,publish_time=now(),modify_time=NOW() WHERE id = ? `
+	_, err = o.Raw(sql, status, reviewId).Exec()
+	return
+}
+
 type MorningReviewPublishReq struct {
 type MorningReviewPublishReq struct {
 	ReviewIds string `description:"晨会id,多个用英文逗号隔开"`
 	ReviewIds string `description:"晨会id,多个用英文逗号隔开"`
 }
 }
@@ -89,6 +100,11 @@ type MorningReviewPublishCancelReq struct {
 	ReviewId int `description:"晨会id"`
 	ReviewId int `description:"晨会id"`
 }
 }
 
 
+type MorningReviewApproveSubmiteq struct {
+	ReviewId int `description:"晨会id"`
+	Status   int `description:"0:未发布,1:已发布,2:待审核、3:已驳回、4:已撤回、5:未提交"`
+}
+
 // 取消发布报告
 // 取消发布报告
 func PublishCancelMorningMeetingReview(reviewId int) (err error) {
 func PublishCancelMorningMeetingReview(reviewId int) (err error) {
 	o := orm.NewOrmUsingDB("hz_cygx")
 	o := orm.NewOrmUsingDB("hz_cygx")
@@ -146,9 +162,11 @@ func UpdateCygxMorningMeetingReviews(item *CygxMorningMeetingReviews) (err error
 			  modify_time = ?,
 			  modify_time = ?,
 			  part_nums = ?,
 			  part_nums = ?,
 			  industry_names = ?,
 			  industry_names = ?,
+			  op_user_id = ?,
+			  op_user_name = ?,
 			  status = ? 
 			  status = ? 
 			WHERE id = ? `
 			WHERE id = ? `
-	_, err = o.Raw(sql, item.MeetingTime, item.PublishTime, item.ModifyTime, item.PartNums, item.IndustryNames, item.Status, item.Id).Exec()
+	_, err = o.Raw(sql, item.MeetingTime, item.PublishTime, item.ModifyTime, item.PartNums, item.IndustryNames, item.OpUserId, item.OpUserName, item.Status, item.Id).Exec()
 
 
 	return
 	return
 }
 }

+ 41 - 0
models/cygx/morning_meeting_review_log.go

@@ -0,0 +1,41 @@
+package cygx
+
+import (
+	"github.com/beego/beego/v2/client/orm"
+	"time"
+)
+
+type CygxMorningMeetingReviewLog struct {
+	LogId                int       `orm:"column(log_id);pk"`
+	MeetingTime          time.Time `description:"晨会日期"`
+	CreateTime           time.Time `description:"创建时间"`
+	ModifyTime           time.Time `description:"修改时间"`
+	IndustryId           int       `description:"产业ID"`
+	IndustryName         string    `description:"产业名称"`
+	ChartPermissionName  string    `description:"行业名称"`
+	ChartPermissionId    int       `description:"行业ID"`
+	IndustrialSubjectIds string    `description:"标的ID"`
+	MeetingId            int       `description:"主表ID"`
+	Content              string    `description:"内容"`
+	ReportLink           string    `description:"报告链接"`
+	LinkArticleId        int       `description:"跳转的文章ID"`
+	Title                string    `description:"标题"`
+	Remark               string    `description:"备注说明"`
+	Operate              string    `description:"操作内容"`
+	OpUserId             int       `description:"操作人编号"`
+	OpUserName           string    `description:"操作人名称"`
+}
+
+// 添加晨报点评章节日志信息
+func AddCygxMorningMeetingReviewLog(item *CygxMorningMeetingReviewLog) (newId int64, err error) {
+	o := orm.NewOrmUsingDB("hz_cygx")
+	newId, err = o.Insert(item)
+	return
+}
+
+func GetCygxMorningMeetingReviewLogByLogId(logId int) (item *CygxMorningMeetingReviewLog, err error) {
+	o := orm.NewOrmUsingDB("hz_cygx")
+	sql := `SELECT * FROM cygx_morning_meeting_review_log WHERE  log_id =  ? `
+	err = o.Raw(sql, logId).QueryRow(&item)
+	return
+}

+ 1 - 0
models/db.go

@@ -442,6 +442,7 @@ func initCygx() {
 		new(cygx.CygxActivitySpecialMeetingDetail),
 		new(cygx.CygxActivitySpecialMeetingDetail),
 		new(cygx.CygxMorningMeetingReviewChapter),
 		new(cygx.CygxMorningMeetingReviewChapter),
 		new(cygx.CygxMorningMeetingReviews),
 		new(cygx.CygxMorningMeetingReviews),
+		new(cygx.CygxMorningMeetingReviewLog), //晨会操作日志
 		new(cygx.CygxResourceData),
 		new(cygx.CygxResourceData),
 		new(cygx.CygxReportSelectionChartLog),
 		new(cygx.CygxReportSelectionChartLog),
 		new(cygx.CygxActivitySpecialTripBill),
 		new(cygx.CygxActivitySpecialTripBill),

+ 9 - 0
routers/commentsRouter.go

@@ -2167,6 +2167,15 @@ func init() {
             Filters: nil,
             Filters: nil,
             Params: nil})
             Params: nil})
 
 
+    beego.GlobalControllerRouter["hongze/hz_crm_api/controllers/cygx:MorningMeetingController"] = append(beego.GlobalControllerRouter["hongze/hz_crm_api/controllers/cygx:MorningMeetingController"],
+        beego.ControllerComments{
+            Method: "ApproveSubmitReport",
+            Router: `/morningMeeting/approve/submit`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["hongze/hz_crm_api/controllers/cygx:MorningMeetingController"] = append(beego.GlobalControllerRouter["hongze/hz_crm_api/controllers/cygx:MorningMeetingController"],
     beego.GlobalControllerRouter["hongze/hz_crm_api/controllers/cygx:MorningMeetingController"] = append(beego.GlobalControllerRouter["hongze/hz_crm_api/controllers/cygx:MorningMeetingController"],
         beego.ControllerComments{
         beego.ControllerComments{
             Method: "Delete",
             Method: "Delete",

+ 117 - 0
services/cygx/morning_meeting.go

@@ -3,9 +3,13 @@ package cygx
 import (
 import (
 	"errors"
 	"errors"
 	"fmt"
 	"fmt"
+	"hongze/hz_crm_api/models"
 	"hongze/hz_crm_api/models/cygx"
 	"hongze/hz_crm_api/models/cygx"
+	"hongze/hz_crm_api/services"
 	"hongze/hz_crm_api/services/alarm_msg"
 	"hongze/hz_crm_api/services/alarm_msg"
 	"hongze/hz_crm_api/utils"
 	"hongze/hz_crm_api/utils"
+	"strconv"
+	"time"
 )
 )
 
 
 //func init() {
 //func init() {
@@ -43,3 +47,116 @@ func GetCygxMorningMeetingReviewChapterHistoryPvUvMap(articleIdArr []int) (mapPv
 	}
 	}
 	return
 	return
 }
 }
+
+// 添加晨会精华操作日志
+func AddCygxMorningMeetingReviewLog(itemReq *cygx.CygxMorningMeetingReviewChapter, operate, opUserName string, opUserId, status int) {
+
+	var err error
+	defer func() {
+		if err != nil {
+			fmt.Println(err)
+			go alarm_msg.SendAlarmMsg("添加晨会精华操作日志 失败,AddCygxMorningMeetingReviewLog Err:"+err.Error(), 3)
+		}
+	}()
+
+	item := new(cygx.CygxMorningMeetingReviewLog)
+	item.MeetingTime = itemReq.MeetingTime
+	item.CreateTime = time.Now()
+	item.ModifyTime = time.Now()
+	item.IndustryId = itemReq.IndustryId
+	item.IndustryName = itemReq.IndustryName
+	item.ChartPermissionName = itemReq.ChartPermissionName
+	item.ChartPermissionId = itemReq.ChartPermissionId
+	item.IndustrialSubjectIds = itemReq.IndustrialSubjectIds
+	item.MeetingId = int(itemReq.MeetingId)
+	item.Content = itemReq.Content
+	item.ReportLink = itemReq.ReportLink
+	item.LinkArticleId = itemReq.LinkArticleId
+	item.Title = itemReq.Title
+	//item.Remark = remark
+	item.Operate = operate
+	item.OpUserName = opUserName
+	item.OpUserId = opUserId
+
+	newId, e := cygx.AddCygxMorningMeetingReviewLog(item)
+	if e != nil {
+		err = errors.New("AddCygxMorningMeetingReviewLog, Err: " + e.Error())
+		return
+	}
+
+	if status == 2 {
+		go SendWxMsgMorningMeetingApproveSubmit(int(newId))
+	}
+	return
+}
+
+// 晨会点评提交新内容审核时,给合规(指定手机号15721524062、15221002612)发送模板消息
+func SendWxMsgMorningMeetingApproveSubmit(logId int) (err error) {
+	defer func() {
+		if err != nil {
+			go alarm_msg.SendAlarmMsg(fmt.Sprint("晨会点评内容完成审核时,给提交人发送模板消息失败 logId ", logId, err.Error()), 2)
+		}
+	}()
+	var first string
+	var keyword1 string
+	var keyword2 string
+	var keyword3 string
+	var keyword4 string
+	var remark string
+
+	logDetail, e := cygx.GetCygxMorningMeetingReviewLogByLogId(logId)
+	if e != nil {
+		err = errors.New("GetCygxMorningMeetingReviewLogByLogId, Err: " + e.Error())
+		return
+	}
+	meetingId := logDetail.MeetingId
+
+	keyword1 = logDetail.OpUserName
+	keyword2 = "--"
+	keyword3 = time.Now().Format(utils.FormatDateTime)
+	keyword4 = "提交了晨会点评待审核"
+
+	configCode := "cygx_morning_meeting_mobile"
+	detailConfig, e := cygx.GetConfigByCode(configCode)
+	if e != nil {
+		err = errors.New("GetConfigByCode, Err: " + e.Error())
+		return
+	}
+
+	mobile := detailConfig.ConfigValue
+	openIdList, e := models.GetWxOpenIdByMobileList(mobile)
+	if e != nil {
+		err = errors.New("GetWxOpenIdByMobileList, Err: " + e.Error())
+		return
+	}
+	if len(openIdList) == 0 {
+		return
+	}
+
+	openIdArr := make([]string, 0)
+	for _, v := range openIdList {
+		openIdArr = append(openIdArr, v.OpenId)
+	}
+	redirectUrl := ""
+
+	redirectUrl = utils.WX_MSG_PATH_MORNING_MEETING_LOG_DETAIL + strconv.Itoa(logId)
+	if utils.RunMode != "release" {
+		redirectUrl = ""
+	}
+
+	sendInfo := new(services.SendWxTemplate)
+	sendInfo.First = first
+	sendInfo.Keyword1 = keyword1
+	sendInfo.Keyword2 = keyword2
+	sendInfo.Keyword3 = keyword3
+	sendInfo.Keyword4 = keyword4
+	sendInfo.Remark = remark
+	sendInfo.TemplateId = utils.WxMsgTemplateIdAskByUser
+	sendInfo.RedirectUrl = redirectUrl
+	sendInfo.RedirectTarget = 3
+	sendInfo.Resource = strconv.Itoa(meetingId)
+	sendInfo.SendType = utils.TEMPLATE_MSG_CYGX_ARTICLE_ADD
+	sendInfo.OpenIdArr = openIdArr
+	err = services.SendTemplateMsg(sendInfo)
+	return
+}

+ 16 - 15
utils/constants.go

@@ -504,21 +504,22 @@ const (
 
 
 // 查研观向小程序 模板消息地址路由
 // 查研观向小程序 模板消息地址路由
 const (
 const (
-	WX_MSG_PATH_ARTICLE_DETAIL                  = "pageMy/reportDetail/reportDetail?id="                          //文章详情模板消息地址
-	WX_MSG_PATH_ACTIVITY_SPECIAL_DETAIL         = "activityPages/specialDetail/specialDetail?id="                 //专项调研活动模板消息地址
-	WX_MSG_PATH_ROAD_ESSENCE                    = "reportPages/roadEssence/roadEssence?id="                       //路演精华模板消息地址
-	WX_MSG_PATH_ACTIVITY_DETAIL                 = "activityPages/activityDetail/activityDetail?id="               //活动模板消息地址
-	WX_MSG_PATH_PRODUCTINTERIOR_DETAIL          = "reportPages/internalDetials/internalDetials?id="               //产品内测模版消息地址
-	WX_MSG_PATH_ACTIVITY_SIGNIN                 = "pages-signIn/isSignIn/isSignIn"                                //扫s码签到地址
-	WX_MSG_PATH_THIS_WEEK_DETAIL                = "/reportPages/reportSecretDetail/reportSecretDetail?type=2&id=" //本周研究汇总详情模板消息地址
-	WX_MSG_PATH_LAST_WEEK_DETAIL                = "/reportPages/reportSecretDetail/reportSecretDetail?type=3&id=" //上周纪要汇总详情模板消息地址
-	WX_MSG_PATH_KEY_COMPANY_DETAIL              = "/reportPages/keyCompany/keyCompany?id="                        //重点公司详情模板消息地址
-	WX_MSG_PATH_INDUSTRY_DETAIL                 = "/reportPages/IndustryReport/IndustryReport?id="                //产业详情模板消息地址
-	CYGX_YANXUAN_POINTS_KEY              string = "CYGX_YANXUAN_POINTS_KEY"                                       //查研观向研选活动扣点KEY(冲突,先放这里)
-	WX_MSG_PATH_YX_SPECIAL_DETAIL               = "pages-purchaser/noteAndViewpoint/noteAndViewpoint?id="         //研选专栏详情
-	WX_MSG_PATH_YX_SPECIAL_ENABLE_DETAIL        = "pages-purchaser/toExamine/toExamine?id="                       //研选专栏审核详情页面
-	WX_MSG_PATH_YX_SPECIAL_CENTER               = "pages-purchaser/contentAllPage/contentAllPage?Status=4"        //研选专栏内容中心
-	WX_MSG_PATH_QUESTIONNAIRE_DETAIL            = "pages-purchaser/themeVote/themeVote?id="                       //问卷调查详情页
+	WX_MSG_PATH_ARTICLE_DETAIL                    = "pageMy/reportDetail/reportDetail?id="                          //文章详情模板消息地址
+	WX_MSG_PATH_ACTIVITY_SPECIAL_DETAIL           = "activityPages/specialDetail/specialDetail?id="                 //专项调研活动模板消息地址
+	WX_MSG_PATH_ROAD_ESSENCE                      = "reportPages/roadEssence/roadEssence?id="                       //路演精华模板消息地址
+	WX_MSG_PATH_ACTIVITY_DETAIL                   = "activityPages/activityDetail/activityDetail?id="               //活动模板消息地址
+	WX_MSG_PATH_PRODUCTINTERIOR_DETAIL            = "reportPages/internalDetials/internalDetials?id="               //产品内测模版消息地址
+	WX_MSG_PATH_ACTIVITY_SIGNIN                   = "pages-signIn/isSignIn/isSignIn"                                //扫s码签到地址
+	WX_MSG_PATH_THIS_WEEK_DETAIL                  = "/reportPages/reportSecretDetail/reportSecretDetail?type=2&id=" //本周研究汇总详情模板消息地址
+	WX_MSG_PATH_LAST_WEEK_DETAIL                  = "/reportPages/reportSecretDetail/reportSecretDetail?type=3&id=" //上周纪要汇总详情模板消息地址
+	WX_MSG_PATH_KEY_COMPANY_DETAIL                = "/reportPages/keyCompany/keyCompany?id="                        //重点公司详情模板消息地址
+	WX_MSG_PATH_INDUSTRY_DETAIL                   = "/reportPages/IndustryReport/IndustryReport?id="                //产业详情模板消息地址
+	CYGX_YANXUAN_POINTS_KEY                string = "CYGX_YANXUAN_POINTS_KEY"                                       //查研观向研选活动扣点KEY(冲突,先放这里)
+	WX_MSG_PATH_YX_SPECIAL_DETAIL                 = "pages-purchaser/noteAndViewpoint/noteAndViewpoint?id="         //研选专栏详情
+	WX_MSG_PATH_YX_SPECIAL_ENABLE_DETAIL          = "pages-purchaser/toExamine/toExamine?id="                       //研选专栏审核详情页面
+	WX_MSG_PATH_YX_SPECIAL_CENTER                 = "pages-purchaser/contentAllPage/contentAllPage?Status=4"        //研选专栏内容中心
+	WX_MSG_PATH_QUESTIONNAIRE_DETAIL              = "pages-purchaser/themeVote/themeVote?id="                       //问卷调查详情页
+	WX_MSG_PATH_MORNING_MEETING_LOG_DETAIL        = "pages-meeting/toExamine/toExamine?LogId="                      //晨会精华模板消息日志跳转详情
 )
 )
 
 
 // 图表类型
 // 图表类型