func (c *cAsset) GetComponentList(r *ghttp.Request) {var req *v1.GetComponentListReq if err := r.Parse(&req); err != nil {r.Response.WriteJson(g.Map{"code": 1,"msg": err.Error(),})} filtering := &creativecomponent.GetFiltering{ComponentID: req.ComponentId,ComponentName: req.ComponentName, ComponentTypes: []enum.ComponentType{},Status: []enum.ComponentStatus{},} getRequest := &creativecomponent.GetRequest{AdvertiserID: req.AdvertiserId,Page: req.Page,PageSize: req.PageSize,Filtering: filtering,} res, err := service.Asset().Get(getRequest) if err != nil {r.Response.WriteJson(g.Map{"code": 2,"msg": err.Error(),})} r.Response.WriteJson(res)} 这段代码中GetComponentListReq的过滤条件为type GetComponentListReq struct {g.Meta path:"/get_component_list" tags:"查询组件列表" method:"post" sm:"组件列表"AdvertiserId uint64 json:"advertiser_id" v:"required" dc:"广告主id" Page int json:"page" dc:"页码" PageSize int json:"page_size" dc:"每页数量。默认值20,最新值10,最大值40" ComponentId uint64 json:"component_id" dc:"组件id" ComponentName string json:"component_name" dc:"组件名称" ComponentTypes string json:"component_types" dc:"组件类型" Status string json:"status" dc:"组件审核状态" } creativecomponent.GetRequest的过滤条件为type GetRequest struct { AdvertiserID uint64 json:"advertiser_id,omitempty" Page int json:"page,omitempty" PageSize int json:"page_size,omitempty" Filtering *GetFiltering json:"filtering,omitempty" },GetFiltering的过滤条件为type GetFiltering struct { // ComponentID 组件ID ComponentID uint64 json:"component_id,omitempty" // ComponentName 组件名称。支持模糊查询 ComponentName string json:"component_name,omitempty" // ComponentTypes 组件类型,不传查全部。 ComponentTypes []enum.ComponentType json:"component_types,omitempty" // Status 组件审核状态,不传查全部。 Status []enum.ComponentStatus json:"status,omitempty" }。现在想要把ComponentTypes参数放到[]enum.ComponentType{}中,Status参数放到[]enum.ComponentStatus{}中,使代码能够运行,该怎么做?请详细一点
时间: 2023-07-24 21:14:01 浏览: 77
要将ComponentTypes参数放到[]enum.ComponentType{}中,Status参数放到[]enum.ComponentStatus{}中,你可以进行以下更改:
首先,你需要在GetComponentListReq结构体中将ComponentTypes和Status字段的类型更改为[]enum.ComponentType和[]enum.ComponentStatus,如下所示:
```go
type GetComponentListReq struct {
AdvertiserId uint64 `json:"advertiser_id" v:"required" dc:"广告主id"`
Page int `json:"page" dc:"页码"`
PageSize int `json:"page_size" dc:"每页数量。默认值20,最新值10,最大值40"`
ComponentId uint64 `json:"component_id" dc:"组件id"`
ComponentName string `json:"component_name" dc:"组件名称"`
ComponentTypes []enum.ComponentType `json:"component_types" dc:"组件类型"`
Status []enum.ComponentStatus `json:"status" dc:"组件审核状态"`
}
```
接下来,你需要在GetFiltering结构体中将ComponentTypes和Status字段的类型更改为[]enum.ComponentType和[]enum.ComponentStatus,如下所示:
```go
type GetFiltering struct {
ComponentID uint64 `json:"component_id,omitempty"`
ComponentName string `json:"component_name,omitempty"`
ComponentTypes []enum.ComponentType `json:"component_types,omitempty"`
Status []enum.ComponentStatus `json:"status,omitempty"`
}
```
这样的更改将使代码能够正确地将ComponentTypes参数放到[]enum.ComponentType{}中,Status参数放到[]enum.ComponentStatus{}中。
阅读全文