瀏覽代碼

Merge branch 'cygx_12.7' of http://8.136.199.33:3000/hongze/hongze_cygx into debug

xingzai 1 年之前
父節點
當前提交
c62cf37aab
共有 6 個文件被更改,包括 344 次插入195 次删除
  1. 44 39
      controllers/activity.go
  2. 45 0
      models/article_history_record_newpv.go
  3. 5 0
      models/micro_roadshow.go
  4. 89 40
      services/activity_special.go
  5. 158 98
      services/elastic.go
  6. 3 18
      services/micro_roadshow.go

+ 44 - 39
controllers/activity.go

@@ -2603,24 +2603,29 @@ func (this *ActivityCoAntroller) LabelTypeListV5() {
 	}
 	//研选互动不展示专项产业调研
 	if !isResearch {
+		conditionActivitySpecial := services.ActivityLabelSpecialSql(chartPermissionIds, whichDay, activeState)
 		//查询专项产业调研展示权限 仅对大套餐客户跟永续客户展示
-		if whichDay == "" {
-
-			speciaItem, err := services.GetActivityLabelSpecialList(user, isPower, chartPermissionIds, permissionNameStr)
-			if err != nil {
-				br.Msg = "获取失败"
-				br.ErrMsg = "获取失败,Err:" + err.Error()
-				return
-			}
-			if leftPx > rightPx {
-				speciaItem.Position = 2
-			} else {
-				speciaItem.Position = 1
-			}
-			if len(speciaItem.List) > 0 {
-				itemsNew = append(itemsNew, speciaItem)
-			}
+		//if whichDay == "" {
+		//专项产业调研未开始状态不查询
+		if activeState == "1" {
+			activeState = ""
+		}
+		//speciaItem, err := services.GetActivityLabelSpecialList(user, isPower, chartPermissionIds, permissionNameStr)
+		speciaItem, err := services.GetActivityLabelSpecialList(user, conditionActivitySpecial, activeState)
+		if err != nil {
+			br.Msg = "获取失败"
+			br.ErrMsg = "获取失败,Err:" + err.Error()
+			return
+		}
+		if leftPx > rightPx {
+			speciaItem.Position = 2
+		} else {
+			speciaItem.Position = 1
 		}
+		if len(speciaItem.List) > 0 {
+			itemsNew = append(itemsNew, speciaItem)
+		}
+		//}
 	}
 	//记录用户搜索的筛选条件
 	item := new(models.CygxActivitySearchHistory)
@@ -3404,29 +3409,29 @@ func (this *ActivityCoAntroller) LabelTypeListV6Pc() {
 		list[k].Resource = 1
 	}
 
-	if whichDay == "" {
-		//查询专项产业调研展示权限
-		//var scale string
-		//if companyProduct != nil {
-		//	scale = companyProduct.Scale
-		//}
-		speciaItem, err := services.GetActivityLabelSpecialList(user, isPower, chartPermissionIds, permissionNameStr)
-		if err != nil {
-			br.Msg = "获取失败"
-			br.ErrMsg = "获取失败,Err:" + err.Error()
-			return
-		}
-		if len(speciaItem.List) > 0 {
-			itemList := new(models.ActivityTypeHomePc)
-			itemList.ActivityTypeName = "专项产业调研"
-			itemList.Resource = 2
-			itemList.List = speciaItem.List
-			itemList.ActivityTypeId = 7
-			itemList.OnlineIco = "https://hzstatic.hzinsights.com/static/temp/20220707202207/20220707/0H4md6VgZMuIttggMUnJxgrlayxC.png"
-			itemList.ImgUrlBgPc = "https://hzstatic.hzinsights.com/static/temp/20220707202207/20220707/rFwAM1c4fIMJM0EGoUkUYl25XH9L.png"
-			list = append(list, itemList)
-		}
-	}
+	//if whichDay == "" {
+	//	//查询专项产业调研展示权限
+	//	//var scale string
+	//	//if companyProduct != nil {
+	//	//	scale = companyProduct.Scale
+	//	//}
+	//	speciaItem, err := services.GetActivityLabelSpecialList(user, isPower, chartPermissionIds, permissionNameStr)
+	//	if err != nil {
+	//		br.Msg = "获取失败"
+	//		br.ErrMsg = "获取失败,Err:" + err.Error()
+	//		return
+	//	}
+	//	if len(speciaItem.List) > 0 {
+	//		itemList := new(models.ActivityTypeHomePc)
+	//		itemList.ActivityTypeName = "专项产业调研"
+	//		itemList.Resource = 2
+	//		itemList.List = speciaItem.List
+	//		itemList.ActivityTypeId = 7
+	//		itemList.OnlineIco = "https://hzstatic.hzinsights.com/static/temp/20220707202207/20220707/0H4md6VgZMuIttggMUnJxgrlayxC.png"
+	//		itemList.ImgUrlBgPc = "https://hzstatic.hzinsights.com/static/temp/20220707202207/20220707/rFwAM1c4fIMJM0EGoUkUYl25XH9L.png"
+	//		list = append(list, itemList)
+	//	}
+	//}
 	// 查研观向7.4-活动【新】标签
 	activityIds := make([]int, 0)
 	for _, v := range list {

+ 45 - 0
models/article_history_record_newpv.go

@@ -239,6 +239,40 @@ func GetCygxArticleHistoryRecordByCompanyList(condition string, startSize, pageS
 	return
 }
 
+// 机构阅读记录列表
+func GetCygxArticleHistoryRecordByCompanyListNew(condition string, pars interface{}, startSize, pageSize int) (items []*EsUserInteraction, err error) {
+	o := orm.NewOrm()
+	sql := ` SELECT
+			r.id,
+			art.title,
+			art.article_id,
+			art.article_id_md5,
+			art.publish_date,
+			art.category_name,
+			r.create_time,
+			r.mobile,
+			r.user_id,
+			r.company_name,
+			r.company_id,
+			r.real_name,
+			r.stop_time,
+			ci.article_history_num AS company_article_history_num,
+			ui.article_history_num AS user_article_history_num 
+		FROM
+			cygx_article_history_record_all AS r
+			INNER JOIN cygx_article AS art ON art.article_id = r.article_id
+			LEFT JOIN cygx_company_interaction_num AS ci ON ci.company_id = r.company_id
+			LEFT JOIN cygx_user_interaction_num AS ui ON ui.user_id = r.user_id 
+		WHERE
+			1 = 1 
+			AND r.is_del = 0 ` + condition + ` GROUP BY r.id  `
+	if startSize > 0 || pageSize > 0 {
+		sql += ` LIMIT ` + strconv.Itoa(startSize) + "," + strconv.Itoa(pageSize)
+	}
+	_, err = o.Raw(sql, pars).QueryRows(&items)
+	return
+}
+
 // 获取阅读记录数量
 func GetCygxArticleHistoryCountByCompany(condition string) (count int, err error) {
 	o := orm.NewOrm()
@@ -324,3 +358,14 @@ func GetCygxArticleHistoryRecordNewpvListPv(condition string, pars []interface{}
 	_, err = o.Raw(sql, pars).QueryRows(&items)
 	return
 }
+
+// 获取数量
+func GetCygxArticleHistoryRecordAllCount(condition string, pars []interface{}) (count int, err error) {
+	sqlCount := ` SELECT COUNT(1) AS count  FROM cygx_article_history_record_all  WHERE 1= 1  `
+	if condition != "" {
+		sqlCount += condition
+	}
+	o := orm.NewOrm()
+	err = o.Raw(sqlCount, pars).QueryRow(&count)
+	return
+}

+ 5 - 0
models/micro_roadshow.go

@@ -49,6 +49,7 @@ type MicroRoadShowPageList struct {
 	ResourceUrl         string `description:"链接"`
 	Type                int    `description:"类型: 1-活动音频; 2-活动视频; 3-产业视频; 4-问答系列"`
 	LabelType           int    `description:"标签类型: 1-路演回放; 2-调研反馈; 3-产业视频; 4-问答系列"`
+	ActivityFileType    int    `description:"活动音视频文件类型: 1-路演回放; 2-调研反馈"`
 	PublishTime         string `description:"发布时间"`
 	BackgroundImg       string `description:"背景图"`
 	ShareImg            string `description:"分享封面图"`
@@ -175,6 +176,7 @@ func GetMicroRoadShowVideoPageListV12(startSize, pageSize int, audioAct string,
 			"" AS industry_name,
 			0 AS  industry_id,
 			a.share_img,
+			a.file_type as activity_file_type,
 			a.activity_id 
 		FROM
 			cygx_activity_voice AS a
@@ -200,6 +202,7 @@ func GetMicroRoadShowVideoPageListV12(startSize, pageSize int, audioAct string,
 			"" AS industry_name,
 			0 AS  industry_id,
 			a.share_img,
+			a.file_type as activity_file_type,
 			a.activity_id
 		FROM
 			cygx_activity_video as a
@@ -224,6 +227,7 @@ func GetMicroRoadShowVideoPageListV12(startSize, pageSize int, audioAct string,
 			industry_name,
 			industry_id,
 			share_img_url AS share_img,
+			'' as activity_file_type,
 			"" as  activity_id
 		FROM
 			cygx_micro_roadshow_video  as a
@@ -250,6 +254,7 @@ func GetMicroRoadShowVideoPageListV12(startSize, pageSize int, audioAct string,
 			"" AS industry_name,
 			0 AS  industry_id,
 			a.share_img,
+			'' as activity_file_type,
 			0  as activity_id 
 		FROM
 			cygx_askserie_video AS a WHERE 1= 1 `

+ 89 - 40
services/activity_special.go

@@ -11,9 +11,78 @@ import (
 	"time"
 )
 
-//func init() {
-//	UpdateCygxActivitySpecialSignupNum()
-//}
+func ActivityLabelSpecialSql(chartPermissionIds, whichDay, activeState string) (condition string) {
+
+	//行业名称
+	if len(chartPermissionIds) > 0 {
+		condition += ` AND art.chart_permission_id  IN (` + chartPermissionIds + `)`
+	}
+	if whichDay != "" {
+		var startDate string
+		var endDate string
+		if whichDay == "1" {
+			startDate = time.Now().Format(utils.FormatDate)
+			endDate = startDate
+		} else if whichDay == "2" {
+			startDate = time.Now().AddDate(0, 0, +1).Format(utils.FormatDate)
+			endDate = startDate
+		} else if whichDay == "1,2" || whichDay == "2,1" {
+			startDate = time.Now().Format(utils.FormatDate)
+			endDate = time.Now().AddDate(0, 0, +1).Format(utils.FormatDate)
+		} else if whichDay == "3" {
+			startDate = utils.GetNowWeekMonday().Format(utils.FormatDate)
+			endDate = utils.GetNowWeekSunday().Format(utils.FormatDate)
+		} else if whichDay == "4" {
+			startDate = utils.GetLastWeekMonday().Format(utils.FormatDate)
+			endDate = utils.GetLastWeekSunday().Format(utils.FormatDate)
+		} else if whichDay == "5" {
+			startDate = utils.GetNowMonthFirstDay().Format(utils.FormatDate)
+			endDate = utils.GetNowMonthLastDay().Format(utils.FormatDate)
+		} else if whichDay == "6" {
+			startDate = utils.GetLastMonthFirstDay().Format(utils.FormatDate)
+			endDate = utils.GetLastMonthLastDay().Format(utils.FormatDate)
+		} else if whichDay == "3,4" || whichDay == "4,3" {
+			startDate = utils.GetLastWeekMonday().Format(utils.FormatDate)
+			endDate = utils.GetNowWeekSunday().Format(utils.FormatDate)
+		} else if whichDay == "5,6" || whichDay == "6,5" {
+			startDate = utils.GetLastMonthFirstDay().Format(utils.FormatDate)
+			endDate = utils.GetNowMonthLastDay().Format(utils.FormatDate)
+		} else {
+			startDate = utils.GetNowWeekMonday().Format(utils.FormatDate)
+			endDate = utils.GetNowWeekSunday().Format(utils.FormatDate)
+		}
+		condition += `    AND art.activity_time >= ` + "'" + startDate + " 00:00:00'"
+		condition += ` AND art.activity_time <= ` + "'" + endDate + " 23:59:59'"
+	}
+
+	if activeState == "2" {
+		condition += ` AND art.days > 0  AND art.activity_time <= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+		condition += ` AND art.activity_time_end >= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	}
+
+	if activeState == "3" {
+		condition += ` AND art.days > 0  AND art.activity_time_end <= ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	}
+
+	//if activeState != "3" {
+	//	condition += `  AND art.activity_time_end  > ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	//}
+
+	//if activeState == "" && whichDay == "" {
+	//	condition += ` AND art.activity_time_end > ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	//}
+
+	if whichDay != "" {
+		condition += `  AND art.days > 0  `
+	}
+	condition += `  AND art.label != ''  AND art.is_offline = 0   `
+
+	if activeState == "1" {
+		condition = condition + ` AND art.days > 0    AND art.activity_time_end > ` + "'" + time.Now().Format(utils.FormatDateTime) + " '"
+	}
+
+	return
+}
 
 // ActivityLabelSpecialUserSql 专项产业调研用户权限查询数据预处理
 func ActivityLabelSpecialUserSql(user *models.WxUserItem) (conditionShengji, conditionZhengshi, conditionHangYe string, err error) {
@@ -127,32 +196,25 @@ func UpdateCygxActivitySpecialSignupNum(cont context.Context) (err error) {
 }
 
 // 处理专项调研的展示
-func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPermissionIds, permissionNameStr string) (item *models.ActivityTypeHome, err error) {
+func GetActivityLabelSpecialList(user *models.WxUserItem, conditionActivitySpecial, activeState string) (item *models.ActivityTypeHome, err error) {
 	itemList := new(models.ActivityTypeHome)
 	if user.CompanyId <= 1 {
 		itemList.List = make([]*models.CygxActivityLabelList, 0)
 		item = itemList
 		return
 	}
-	//userType, e := GetSpecialUserType(user)
-	userType, _, e := GetUserType(user.CompanyId)
-	if e != nil {
-		err = errors.New("GetSpecialUserType, Err: " + e.Error())
-		return
-	}
-	if userType == 0 {
-		itemList.List = make([]*models.CygxActivityLabelList, 0)
-		item = itemList
-		return
-	}
 	companyDetail, e := models.GetCompanyDetailByIdGroupTrip(user.CompanyId)
-	if e != nil {
+	if e != nil && e.Error() != utils.ErrNoRow() {
 		err = errors.New("GetCompanyDetailByIdGroupTrip, Err: " + e.Error())
 		return
 	}
+	if companyDetail == nil {
+		return
+	}
 	//如果是永续的就按照普通的权限逻辑来查,如果不是就按照升级的逻辑来查
 	var condition string
 	var conditionUser string
+	//var userType int
 	if companyDetail.Status == "永续" {
 		conditionUser, e = HandleActivityLabelSpecialPermission(user)
 		if e != nil {
@@ -167,26 +229,17 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
 		}
 	}
 	var pars []interface{}
-	condition += ` AND art.publish_status = 1  AND art.label != ''  AND art.is_offline = 0 `
-	//行业名称
-	if isPower == 1 {
-		condition += ` AND art.chart_permission_name  IN (` + permissionNameStr + `) `
-	}
-	if chartPermissionIds != "" {
-		condition += ` AND art.chart_permission_id  IN (` + chartPermissionIds + `) `
-	}
-
+	condition += ` AND art.publish_status = 1  AND art.label != ''  AND art.is_offline = 0 ` + conditionActivitySpecial
+	conditionTrip := condition
+	conditionTripSql := condition
+	conditionNoTrip := condition
+	conditionNoTripSql := condition
 	//condition += conditionUser
 	conditionShengji, conditionZhengshi, conditionHangYe, e := ActivityLabelSpecialUserSql(user)
 	if e != nil {
 		err = errors.New("ActivityLabelSpecialUserSql, Err: " + e.Error())
 		return
 	}
-
-	conditionTrip := condition
-	conditionNoTrip := condition
-	conditionTripSql := condition
-	conditionNoTripSql := condition
 	conditionTrip += ` AND art.days > 0   AND art.activity_time_end  > '` + time.Now().Format(utils.FormatDateTime) + ` '`
 
 	var conditionZhengshiTrip string
@@ -215,17 +268,16 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
 		conditionTrip += conditionHangYeTrip
 	}
 
-	//行业套餐客户勾选项单独处理
-	if userType == 3 {
-		conditionTripSql += `  AND art.chart_permission_name  IN (` + permissionNameStr + `) `
-	}
-
 	conditionTripSql += conditionUser + conditionTrip + `  ORDER BY art.activity_time ASC `
 	specialList, err := models.GetActivityLabelSpecialListAll(conditionTripSql, pars, 0, 80)
 	if err != nil {
 		return
 	}
-	conditionNoTrip += ` AND art.days = 0  `
+	//if len(specialList) < 80 {
+
+	if activeState == "" {
+		conditionNoTrip += ` AND art.days = 0  `
+	}
 	var conditionShengjiNoTrip string
 	var conditionZhengshiNoTrip string
 	var conditionHangYeNoTrip string
@@ -247,10 +299,6 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
 	if conditionHangYe != "" {
 		conditionNoTrip += conditionHangYeNoTrip
 	}
-	//行业套餐客户勾选项单独处理
-	if userType == 3 {
-		conditionNoTripSql += `  AND art.chart_permission_name  IN (` + permissionNameStr + `) `
-	}
 	conditionNoTripSql += conditionUser + conditionNoTrip + ` ORDER BY art.last_updated_time DESC`
 	specialListNotrip, e := models.GetActivityLabelSpecialListAll(conditionNoTripSql, pars, 0, 200)
 	if e != nil {
@@ -262,6 +310,7 @@ func GetActivityLabelSpecialList(user *models.WxUserItem, isPower int, chartPerm
 	}
 	//}
 	for k2, v2 := range specialList {
+		v2.Resource = 2
 		if v2.Days == 0 {
 			specialList[k2].TripStatus = 1
 		} else {

+ 158 - 98
services/elastic.go

@@ -3,6 +3,7 @@ package services
 import (
 	"context"
 	"encoding/json"
+	"errors"
 	"fmt"
 	"github.com/olivere/elastic/v7"
 	"hongze/hongze_cygx/models"
@@ -101,125 +102,184 @@ func CreateIndexNameArticleHistory() {
 	EsCreateIndex(indexName, mappingJson)
 }
 
-// func UpdateWxUserLabel(cont context.Context) (err error) {
+//
+//func init() {
+//	AddAllArticleHistory()
+//}
+
 func AddAllArticleHistory(cont context.Context) (err error) {
+	//func AddAllArticleHistory() (err error) {
 	defer func() {
 		if err != nil {
-			go utils.SendAlarmMsg("同步阅读记录到es失败;Err:"+err.Error(), 2)
-			go utils.SendEmail("同步阅读记录到es失败"+"【"+utils.APPNAME+"】"+time.Now().Format(utils.FormatDateTime), ";Err:"+err.Error(), utils.EmailSendToUsers)
-			utils.FileLog.Info("同步阅读记录到es失败,Err:%s", err.Error())
+			fmt.Println(err)
+			go utils.SendAlarmMsg("同步阅读记录到es失败;AddAllArticleHistory Err:"+err.Error(), 2)
 		}
 	}()
 
+	var pars []interface{}
+	var condition string
+
+	var companyIds []int
+	condition = " AND  product_id = 2  AND STATUS IN ( '正式', '试用', '冻结' ) "
+	list, e := models.GetCompanyProductList(condition, pars)
+	if e != nil {
+		err = errors.New("GetCompanyProductList, Err: " + e.Error())
+		return
+	}
+
+	for _, v := range list {
+		companyIds = append(companyIds, v.CompanyId)
+	}
+
 	var updateUserIds string //更改过的用户ID
 	userIdMap := make(map[int]int)
-	condition := `  AND r.create_time < '` + time.Now().Format(utils.FormatDate) + `' 	AND r.company_id IN (
-					SELECT a.company_id 
-					FROM  company AS a INNER JOIN company_product AS b ON a.company_id = b.company_id 
-					WHERE a.enabled = 1 AND b.STATUS IN ( '正式', '试用', '冻结' )) `
-	totalAll, err := models.GetCygxArticleHistoryCountByCompany(condition)
-	if err != nil {
-		fmt.Println("GetCygxArticleHistoryCountByCompany Err:totalAll", err.Error())
-		return err
+	//condition := `  AND r.create_time < '` + time.Now().Format(utils.FormatDate) + `' 	AND r.company_id IN (
+	//				SELECT a.company_id
+	//				FROM  company AS a INNER JOIN company_product AS b ON a.company_id = b.company_id
+	//				WHERE a.enabled = 1 AND b.STATUS IN ( '正式', '试用', '冻结' )) `
+	//
+	//totalAll, err := models.GetCygxArticleHistoryCountByCompany(condition)
+
+	//获取阅读总数
+	condition = " AND company_id IN (" + utils.GetOrmInReplace(len(companyIds)) + ") AND   is_del = 0  "
+	pars = append(pars, companyIds)
+	totalAll, e := models.GetCygxArticleHistoryRecordAllCount(condition, pars)
+	if e != nil {
+		err = errors.New("GetCygxArticleHistoryRecordAllCount, Err: " + e.Error())
+		return
 	}
+
 	//更改阅读总数
-	err = models.UpdateConfigByCode(strconv.Itoa(totalAll), "company_article_history_num")
-	if err != nil {
-		fmt.Println("UpdateConfigByCode Err:totalAll", err.Error())
-		return err
+	e = models.UpdateConfigByCode(strconv.Itoa(totalAll), "company_article_history_num")
+	if e != nil {
+		err = errors.New("UpdateConfigByCode, Err: " + e.Error())
+		return
 	}
 	//处理前一天新增的数据
-	condition += `  AND r.create_time >='` + time.Now().AddDate(0, 0, -1).Format(utils.FormatDate) + `'`
-	total, err := models.GetCygxArticleHistoryCountByCompany(condition)
+	//condition += `  AND create_time >= ?   AND is_del = 0 `
+	//pars = append(pars, time.Now().AddDate(0, 0, -1).Format(utils.FormatDate))
+	//total, err := models.GetCygxArticleHistoryRecordAllCount(condition, pars)
+	////fmt.Println(total)
+	////return
 	//fmt.Println(total)
-	//return
-	fmt.Println(total)
-	if err != nil {
-		fmt.Println("GetCygxArticleHistoryCountByCompany Err:", err.Error())
-		return err
+	//if err != nil {
+	//	fmt.Println("GetCygxArticleHistoryCountByCompany Err:", err.Error())
+	//	return err
+	//}
+
+	pars = make([]interface{}, 0)
+	condition = `     `
+	condition = " AND r.company_id IN (" + utils.GetOrmInReplace(len(companyIds)) + ") AND   r.is_del = 0  AND r.create_time >= ?   AND r.create_time <= ?  "
+	pars = append(pars, companyIds, time.Now().AddDate(0, 0, -1).Format(utils.FormatDate), time.Now().Format(utils.FormatDate))
+
+	allList, e := models.GetCygxArticleHistoryRecordByCompanyListNew(condition, pars, 0, 0)
+	if e != nil {
+		err = errors.New("GetCygxArticleHistoryRecordByCompanyListNew, Err: " + e.Error())
+		return
 	}
-	for i := 0; i <= total/1000; i++ {
-		allList, err := models.GetCygxArticleHistoryRecordByCompanyList(condition, 1000*i, 1000)
+	fmt.Println(len(allList))
+	//return
+	for k, v := range allList {
+		//fmt.Println(v)
+		fmt.Println(v.Id, "___", k)
+		err := EsAddArticleHistoryData(v)
 		if err != nil {
-			fmt.Println("GetCygxArticleHistoryRecordByCompanyList Err:", err.Error())
-			return err
+			fmt.Println("EsAddOrEditData Err:", err.Error())
+			//return err
 		}
-		for k, v := range allList {
-			fmt.Println(v.Id, "___", k)
-			err := EsAddArticleHistoryData(v)
-			if err != nil {
-				fmt.Println("EsAddOrEditData Err:", err.Error())
-				return err
-			}
-			if _, ok := userIdMap[v.UserId]; !ok {
-				updateUserIds += strconv.Itoa(v.UserId) + ","
-				userIdMap[v.UserId] = v.UserId
-			}
+		if _, ok := userIdMap[v.UserId]; !ok {
+			updateUserIds += strconv.Itoa(v.UserId) + ","
+			userIdMap[v.UserId] = v.UserId
 		}
 	}
+
+	//for i := 0; i <= total/1000; i++ {
+	//	allList, err := models.GetCygxArticleHistoryRecordByCompanyListNew(condition, pars, 1000*i, 1000)
+	//	if err != nil {
+	//		fmt.Println("GetCygxArticleHistoryRecordByCompanyListNew Err:", err.Error())
+	//		return err
+	//	}
+	//	for k, v := range allList {
+	//		fmt.Println(v.Id, "___", k)
+	//		//err := EsAddArticleHistoryData(v)
+	//		//if err != nil {
+	//		//	fmt.Println("EsAddOrEditData Err:", err.Error())
+	//		//	return err
+	//		//}
+	//		//if _, ok := userIdMap[v.UserId]; !ok {
+	//		//	updateUserIds += strconv.Itoa(v.UserId) + ","
+	//		//	userIdMap[v.UserId] = v.UserId
+	//		//}
+	//	}
+	//}
+
+	//return
 	//处理前一天新增的数据 end
 
 	//处理前一天被移动的用户
 
 	startDate := time.Now().AddDate(0, 0, -1).Format(utils.FormatDate)
 	endDate := time.Now().Format(utils.FormatDate)
-	var mobiles string
-	listUpdateUser, err := models.GetWxUserOpLogList(startDate, endDate)
-	if err != nil && err.Error() != utils.ErrNoRow() {
-		return err
+	var mobiles []string
+	listUpdateUser, e := models.GetWxUserOpLogList(startDate, endDate)
+	if e != nil && e.Error() != utils.ErrNoRow() {
+		err = errors.New("GetWxUserOpLogList, Err: " + e.Error())
+		return
 	}
 	if len(listUpdateUser) > 0 {
 		for _, v := range listUpdateUser {
-			mobiles += "'" + v.Mobile + "',"
+			mobiles = append(mobiles, v.Mobile)
 		}
 	}
-	mobiles = strings.TrimRight(mobiles, ",")
-	if mobiles != "" {
-		condition = ` AND r.mobile IN (` + mobiles + `)`
+	//mobiles = strings.TrimRight(mobiles, ",")
+	if len(mobiles) > 0 {
+		pars = make([]interface{}, 0)
+		condition = ` AND r.mobile IN (` + utils.GetOrmInReplace(len(mobiles)) + `)`
+		pars = append(pars, mobiles)
 		//修改用户的阅读记录(es 自动判断,如果有他会修改数据)
-		listUpdatePv, err := models.GetCygxArticleHistoryRecordByCompanyList(condition, 0, 0)
-		if err != nil {
-			fmt.Println("GetArticleHistoryRecordAllByMobileList ,Err" + err.Error())
-			return err
+		listUpdatePv, e := models.GetCygxArticleHistoryRecordByCompanyListNew(condition, pars, 0, 0)
+		if e != nil && e.Error() != utils.ErrNoRow() {
+			err = errors.New("GetCygxArticleHistoryRecordByCompanyListNew,mobilesUpdate Err: " + e.Error())
+			return
 		}
 
 		for _, v := range listUpdatePv {
 			err := EsAddArticleHistoryData(v)
 			if err != nil {
 				fmt.Println("EsAddOrEditData Err:", err.Error())
-				return err
+				//return err
 			}
 		}
 	}
-
 	//处理前一天被移动的用户 end
 
 	//处理前一天被删除的用户
 	{
-		listDeleteUser, err := models.GetWxUserOpLogDeleteList(startDate, endDate)
-		if err != nil && err.Error() != utils.ErrNoRow() {
-			return err
+		listDeleteUser, e := models.GetWxUserOpLogDeleteList(startDate, endDate)
+		if e != nil && e.Error() != utils.ErrNoRow() {
+			err = errors.New("GetWxUserOpLogDeleteList, Err: " + e.Error())
+			return
 		}
-		mobiles = ""
+		var mobilesDel []string
 		if len(listUpdateUser) > 0 {
 			for _, v := range listDeleteUser {
-				mobiles += "'" + v.Mobile + "',"
+				mobilesDel = append(mobilesDel, v.Mobile)
 			}
 		}
-		mobiles = strings.TrimRight(mobiles, ",")
-		if mobiles != "" {
-			condition = ` AND r.mobile IN (` + mobiles + `)`
-			listDeletePv, err := models.GetCygxArticleHistoryRecordByCompanyList(condition, 0, 0)
-			if err != nil {
-				fmt.Println("GetArticleHistoryRecordAllByMobileList ,Err" + err.Error())
-				return err
+		if len(mobilesDel) > 0 {
+			pars = make([]interface{}, 0)
+			condition = ` AND r.mobile IN (` + utils.GetOrmInReplace(len(mobilesDel)) + `)`
+			pars = append(pars, mobilesDel)
+			listDeletePv, e := models.GetCygxArticleHistoryRecordByCompanyListNew(condition, pars, 0, 0)
+			if e != nil && e.Error() != utils.ErrNoRow() {
+				err = errors.New("GetCygxArticleHistoryRecordByCompanyListNew,mobilesDel Err: " + e.Error())
+				return
 			}
-			//fmt.Println("Es 删除")
 			for _, v := range listDeletePv {
 				err := EsDeleteData(utils.IndexNameArticleHistory, strconv.Itoa(v.Id))
 				if err != nil {
-					fmt.Println("EsAddOrEditData Err:", err.Error())
-					return err
+					fmt.Println("EsDeleteData Err:", err.Error())
+					//return err
 				}
 			}
 		}
@@ -227,37 +287,37 @@ func AddAllArticleHistory(cont context.Context) (err error) {
 	//处理前一天被删除的用户 end
 
 	//处理新增的阅读记录的用户阅读数量、机构阅读数量(暂未找到批量修改的方法,后期优化处理 2022.7.11)
-	updateUserIds = strings.TrimRight(updateUserIds, ",")
-	if updateUserIds != "" {
-		condition = `  AND r.create_time >='` + time.Now().AddDate(0, 0, -1).Format(utils.FormatDate) + `' AND r.user_id IN (` + updateUserIds + `)`
-		total, err := models.GetCygxArticleHistoryCountByCompany(condition)
-		//fmt.Println(total)
-		//return
-		fmt.Println(total)
-		if err != nil {
-			fmt.Println("GetCygxArticleHistoryCountByCompany Err:", err.Error())
-			return err
-		}
-		for i := 0; i <= total/1000; i++ {
-			allList, err := models.GetCygxArticleHistoryRecordByCompanyList(condition, 1000*i, 1000)
-			if err != nil {
-				fmt.Println("GetCygxArticleHistoryRecordByCompanyList Err:", err.Error())
-				return err
-			}
-			for k, v := range allList {
-				fmt.Println(v.Id, "___", k)
-				err := EsAddArticleHistoryData(v)
-				if err != nil {
-					fmt.Println("EsAddOrEditData Err:", err.Error())
-					return err
-				}
-				if _, ok := userIdMap[v.UserId]; !ok {
-					updateUserIds += strconv.Itoa(v.UserId) + ","
-					userIdMap[v.UserId] = v.UserId
-				}
-			}
-		}
-	}
+	//updateUserIds = strings.TrimRight(updateUserIds, ",")
+	//if updateUserIds != "" {
+	//	condition = `  AND r.create_time >='` + time.Now().AddDate(0, 0, -1).Format(utils.FormatDate) + `' AND r.user_id IN (` + updateUserIds + `)`
+	//	total, err := models.GetCygxArticleHistoryCountByCompany(condition)
+	//	//fmt.Println(total)
+	//	//return
+	//	fmt.Println(total)
+	//	if err != nil {
+	//		fmt.Println("GetCygxArticleHistoryCountByCompany Err:", err.Error())
+	//		return err
+	//	}
+	//	for i := 0; i <= total/1000; i++ {
+	//		allList, err := models.GetCygxArticleHistoryRecordByCompanyList(condition, 1000*i, 1000)
+	//		if err != nil {
+	//			fmt.Println("GetCygxArticleHistoryRecordByCompanyList Err:", err.Error())
+	//			return err
+	//		}
+	//		for k, v := range allList {
+	//			fmt.Println(v.Id, "___", k)
+	//			err := EsAddArticleHistoryData(v)
+	//			if err != nil {
+	//				fmt.Println("EsAddOrEditData Err:", err.Error())
+	//				return err
+	//			}
+	//			if _, ok := userIdMap[v.UserId]; !ok {
+	//				updateUserIds += strconv.Itoa(v.UserId) + ","
+	//				userIdMap[v.UserId] = v.UserId
+	//			}
+	//		}
+	//	}
+	//}
 	return
 }
 

+ 3 - 18
services/micro_roadshow.go

@@ -394,20 +394,13 @@ func GetMicroRoadShowPageListV12(pageSize, currentIndex, sourceId, tableType int
 		err = errors.New("获取微路演音视频列表失败, Err: " + e.Error())
 		return
 	}
-	var activiiTyIds []int
 	for _, v := range videoList {
 		v.LabelType = v.Type
 		if v.Type == 1 || v.Type == 2 {
-			v.LabelType = 2 // 先将路演回放设置为调研反馈类型,再做处理
-			activiiTyIds = append(activiiTyIds, v.SourceId)
-		}
-	}
-	mapactiviiTyIds := GetActivityLYHFMapByActivityIds(activiiTyIds)
-	for _, v := range videoList {
-		if v.Type == 1 && mapactiviiTyIds[v.SourceId] {
-			v.LabelType = 1 // 处理路演回放
+			v.LabelType = v.ActivityFileType
 		}
 	}
+
 	respList = videoList
 	return
 }
@@ -830,18 +823,10 @@ func GetMicroRoadShowMycollectV12(pageSize, currentIndex int, audioIds, activity
 		}
 	}
 
-	var activiiTyIds []int
 	for _, v := range videoList {
 		v.LabelType = v.Type
 		if v.Type == 1 || v.Type == 2 {
-			v.LabelType = 2 // 先将路演回放设置为调研反馈类型,再做处理
-			activiiTyIds = append(activiiTyIds, v.SourceId)
-		}
-	}
-	mapactiviiTyIds := GetActivityLYHFMapByActivityIds(activiiTyIds)
-	for _, v := range videoList {
-		if v.Type == 1 && mapactiviiTyIds[v.SourceId] {
-			v.LabelType = 1 // 处理路演回放
+			v.LabelType = v.ActivityFileType
 		}
 	}