@ -66,10 +66,16 @@ func (a *ApiMethod) HotNews(c *gin.Context) {
}
}
var list [ ] modelbookimg . GraphicForm
var list [ ] modelbookimg . GraphicForm
gormDb := overall . CONSTANT_DB_IMAGES_TEST . Model ( & modelbookimg . GraphicForm { } ) . Select ( "`g_id`,`g_title`,`g_content`,`g_text_name`,`g_test_url`,`g_physics_path`,`g_add_time`,`g_read`,`g_com_sum`,`g_collection_sum`,`g_likes`,`g_step_on`" )
gormDb := overall . CONSTANT_DB_IMAGES_TEST . Model ( & modelbookimg . GraphicForm { } ) . Select ( "`g_id`,`g_title`,`g_content`,`g_text_name`,`g_test_url`,`g_physics_path`,`g_add_time`,`g_read`,`g_com_sum`,`g_collection_sum`,`g_likes`,`g_step_on`,`g_thumbnail` " )
if requestData . Types == 5 {
if requestData . Types == 5 {
gormDb = gormDb . Where ( "`g_recommend` = 1" )
gormDb = gormDb . Where ( "`g_recommend` = 1" )
}
}
if requestData . GroupId != "" {
gormDb = gormDb . Where ( "`g_parent` = ?" , requestData . GroupId )
}
if requestData . SunGroupId != "" {
gormDb = gormDb . Where ( "`g_parent_sun` = ?" , requestData . SunGroupId )
}
gormDb = gormDb . Where ( "`g_state` = 2" )
gormDb = gormDb . Where ( "`g_state` = 2" )
gormDb = gormDb . Where ( "`g_visit_strat` = 1 OR (`g_visit_strat` = 2 AND `g_bf_id` IN ?) OR (`g_visit_strat` = 3 AND `g_ws_id` IN ?) OR (`g_visit_strat` = 4 AND FIND_IN_SET(?,`g_range`))" , orgAry , workPost , userCont . Id )
gormDb = gormDb . Where ( "`g_visit_strat` = 1 OR (`g_visit_strat` = 2 AND `g_bf_id` IN ?) OR (`g_visit_strat` = 3 AND `g_ws_id` IN ?) OR (`g_visit_strat` = 4 AND FIND_IN_SET(?,`g_range`))" , orgAry , workPost , userCont . Id )
@ -119,7 +125,292 @@ func (a *ApiMethod) HotNews(c *gin.Context) {
sendCont . CollectNumber = v . CollectionSum //collectNumber"`
sendCont . CollectNumber = v . CollectionSum //collectNumber"`
sendCont . LikeNumber = v . Likes //likeNumber"`
sendCont . LikeNumber = v . Likes //likeNumber"`
sendCont . CriticizeNumber = v . StepOn //criticizeNumber"`
sendCont . CriticizeNumber = v . StepOn //criticizeNumber"`
sendCont . Thumbnail = v . Thumbnail
sendCont . Describe = v . Describe
sendList = append ( sendList , sendCont )
sendList = append ( sendList , sendCont )
}
}
publicmethod . ResultList ( 0 , requestData . Page , requestData . PageSize , total , int64 ( len ( sendList ) ) , sendList , c )
publicmethod . ResultList ( 0 , requestData . Page , requestData . PageSize , total , int64 ( len ( sendList ) ) , sendList , c )
}
}
/ *
*
@ 作者 : 秦东
@ 时间 : 2024 - 11 - 0 8 11 : 29 : 11
@ 功能 : 录播图
@ 参数
#
@ 返回值
#
@ 方法原型
#
* /
func ( a * ApiMethod ) HomeCarouselImage ( c * gin . Context ) {
var requestData CarouselImage
err := c . ShouldBindJSON ( & requestData )
if err != nil {
publicmethod . Result ( 10001 , err , c )
return
}
if requestData . Num == 0 {
requestData . Num = 1
}
var list [ ] modelbookimg . GraphicForm
overall . CONSTANT_DB_IMAGES_TEST . Model ( & modelbookimg . GraphicForm { } ) . Select ( "`g_id`,`g_title`,`g_thumbnail`" ) . Where ( "`g_state` = 2 AND `g_thumbnail` <> '' " ) . Limit ( requestData . Num ) . Order ( "`g_add_time` DESC" ) . Find ( & list )
var sendData [ ] SendCarouselImage
for _ , v := range list {
var sendInfo SendCarouselImage
sendInfo . Id = strconv . FormatInt ( v . Id , 10 )
sendInfo . Title = v . Title
sendInfo . Img = v . Thumbnail
sendData = append ( sendData , sendInfo )
}
publicmethod . Result ( 0 , sendData , c )
}
/ *
*
@ 作者 : 秦东
@ 时间 : 2024 - 11 - 11 0 8 : 41 : 54
@ 功能 : 按分类获取新闻信息
@ 参数
#
@ 返回值
#
@ 方法原型
#
* /
func ( a * ApiMethod ) GetHomenNews ( c * gin . Context ) {
var requestData NewsClassInfo
c . ShouldBindJSON ( & requestData )
//获取当前登录人信息
context , _ := c . Get ( overall . MyContJwt )
var userCont modelshr . ManCont
userCont . GetLoginCont ( context )
var sunOrg publicmethod . GetOrgAllParent
sunOrg . GetOrgSonAllId ( userCont . MainDeparment )
sunOrg . Id = append ( sunOrg . Id , userCont . MainDeparment )
//获取知行学院组织架构
// var schoolId []int64
var list [ ] SendNewsInfo
gormDb := overall . CONSTANT_DB_IMAGES_TEST . Model ( & modelbookimg . GraphicForm { } ) . Where ( "`g_state` = 2" )
if requestData . GroupId != "" {
gormDb = gormDb . Where ( "`g_parent` = ?" , requestData . GroupId )
}
if requestData . SunGroupId != "" {
gormDb = gormDb . Where ( "`g_parent_sun` = ?" , requestData . SunGroupId )
}
switch requestData . Types {
case 1 :
gormDb = gormDb . Where ( "`g_recommend` = 1" )
gormDb = gormDb . Order ( "`g_add_time` DESC" )
case 2 : //不推荐
gormDb = gormDb . Where ( "`g_recommend` <> 1" )
gormDb = gormDb . Order ( "`g_add_time` DESC" )
case 3 : //热门
gormDb = gormDb . Order ( "`g_read` DESC" )
gormDb = gormDb . Order ( "`g_com_sum` DESC" )
case 4 : //收藏
gormDb = gormDb . Where ( "`g_collection_sum` > 0" )
gormDb = gormDb . Order ( "`g_collection_sum` DESC" )
case 5 : //点赞
gormDb = gormDb . Where ( "`g_likes` > 0" )
gormDb = gormDb . Order ( "`g_likes` DESC" )
case 6 : //评论
gormDb = gormDb . Where ( "`g_com_sum` > 0" )
gormDb = gormDb . Order ( "`g_com_sum` DESC" )
case 7 : //阅读量
gormDb = gormDb . Order ( "`g_read` DESC" )
default :
gormDb = gormDb . Order ( "`g_add_time` DESC" )
}
// gormDb = gormDb.Where("`g_visit_strat` = 1 OR (`g_visit_strat` = 2 AND `g_bf_id` IN ?) OR (`g_visit_strat` = 3 AND `g_ws_id` IN ?) OR (`g_visit_strat` = 4 AND FIND_IN_SET(?,`g_range`))", orgAry, workPost, userCont.Id)
if requestData . Limit < 1 {
requestData . Limit = 1
}
err := gormDb . Limit ( requestData . Limit ) . Find ( & list ) . Error
if err != nil && len ( list ) < 1 {
publicmethod . Result ( 0 , err , c )
return
}
for i , v := range list {
list [ i ] . IdStr = strconv . FormatInt ( v . Id , 10 )
list [ i ] . CreationTime = publicmethod . UnixTimeToDay ( v . AddTime , 4 )
}
publicmethod . Result ( 0 , list , c )
}
/ *
*
@ 作者 : 秦东
@ 时间 : 2024 - 11 - 11 15 : 23 : 15
@ 功能 : 获取新闻类型分类
@ 参数
#
@ 返回值
#
@ 方法原型
#
* /
func ( a * ApiMethod ) GetNewType ( c * gin . Context ) {
var requestData publicmethod . PublicId
err := c . ShouldBindJSON ( & requestData )
if err != nil {
publicmethod . Result ( 100 , err , c )
return
}
if requestData . Id == "" {
publicmethod . Result ( 1 , err , c , "未知参数!" )
return
}
var list [ ] SendMsgArchives
err = overall . CONSTANT_DB_Master . Where ( "`at_stater` = 1 AND `at_parent_id` = ?" , requestData . Id ) . Order ( "`at_sort` ASC" ) . Find ( & list ) . Error
if err != nil || len ( list ) < 1 {
publicmethod . Result ( 0 , list , c )
return
}
for i , v := range list {
list [ i ] . IdStr = strconv . FormatInt ( v . Id , 10 )
}
publicmethod . Result ( 0 , list , c )
}
/ *
*
@ 作者 : 秦东
@ 时间 : 2024 - 11 - 12 10 : 05 : 02
@ 功能 : 新闻列表资讯
@ 参数
#
@ 返回值
#
@ 方法原型
#
* /
func ( a * ApiMethod ) NewHotNews ( c * gin . Context ) {
var requestData HosNewsParameter
err := c . ShouldBindJSON ( & requestData )
if err != nil {
publicmethod . Result ( 10001 , err , c )
return
}
if requestData . Page == 0 {
requestData . Page = 1
}
if requestData . PageSize == 0 {
requestData . PageSize = 7
}
if requestData . Types == 0 {
requestData . Types = 1
}
context , _ := c . Get ( overall . MyContJwt )
var userCont modelshr . ManCont
userCont . GetLoginCont ( context )
var sunOrg publicmethod . GetOrgAllParent
sunOrg . GetOrgSonAllId ( userCont . MainDeparment )
sunOrg . Id = append ( sunOrg . Id , userCont . MainDeparment )
var orgListInfo [ ] modelshr . OrgContType
overall . CONSTANT_DB_HR . Select ( "`id`,`level`" ) . Where ( "`id` IN ?" , sunOrg . Id ) . Find ( & orgListInfo )
var orgAry [ ] int64
var workPost [ ] int64
for i := 0 ; i < len ( orgListInfo ) ; i ++ {
// var orgType modelshr.OrgContType
// orgType.GetCont(map[string]interface{}{"`id`": orgListInfo[i].OrganizationType}, "`level`")
if orgListInfo [ i ] . Level >= 6 {
workPost = append ( workPost , orgListInfo [ i ] . Id )
} else {
orgAry = append ( orgAry , orgListInfo [ i ] . Id )
}
}
var list [ ] SendNewsInfo
gormDb := overall . CONSTANT_DB_IMAGES_TEST . Model ( & modelbookimg . GraphicForm { } ) . Where ( "`g_state` = 2" )
if requestData . Types == 5 {
gormDb = gormDb . Where ( "`g_recommend` = 1" )
}
if requestData . GroupId != "" {
gormDb = gormDb . Where ( "`g_parent` = ?" , requestData . GroupId )
}
if requestData . SunGroupId != "" {
gormDb = gormDb . Where ( "`g_parent_sun` = ?" , requestData . SunGroupId )
}
gormDb = gormDb . Where ( "`g_visit_strat` = 1 OR (`g_visit_strat` = 2 AND `g_bf_id` IN ?) OR (`g_visit_strat` = 3 AND `g_ws_id` IN ?) OR (`g_visit_strat` = 4 AND FIND_IN_SET(?,`g_range`))" , orgAry , workPost , userCont . Id )
var total int64
totalErr := gormDb . Count ( & total ) . Error
if totalErr != nil {
total = 0
}
gormDb = publicmethod . PageTurningSettings ( gormDb , requestData . Page , requestData . PageSize )
switch requestData . Types {
case 1 :
gormDb = gormDb . Order ( "`g_read` DESC" ) . Order ( "`g_add_time` DESC" )
case 2 :
gormDb = gormDb . Order ( "`g_com_sum` DESC" ) . Order ( "`g_add_time` DESC" )
case 3 :
gormDb = gormDb . Order ( "`g_collection_sum` DESC" ) . Order ( "`g_add_time` DESC" )
case 4 :
gormDb = gormDb . Order ( "`g_likes` DESC" ) . Order ( "`g_add_time` DESC" )
case 5 :
gormDb = gormDb . Order ( "`g_recommend` DESC" ) . Order ( "`g_add_time` DESC" )
case 6 :
gormDb = gormDb . Order ( "`g_step_on` DESC" ) . Order ( "`g_add_time` DESC" )
default :
gormDb = gormDb . Order ( "`g_add_time` DESC" )
}
err = gormDb . Find ( & list ) . Error
if err != nil && len ( list ) < 1 {
publicmethod . Result ( 0 , err , c )
return
}
// var sendList []SendHotNews
// for _, v := range list {
// var sendCont SendHotNews
// sendCont.Id = strconv.FormatInt(v.Id, 10)
// sendCont.Title = v.Title //"title"`
// sendCont.PageInfo = v.Content //"pageInfo"`
// sendCont.FileName = v.TextName //"fileName"`
// sendCont.FileUrl = v.TestUrl //"fileUrl"`
// sendCont.FilePath = v.PhysicsPath //"filePath"`
// sendCont.PageType = 1 //"pagetype"`
// if v.TestUrl != "" {
// sendCont.PageType = 2
// }
// sendCont.Time = publicmethod.UnixTimeToDay(v.AddTime, 24) //"time"`
// sendCont.ReadNumber = v.Read //readNumber"`
// sendCont.CommentNumber = v.ComSum //commentNumber"`
// sendCont.CollectNumber = v.CollectionSum //collectNumber"`
// sendCont.LikeNumber = v.Likes //likeNumber"`
// sendCont.CriticizeNumber = v.StepOn //criticizeNumber"`
// sendCont.Thumbnail = v.Thumbnail
// sendCont.Describe = v.Describe
// sendList = append(sendList, sendCont)
// }
for i , v := range list {
list [ i ] . IdStr = strconv . FormatInt ( v . Id , 10 )
list [ i ] . CreationTime = publicmethod . UnixTimeToDay ( v . AddTime , 4 )
}
publicmethod . ResultList ( 0 , requestData . Page , requestData . PageSize , total , int64 ( len ( list ) ) , list , c )
}