yanxuan_special.go 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799
  1. package controllers
  2. import (
  3. "encoding/json"
  4. "hongze/hongze_cygx/models"
  5. "hongze/hongze_cygx/utils"
  6. "time"
  7. )
  8. type YanxuanSpecialController struct {
  9. BaseAuthController
  10. }
  11. // @Title 专栏列表
  12. // @Description 专栏列表
  13. // @Param request body help_doc.AddHelpDocReq true "type json string"
  14. // @Success 200 {object} models.AddEnglishReportResp
  15. // @router /list [get]
  16. func (this *YanxuanSpecialController) List() {
  17. br := new(models.BaseResponse).Init()
  18. defer func() {
  19. this.Data["json"] = br
  20. this.ServeJSON()
  21. }()
  22. sysUser := this.User
  23. if sysUser == nil {
  24. br.Msg = "请登录"
  25. br.ErrMsg = "请登录,SysUser Is Empty"
  26. br.Ret = 408
  27. return
  28. }
  29. userId, _ := this.GetInt("UserId", 0)
  30. var condition string
  31. var pars []interface{}
  32. var specialUser *models.CygxYanxuanSpecialAuthorItem
  33. var err error
  34. if userId > 0 {
  35. condition += ` AND a.user_id = ? `
  36. pars = append(pars, userId)
  37. }
  38. specialUser, err = models.GetYanxuanSpecialAuthor(sysUser.UserId)
  39. if err != nil && err.Error() != utils.ErrNoRow() {
  40. br.Msg = "获取失败"
  41. br.ErrMsg = "获取失败, Err:" + err.Error()
  42. return
  43. }
  44. condition += ` AND a.status = 2 `
  45. list, tmpErr := models.GetYanxuanSpecialList(sysUser.UserId, condition, pars)
  46. if tmpErr != nil {
  47. br.Msg = "获取失败"
  48. br.ErrMsg = "获取失败, Err:" + tmpErr.Error()
  49. return
  50. }
  51. for _, v := range list {
  52. hasImg, err := utils.ArticleHasImgUrl(v.Content)
  53. if err != nil {
  54. return
  55. }
  56. if hasImg {
  57. v.ContentHasImg = 1
  58. }
  59. }
  60. resp := new(models.SpecialListResp)
  61. if specialUser != nil {
  62. resp.IsAuthor = true
  63. }
  64. resp.List = list
  65. br.Data = resp
  66. br.Ret = 200
  67. br.Success = true
  68. br.Msg = "获取成功"
  69. }
  70. // @Title 专栏详情
  71. // @Description 专栏详情
  72. // @Param request body help_doc.AddHelpDocReq true "type json string"
  73. // @Success 200 {object} models.AddEnglishReportResp
  74. // @router /detail [get]
  75. func (this *YanxuanSpecialController) Detail() {
  76. br := new(models.BaseResponse).Init()
  77. defer func() {
  78. this.Data["json"] = br
  79. this.ServeJSON()
  80. }()
  81. sysUser := this.User
  82. if sysUser == nil {
  83. br.Msg = "请登录"
  84. br.ErrMsg = "请登录,SysUser Is Empty"
  85. br.Ret = 408
  86. return
  87. }
  88. specialId, _ := this.GetInt("Id", 0)
  89. if specialId <= 0 {
  90. br.Msg = "参数错误"
  91. br.ErrMsg = "参数错误"
  92. return
  93. }
  94. item, tmpErr := models.GetYanxuanSpecialById(specialId, sysUser.UserId)
  95. if tmpErr != nil {
  96. br.Msg = "获取失败"
  97. br.ErrMsg = "获取失败, Err:" + tmpErr.Error()
  98. return
  99. }
  100. if item.Status != 3 && item.Status != 2 {
  101. br.Msg = "获取失败,专栏未发布"
  102. br.ErrMsg = "获取失败, 专栏未发布"
  103. br.Ret = 200
  104. return
  105. }
  106. br.Data = item
  107. br.Ret = 200
  108. br.Success = true
  109. br.Msg = "获取成功"
  110. }
  111. // @Title 新增保存专栏作者详情
  112. // @Description 新增保存专栏作者详情
  113. // @Param request body help_doc.AddHelpDocReq true "type json string"
  114. // @Success 200 {object} models.AddEnglishReportResp
  115. // @router /author/save [post]
  116. func (this *YanxuanSpecialController) AuthorSave() {
  117. br := new(models.BaseResponse).Init()
  118. defer func() {
  119. this.Data["json"] = br
  120. this.ServeJSON()
  121. }()
  122. sysUser := this.User
  123. if sysUser == nil {
  124. br.Msg = "请登录"
  125. br.ErrMsg = "请登录,SysUser Is Empty"
  126. br.Ret = 408
  127. return
  128. }
  129. var req models.SaveCygxYanxuanSpecialAuthorReq
  130. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  131. if err != nil {
  132. br.Msg = "参数解析异常!"
  133. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  134. return
  135. }
  136. if req.UserId <= 0 {
  137. br.Msg = "用户id有误"
  138. return
  139. }
  140. if req.SpecialName == "" {
  141. br.Msg = "请输入专栏名称"
  142. return
  143. }
  144. if req.NickName == "" {
  145. br.Msg = "请输入昵称"
  146. return
  147. }
  148. item := models.CygxYanxuanSpecialAuthor{
  149. UserId: req.UserId,
  150. SpecialName: req.SpecialName,
  151. Introduction: req.Introduction,
  152. Label: req.Label,
  153. NickName: req.NickName,
  154. CreateTime: time.Now(),
  155. ModifyTime: time.Now(),
  156. BgImg: "",
  157. Status: 1,
  158. }
  159. //if req.Id == 0{
  160. // _, err = models.AddCygxYanxuanSpecialAuthor(&item)
  161. // if err != nil {
  162. // br.Msg = "新增失败"
  163. // br.ErrMsg = "新增失败,Err:" + err.Error()
  164. // return
  165. // }
  166. //} else {
  167. // err = models.UpdateYanxuanSpecialAuthor(&item)
  168. // if err != nil {
  169. // br.Msg = "保存失败"
  170. // br.ErrMsg = "保存失败,Err:" + err.Error()
  171. // return
  172. // }
  173. //}
  174. err = models.UpdateYanxuanSpecialAuthor(&item)
  175. if err != nil {
  176. br.Msg = "保存失败"
  177. br.ErrMsg = "保存失败,Err:" + err.Error()
  178. return
  179. }
  180. br.Ret = 200
  181. br.Success = true
  182. br.Msg = "保存成功"
  183. }
  184. // @Title 新增保存专栏
  185. // @Description 新增保存专栏
  186. // @Param request body help_doc.AddHelpDocReq true "type json string"
  187. // @Success 200 {object} models.AddEnglishReportResp
  188. // @router /save [post]
  189. func (this *YanxuanSpecialController) Save() {
  190. br := new(models.BaseResponse).Init()
  191. defer func() {
  192. this.Data["json"] = br
  193. this.ServeJSON()
  194. }()
  195. sysUser := this.User
  196. if sysUser == nil {
  197. br.Msg = "请登录"
  198. br.ErrMsg = "请登录,SysUser Is Empty"
  199. br.Ret = 408
  200. return
  201. }
  202. var req models.CygxYanxuanSpecialReq
  203. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  204. if err != nil {
  205. br.Msg = "参数解析异常!"
  206. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  207. return
  208. }
  209. if req.Content == "" {
  210. br.Msg = "请输入内容"
  211. return
  212. }
  213. if req.Tags == "" {
  214. br.Msg = "请至少输入一个标签"
  215. return
  216. }
  217. item := models.CygxYanxuanSpecial{
  218. Id: req.Id,
  219. UserId: sysUser.UserId,
  220. CreateTime: time.Now(),
  221. ModifyTime: time.Now(),
  222. PublishTime: time.Now(),
  223. Content: req.Content,
  224. Tags: req.Tags,
  225. ImgUrl: req.ImgUrl,
  226. DocUrl: req.DocUrl,
  227. Title: req.Title,
  228. Type: req.Type,
  229. }
  230. if req.DoType == 1 {
  231. item.Status = 1
  232. } else {
  233. item.Status = 2
  234. }
  235. errCode := models.WxCheckContent(req.Content)
  236. if errCode != 0 {
  237. br.Msg = "文章内容含有违法违规内容"
  238. br.ErrMsg = "文章内容含有违法违规内容"
  239. return
  240. }
  241. if req.Id == 0 {
  242. _, err = models.AddCygxYanxuanSpecial(&item)
  243. if err != nil {
  244. br.Msg = "新增失败"
  245. br.ErrMsg = "新增失败,Err:" + err.Error()
  246. return
  247. }
  248. } else {
  249. err = models.UpdateYanxuanSpecial(&item)
  250. if err != nil {
  251. br.Msg = "保存失败"
  252. br.ErrMsg = "保存失败,Err:" + err.Error()
  253. return
  254. }
  255. }
  256. br.Ret = 200
  257. br.Success = true
  258. br.Msg = "保存成功"
  259. }
  260. // @Title 专栏作者详情
  261. // @Description 专栏作者详情
  262. // @Param request body help_doc.AddHelpDocReq true "type json string"
  263. // @Success 200 {object} models.AddEnglishReportResp
  264. // @router /author/detail [get]
  265. func (this *YanxuanSpecialController) AuthorDetail() {
  266. br := new(models.BaseResponse).Init()
  267. defer func() {
  268. this.Data["json"] = br
  269. this.ServeJSON()
  270. }()
  271. sysUser := this.User
  272. if sysUser == nil {
  273. br.Msg = "请登录"
  274. br.ErrMsg = "请登录,SysUser Is Empty"
  275. br.Ret = 408
  276. return
  277. }
  278. userId, _ := this.GetInt("UserId", 0)
  279. if userId == 0 {
  280. userId = sysUser.UserId
  281. }
  282. item, tmpErr := models.GetYanxuanSpecialAuthor(userId)
  283. if tmpErr != nil && tmpErr.Error() != utils.ErrNoRow() {
  284. br.Msg = "获取失败"
  285. br.ErrMsg = "获取失败, Err:" + tmpErr.Error()
  286. return
  287. }
  288. br.Data = item
  289. br.Ret = 200
  290. br.Success = true
  291. br.Msg = "获取成功"
  292. }
  293. // @Title 审批研选专栏
  294. // @Description 审批研选专栏
  295. // @Param request body help_doc.AddHelpDocReq true "type json string"
  296. // @Success 200 {object} models.AddEnglishReportResp
  297. // @router /enable [post]
  298. func (this *YanxuanSpecialController) Enable() {
  299. br := new(models.BaseResponse).Init()
  300. defer func() {
  301. this.Data["json"] = br
  302. this.ServeJSON()
  303. }()
  304. sysUser := this.User
  305. if sysUser == nil {
  306. br.Msg = "请登录"
  307. br.ErrMsg = "请登录,SysUser Is Empty"
  308. br.Ret = 408
  309. return
  310. }
  311. var req models.EnableCygxYanxuanSpecialReq
  312. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  313. if err != nil {
  314. br.Msg = "参数解析异常!"
  315. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  316. return
  317. }
  318. if req.Id <= 0 {
  319. br.Msg = "文章id错误"
  320. return
  321. }
  322. if req.Status <= 0 {
  323. br.Msg = "参数错误"
  324. return
  325. }
  326. status := 0
  327. if req.Status == 1 {
  328. status = 3
  329. } else {
  330. status = 4
  331. }
  332. if tmpErr := models.EnableYanxuanSpecial(req.Id, status, req.Reason); tmpErr != nil {
  333. br.Msg = "审批失败"
  334. br.ErrMsg = "审批失败, Err:" + tmpErr.Error()
  335. return
  336. }
  337. br.Msg = "审批成功"
  338. br.Ret = 200
  339. br.Success = true
  340. }
  341. // @Title 研选专栏收藏
  342. // @Description 研选专栏收藏
  343. // @Param request body help_doc.AddHelpDocReq true "type json string"
  344. // @Success 200 {object} models.AddEnglishReportResp
  345. // @router /collect [post]
  346. func (this *YanxuanSpecialController) Collect() {
  347. br := new(models.BaseResponse).Init()
  348. defer func() {
  349. this.Data["json"] = br
  350. this.ServeJSON()
  351. }()
  352. sysUser := this.User
  353. if sysUser == nil {
  354. br.Msg = "请登录"
  355. br.ErrMsg = "请登录,SysUser Is Empty"
  356. br.Ret = 408
  357. return
  358. }
  359. var req models.CollectCygxYanxuanSpecialReq
  360. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  361. if err != nil {
  362. br.Msg = "参数解析异常!"
  363. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  364. return
  365. }
  366. if req.Id <= 0 {
  367. br.Msg = "文章id错误"
  368. return
  369. }
  370. if req.Status <= 0 {
  371. br.Msg = "参数错误"
  372. return
  373. }
  374. var sellerName string
  375. sellerName, err = models.GetCompanySellerName(sysUser.CompanyId)
  376. if err != nil {
  377. br.Msg = "报名失败!"
  378. br.ErrMsg = "获取对应销售失败,Err:" + err.Error()
  379. return
  380. }
  381. if req.Status == 1 {
  382. item := models.CygxYanxuanSpecialCollect{
  383. UserId: sysUser.UserId,
  384. Mobile: sysUser.Mobile,
  385. Email: sysUser.Email,
  386. CompanyId: sysUser.CompanyId,
  387. CompanyName: sysUser.CompanyName,
  388. RealName: sysUser.RealName,
  389. SellerName: sellerName,
  390. CreateTime: time.Now(),
  391. ModifyTime: time.Now(),
  392. RegisterPlatform: utils.REGISTER_PLATFORM,
  393. YanxuanSpecialId: req.Id,
  394. }
  395. _, err = models.AddCygxYanxuanSpecialCollect(&item)
  396. if err != nil {
  397. br.Msg = "新增失败"
  398. br.ErrMsg = "新增失败,Err:" + err.Error()
  399. return
  400. }
  401. br.Msg = "收藏成功"
  402. } else {
  403. err = models.DelCygxYanxuanSpecialCollect(sysUser.UserId, req.Id)
  404. if err != nil {
  405. br.Msg = "删除失败"
  406. br.ErrMsg = "删除失败,Err:" + err.Error()
  407. return
  408. }
  409. br.Msg = "取消收藏成功"
  410. }
  411. br.Ret = 200
  412. br.Success = true
  413. }
  414. // @Title 专栏内容中心
  415. // @Description 专栏内容中心
  416. // @Param request body help_doc.AddHelpDocReq true "type json string"
  417. // @Success 200 {object} models.AddEnglishReportResp
  418. // @router /center [get]
  419. func (this *YanxuanSpecialController) Center() {
  420. br := new(models.BaseResponse).Init()
  421. defer func() {
  422. this.Data["json"] = br
  423. this.ServeJSON()
  424. }()
  425. sysUser := this.User
  426. if sysUser == nil {
  427. br.Msg = "请登录"
  428. br.ErrMsg = "请登录,SysUser Is Empty"
  429. br.Ret = 408
  430. return
  431. }
  432. // 1:未发布,2:审核中 3:已发布 4:驳回
  433. status, _ := this.GetInt("Status", 0)
  434. if status <= 0 {
  435. br.Msg = "参数错误"
  436. br.ErrMsg = "参数错误"
  437. return
  438. }
  439. var condition string
  440. var pars []interface{}
  441. condition += ` AND a.user_id = ? `
  442. pars = append(pars, sysUser.UserId)
  443. condition += ` AND a.status = ? `
  444. pars = append(pars, status)
  445. list, tmpErr := models.GetYanxuanSpecialList(sysUser.UserId, condition, pars)
  446. if tmpErr != nil {
  447. br.Msg = "获取失败"
  448. br.ErrMsg = "获取失败, Err:" + tmpErr.Error()
  449. return
  450. }
  451. br.Data = list
  452. br.Ret = 200
  453. br.Success = true
  454. br.Msg = "获取成功"
  455. }
  456. // @Title 专栏点击记录
  457. // @Description 专栏点击记录
  458. // @Param request body models.AddCygxReportSelectionSubjectHistoryReq true "type json string"
  459. // @router /record [post]
  460. func (this *YanxuanSpecialController) Record() {
  461. br := new(models.BaseResponse).Init()
  462. defer func() {
  463. this.Data["json"] = br
  464. this.ServeJSON()
  465. }()
  466. user := this.User
  467. if user == nil {
  468. br.Msg = "请重新登录"
  469. br.Ret = 408
  470. return
  471. }
  472. var req models.AddCygxYanxuanSpecialRecordReq
  473. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  474. if err != nil {
  475. br.Msg = "参数解析异常!"
  476. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  477. return
  478. }
  479. if req.SpecialId <= 0 {
  480. br.Msg = "文章不存在"
  481. br.ErrMsg = "文章不存在,文章ID错误"
  482. return
  483. }
  484. var sellerName string
  485. sellerName, err = models.GetCompanySellerName(user.CompanyId)
  486. if err != nil {
  487. br.Msg = "报名失败!"
  488. br.ErrMsg = "获取对应销售失败,Err:" + err.Error()
  489. return
  490. }
  491. item := models.CygxYanxuanSpecialRecord{
  492. UserId: user.UserId,
  493. Mobile: user.Mobile,
  494. Email: user.Email,
  495. CompanyId: user.CompanyId,
  496. CompanyName: user.CompanyName,
  497. RealName: user.RealName,
  498. SellerName: sellerName,
  499. CreateTime: time.Now(),
  500. ModifyTime: time.Now(),
  501. RegisterPlatform: utils.REGISTER_PLATFORM,
  502. YanxuanSpecialId: req.SpecialId,
  503. }
  504. _, err = models.AddCygxYanxuanSpecialRecord(&item)
  505. if err != nil {
  506. br.Msg = "记录失败"
  507. br.ErrMsg = "记录失败,Err:" + err.Error()
  508. return
  509. }
  510. br.Ret = 200
  511. br.Success = true
  512. br.Msg = "记录成功"
  513. }
  514. // @Title 研选专栏关注
  515. // @Description 研选专栏关注
  516. // @Param request body help_doc.AddHelpDocReq true "type json string"
  517. // @Success 200 {object} models.AddEnglishReportResp
  518. // @router /follow [post]
  519. func (this *YanxuanSpecialController) Follow() {
  520. br := new(models.BaseResponse).Init()
  521. defer func() {
  522. this.Data["json"] = br
  523. this.ServeJSON()
  524. }()
  525. sysUser := this.User
  526. if sysUser == nil {
  527. br.Msg = "请登录"
  528. br.ErrMsg = "请登录,SysUser Is Empty"
  529. br.Ret = 408
  530. return
  531. }
  532. var req models.FollowCygxYanxuanSpecialReq
  533. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  534. if err != nil {
  535. br.Msg = "参数解析异常!"
  536. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  537. return
  538. }
  539. if req.FollowUserId <= 0 {
  540. br.Msg = "被关注的用户id"
  541. return
  542. }
  543. if req.Status <= 0 {
  544. br.Msg = "参数错误"
  545. return
  546. }
  547. var sellerName string
  548. sellerName, err = models.GetCompanySellerName(sysUser.CompanyId)
  549. if err != nil {
  550. br.Msg = "报名失败!"
  551. br.ErrMsg = "获取对应销售失败,Err:" + err.Error()
  552. return
  553. }
  554. if req.Status == 1 {
  555. item := models.CygxYanxuanSpecialFollow{
  556. UserId: sysUser.UserId,
  557. FollowUserId: req.FollowUserId,
  558. Mobile: sysUser.Mobile,
  559. Email: sysUser.Email,
  560. CompanyId: sysUser.CompanyId,
  561. CompanyName: sysUser.CompanyName,
  562. RealName: sysUser.RealName,
  563. SellerName: sellerName,
  564. CreateTime: time.Now(),
  565. ModifyTime: time.Now(),
  566. RegisterPlatform: utils.REGISTER_PLATFORM,
  567. YanxuanSpecialId: req.SpecialId,
  568. }
  569. err = models.AddCygxYanxuanSpecialFollow(&item)
  570. if err != nil {
  571. br.Msg = "新增失败"
  572. br.ErrMsg = "新增失败,Err:" + err.Error()
  573. return
  574. }
  575. br.Msg = "关注成功"
  576. } else {
  577. err = models.DelCygxYanxuanSpecialFollow(sysUser.UserId, req.FollowUserId)
  578. if err != nil {
  579. br.Msg = "删除失败"
  580. br.ErrMsg = "删除失败,Err:" + err.Error()
  581. return
  582. }
  583. br.Msg = "取消关注成功"
  584. }
  585. br.Ret = 200
  586. br.Success = true
  587. }
  588. // @Title 行业标签搜索
  589. // @Description 行业标签搜索
  590. // @Param request body help_doc.AddHelpDocReq true "type json string"
  591. // @Success 200 {object} models.AddEnglishReportResp
  592. // @router /industrySearch [get]
  593. func (this *YanxuanSpecialController) IndustrySearch() {
  594. br := new(models.BaseResponse).Init()
  595. defer func() {
  596. this.Data["json"] = br
  597. this.ServeJSON()
  598. }()
  599. sysUser := this.User
  600. if sysUser == nil {
  601. br.Msg = "请登录"
  602. br.ErrMsg = "请登录,SysUser Is Empty"
  603. br.Ret = 408
  604. return
  605. }
  606. keyword := this.GetString("Keyword")
  607. list, tmpErr := models.GetYanxuanSpecialIndustry(keyword)
  608. if tmpErr != nil {
  609. br.Msg = "获取失败"
  610. br.ErrMsg = "获取失败, Err:" + tmpErr.Error()
  611. return
  612. }
  613. br.Data = list
  614. br.Ret = 200
  615. br.Success = true
  616. br.Msg = "获取成功"
  617. }
  618. // @Title 公司标签搜索
  619. // @Description 公司标签搜索
  620. // @Param request body help_doc.AddHelpDocReq true "type json string"
  621. // @Success 200 {object} models.AddEnglishReportResp
  622. // @router /companySearch [get]
  623. func (this *YanxuanSpecialController) CompanySearch() {
  624. br := new(models.BaseResponse).Init()
  625. defer func() {
  626. this.Data["json"] = br
  627. this.ServeJSON()
  628. }()
  629. sysUser := this.User
  630. if sysUser == nil {
  631. br.Msg = "请登录"
  632. br.ErrMsg = "请登录,SysUser Is Empty"
  633. br.Ret = 408
  634. return
  635. }
  636. keyword := this.GetString("Keyword")
  637. if keyword == "" {
  638. br.Ret = 200
  639. return
  640. }
  641. list, tmpErr := models.GetYanxuanSpecialCompany(keyword)
  642. if tmpErr != nil {
  643. br.Msg = "获取失败"
  644. br.ErrMsg = "获取失败, Err:" + tmpErr.Error()
  645. return
  646. }
  647. br.Data = list
  648. br.Ret = 200
  649. br.Success = true
  650. br.Msg = "获取成功"
  651. }
  652. // @Title 专栏取消发布
  653. // @Description 专栏取消发布
  654. // @Param request body help_doc.AddHelpDocReq true "type json string"
  655. // @Success 200 {object} models.AddEnglishReportResp
  656. // @router /cancel [post]
  657. func (this *YanxuanSpecialController) Cancel() {
  658. br := new(models.BaseResponse).Init()
  659. defer func() {
  660. this.Data["json"] = br
  661. this.ServeJSON()
  662. }()
  663. sysUser := this.User
  664. if sysUser == nil {
  665. br.Msg = "请登录"
  666. br.ErrMsg = "请登录,SysUser Is Empty"
  667. br.Ret = 408
  668. return
  669. }
  670. var req models.CancelPublishCygxYanxuanSpecialReq
  671. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  672. if err != nil {
  673. br.Msg = "参数解析异常!"
  674. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  675. return
  676. }
  677. if req.Id <= 0 {
  678. br.Msg = "文章id错误"
  679. return
  680. }
  681. if tmpErr := models.CancelPublishYanxuanSpecial(req.Id); tmpErr != nil {
  682. br.Msg = "取消发布失败"
  683. br.ErrMsg = "取消发布失败, Err:" + tmpErr.Error()
  684. return
  685. }
  686. br.Msg = "取消发布成功"
  687. br.Ret = 200
  688. br.Success = true
  689. }
  690. // @Title 作者列表
  691. // @Description 作者列表
  692. // @Param request body help_doc.AddHelpDocReq true "type json string"
  693. // @Success 200 {object} models.AddEnglishReportResp
  694. // @router /author/list [get]
  695. func (this *YanxuanSpecialController) AuthorList() {
  696. br := new(models.BaseResponse).Init()
  697. defer func() {
  698. this.Data["json"] = br
  699. this.ServeJSON()
  700. }()
  701. sysUser := this.User
  702. if sysUser == nil {
  703. br.Msg = "请登录"
  704. br.ErrMsg = "请登录,SysUser Is Empty"
  705. br.Ret = 408
  706. return
  707. }
  708. var specialUser *models.CygxYanxuanSpecialAuthorItem
  709. var err error
  710. specialUser, err = models.GetYanxuanSpecialAuthor(sysUser.UserId)
  711. if err != nil && err.Error() != utils.ErrNoRow() {
  712. br.Msg = "获取失败"
  713. br.ErrMsg = "获取失败, Err:" + err.Error()
  714. return
  715. }
  716. list, tmpErr := models.GetYanxuanSpecialAuthorList()
  717. if tmpErr != nil {
  718. br.Msg = "获取失败"
  719. br.ErrMsg = "获取失败, Err:" + tmpErr.Error()
  720. return
  721. }
  722. resp := new(models.SpecialAuthorListResp)
  723. if specialUser != nil {
  724. resp.IsAuthor = true
  725. }
  726. resp.List = list
  727. br.Data = resp
  728. br.Ret = 200
  729. br.Success = true
  730. br.Msg = "获取成功"
  731. }