|
@@ -31,17 +31,19 @@ func elastic() *es.ESClient {
|
|
|
}
|
|
|
|
|
|
type MediaDTO struct {
|
|
|
- MediaId int `json:"mediaId"`
|
|
|
- AuthorName string `json:"authorName,omitempty"`
|
|
|
- MediaType string `json:"mediaType"`
|
|
|
- Src string `json:"src"`
|
|
|
- MediaName string `json:"mediaName"`
|
|
|
- SourceType string `json:"sourceType"`
|
|
|
- MediaPlaySeconds int `json:"mediaPlaySeconds"`
|
|
|
- PublishedTime string `json:"publishedTime"`
|
|
|
- PermissionIDs string `json:"permissionIds"`
|
|
|
- PermissionNames []string `json:"permissionNames,omitempty"`
|
|
|
- Highlight []string `json:"highlight,omitempty"`
|
|
|
+ MediaId int `json:"mediaId"`
|
|
|
+ AuthorId int `json:"authorId"`
|
|
|
+ AuthorName string `json:"authorName,omitempty"`
|
|
|
+ MediaType string `json:"mediaType"`
|
|
|
+ Src string `json:"src"`
|
|
|
+ MediaName string `json:"mediaName"`
|
|
|
+ SourceType string `json:"sourceType"`
|
|
|
+ MediaPlaySeconds int `json:"-"`
|
|
|
+ MediaPlayMillisSeconds int `json:"mediaPlayMillisSeconds"`
|
|
|
+ PublishedTime string `json:"publishedTime"`
|
|
|
+ PermissionIDs string `json:"permissionIds"`
|
|
|
+ PermissionNames []string `json:"permissionNames,omitempty"`
|
|
|
+ Highlight []string `json:"highlight,omitempty"`
|
|
|
}
|
|
|
|
|
|
func SearchMediaList(mediaType string, key string, from int, size int, max int64) (reports []MediaDTO, err error) {
|
|
@@ -64,6 +66,7 @@ func SearchMediaList(mediaType string, key string, from int, size int, max int64
|
|
|
}
|
|
|
meida.Highlight = content[ESColumn]
|
|
|
meida.PublishedTime = meida.PublishedTime[:10]
|
|
|
+ meida.MediaPlayMillisSeconds = meida.MediaPlaySeconds * 1000
|
|
|
reports = append(reports, meida)
|
|
|
}
|
|
|
return
|
|
@@ -113,6 +116,9 @@ func GetMediaPermissionMappingByPermissionIds(mediaType string, permissionIds []
|
|
|
func GetTotalPageCount(mediaType string) (count int64, latestId int64) {
|
|
|
return mediaDao.GetCountByMediaType(mediaType)
|
|
|
}
|
|
|
+func GetTotalPageCountByAnalystId(mediaType string, analystId int) (count int64, latestId int64) {
|
|
|
+ return mediaDao.GetCountByMediaTypeByAnalystId(mediaType, analystId)
|
|
|
+}
|
|
|
func GetMediaPageByIds(mediaType string, pageInfo page.PageInfo, mediaIds []int) (list []MediaDTO, err error) {
|
|
|
offset := page.StartIndex(pageInfo.Current, pageInfo.PageSize)
|
|
|
medias, err := mediaDao.GetMediaPageByIds(pageInfo.LatestId, pageInfo.PageSize, offset, mediaType, mediaIds)
|
|
@@ -124,20 +130,42 @@ func GetMediaPageByIds(mediaType string, pageInfo page.PageInfo, mediaIds []int)
|
|
|
}
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+func GetMediaPageByAnalystId(mediaType string, pageInfo page.PageInfo, analystId int) (list []MediaDTO, err error) {
|
|
|
+ offset := page.StartIndex(pageInfo.Current, pageInfo.PageSize)
|
|
|
+ medias, err := mediaDao.GetMediaPageByAnalystId(pageInfo.LatestId, pageInfo.PageSize, offset, mediaType, analystId)
|
|
|
+ if err == nil && medias != nil {
|
|
|
+ for _, media := range medias {
|
|
|
+ dto := convertMediaDTO(media)
|
|
|
+ list = append(list, dto)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
func convertMediaDTO(media mediaDao.Media) MediaDTO {
|
|
|
return MediaDTO{
|
|
|
- MediaId: media.Id,
|
|
|
- AuthorName: media.AuthorName,
|
|
|
- MediaType: string(media.MediaType),
|
|
|
- Src: media.Src,
|
|
|
- MediaName: media.MediaName,
|
|
|
- SourceType: media.SourceType,
|
|
|
- MediaPlaySeconds: media.MediaPlaySeconds,
|
|
|
- PermissionIDs: media.PermissionIDs,
|
|
|
- PublishedTime: media.PublishedTime.Format(time.DateOnly),
|
|
|
+ MediaId: media.Id,
|
|
|
+ AuthorId: media.AuthorID,
|
|
|
+ AuthorName: media.AuthorName,
|
|
|
+ MediaType: string(media.MediaType),
|
|
|
+ Src: media.Src,
|
|
|
+ MediaName: media.MediaName,
|
|
|
+ SourceType: media.SourceType,
|
|
|
+ MediaPlaySeconds: media.MediaPlaySeconds,
|
|
|
+ MediaPlayMillisSeconds: media.MediaPlaySeconds * 1000,
|
|
|
+ PermissionIDs: media.PermissionIDs,
|
|
|
+ PublishedTime: media.PublishedTime.Format(time.DateOnly),
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
+func GetMediaById(mediaType string, mediaId int) (mediaDTO MediaDTO, err error) {
|
|
|
+ media, err := mediaDao.GetMediaById(mediaType, mediaId)
|
|
|
+ if err != nil {
|
|
|
+ logger.Error("查询媒体信息失败:%v", err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ mediaDTO = convertMediaDTO(media)
|
|
|
+ return
|
|
|
+}
|
|
|
func GetPermissionsByIds(ids []int) (permissionDTOs []reportService.PermissionDTO, err error) {
|
|
|
return reportService.GetFirstPermissionsByIds(ids)
|
|
|
}
|