From 46f410ae18f22f5e9a8368f0ea7c721863d18fce Mon Sep 17 00:00:00 2001
From: wangpengfei <274878379@qq.com>
Date: 星期三, 02 八月 2023 17:22:35 +0800
Subject: [PATCH] fix
---
service/contact.go | 23 ++++-------
router/contact.go | 2
api/v1/contact.go | 13 +++---
docs/swagger.yaml | 16 ++++++--
model/contact.go | 6 ++
docs/docs.go | 23 +++++++++--
docs/swagger.json | 23 +++++++++--
model/request/contact.go | 4 ++
8 files changed, 73 insertions(+), 37 deletions(-)
diff --git a/api/v1/contact.go b/api/v1/contact.go
index 2fd3dd4..9d68a2d 100644
--- a/api/v1/contact.go
+++ b/api/v1/contact.go
@@ -7,7 +7,6 @@
"aps_crm/pkg/contextx"
"aps_crm/pkg/ecode"
"github.com/gin-gonic/gin"
- "strconv"
)
type ContactApi struct{}
@@ -47,17 +46,17 @@
// @Tags Contact
// @Summary 鍒犻櫎鑱旂郴浜�
// @Produce application/json
-// @Param id path int true "鏌ヨ鍙傛暟"
+// @Param object body request.DeleteContact true "鏌ヨ鍙傛暟"
// @Success 200 {object} contextx.Response{}
-// @Router /api/contact/delete/{id} [delete]
+// @Router /api/contact/delete [delete]
func (con *ContactApi) Delete(c *gin.Context) {
- ctx, ok := contextx.NewContext(c, nil)
+ var params request.DeleteContact
+ ctx, ok := contextx.NewContext(c, ¶ms)
if !ok {
return
}
- id, _ := strconv.Atoi(c.Param("id"))
- errCode := contactService.DeleteContact(id)
+ errCode := contactService.DeleteContact(params.Ids)
if errCode != ecode.OK {
ctx.Fail(errCode)
return
@@ -170,4 +169,4 @@
List: contacts,
Count: int(total),
})
-}
\ No newline at end of file
+}
diff --git a/docs/docs.go b/docs/docs.go
index 20ef8a0..109093a 100644
--- a/docs/docs.go
+++ b/docs/docs.go
@@ -1109,7 +1109,7 @@
}
}
},
- "/api/contact/delete/{id}": {
+ "/api/contact/delete": {
"delete": {
"produces": [
"application/json"
@@ -1120,11 +1120,13 @@
"summary": "鍒犻櫎鑱旂郴浜�",
"parameters": [
{
- "type": "integer",
"description": "鏌ヨ鍙傛暟",
- "name": "id",
- "in": "path",
- "required": true
+ "name": "object",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/request.DeleteContact"
+ }
}
],
"responses": {
@@ -9932,6 +9934,17 @@
}
}
},
+ "request.DeleteContact": {
+ "type": "object",
+ "properties": {
+ "ids": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ }
+ },
"request.DeleteCountry": {
"type": "object",
"properties": {
diff --git a/docs/swagger.json b/docs/swagger.json
index 76b7c6e..55b7c9e 100644
--- a/docs/swagger.json
+++ b/docs/swagger.json
@@ -1097,7 +1097,7 @@
}
}
},
- "/api/contact/delete/{id}": {
+ "/api/contact/delete": {
"delete": {
"produces": [
"application/json"
@@ -1108,11 +1108,13 @@
"summary": "鍒犻櫎鑱旂郴浜�",
"parameters": [
{
- "type": "integer",
"description": "鏌ヨ鍙傛暟",
- "name": "id",
- "in": "path",
- "required": true
+ "name": "object",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/request.DeleteContact"
+ }
}
],
"responses": {
@@ -9920,6 +9922,17 @@
}
}
},
+ "request.DeleteContact": {
+ "type": "object",
+ "properties": {
+ "ids": {
+ "type": "array",
+ "items": {
+ "type": "integer"
+ }
+ }
+ }
+ },
"request.DeleteCountry": {
"type": "object",
"properties": {
diff --git a/docs/swagger.yaml b/docs/swagger.yaml
index 5283f1d..ddfa118 100644
--- a/docs/swagger.yaml
+++ b/docs/swagger.yaml
@@ -1905,6 +1905,13 @@
type: integer
type: array
type: object
+ request.DeleteContact:
+ properties:
+ ids:
+ items:
+ type: integer
+ type: array
+ type: object
request.DeleteCountry:
properties:
id:
@@ -4753,14 +4760,15 @@
summary: 娣诲姞鑱旂郴浜�
tags:
- Contact
- /api/contact/delete/{id}:
+ /api/contact/delete:
delete:
parameters:
- description: 鏌ヨ鍙傛暟
- in: path
- name: id
+ in: body
+ name: object
required: true
- type: integer
+ schema:
+ $ref: '#/definitions/request.DeleteContact'
produces:
- application/json
responses:
diff --git a/model/contact.go b/model/contact.go
index 3fc6048..abadcea 100644
--- a/model/contact.go
+++ b/model/contact.go
@@ -168,4 +168,8 @@
func (slf *ContactSearch) SetOrder(order string) *ContactSearch {
slf.OrderBy = order
return slf
-}
\ No newline at end of file
+}
+func (slf *ContactSearch) SetIds(ids []int) *ContactSearch {
+ slf.Orm = slf.Orm.Where("id in (?)", ids)
+ return slf
+}
diff --git a/model/request/contact.go b/model/request/contact.go
index 1c39699..3156038 100644
--- a/model/request/contact.go
+++ b/model/request/contact.go
@@ -31,3 +31,7 @@
PageInfo
Keyword string `json:"keyword"`
}
+
+type DeleteContact struct {
+ Ids []int `json:"ids"`
+}
diff --git a/router/contact.go b/router/contact.go
index dcca60c..9e1b821 100644
--- a/router/contact.go
+++ b/router/contact.go
@@ -12,7 +12,7 @@
contactApi := v1.ApiGroup.ContactApi
{
contactRouter.POST("add", contactApi.Add) // 娣诲姞鑱旂郴浜�
- contactRouter.DELETE("delete/:id", contactApi.Delete) // 鍒犻櫎鑱旂郴浜�
+ contactRouter.DELETE("delete", contactApi.Delete) // 鍒犻櫎鑱旂郴浜�
contactRouter.PUT("update", contactApi.Update) // 鏇存柊鑱旂郴浜�
contactRouter.POST("list", contactApi.List) // 鑾峰彇鑱旂郴浜哄垪琛�
}
diff --git a/service/contact.go b/service/contact.go
index 8a3e761..7b61053 100644
--- a/service/contact.go
+++ b/service/contact.go
@@ -33,20 +33,6 @@
return ecode.OK
}
-func (ContactService) DeleteContact(id int) int {
- // check contact exist
- _, err := model.NewContactSearch(nil).SetId(id).First()
- if err != nil {
- return ecode.ContactNotExist
- }
-
- // delete contact
- err = model.NewContactSearch(nil).SetId(id).Delete()
- if err != nil {
- return ecode.ContactDeleteErr
- }
- return ecode.OK
-}
func (ContactService) UpdateContact(contact *model.Contact) int {
// check contact exist
@@ -125,3 +111,12 @@
}
return contacts, total, ecode.OK
}
+
+func (ContactService) DeleteContact (ids []int) int {
+ // delete client
+ err := model.NewContactSearch(nil).SetIds(ids).Delete()
+ if err != nil {
+ return ecode.ContactDeleteErr
+ }
+ return ecode.OK
+}
\ No newline at end of file
--
Gitblit v1.8.0