stype.go 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. package controller
  2. import (
  3. "fmt"
  4. "github.com/gogf/gf/v2/frame/g"
  5. "github.com/gogf/gf/v2/net/ghttp"
  6. "github.com/gogf/gf/v2/util/gconv"
  7. "jyseo/internal/consts"
  8. "jyseo/internal/service"
  9. "jyseo/utility"
  10. "strings"
  11. )
  12. func STypePageHandler(r *ghttp.Request) {
  13. sType := r.Get("code").String() //地区code
  14. pageNum := r.Get("pageNum", 1).Int() //页码
  15. ////采购意向迁移板块儿 url不变
  16. if sType == "CGYX" && !utility.IsMobile(r.Request.UserAgent()) {
  17. s := r.URL.Path
  18. r.URL.Path = strings.Replace(s, "/stype", "", 1)
  19. SignPageHandler(r)
  20. return
  21. }
  22. sNode := service.JySeoSTypeRoot.GetNodeByCode(sType)
  23. if sNode == nil {
  24. if sType == "CGYX" {
  25. sNode = &service.STypeNode{
  26. Name: "采购意向",
  27. Code: "CGYX",
  28. Id: "06",
  29. SIGN: 0,
  30. }
  31. } else {
  32. service.HtmlRender.NotFound(r)
  33. return
  34. }
  35. }
  36. // 查询数据
  37. var rData *service.ListResp
  38. var tdk *service.TDK
  39. var err error
  40. if sNode.SIGN > 0 { //打标记信息
  41. query := service.NewBiddingQuery().EquipSIGN(sNode.SIGN)
  42. rData, err = query.GetDataPageList(r.Context(), pageNum, 0, consts.BiddingListMaxTotal, "STypePageHandlerSIGN", service.JySeoSIGNRoot.GetData)
  43. if err != nil {
  44. g.Log().Errorf(r.Context(), err.Error())
  45. service.HtmlRender.RenderError(r, fmt.Errorf("获取列表数据异常"))
  46. return
  47. }
  48. tdk = service.JySeoTdk.GetSignTdk(r.Context(), sType)
  49. } else { //基本信息类型
  50. query := service.NewBiddingQuery().EquipSType(sNode)
  51. rData, err = query.GetDataPageList(r.Context(), pageNum, 0, consts.BiddingListMaxTotal, "STypePageHandler", service.JySeoSTypeRoot.GetData)
  52. if err != nil {
  53. g.Log().Errorf(r.Context(), err.Error())
  54. service.HtmlRender.RenderError(r, fmt.Errorf("获取列表数据异常"))
  55. return
  56. }
  57. tdk = service.JySeoTdk.GetSTypeTdk(r.Context(), sType)
  58. }
  59. rNode, nodeList := sNode, sNode.Child //一级分类页面
  60. if sNode.PNode != nil { //二级分类页面
  61. rNode = sNode.PNode
  62. nodeList = sNode.PNode.Child
  63. }
  64. service.HtmlRender.Render(r, "sType_list.html",
  65. g.Map{
  66. "sTypeNode": sNode,
  67. "list": rData.List,
  68. "rNode": rNode,
  69. "nodeList": nodeList,
  70. "tdk": tdk,
  71. "pagination": service.GetLetterPaging(pageNum, gconv.Int(rData.Total), fmt.Sprintf("/list/stype/%s/p%s", sType, "%d")),
  72. },
  73. )
  74. }