router.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. package api
  2. import (
  3. "box-cost/db/repo"
  4. "fmt"
  5. "github.com/gin-gonic/gin"
  6. )
  7. // RegRouters 注册路由
  8. func RegRouters(svc *Service) {
  9. boxcost := svc.NewGinRouter("/" + svc.Conf.Name)
  10. boxcost.group.Use(Logger())
  11. //数据存储
  12. boxcost.POST("/save/policy", ServiceObsUploadPolicy)
  13. boxcost.GET("/printr", Printr)
  14. // 材料管理
  15. Material(boxcost)
  16. // 工艺管理
  17. Craft(boxcost)
  18. // 供应商管理
  19. Supplier(boxcost)
  20. // 供应商价格管理
  21. SupplierPrice(boxcost)
  22. // 包装管理
  23. Pack(boxcost)
  24. // 生产计划管理
  25. ProductPlan(boxcost)
  26. //材料采购单据管理
  27. Bill(boxcost)
  28. //加工单据
  29. BillProduce(boxcost)
  30. //成品采购
  31. BillProduct(boxcost)
  32. //设置
  33. Setting(boxcost)
  34. // 签名管理
  35. Signature(boxcost)
  36. // 统计报表
  37. Report(boxcost)
  38. // 成品采购管理
  39. Product(boxcost)
  40. // 计划汇总
  41. Summary(boxcost)
  42. boxcost.GET("/apk/version", func(c *gin.Context, apictx *ApiSession) (interface{}, error) {
  43. out, err := repo.RepoPageSearch(apictx.CreateRepoCtx(), &repo.PageSearchOptions{
  44. CollectName: "versions",
  45. Page: 1,
  46. Size: 10,
  47. Sort: repo.Map{"releaseDate": -1},
  48. })
  49. c.JSON(200, out.List)
  50. return nil, err
  51. })
  52. }
  53. func Logger() gin.HandlerFunc {
  54. return func(c *gin.Context) {
  55. // 开始时间
  56. // start := time.Now()
  57. // 处理请求
  58. c.Next()
  59. // 结束时间
  60. // end := time.Now()
  61. //执行时间
  62. // latency := end.Sub(start)
  63. path := c.Request.URL.Path
  64. clientIP := c.ClientIP()
  65. // method := c.Request.Method
  66. // statusCode := c.Writer.Status()
  67. out := fmt.Sprintf("%15s=> %s", clientIP, path)
  68. fmt.Println(out)
  69. }
  70. }