package backend import ( "PaymentCenter/app/constants/errorcode" "PaymentCenter/app/http/controllers" "PaymentCenter/app/http/entities" "PaymentCenter/app/http/entities/backend" "PaymentCenter/app/models/orderrequestlogmodel" "PaymentCenter/app/models/ordersmodel" "PaymentCenter/app/models/orderthirdpaylogmodel" "PaymentCenter/app/services" "github.com/ahmetb/go-linq/v3" "github.com/gin-gonic/gin" ) func OrderList(c *gin.Context) { req, _ := controllers.GetRequest(c).(*backend.OrderListRequest) filter, err := req.ValidateRequest() if err != nil { controllers.Error(c, errorcode.ParamError, err.Error()) return } orderList, total, code := services.OrderList(filter) result := make([]backend.OrdersResponse, 0, len(orderList)) linq.From(orderList).SelectT(func(in ordersmodel.OrdersBackendList) (out backend.OrdersResponse) { out.ResponseFromDb(in) return }).ToSlice(&result) data := entities.PageRsp{ Total: total, Data: result, } controllers.HandCodeRes(c, data, code) } func OrderLogsList(c *gin.Context) { req, _ := controllers.GetRequest(c).(*backend.OrderLogsListRequest) req.SetDefault() requestLog, thirdLog, code := services.OrderLogsList(*req) requestLogList := make([]backend.OrderRequestLogResponse, 0, len(requestLog)) linq.From(requestLog).SelectT(func(in orderrequestlogmodel.OrderRequestLog) (out backend.OrderRequestLogResponse) { out.ResponseFromDb(in) return }).ToSlice(&requestLogList) thirdLogList := make([]backend.OrderThirdLogResponse, 0, len(thirdLog)) linq.From(thirdLog).SelectT(func(in orderthirdpaylogmodel.OrderThirdPayLog) (out backend.OrderThirdLogResponse) { out.ResponseFromDb(in) return }).ToSlice(&thirdLogList) controllers.HandCodeRes(c, gin.H{ "request_log_list": requestLogList, "third_log_list": thirdLogList, }, code) }