driver.go 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. package insider
  2. import (
  3. "Cold_Logistic/internal/pkg/common/codex"
  4. "Cold_Logistic/internal/pkg/common/global"
  5. "Cold_Logistic/internal/server/application/driversrv"
  6. "Cold_Logistic/internal/server/infra/dao"
  7. "github.com/gin-gonic/gin"
  8. "gogs.baozhida.cn/Cold_Logistic_libs/pkg/contrib/core"
  9. "gogs.baozhida.cn/Cold_Logistic_libs/pkg/contrib/errors"
  10. )
  11. // carInfo
  12. // @Tags 司机
  13. // @BasePath /clodLogistic/app/api/v1
  14. // @Summary 车辆信息
  15. // @Success 200 {object} driversrv.DriverCarInfoRespVO "成功响应的结构体"
  16. // @Accept application/json
  17. // @Authorization
  18. // @Router /driver/carInfo [post]
  19. func (api Api) carInfo(c *gin.Context) {
  20. srv := driversrv.NewDriverService(dao.NewDataStore(global.CommonConnectRepoInst.StoreDB))
  21. res, err := srv.DriverCarInfo(c)
  22. if err != nil {
  23. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrQueryFailed, ""))
  24. return
  25. }
  26. core.WriteResponse(c, nil, res)
  27. }
  28. // taskPage
  29. // @Tags 司机
  30. // @BasePath /clodLogistic/app/api/v1
  31. // @Summary 司机任务列表
  32. // @Success 200 {object} swagger.PageListResponse "成功响应的结构体"
  33. // @Param req body swagger.TaskPageReqVO true "请求参数"
  34. // @Accept application/json
  35. // @Authorization
  36. // @Router /driver/taskPage [post]
  37. func (api Api) taskPage(c *gin.Context) {
  38. req := driversrv.TaskPageReqVO{}
  39. if err := c.BindJSON(&req); err != nil {
  40. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrBindJSON, ""))
  41. return
  42. }
  43. if err := req.Validate(); err != nil {
  44. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrParamValidate, ""))
  45. return
  46. }
  47. srv := driversrv.NewDriverService(dao.NewDataStore(global.CommonConnectRepoInst.StoreDB))
  48. res, err := srv.TaskPage(c, req)
  49. if err != nil {
  50. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrQueryFailed, ""))
  51. return
  52. }
  53. core.WriteResponse(c, nil, res)
  54. }
  55. // orderIntoCar
  56. // @Tags 司机
  57. // @BasePath /clodLogistic/app/api/v1
  58. // @Summary 装车
  59. // @Success 200 {object} driversrv.OrderIntoCarRespVO "成功响应的结构体"
  60. // @Param req body driversrv.OrderIntoCarReqVO true "请求参数"
  61. // @Accept application/json
  62. // @Authorization
  63. // @Router /driver/orderIntoCar [post]
  64. func (api Api) orderIntoCar(c *gin.Context) {
  65. req := driversrv.OrderIntoCarReqVO{}
  66. if err := c.ShouldBindJSON(&req); err != nil {
  67. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrBindJSON, ""))
  68. return
  69. }
  70. if err := req.Validate(); err != nil {
  71. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrParamValidate, ""))
  72. return
  73. }
  74. srv := driversrv.NewDriverService(dao.NewDataStore(global.CommonConnectRepoInst.StoreDB))
  75. res, err := srv.OrderIntoCar(c, req)
  76. if err != nil {
  77. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrQueryFailed, ""))
  78. return
  79. }
  80. core.WriteResponse(c, nil, res)
  81. }
  82. func (api Api) scanIntoCar(c *gin.Context) {
  83. req := driversrv.ScanIntoReqVO{}
  84. if err := c.ShouldBindJSON(&req); err != nil {
  85. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrBindJSON, ""))
  86. return
  87. }
  88. if err := req.Validate(); err != nil {
  89. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrParamValidate, ""))
  90. return
  91. }
  92. srv := driversrv.NewDriverService(dao.NewDataStore(global.CommonConnectRepoInst.StoreDB))
  93. res, err := srv.ScanIntoCar(c, req)
  94. if err != nil {
  95. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrQueryFailed, ""))
  96. return
  97. }
  98. core.WriteResponse(c, nil, res)
  99. }
  100. // orderIntoCar
  101. // @Tags 司机
  102. // @BasePath /clodLogistic/app/api/v1
  103. // @Summary 签收
  104. // @Success 200 {object} driversrv.SignReceiptRespVO "成功响应的结构体"
  105. // @Param req body driversrv.ScanIntoReqVO true "请求参数"
  106. // @failure 400 {string} codex.ErrBindJSON "error"
  107. // @Accept application/json
  108. // @Authorization
  109. // @Router /driver/signReceipt [post]
  110. func (api Api) signReceipt(c *gin.Context) {
  111. req := driversrv.ScanIntoReqVO{}
  112. if err := c.ShouldBindJSON(&req); err != nil {
  113. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrBindJSON, ""))
  114. return
  115. }
  116. if err := req.Validate(); err != nil {
  117. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrParamValidate, ""))
  118. return
  119. }
  120. srv := driversrv.NewDriverService(dao.NewDataStore(global.CommonConnectRepoInst.StoreDB))
  121. res, err := srv.SignReceipt(c, req)
  122. if err != nil {
  123. core.WriteErrResponse(c, errors.WithCodeOnce(err, codex.ErrQueryFailed, ""))
  124. return
  125. }
  126. core.WriteResponse(c, nil, res)
  127. }