|
@@ -587,6 +587,63 @@ func GetArticleCollectionList(condition string, userId int) (items []*ArticleCol
|
|
|
return
|
|
|
} //end
|
|
|
|
|
|
+// 资源包研选跟研选专栏的搜索
|
|
|
+//func GetArticleAndYxSpecialList(condition, conditionSpecial string, userId int) (items []*ArticleCollectionResp, err error) {
|
|
|
+// o := orm.NewOrm()
|
|
|
+// sql := `SELECT
|
|
|
+// a.article_id,
|
|
|
+// a.title,
|
|
|
+// date_format( a.publish_date, '%Y-%m-%d' ) AS publish_date,
|
|
|
+// d.nick_name,
|
|
|
+// d.department_id,
|
|
|
+// a.article_type_id,
|
|
|
+// 0 AS is_special,
|
|
|
+// "" AS special_tags,
|
|
|
+// "" AS company_tags,
|
|
|
+// "" AS industry_tags,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_history_record_newpv AS h WHERE h.article_id = a.article_id ) AS pv,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id ) AS collect_num,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id AND user_id = ? ) AS my_collect_num,
|
|
|
+// '' AS special_type,
|
|
|
+// '' AS user_id,
|
|
|
+// '' AS create_time
|
|
|
+// FROM
|
|
|
+// cygx_article AS a
|
|
|
+// INNER JOIN cygx_industrial_article_group_management AS mg ON mg.article_id = a.article_id
|
|
|
+// INNER JOIN cygx_industrial_management AS m ON m.industrial_management_id = mg.industrial_management_id
|
|
|
+// INNER JOIN cygx_article_department AS d ON d.department_id = a.department_id
|
|
|
+// WHERE
|
|
|
+// 1 = 1
|
|
|
+// AND a.publish_status = 1 ` + condition + ` GROUP BY article_id
|
|
|
+// UNION ALL
|
|
|
+// SELECT
|
|
|
+// a.id AS article_id,
|
|
|
+// a.title AS title,
|
|
|
+// date_format( a.publish_time, '%Y-%m-%d' ) AS publish_date,
|
|
|
+// "" AS nick_name,
|
|
|
+// 0 AS department_id,
|
|
|
+// - 1 AS article_type_id,
|
|
|
+// 1 AS is_special,
|
|
|
+// a.tags AS special_tags,
|
|
|
+// a.company_tags,
|
|
|
+// a.industry_tags,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_yanxuan_special_record AS h WHERE h.yanxuan_special_id = a.id ) AS pv,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_yanxuan_special_collect AS ac WHERE ac.yanxuan_special_id = a.id ) AS collect_num,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_yanxuan_special_collect AS ac WHERE ac.yanxuan_special_id = a.id AND user_id = ? ) AS my_collect_num,
|
|
|
+// a.type AS special_type,
|
|
|
+// a.user_id AS user_id,
|
|
|
+// a.create_time AS create_time
|
|
|
+// FROM
|
|
|
+// cygx_yanxuan_special AS a
|
|
|
+// JOIN cygx_yanxuan_special_author AS b ON a.user_id = b.user_id
|
|
|
+// WHERE
|
|
|
+// 1 = 1
|
|
|
+// AND a.STATUS = 3 ` + conditionSpecial + ` ORDER BY publish_date DESC LIMIT 30`
|
|
|
+//
|
|
|
+// _, err = o.Raw(sql, userId, userId).QueryRows(&items)
|
|
|
+// return
|
|
|
+//} //end
|
|
|
+
|
|
|
// 资源包研选跟研选专栏的搜索
|
|
|
func GetArticleAndYxSpecialList(condition, conditionSpecial string, userId int) (items []*ArticleCollectionResp, err error) {
|
|
|
o := orm.NewOrm()
|
|
@@ -598,19 +655,16 @@ func GetArticleAndYxSpecialList(condition, conditionSpecial string, userId int)
|
|
|
d.department_id,
|
|
|
a.article_type_id,
|
|
|
0 AS is_special,
|
|
|
+ 0 AS pv,
|
|
|
+ 0 AS collect_num,
|
|
|
"" AS special_tags,
|
|
|
"" AS company_tags,
|
|
|
"" AS industry_tags,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_history_record_newpv AS h WHERE h.article_id = a.article_id ) AS pv,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id ) AS collect_num,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id AND user_id = ? ) AS my_collect_num,
|
|
|
'' AS special_type,
|
|
|
'' AS user_id,
|
|
|
'' AS create_time
|
|
|
FROM
|
|
|
cygx_article AS a
|
|
|
- INNER JOIN cygx_industrial_article_group_management AS mg ON mg.article_id = a.article_id
|
|
|
- INNER JOIN cygx_industrial_management AS m ON m.industrial_management_id = mg.industrial_management_id
|
|
|
INNER JOIN cygx_article_department AS d ON d.department_id = a.department_id
|
|
|
WHERE
|
|
|
1 = 1
|
|
@@ -624,12 +678,11 @@ func GetArticleAndYxSpecialList(condition, conditionSpecial string, userId int)
|
|
|
0 AS department_id,
|
|
|
- 1 AS article_type_id,
|
|
|
1 AS is_special,
|
|
|
+ a.pv,
|
|
|
+ a.article_collect_num as collect_num,
|
|
|
a.tags AS special_tags,
|
|
|
a.company_tags,
|
|
|
a.industry_tags,
|
|
|
- ( SELECT count( 1 ) FROM cygx_yanxuan_special_record AS h WHERE h.yanxuan_special_id = a.id ) AS pv,
|
|
|
- ( SELECT count( 1 ) FROM cygx_yanxuan_special_collect AS ac WHERE ac.yanxuan_special_id = a.id ) AS collect_num,
|
|
|
- ( SELECT count( 1 ) FROM cygx_yanxuan_special_collect AS ac WHERE ac.yanxuan_special_id = a.id AND user_id = ? ) AS my_collect_num,
|
|
|
a.type AS special_type,
|
|
|
a.user_id AS user_id,
|
|
|
a.create_time AS create_time
|
|
@@ -640,7 +693,7 @@ func GetArticleAndYxSpecialList(condition, conditionSpecial string, userId int)
|
|
|
1 = 1
|
|
|
AND a.STATUS = 3 ` + conditionSpecial + ` ORDER BY publish_date DESC LIMIT 30`
|
|
|
|
|
|
- _, err = o.Raw(sql, userId, userId).QueryRows(&items)
|
|
|
+ _, err = o.Raw(sql).QueryRows(&items)
|
|
|
return
|
|
|
} //end
|
|
|
|
|
@@ -686,6 +739,69 @@ func GetArticleResearchCount(condition string, pars []interface{}, needYanxuanSp
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+//func GetArticleResearchList(condition string, pars []interface{}, startSize, pageSize, userId int, needYanxuanSpecial bool) (items []*ArticleCollectionResp, err error) {
|
|
|
+// o := orm.NewOrm()
|
|
|
+// sql := `SELECT
|
|
|
+// a.article_id,
|
|
|
+// a.title,
|
|
|
+// a.publish_date AS publish_time,
|
|
|
+// a.article_type_id,
|
|
|
+// d.nick_name,
|
|
|
+// d.department_id,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_history_record_newpv AS h WHERE h.article_id = a.article_id ) AS pv,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id ) AS collect_num,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id AND DATE_SUB( CURDATE(), INTERVAL 30 DAY ) <= date( ac.create_time ) ) AS collect_num_order,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id AND user_id = ? ) AS my_collect_num,
|
|
|
+// 0 AS is_special,
|
|
|
+// 0 AS special_type,
|
|
|
+// 0 AS user_id,
|
|
|
+// '' AS company_tags,
|
|
|
+// '' AS industry_tags
|
|
|
+// FROM
|
|
|
+// cygx_article AS a
|
|
|
+// INNER JOIN cygx_industrial_article_group_management AS mg ON mg.article_id = a.article_id
|
|
|
+// INNER JOIN cygx_industrial_management AS m ON m.industrial_management_id = mg.industrial_management_id
|
|
|
+// INNER JOIN cygx_article_department AS d ON d.department_id = a.department_id
|
|
|
+// WHERE
|
|
|
+// 1 = 1 AND a.publish_status = 1
|
|
|
+// `
|
|
|
+// if condition != "" {
|
|
|
+// sql += condition
|
|
|
+// }
|
|
|
+// sql += ` GROUP BY a.article_id `
|
|
|
+// if needYanxuanSpecial {
|
|
|
+// sql += `UNION ALL
|
|
|
+// SELECT
|
|
|
+// a.id AS article_id,
|
|
|
+// a.title AS title,
|
|
|
+// a.publish_time AS publish_time,
|
|
|
+// -1 AS article_type_id,
|
|
|
+// b.nick_name AS nick_name,
|
|
|
+// a.user_id AS department_id,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_yanxuan_special_record AS h WHERE h.yanxuan_special_id = a.id ) AS pv,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_yanxuan_special_collect AS ac WHERE ac.yanxuan_special_id = a.id ) AS collect_num,
|
|
|
+// 0 AS collect_num_order,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_yanxuan_special_collect AS ac WHERE ac.yanxuan_special_id = a.id AND user_id = ? ) AS my_collect_num,
|
|
|
+// 1 AS is_special,
|
|
|
+// a.type AS special_type,
|
|
|
+// a.user_id AS user_id,
|
|
|
+// a.company_tags AS company_tags,
|
|
|
+// a.industry_tags AS industry_tags
|
|
|
+// FROM
|
|
|
+// cygx_yanxuan_special AS a
|
|
|
+// JOIN cygx_yanxuan_special_author AS b ON a.user_id = b.user_id
|
|
|
+// WHERE
|
|
|
+// 1 = 1 AND a.status = 3 `
|
|
|
+// sql += ` ORDER BY publish_time DESC LIMIT ?,? `
|
|
|
+// _, err = o.Raw(sql, userId, userId, pars, startSize, pageSize).QueryRows(&items)
|
|
|
+// } else {
|
|
|
+// sql += ` ORDER BY publish_time DESC LIMIT ?,? `
|
|
|
+// _, err = o.Raw(sql, userId, pars, startSize, pageSize).QueryRows(&items)
|
|
|
+// }
|
|
|
+//
|
|
|
+// return
|
|
|
+//}
|
|
|
+
|
|
|
func GetArticleResearchList(condition string, pars []interface{}, startSize, pageSize, userId int, needYanxuanSpecial bool) (items []*ArticleCollectionResp, err error) {
|
|
|
o := orm.NewOrm()
|
|
|
sql := `SELECT
|
|
@@ -695,10 +811,6 @@ func GetArticleResearchList(condition string, pars []interface{}, startSize, pag
|
|
|
a.article_type_id,
|
|
|
d.nick_name,
|
|
|
d.department_id,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_history_record_newpv AS h WHERE h.article_id = a.article_id ) AS pv,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id ) AS collect_num,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id AND DATE_SUB( CURDATE(), INTERVAL 30 DAY ) <= date( ac.create_time ) ) AS collect_num_order,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id AND user_id = ? ) AS my_collect_num,
|
|
|
0 AS is_special,
|
|
|
0 AS special_type,
|
|
|
0 AS user_id,
|
|
@@ -706,8 +818,6 @@ func GetArticleResearchList(condition string, pars []interface{}, startSize, pag
|
|
|
'' AS industry_tags
|
|
|
FROM
|
|
|
cygx_article AS a
|
|
|
- INNER JOIN cygx_industrial_article_group_management AS mg ON mg.article_id = a.article_id
|
|
|
- INNER JOIN cygx_industrial_management AS m ON m.industrial_management_id = mg.industrial_management_id
|
|
|
INNER JOIN cygx_article_department AS d ON d.department_id = a.department_id
|
|
|
WHERE
|
|
|
1 = 1 AND a.publish_status = 1
|
|
@@ -725,10 +835,6 @@ func GetArticleResearchList(condition string, pars []interface{}, startSize, pag
|
|
|
-1 AS article_type_id,
|
|
|
b.nick_name AS nick_name,
|
|
|
a.user_id AS department_id,
|
|
|
- ( SELECT count( 1 ) FROM cygx_yanxuan_special_record AS h WHERE h.yanxuan_special_id = a.id ) AS pv,
|
|
|
- ( SELECT count( 1 ) FROM cygx_yanxuan_special_collect AS ac WHERE ac.yanxuan_special_id = a.id ) AS collect_num,
|
|
|
- 0 AS collect_num_order,
|
|
|
- ( SELECT count( 1 ) FROM cygx_yanxuan_special_collect AS ac WHERE ac.yanxuan_special_id = a.id AND user_id = ? ) AS my_collect_num,
|
|
|
1 AS is_special,
|
|
|
a.type AS special_type,
|
|
|
a.user_id AS user_id,
|
|
@@ -740,10 +846,10 @@ func GetArticleResearchList(condition string, pars []interface{}, startSize, pag
|
|
|
WHERE
|
|
|
1 = 1 AND a.status = 3 `
|
|
|
sql += ` ORDER BY publish_time DESC LIMIT ?,? `
|
|
|
- _, err = o.Raw(sql, userId, userId, pars, startSize, pageSize).QueryRows(&items)
|
|
|
+ _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
|
|
|
} else {
|
|
|
sql += ` ORDER BY publish_time DESC LIMIT ?,? `
|
|
|
- _, err = o.Raw(sql, userId, pars, startSize, pageSize).QueryRows(&items)
|
|
|
+ _, err = o.Raw(sql, pars, startSize, pageSize).QueryRows(&items)
|
|
|
}
|
|
|
|
|
|
return
|
|
@@ -1055,6 +1161,31 @@ type ReoprtSearchResp struct {
|
|
|
ListHz []*ArticleCollectionResp `description:"弘则报告"`
|
|
|
}
|
|
|
|
|
|
+//// 列表
|
|
|
+//func GetReoprtSearchList(condition string, userId int) (items []*ArticleCollectionResp, err error) {
|
|
|
+// o := orm.NewOrm()
|
|
|
+// sql := `SELECT
|
|
|
+// a.article_id,
|
|
|
+// a.title,
|
|
|
+// date_format( a.publish_date, '%Y-%m-%d' ) AS publish_date,
|
|
|
+// m.industry_name,
|
|
|
+// m.industrial_management_id,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_history_record_newpv AS h WHERE h.article_id = a.article_id ) AS pv,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id ) AS collect_num,
|
|
|
+// ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id AND user_id = ?) AS my_collect_num
|
|
|
+// FROM
|
|
|
+// cygx_article AS a
|
|
|
+// LEFT JOIN cygx_industrial_article_group_management AS mg ON mg.article_id = a.article_id
|
|
|
+// LEFT JOIN cygx_industrial_management AS m ON m.industrial_management_id = mg.industrial_management_id
|
|
|
+// WHERE
|
|
|
+// 1 = 1 `
|
|
|
+// if condition != "" {
|
|
|
+// sql += condition
|
|
|
+// }
|
|
|
+// _, err = o.Raw(sql, userId).QueryRows(&items)
|
|
|
+// return
|
|
|
+//} //end
|
|
|
+
|
|
|
// 列表
|
|
|
func GetReoprtSearchList(condition string, userId int) (items []*ArticleCollectionResp, err error) {
|
|
|
o := orm.NewOrm()
|
|
@@ -1063,10 +1194,7 @@ func GetReoprtSearchList(condition string, userId int) (items []*ArticleCollecti
|
|
|
a.title,
|
|
|
date_format( a.publish_date, '%Y-%m-%d' ) AS publish_date,
|
|
|
m.industry_name,
|
|
|
- m.industrial_management_id,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_history_record_newpv AS h WHERE h.article_id = a.article_id ) AS pv,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id ) AS collect_num,
|
|
|
- ( SELECT count( 1 ) FROM cygx_article_collect AS ac WHERE ac.article_id = a.article_id AND user_id = ?) AS my_collect_num
|
|
|
+ m.industrial_management_id
|
|
|
FROM
|
|
|
cygx_article AS a
|
|
|
LEFT JOIN cygx_industrial_article_group_management AS mg ON mg.article_id = a.article_id
|
|
@@ -1076,7 +1204,7 @@ func GetReoprtSearchList(condition string, userId int) (items []*ArticleCollecti
|
|
|
if condition != "" {
|
|
|
sql += condition
|
|
|
}
|
|
|
- _, err = o.Raw(sql, userId).QueryRows(&items)
|
|
|
+ _, err = o.Raw(sql).QueryRows(&items)
|
|
|
return
|
|
|
} //end
|
|
|
|