fix(niki): add benefactor_id filter to avoid getting all kindboxes

This commit is contained in:
Erfan Mohammadi 2024-11-01 19:26:13 +03:30
parent 0e92213d2e
commit 3dd67e0f83
4 changed files with 167 additions and 7 deletions

View File

@ -19,7 +19,7 @@ import (
// @Accept json
// @Produce json
// @Param id path int true "Benefactor ID"
// @Success 200 {object} param.GetBenefactorByIDResponse
// @Success 200 {object} BenefactorAggregatedResponse
// @Failure 400 {string} "Bad request"
// @Failure 401 {string} "invalid or expired jwt"
// @Failure 403 {string} "user not allowed"
@ -58,6 +58,9 @@ func (h Handler) GetBenefactor(c echo.Context) error {
Field: "created_at",
Direction: params.DescSortDirection,
},
Filter: map[string]any{
"benefactor_id": bnf.Data.ID,
},
})
if err != nil {
msg, code := httpmsg.Error(err)
@ -74,6 +77,9 @@ func (h Handler) GetBenefactor(c echo.Context) error {
Field: "created_at",
Direction: params.DescSortDirection,
},
Filter: map[string]any{
"benefactor_id": bnf.Data.ID,
},
})
if err != nil {
msg, code := httpmsg.Error(err)

View File

@ -215,7 +215,7 @@ const docTemplate = `{
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/adminbenefactoreparam.GetBenefactorByIDResponse"
"$ref": "#/definitions/adminbenefactorhandler.BenefactorAggregatedResponse"
}
},
"400": {
@ -3046,6 +3046,38 @@ const docTemplate = `{
}
}
},
"adminaddressparam.Data": {
"type": "object",
"properties": {
"address": {
"type": "string"
},
"benefactor_id": {
"type": "integer"
},
"city_id": {
"type": "integer"
},
"id": {
"type": "integer"
},
"lat": {
"type": "number"
},
"lon": {
"type": "number"
},
"name": {
"type": "string"
},
"postal_code": {
"type": "string"
},
"province_id": {
"type": "integer"
}
}
},
"adminagentparam.Data": {
"type": "object",
"properties": {
@ -3130,11 +3162,37 @@ const docTemplate = `{
}
}
},
"adminbenefactoreparam.GetBenefactorByIDResponse": {
"adminbenefactorhandler.BenefactorAggregatedResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/adminbenefactorhandler.Data"
}
}
},
"adminbenefactorhandler.Data": {
"type": "object",
"properties": {
"addresses": {
"type": "array",
"items": {
"$ref": "#/definitions/adminaddressparam.Data"
}
},
"benefactor": {
"$ref": "#/definitions/adminbenefactoreparam.Data"
},
"kind_box_reqs": {
"type": "array",
"items": {
"$ref": "#/definitions/adminkindboxreqparam.Data"
}
},
"kind_boxes": {
"type": "array",
"items": {
"$ref": "#/definitions/adminkindboxparam.Data"
}
}
}
},

View File

@ -204,7 +204,7 @@
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/adminbenefactoreparam.GetBenefactorByIDResponse"
"$ref": "#/definitions/adminbenefactorhandler.BenefactorAggregatedResponse"
}
},
"400": {
@ -3035,6 +3035,38 @@
}
}
},
"adminaddressparam.Data": {
"type": "object",
"properties": {
"address": {
"type": "string"
},
"benefactor_id": {
"type": "integer"
},
"city_id": {
"type": "integer"
},
"id": {
"type": "integer"
},
"lat": {
"type": "number"
},
"lon": {
"type": "number"
},
"name": {
"type": "string"
},
"postal_code": {
"type": "string"
},
"province_id": {
"type": "integer"
}
}
},
"adminagentparam.Data": {
"type": "object",
"properties": {
@ -3119,11 +3151,37 @@
}
}
},
"adminbenefactoreparam.GetBenefactorByIDResponse": {
"adminbenefactorhandler.BenefactorAggregatedResponse": {
"type": "object",
"properties": {
"data": {
"$ref": "#/definitions/adminbenefactorhandler.Data"
}
}
},
"adminbenefactorhandler.Data": {
"type": "object",
"properties": {
"addresses": {
"type": "array",
"items": {
"$ref": "#/definitions/adminaddressparam.Data"
}
},
"benefactor": {
"$ref": "#/definitions/adminbenefactoreparam.Data"
},
"kind_box_reqs": {
"type": "array",
"items": {
"$ref": "#/definitions/adminkindboxreqparam.Data"
}
},
"kind_boxes": {
"type": "array",
"items": {
"$ref": "#/definitions/adminkindboxparam.Data"
}
}
}
},

View File

@ -101,6 +101,27 @@ definitions:
example: "1234567890"
type: string
type: object
adminaddressparam.Data:
properties:
address:
type: string
benefactor_id:
type: integer
city_id:
type: integer
id:
type: integer
lat:
type: number
lon:
type: number
name:
type: string
postal_code:
type: string
province_id:
type: integer
type: object
adminagentparam.Data:
properties:
first_name:
@ -157,10 +178,27 @@ definitions:
status:
$ref: '#/definitions/entity.BenefactorStatus'
type: object
adminbenefactoreparam.GetBenefactorByIDResponse:
adminbenefactorhandler.BenefactorAggregatedResponse:
properties:
data:
$ref: '#/definitions/adminbenefactorhandler.Data'
type: object
adminbenefactorhandler.Data:
properties:
addresses:
items:
$ref: '#/definitions/adminaddressparam.Data'
type: array
benefactor:
$ref: '#/definitions/adminbenefactoreparam.Data'
kind_box_reqs:
items:
$ref: '#/definitions/adminkindboxreqparam.Data'
type: array
kind_boxes:
items:
$ref: '#/definitions/adminkindboxparam.Data'
type: array
type: object
adminkindboxparam.AssignReceiverRequest:
properties:
@ -1174,7 +1212,7 @@ paths:
"200":
description: OK
schema:
$ref: '#/definitions/adminbenefactoreparam.GetBenefactorByIDResponse'
$ref: '#/definitions/adminbenefactorhandler.BenefactorAggregatedResponse'
"400":
description: Bad request
schema: