From 869d20008718d26fcf6d85f4bfe9f7fdbe9db3c5 Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期二, 25 七月 2023 19:39:52 +0800 Subject: [PATCH] fix --- model/request/salesLeads.go | 5 + api/v1/salesLeads.go | 50 ++++++----- model/salesLeads.go | 26 ++++++ service/salesLeads.go | 19 ++-- docs/swagger.yaml | 22 +++++ docs/docs.go | 32 +++++++ docs/swagger.json | 32 +++++++ model/response/response.go | 3 router/salesLeads.go | 4 9 files changed, 153 insertions(+), 40 deletions(-) diff --git a/api/v1/salesLeads.go b/api/v1/salesLeads.go index a71d127..4fc0acb 100644 --- a/api/v1/salesLeads.go +++ b/api/v1/salesLeads.go @@ -99,29 +99,6 @@ ctx.Ok() } -// List -// -// @Tags SalesLeads -// @Summary 鑾峰彇閿�鍞嚎绱㈠垪琛� -// @Produce application/json -// @Success 200 {object} contextx.Response{data=response.SalesLeadsResponse} -// @Router /api/salesLeads/list [post] -func (s *SalesLeadsApi) List(c *gin.Context) { - ctx, ok := contextx.NewContext(c, nil) - if !ok { - return - } - - errCode, salesLeadsList := salesLeadsService.GetSalesLeadsList() - if errCode != ecode.OK { - ctx.Fail(errCode) - return - } - - ctx.OkWithDetailed(response.SalesLeadsResponse{ - List: salesLeadsList, - }) -} func checkSalesLeadsParams(params request.SalesLeads) (errCode int, salesLeads model.SalesLeads) { //if params.Name == "" { @@ -160,3 +137,30 @@ return ecode.OK, salesLeads } + +// List +// +// @Tags SalesLeads +// @Summary 閿�鍞嚎绱㈠垪琛� +// @Produce application/json +// @Param object body request.GetSalesLeadsList true "鍙傛暟" +// @Success 200 {object} contextx.Response{data=response.SalesLeadsResponse} +// @Router /api/salesLeads/list [post] +func (con *SalesLeadsApi) List(c *gin.Context) { + var params request.GetSalesLeadsList + ctx, ok := contextx.NewContext(c, ¶ms) + if !ok { + return + } + + salesLeadss, errCode := salesLeadsService.GetSalesLeadsList(params.Page, params.PageSize, params.Keyword) + if errCode != ecode.OK { + ctx.Fail(errCode) + return + } + + ctx.OkWithDetailed(response.SalesLeadsResponse{ + List: salesLeadss, + Count: len(salesLeadss), + }) +} diff --git a/docs/docs.go b/docs/docs.go index ec37d32..bc4cbff 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -4834,7 +4834,18 @@ "tags": [ "SalesLeads" ], - "summary": "鑾峰彇閿�鍞嚎绱㈠垪琛�", + "summary": "閿�鍞嚎绱㈠垪琛�", + "parameters": [ + { + "description": "鍙傛暟", + "name": "object", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/request.GetSalesLeadsList" + } + } + ], "responses": { "200": { "description": "OK", @@ -9730,6 +9741,22 @@ } } }, + "request.GetSalesLeadsList": { + "type": "object", + "properties": { + "keyword": { + "type": "string" + }, + "page": { + "description": "椤电爜", + "type": "integer" + }, + "pageSize": { + "description": "姣忛〉澶у皬", + "type": "integer" + } + } + }, "request.GetUserList": { "type": "object", "properties": { @@ -12430,6 +12457,9 @@ "response.SalesLeadsResponse": { "type": "object", "properties": { + "count": { + "type": "integer" + }, "list": { "type": "array", "items": { diff --git a/docs/swagger.json b/docs/swagger.json index 90fdfc8..1500782 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -4822,7 +4822,18 @@ "tags": [ "SalesLeads" ], - "summary": "鑾峰彇閿�鍞嚎绱㈠垪琛�", + "summary": "閿�鍞嚎绱㈠垪琛�", + "parameters": [ + { + "description": "鍙傛暟", + "name": "object", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/request.GetSalesLeadsList" + } + } + ], "responses": { "200": { "description": "OK", @@ -9718,6 +9729,22 @@ } } }, + "request.GetSalesLeadsList": { + "type": "object", + "properties": { + "keyword": { + "type": "string" + }, + "page": { + "description": "椤电爜", + "type": "integer" + }, + "pageSize": { + "description": "姣忛〉澶у皬", + "type": "integer" + } + } + }, "request.GetUserList": { "type": "object", "properties": { @@ -12418,6 +12445,9 @@ "response.SalesLeadsResponse": { "type": "object", "properties": { + "count": { + "type": "integer" + }, "list": { "type": "array", "items": { diff --git a/docs/swagger.yaml b/docs/swagger.yaml index eb954b6..4dbfe02 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -1918,6 +1918,17 @@ description: 姣忛〉澶у皬 type: integer type: object + request.GetSalesLeadsList: + properties: + keyword: + type: string + page: + description: 椤电爜 + type: integer + pageSize: + description: 姣忛〉澶у皬 + type: integer + type: object request.GetUserList: properties: keyword: @@ -3724,6 +3735,8 @@ type: object response.SalesLeadsResponse: properties: + count: + type: integer list: items: $ref: '#/definitions/model.SalesLeads' @@ -6781,6 +6794,13 @@ - SalesLeads /api/salesLeads/list: post: + parameters: + - description: 鍙傛暟 + in: body + name: object + required: true + schema: + $ref: '#/definitions/request.GetSalesLeadsList' produces: - application/json responses: @@ -6793,7 +6813,7 @@ data: $ref: '#/definitions/response.SalesLeadsResponse' type: object - summary: 鑾峰彇閿�鍞嚎绱㈠垪琛� + summary: 閿�鍞嚎绱㈠垪琛� tags: - SalesLeads /api/salesLeads/update: diff --git a/model/request/salesLeads.go b/model/request/salesLeads.go index 88cae6b..578feb7 100644 --- a/model/request/salesLeads.go +++ b/model/request/salesLeads.go @@ -20,3 +20,8 @@ Id int `json:"id"` SalesLeads } + +type GetSalesLeadsList struct { + PageInfo + Keyword string `json:"keyword"` +} diff --git a/model/response/response.go b/model/response/response.go index 895fe96..3a75735 100644 --- a/model/response/response.go +++ b/model/response/response.go @@ -88,7 +88,8 @@ } SalesLeadsResponse struct { - List []*model.SalesLeads `json:"list"` + List []*model.SalesLeads `json:"list"` + Count int `json:"count"` } SalesSourceResponse struct { diff --git a/model/salesLeads.go b/model/salesLeads.go index 8ff718f..4c1bad7 100644 --- a/model/salesLeads.go +++ b/model/salesLeads.go @@ -25,7 +25,13 @@ SalesLeadsSearch struct { SalesLeads - Orm *gorm.DB + + Orm *gorm.DB + Keyword string + OrderBy string + PageNum int + PageSize int + } ) @@ -41,6 +47,9 @@ func (slf *SalesLeadsSearch) build() *gorm.DB { var db = slf.Orm.Model(&SalesLeads{}) + if slf.Keyword != "" { + db = db.Where("name LIKE ?", "%"+slf.Keyword+"%") + } if slf.Id != 0 { db = db.Where("id = ?", slf.Id) } @@ -123,3 +132,18 @@ err = db.First(&result).Error return } + +func (slf *SalesLeadsSearch) SetKeyword(keyword string) *SalesLeadsSearch { + slf.Keyword = keyword + return slf +} + +func (slf *SalesLeadsSearch) SetPage(page, size int) *SalesLeadsSearch { + slf.PageNum, slf.PageSize = page, size + return slf +} + +func (slf *SalesLeadsSearch) SetOrder(order string) *SalesLeadsSearch { + slf.OrderBy = order + return slf +} diff --git a/router/salesLeads.go b/router/salesLeads.go index 810e5fc..9e810ef 100644 --- a/router/salesLeads.go +++ b/router/salesLeads.go @@ -14,6 +14,6 @@ salesLeadsRouter.POST("add", salesLeadsApi.Add) // 娣诲姞閿�鍞嚎绱� salesLeadsRouter.DELETE("delete/:id", salesLeadsApi.Delete) // 鍒犻櫎閿�鍞嚎绱� salesLeadsRouter.PUT("update", salesLeadsApi.Update) // 鏇存柊閿�鍞嚎绱� - salesLeadsRouter.GET("list", salesLeadsApi.List) // 鑾峰彇閿�鍞嚎绱㈠垪琛� + salesLeadsRouter.POST("list", salesLeadsApi.List) // 鑾峰彇閿�鍞嚎绱㈠垪琛� } -} +} \ No newline at end of file diff --git a/service/salesLeads.go b/service/salesLeads.go index 3c6caa1..23a8ee5 100644 --- a/service/salesLeads.go +++ b/service/salesLeads.go @@ -30,16 +30,6 @@ return ecode.OK } -func (SalesLeadsService) GetSalesLeadsList() (int, []*model.SalesLeads) { - // get salesLeads list - salesLeadss, err := model.NewSalesLeadsSearch().FindAll() - if err != nil { - return ecode.SalesLeadsListErr, nil - } - - return ecode.OK, salesLeadss -} - func (SalesLeadsService) UpdateSalesLeads(salesLeads *model.SalesLeads) int { // update salesLeads err := model.NewSalesLeadsSearch().SetId(salesLeads.Id).Update(salesLeads) @@ -63,3 +53,12 @@ return ecode.OK } + +func (SalesLeadsService) GetSalesLeadsList(page, pageSize int, keyword string) ([]*model.SalesLeads, int) { + // get contact list + contacts, err := model.NewSalesLeadsSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll() + if err != nil { + return nil, ecode.SalesLeadsListErr + } + return contacts, ecode.OK +} -- Gitblit v1.8.0