package backend import ( "PaymentCenter/app/http/controllers" "PaymentCenter/app/http/entities" "PaymentCenter/app/http/entities/backend" "PaymentCenter/app/models/merchantmodel" "PaymentCenter/app/services" "github.com/ahmetb/go-linq/v3" "github.com/gin-gonic/gin" ) func MerchantList(c *gin.Context) { req, _ := controllers.GetRequest(c).(*backend.MerchantListRequest) req.SetDefault() req.GroupInfo = controllers.GetAdminUserIncludeUsers(c) merchantList, total, code := services.MerchantList(*req) result := make([]backend.MerchantResponse, 0, len(merchantList)) linq.From(merchantList).SelectT(func(in merchantmodel.Merchant) (out backend.MerchantResponse) { out.ResponseFromDb(in) return }).ToSlice(&result) data := entities.PageRsp{ Total: total, Data: result, } controllers.HandCodeRes(c, data, code) } func MerchantCreate(c *gin.Context) { req, _ := controllers.GetRequest(c).(*backend.MerchantCreateRequest) merchant := req.RequestToDb() code := services.MerchantCreate(&merchant) data := backend.MerchantResponse{} data.ResponseFromDb(merchant) controllers.HandCodeRes(c, data, code) } func MerchantUpdate(c *gin.Context) { req, _ := controllers.GetRequest(c).(*backend.MerchantUpdateRequest) merchant := req.RequestToDb() code := services.MerchantUpdate(&merchant) data := backend.MerchantResponse{} data.ResponseFromDb(merchant) controllers.HandCodeRes(c, data, code) } func MerchantDelete(c *gin.Context) { req, _ := controllers.GetRequest(c).(*entities.IdRequest) code := services.MerchantDelete(*req) controllers.HandCodeRes(c, nil, code) }