projects.go 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package v1
  2. import (
  3. "encoding/json"
  4. "sfbase/global"
  5. "sfis/middleware"
  6. "sfis/service"
  7. "sfis/utils"
  8. "github.com/gin-gonic/gin"
  9. "go.uber.org/zap"
  10. )
  11. /**
  12. 项目相关接口服务
  13. */
  14. func ProjectApiRegister(router *gin.Engine) {
  15. routerGroup := router.Group("/sfis/api/v1/")
  16. routerGroup.Use(middleware.TokenAuth())
  17. {
  18. routerGroup.POST("/projectList", getProjectsList)
  19. routerGroup.POST("/projectDetail", getProjectDetail)
  20. routerGroup.POST("/projectListDetail", getProjectsListDetail)
  21. }
  22. }
  23. //获取项目列表接口
  24. func getProjectsList(c *gin.Context) {
  25. productID := c.MustGet("productID").(int)
  26. appID := c.MustGet("appID").(string)
  27. requestIP := c.MustGet("requestIP").(string)
  28. projectName := c.PostForm("project_name")
  29. winner := c.PostForm("winner")
  30. bidTime := c.PostForm("bid_time")
  31. p := gin.H{
  32. "projectName": projectName,
  33. "winner": winner,
  34. "bidTime": bidTime,
  35. }
  36. bs, _ := json.Marshal(p)
  37. param := string(bs)
  38. global.Logger.Info("api getProjectList:", zap.Any("productID:", productID), zap.Any("appID", appID), zap.Any("param:", param))
  39. if projectName != "" || winner != "" {
  40. utils.Check(appID, productID, c, func() ([]map[string]interface{}, int, error) {
  41. return service.ProjectListData(projectName, winner, bidTime, false)
  42. }, param, requestIP)
  43. }
  44. }
  45. //获取项目列表及详情接口
  46. func getProjectsListDetail(c *gin.Context) {
  47. productID := c.MustGet("productID").(int)
  48. appID := c.MustGet("appID").(string)
  49. requestIP := c.MustGet("requestIP").(string)
  50. winner := c.PostForm("winner")
  51. p := gin.H{
  52. "winner": winner,
  53. }
  54. bs, _ := json.Marshal(p)
  55. param := string(bs)
  56. global.Logger.Info("api getProjectList:", zap.Any("productID:", productID), zap.Any("appID", appID), zap.Any("param:", param))
  57. if winner != "" {
  58. utils.Check(appID, productID, c, func() ([]map[string]interface{}, int, error) {
  59. return service.ProjectListData("", winner, "", true)
  60. }, param, requestIP)
  61. }
  62. }
  63. //获取项目详情
  64. func getProjectDetail(c *gin.Context) {
  65. productID := c.MustGet("productID").(int)
  66. appID := c.MustGet("appID").(string)
  67. requestIP := c.MustGet("requestIP").(string)
  68. id := c.PostForm("project_id")
  69. p := gin.H{
  70. "id": id,
  71. }
  72. bs, _ := json.Marshal(p)
  73. param := string(bs)
  74. global.Logger.Info("api getProjectDetail:", zap.Any("productID:", productID), zap.Any("appID", appID), zap.Any("param:", param))
  75. if id != "" {
  76. utils.Check(appID, productID, c, func() ([]map[string]interface{}, int, error) {
  77. return service.ProjectDetailData(id)
  78. }, param, requestIP)
  79. }
  80. /*data := map[string]interface{}{}
  81. if id != "" {
  82. data = service.ProjectDetailData(id)
  83. }*/
  84. }