Files
platforms/backend/api/internal/routers/delivery.go

106 lines
5.2 KiB
Go
Raw Normal View History

package routers
import (
"fmt"
sdkmiddleware "git.apinb.com/bsm-sdk/core/middleware"
deliverylogic "git.apinb.com/heqiapp/platforms/backend/api/internal/logic/delivery"
"github.com/gin-gonic/gin"
)
func RegisterDelivery(serviceKey string, engine *gin.Engine) {
basePath := fmt.Sprintf("/%s/delivery/v1", serviceKey)
anonymous := engine.Group(basePath)
anonymous.POST("/auth/login", deliverylogic.Login)
protected := engine.Group(basePath)
protected.Use(sdkmiddleware.JwtAuth(true))
protected.Use(deliverylogic.RequireDeliveryAdmin())
protected.GET("/auth/profile", deliverylogic.CurrentProfile)
protected.PUT("/auth/password", deliverylogic.ChangePassword)
protected.GET("/delivery_menu", deliverylogic.ListMenu)
protected.GET("/invitation/qrcode", deliverylogic.InvitationQRCode)
protected.GET("/dashboard/overview", deliverylogic.Dashboard)
protected.GET("/dashboard/reports", deliverylogic.DashboardReport)
protected.GET("/delivery_profile", deliverylogic.ListProfile)
staff := protected.Group("/staff_account")
staff.GET("", deliverylogic.ListStaff)
staff.POST("", deliverylogic.CreateStaff)
staff.GET("/:identity", deliverylogic.GetStaff)
staff.PUT("/:identity", deliverylogic.UpdateStaff)
staff.PUT("/:identity/password", deliverylogic.ResetStaffPassword)
staff.PATCH("/:identity/status", deliverylogic.UpdateStaffStatus)
staff.DELETE("/:identity", deliverylogic.ArchiveStaff)
credential := protected.Group("/staff_credential")
credential.GET("", deliverylogic.ListCredential)
credential.POST("", deliverylogic.CreateCredential)
credential.GET("/:identity", deliverylogic.GetCredential)
credential.PUT("/:identity", deliverylogic.UpdateCredential)
credential.PATCH("/:identity/status", deliverylogic.UpdateCredentialStatus)
credential.DELETE("/:identity", deliverylogic.ArchiveCredential)
user := protected.Group("/user_account")
user.GET("", deliverylogic.ListUser)
user.POST("", deliverylogic.CreateUser)
user.GET("/:identity", deliverylogic.GetUser)
user.PUT("/:identity", deliverylogic.UpdateUser)
user.PUT("/:identity/password", deliverylogic.ResetUserPassword)
user.PATCH("/:identity/status", deliverylogic.UpdateUserStatus)
user.DELETE("/:identity", deliverylogic.ArchiveUser)
address := protected.Group("/user_address")
address.GET("", deliverylogic.ListAddress)
address.POST("", deliverylogic.CreateAddress)
address.GET("/:identity", deliverylogic.GetAddress)
address.PUT("/:identity", deliverylogic.UpdateAddress)
address.PATCH("/:identity/status", deliverylogic.UpdateAddressStatus)
address.DELETE("/:identity", deliverylogic.ArchiveAddress)
contract := protected.Group("/gasorder_contract")
contract.GET("", deliverylogic.ListContract)
contract.POST("", deliverylogic.CreateContract)
contract.GET("/:identity", deliverylogic.GetContract)
contract.PUT("/:identity", deliverylogic.UpdateContract)
contract.POST("/:identity/activate", deliverylogic.ActivateContract)
contract.POST("/:identity/renew", deliverylogic.RenewContract)
contract.POST("/:identity/terminate", deliverylogic.TerminateContract)
product := protected.Group("/gasorder_contract_product")
product.GET("", deliverylogic.ListContractProduct)
product.POST("", deliverylogic.BindContractProduct)
product.GET("/:identity", deliverylogic.GetContractProduct)
product.POST("/:identity/unbind", deliverylogic.UnbindContractProduct)
protected.GET("/gasorder_contract_revision", deliverylogic.ListContractRevision)
protected.GET("/gasorder_contract_revision/:identity", deliverylogic.GetContractRevision)
protected.GET("/product_info", deliverylogic.ListProductCandidate)
protected.GET("/product_info/:identity", deliverylogic.GetProductCandidate)
order := protected.Group("/gasorder_basic")
order.GET("", deliverylogic.ListOrder)
order.POST("", deliverylogic.CreateOrder)
order.GET("/:identity", deliverylogic.GetOrder)
order.POST("/:identity/assign", deliverylogic.AssignOrder)
order.POST("/:identity/reclaim", deliverylogic.ReclaimOrder)
order.POST("/:identity/adjust-amount", deliverylogic.AdjustOrderAmount)
order.POST("/:identity/exception", deliverylogic.OrderException)
order.POST("/:identity/recover", deliverylogic.OrderRecover)
order.POST("/:identity/cancel", deliverylogic.OrderCancel)
protected.GET("/wallet_basic", deliverylogic.ListWallet)
protected.GET("/wallet_basic/:identity", deliverylogic.GetWallet)
protected.POST("/wallet_basic/recharge", deliverylogic.Recharge)
protected.POST("/wallet_recharge", deliverylogic.Recharge)
protected.GET("/wallet_bank", deliverylogic.ListBank)
protected.GET("/wallet_bank/:identity", deliverylogic.GetBank)
protected.GET("/wallet_payment", deliverylogic.ListPayment)
protected.GET("/wallet_payment/:identity", deliverylogic.GetPayment)
protected.GET("/wallet_record", deliverylogic.ListRecord)
protected.GET("/wallet_record/:identity", deliverylogic.GetRecord)
protected.GET("/wallet_refund", deliverylogic.ListRefund)
protected.GET("/wallet_refund/:identity", deliverylogic.GetRefund)
protected.GET("/wallet_apply_cash", deliverylogic.ListApplyCash)
protected.POST("/wallet_apply_cash", deliverylogic.CreateApplyCash)
protected.GET("/wallet_apply_cash/:identity", deliverylogic.GetApplyCash)
protected.GET("/fin_settlement", deliverylogic.ListSettlement)
protected.GET("/fin_settlement/:identity", deliverylogic.GetSettlement)
}