Explorar o código

Merge branch 'cygx/7.6' into debug

hsun %!s(int64=2) %!d(string=hai) anos
pai
achega
364a7dcdd6
Modificáronse 4 ficheiros con 23 adicións e 15 borrados
  1. 2 1
      controllers/micro_roadshow.go
  2. 2 1
      models/micro_roadshow.go
  3. 16 13
      services/micro_roadshow.go
  4. 3 0
      utils/constants.go

+ 2 - 1
controllers/micro_roadshow.go

@@ -81,7 +81,8 @@ func (this *MicroRoadShowController) List() {
 		au.SellerMobile = authInfo.SellerMobile
 		au.HasPermission = authInfo.HasPermission
 		if authInfo.HasPermission == 1 {
-			if !utils.InArrayByStr(permissionArr, list[i].ChartPermissionName) {
+			// 非宏观权限进一步判断是否有权限
+			if list[i].ChartPermissionId != utils.HONG_GUAN_ID && !utils.InArrayByStr(permissionArr, list[i].ChartPermissionName) {
 				au.HasPermission = 2
 			}
 		}

+ 2 - 1
models/micro_roadshow.go

@@ -43,7 +43,8 @@ func GetMicroRoadShowAudioPageList(startSize, pageSize int, condition string, pa
 				a.activity_id
 			FROM
 				cygx_activity_voice AS a
-			JOIN cygx_activity AS b ON a.activity_id = b.activity_id `
+			JOIN cygx_activity AS b ON a.activity_id = b.activity_id
+			WHERE 1 = 1 `
 	if condition != `` {
 		sql += condition
 	}

+ 16 - 13
services/micro_roadshow.go

@@ -47,6 +47,8 @@ func GetMicroRoadShowPageList(pageSize, currentIndex, audioId, videoId int, keyw
 		}
 		var audioCond string
 		var audioPars []interface{}
+		// 活动已发布且已结束
+		audioCond += ` AND b.publish_status = 1 AND b.active_state = 3`
 		if keywords != "" {
 			audioCond += ` AND a.voice_name LIKE ? OR b.label LIKE ?`
 			audioPars = append(audioPars, keywords, keywords)
@@ -83,7 +85,7 @@ func GetMicroRoadShowPageList(pageSize, currentIndex, audioId, videoId int, keyw
 		if currentIndex > 1 {
 			videoStartSize = (currentIndex - 1) * videoPageNum
 		}
-		videoTotal, videoList, e = models.GetMicroRoadShowVideoPageList(videoStartSize, audioPageNum, videoCond, videoPars)
+		videoTotal, videoList, e = models.GetMicroRoadShowVideoPageList(videoStartSize, videoPageNum, videoCond, videoPars)
 	}()
 
 	wg.Wait()
@@ -94,23 +96,23 @@ func GetMicroRoadShowPageList(pageSize, currentIndex, audioId, videoId int, keyw
 	}
 
 	// 按比例组合列表
+	audioNum := 0
+	videoNum := 0
 	audioLen := len(audioList)
 	videoLen := len(videoList)
 	for i := 0; i < sliceNum; i++ {
-		// 音频
-		a := i * audioRatio  // 0 4 8 12
-		oa := a + audioRatio // 4 8 12 16
-		if oa <= audioLen {
-			for k1 := a; k1 < oa; k1++ {
-				respList = append(respList, audioList[k1])
+		// 音频-每次取对应比例的数据直至取完
+		for a := 0; a < audioRatio; a++ {
+			if audioNum < audioLen {
+				respList = append(respList, audioList[audioNum])
+				audioNum += 1
 			}
 		}
 		// 视频
-		b := i * videoRatio  // 0 1 2 3
-		ob := b + videoRatio // 1 2 3 4
-		if ob <= videoLen {
-			for k2 := b; k2 < ob; k2++ {
-				respList = append(respList, videoList[k2])
+		for b := 0; b < videoRatio; b++ {
+			if videoNum < videoLen {
+				respList = append(respList, videoList[videoNum])
+				videoNum += 1
 			}
 		}
 	}
@@ -279,7 +281,8 @@ func GetHomeNewestList(userId, companyId, startSize, pageSize int, condition str
 			au.SellerMobile = authInfo.SellerMobile
 			au.HasPermission = authInfo.HasPermission
 			if authInfo.HasPermission == 1 {
-				if !utils.InArrayByStr(permissionArr, ad.AudioChartPermissionName) {
+				// 非宏观权限进一步判断是否有权限
+				if ad.AudioChartPermissionId != utils.HONG_GUAN_ID && !utils.InArrayByStr(permissionArr, ad.AudioChartPermissionName) {
 					au.HasPermission = 2
 				}
 			}

+ 3 - 0
utils/constants.go

@@ -90,6 +90,8 @@ const (
 	ZHI_ZAO_ID                       int    = 19
 	LINK_WX_EXPLAIN                         = "https://mp.weixin.qq.com/s?__biz=Mzg2OTYzODk0Nw==&mid=2247483662&idx=1&sn=3752df99025189b9d77fe658bfc0edbd&chksm=ce98b742f9ef3e54b49986e647dd951a3aad74f323174b252174e0938c264c0562c8ec455106#rd" //用户阅读数据
 	HZ_COMPANY_ID                    int    = 16                                                                                                                                                                                                 // 弘则公司的ID
+	HONG_GUAN_NAME                   string = "宏观"
+	HONG_GUAN_ID                     int    = 1
 )
 
 const (
@@ -125,6 +127,7 @@ const (
 	COMPANY_PRODUCT_RAI_ID    = 2
 	COMPANY_PRODUCT_RAI_NAME  = "权益"
 )
+
 const (
 	YI_YAO_QI_TA = "https://hzstatic.hzinsights.com/static/temp/20220922202209/20220922/2OQMBFplQE1R3bX1y3obX7JSwSuA.png"
 )