From 3535dc2bc35776d208a73083a1368b44d6f7ba31 Mon Sep 17 00:00:00 2001
From: wangpengfei <274878379@qq.com>
Date: 星期三, 12 七月 2023 10:34:00 +0800
Subject: [PATCH] add
---
api/v1/index.go | 2
model/salesReturn.go | 79 +++++
pkg/ecode/code.go | 7
router/salesReturn.go | 19 +
docs/swagger.yaml | 119 ++++++++
docs/docs.go | 185 +++++++++++++
api/v1/salesReturn.go | 152 ++++++++++
docs/swagger.json | 185 +++++++++++++
model/response/response.go | 4
service/index.go | 1
model/request/salesReturn.go | 23 +
model/index.go | 1
router/index.go | 2
service/salesReturn.go | 54 +++
14 files changed, 825 insertions(+), 8 deletions(-)
diff --git a/api/v1/index.go b/api/v1/index.go
index 9c6b130..2d16f27 100644
--- a/api/v1/index.go
+++ b/api/v1/index.go
@@ -35,6 +35,7 @@
MasterOrderApi
SubOrderApi
SalesDetailsApi
+ SalesReturnApi
}
var ApiGroup = new(Group)
@@ -69,4 +70,5 @@
masterOrderService = service.ServiceGroup.MasterOrderService
subOrderService = service.ServiceGroup.SubOrderService
salesDetailsService = service.ServiceGroup.SalesDetailsService
+ salesReturnService = service.ServiceGroup.SalesReturnService
)
diff --git a/api/v1/salesReturn.go b/api/v1/salesReturn.go
new file mode 100644
index 0000000..bcc4692
--- /dev/null
+++ b/api/v1/salesReturn.go
@@ -0,0 +1,152 @@
+package v1
+
+import (
+ "aps_crm/model"
+ "aps_crm/model/request"
+ "aps_crm/model/response"
+ "aps_crm/pkg/contextx"
+ "aps_crm/pkg/ecode"
+ "github.com/gin-gonic/gin"
+ "strconv"
+)
+
+type SalesReturnApi struct{}
+
+// Add
+//
+// @Tags SalesReturn
+// @Summary 娣诲姞閿�鍞��璐�
+// @Produce application/json
+// @Param object body request.AddSalesReturnRequest true "鏌ヨ鍙傛暟"
+// @Success 200 {object} contextx.Response{}
+// @Router /api/salesReturn/add [post]
+func (s *SalesReturnApi) Add(c *gin.Context) {
+ var params request.AddSalesReturnRequest
+ ctx, ok := contextx.NewContext(c, ¶ms)
+ if !ok {
+ return
+ }
+
+ errCode, salesReturn := checkSalesReturnParams(params.SalesReturn)
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ errCode = salesReturnService.AddSalesReturn(&salesReturn)
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ ctx.Ok()
+}
+
+// Delete
+//
+// @Tags SalesReturn
+// @Summary 鍒犻櫎閿�鍞��璐�
+// @Produce application/json
+// @Param id path int true "鏌ヨ鍙傛暟"
+// @Success 200 {object} contextx.Response{}
+// @Router /api/salesReturn/delete/{id} [delete]
+func (s *SalesReturnApi) Delete(c *gin.Context) {
+ ctx, ok := contextx.NewContext(c, nil)
+ if !ok {
+ return
+ }
+
+ id, _ := strconv.Atoi(c.Param("id"))
+ errCode := salesReturnService.DeleteSalesReturn(id)
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ ctx.Ok()
+}
+
+// Update
+//
+// @Tags SalesReturn
+// @Summary 鏇存柊閿�鍞��璐�
+// @Produce application/json
+// @Param object body request.UpdateSalesReturnRequest true "鏌ヨ鍙傛暟"
+// @Success 200 {object} contextx.Response{}
+// @Router /api/salesReturn/update/{id} [put]
+func (s *SalesReturnApi) Update(c *gin.Context) {
+ var params request.UpdateSalesReturnRequest
+ ctx, ok := contextx.NewContext(c, ¶ms)
+ if !ok {
+ return
+ }
+
+ errCode, salesReturn := checkSalesReturnParams(params.SalesReturn)
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ errCode = salesReturnService.UpdateSalesReturn(&salesReturn)
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ ctx.Ok()
+
+}
+
+// List
+//
+// @Tags SalesReturn
+// @Summary 鑾峰彇閿�鍞��璐у垪琛�
+// @Produce application/json
+// @Success 200 {object} contextx.Response{}
+// @Router /api/salesReturn/list [get]
+func (s *SalesReturnApi) List(c *gin.Context) {
+ ctx, ok := contextx.NewContext(c, nil)
+ if !ok {
+ return
+ }
+
+ salesReturns, errCode := salesReturnService.GetSalesReturnList()
+ if errCode != ecode.OK {
+ ctx.Fail(errCode)
+ return
+ }
+
+ ctx.OkWithDetailed(response.SalesReturnResponse{
+ List: salesReturns,
+ })
+}
+
+func checkSalesReturnParams(salesReturn request.SalesReturn) (errCode int, s model.SalesReturn) {
+ if salesReturn.Number == "" {
+ return ecode.InvalidParams, s
+ }
+
+ if salesReturn.Repository == "" {
+ return ecode.InvalidParams, s
+ }
+
+ if salesReturn.MemberId == 0 {
+ return ecode.InvalidParams, s
+ }
+
+ t, err := checkTimeFormat(salesReturn.ReturnDate)
+ if err != nil {
+ return ecode.InvalidParams, s
+ }
+
+ s.ClientId = salesReturn.ClientId
+ s.ReturnDate = t
+ s.Number = salesReturn.Number
+ s.Repository = salesReturn.Repository
+ s.MemberId = salesReturn.MemberId
+ s.Status = salesReturn.Status
+ s.Reason = salesReturn.Reason
+ s.Products = salesReturn.Products
+
+ return ecode.OK, s
+}
diff --git a/docs/docs.go b/docs/docs.go
index 849e893..fcdb128 100644
--- a/docs/docs.go
+++ b/docs/docs.go
@@ -3056,6 +3056,113 @@
}
}
},
+ "/api/salesReturn/add": {
+ "post": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "SalesReturn"
+ ],
+ "summary": "娣诲姞閿�鍞��璐�",
+ "parameters": [
+ {
+ "description": "鏌ヨ鍙傛暟",
+ "name": "object",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/request.AddSalesReturnRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/contextx.Response"
+ }
+ }
+ }
+ }
+ },
+ "/api/salesReturn/delete/{id}": {
+ "delete": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "SalesReturn"
+ ],
+ "summary": "鍒犻櫎閿�鍞��璐�",
+ "parameters": [
+ {
+ "type": "integer",
+ "description": "鏌ヨ鍙傛暟",
+ "name": "id",
+ "in": "path",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/contextx.Response"
+ }
+ }
+ }
+ }
+ },
+ "/api/salesReturn/list": {
+ "get": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "SalesReturn"
+ ],
+ "summary": "鑾峰彇閿�鍞��璐у垪琛�",
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/contextx.Response"
+ }
+ }
+ }
+ }
+ },
+ "/api/salesReturn/update/{id}": {
+ "put": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "SalesReturn"
+ ],
+ "summary": "鏇存柊閿�鍞��璐�",
+ "parameters": [
+ {
+ "description": "鏌ヨ鍙傛暟",
+ "name": "object",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/request.UpdateSalesReturnRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/contextx.Response"
+ }
+ }
+ }
+ }
+ },
"/api/salesSources/add": {
"post": {
"produces": [
@@ -5210,6 +5317,14 @@
}
}
},
+ "request.AddSalesReturnRequest": {
+ "type": "object",
+ "properties": {
+ "salesReturn": {
+ "$ref": "#/definitions/request.SalesReturn"
+ }
+ }
+ },
"request.AddSalesSources": {
"type": "object",
"required": [
@@ -5498,9 +5613,6 @@
"deliveryDate": {
"type": "string"
},
- "id": {
- "type": "integer"
- },
"memberId": {
"type": "integer"
},
@@ -5529,6 +5641,38 @@
"type": "string"
},
"wechatOrderStatus": {
+ "type": "integer"
+ }
+ }
+ },
+ "request.SalesReturn": {
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "type": "integer"
+ },
+ "memberId": {
+ "type": "integer"
+ },
+ "number": {
+ "type": "string"
+ },
+ "products": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/model.Product"
+ }
+ },
+ "reason": {
+ "type": "string"
+ },
+ "repository": {
+ "type": "string"
+ },
+ "returnDate": {
+ "type": "string"
+ },
+ "status": {
"type": "integer"
}
}
@@ -6438,6 +6582,41 @@
}
}
},
+ "request.UpdateSalesReturnRequest": {
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "type": "integer"
+ },
+ "id": {
+ "type": "integer"
+ },
+ "memberId": {
+ "type": "integer"
+ },
+ "number": {
+ "type": "string"
+ },
+ "products": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/model.Product"
+ }
+ },
+ "reason": {
+ "type": "string"
+ },
+ "repository": {
+ "type": "string"
+ },
+ "returnDate": {
+ "type": "string"
+ },
+ "status": {
+ "type": "integer"
+ }
+ }
+ },
"request.UpdateSalesSources": {
"type": "object",
"required": [
diff --git a/docs/swagger.json b/docs/swagger.json
index 6434c7b..609ea9b 100644
--- a/docs/swagger.json
+++ b/docs/swagger.json
@@ -3044,6 +3044,113 @@
}
}
},
+ "/api/salesReturn/add": {
+ "post": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "SalesReturn"
+ ],
+ "summary": "娣诲姞閿�鍞��璐�",
+ "parameters": [
+ {
+ "description": "鏌ヨ鍙傛暟",
+ "name": "object",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/request.AddSalesReturnRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/contextx.Response"
+ }
+ }
+ }
+ }
+ },
+ "/api/salesReturn/delete/{id}": {
+ "delete": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "SalesReturn"
+ ],
+ "summary": "鍒犻櫎閿�鍞��璐�",
+ "parameters": [
+ {
+ "type": "integer",
+ "description": "鏌ヨ鍙傛暟",
+ "name": "id",
+ "in": "path",
+ "required": true
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/contextx.Response"
+ }
+ }
+ }
+ }
+ },
+ "/api/salesReturn/list": {
+ "get": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "SalesReturn"
+ ],
+ "summary": "鑾峰彇閿�鍞��璐у垪琛�",
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/contextx.Response"
+ }
+ }
+ }
+ }
+ },
+ "/api/salesReturn/update/{id}": {
+ "put": {
+ "produces": [
+ "application/json"
+ ],
+ "tags": [
+ "SalesReturn"
+ ],
+ "summary": "鏇存柊閿�鍞��璐�",
+ "parameters": [
+ {
+ "description": "鏌ヨ鍙傛暟",
+ "name": "object",
+ "in": "body",
+ "required": true,
+ "schema": {
+ "$ref": "#/definitions/request.UpdateSalesReturnRequest"
+ }
+ }
+ ],
+ "responses": {
+ "200": {
+ "description": "OK",
+ "schema": {
+ "$ref": "#/definitions/contextx.Response"
+ }
+ }
+ }
+ }
+ },
"/api/salesSources/add": {
"post": {
"produces": [
@@ -5198,6 +5305,14 @@
}
}
},
+ "request.AddSalesReturnRequest": {
+ "type": "object",
+ "properties": {
+ "salesReturn": {
+ "$ref": "#/definitions/request.SalesReturn"
+ }
+ }
+ },
"request.AddSalesSources": {
"type": "object",
"required": [
@@ -5486,9 +5601,6 @@
"deliveryDate": {
"type": "string"
},
- "id": {
- "type": "integer"
- },
"memberId": {
"type": "integer"
},
@@ -5517,6 +5629,38 @@
"type": "string"
},
"wechatOrderStatus": {
+ "type": "integer"
+ }
+ }
+ },
+ "request.SalesReturn": {
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "type": "integer"
+ },
+ "memberId": {
+ "type": "integer"
+ },
+ "number": {
+ "type": "string"
+ },
+ "products": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/model.Product"
+ }
+ },
+ "reason": {
+ "type": "string"
+ },
+ "repository": {
+ "type": "string"
+ },
+ "returnDate": {
+ "type": "string"
+ },
+ "status": {
"type": "integer"
}
}
@@ -6426,6 +6570,41 @@
}
}
},
+ "request.UpdateSalesReturnRequest": {
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "type": "integer"
+ },
+ "id": {
+ "type": "integer"
+ },
+ "memberId": {
+ "type": "integer"
+ },
+ "number": {
+ "type": "string"
+ },
+ "products": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/model.Product"
+ }
+ },
+ "reason": {
+ "type": "string"
+ },
+ "repository": {
+ "type": "string"
+ },
+ "returnDate": {
+ "type": "string"
+ },
+ "status": {
+ "type": "integer"
+ }
+ }
+ },
"request.UpdateSalesSources": {
"type": "object",
"required": [
diff --git a/docs/swagger.yaml b/docs/swagger.yaml
index 0b2fc53..38dad52 100644
--- a/docs/swagger.yaml
+++ b/docs/swagger.yaml
@@ -1044,6 +1044,11 @@
description: 鍟嗘満鏉ユ簮ID
type: integer
type: object
+ request.AddSalesReturnRequest:
+ properties:
+ salesReturn:
+ $ref: '#/definitions/request.SalesReturn'
+ type: object
request.AddSalesSources:
properties:
name:
@@ -1245,8 +1250,6 @@
type: string
deliveryDate:
type: string
- id:
- type: integer
memberId:
type: integer
number:
@@ -1266,6 +1269,27 @@
signTime:
type: string
wechatOrderStatus:
+ type: integer
+ type: object
+ request.SalesReturn:
+ properties:
+ clientId:
+ type: integer
+ memberId:
+ type: integer
+ number:
+ type: string
+ products:
+ items:
+ $ref: '#/definitions/model.Product'
+ type: array
+ reason:
+ type: string
+ repository:
+ type: string
+ returnDate:
+ type: string
+ status:
type: integer
type: object
request.SetCity:
@@ -1879,6 +1903,29 @@
type: integer
sales_sources_id:
description: 鍟嗘満鏉ユ簮ID
+ type: integer
+ type: object
+ request.UpdateSalesReturnRequest:
+ properties:
+ clientId:
+ type: integer
+ id:
+ type: integer
+ memberId:
+ type: integer
+ number:
+ type: string
+ products:
+ items:
+ $ref: '#/definitions/model.Product'
+ type: array
+ reason:
+ type: string
+ repository:
+ type: string
+ returnDate:
+ type: string
+ status:
type: integer
type: object
request.UpdateSalesSources:
@@ -3999,6 +4046,74 @@
summary: 鏇存柊閿�鍞嚎绱�
tags:
- SalesLeads
+ /api/salesReturn/add:
+ post:
+ parameters:
+ - description: 鏌ヨ鍙傛暟
+ in: body
+ name: object
+ required: true
+ schema:
+ $ref: '#/definitions/request.AddSalesReturnRequest'
+ produces:
+ - application/json
+ responses:
+ "200":
+ description: OK
+ schema:
+ $ref: '#/definitions/contextx.Response'
+ summary: 娣诲姞閿�鍞��璐�
+ tags:
+ - SalesReturn
+ /api/salesReturn/delete/{id}:
+ delete:
+ parameters:
+ - description: 鏌ヨ鍙傛暟
+ in: path
+ name: id
+ required: true
+ type: integer
+ produces:
+ - application/json
+ responses:
+ "200":
+ description: OK
+ schema:
+ $ref: '#/definitions/contextx.Response'
+ summary: 鍒犻櫎閿�鍞��璐�
+ tags:
+ - SalesReturn
+ /api/salesReturn/list:
+ get:
+ produces:
+ - application/json
+ responses:
+ "200":
+ description: OK
+ schema:
+ $ref: '#/definitions/contextx.Response'
+ summary: 鑾峰彇閿�鍞��璐у垪琛�
+ tags:
+ - SalesReturn
+ /api/salesReturn/update/{id}:
+ put:
+ parameters:
+ - description: 鏌ヨ鍙傛暟
+ in: body
+ name: object
+ required: true
+ schema:
+ $ref: '#/definitions/request.UpdateSalesReturnRequest'
+ produces:
+ - application/json
+ responses:
+ "200":
+ description: OK
+ schema:
+ $ref: '#/definitions/contextx.Response'
+ summary: 鏇存柊閿�鍞��璐�
+ tags:
+ - SalesReturn
/api/salesSources/add:
post:
parameters:
diff --git a/model/index.go b/model/index.go
index 2d29e86..0c2846c 100644
--- a/model/index.go
+++ b/model/index.go
@@ -51,6 +51,7 @@
SubOrder{},
Product{},
SalesDetails{},
+ SalesReturn{},
)
return err
}
diff --git a/model/request/salesReturn.go b/model/request/salesReturn.go
new file mode 100644
index 0000000..9be348a
--- /dev/null
+++ b/model/request/salesReturn.go
@@ -0,0 +1,23 @@
+package request
+
+import "aps_crm/model"
+
+type AddSalesReturnRequest struct {
+ SalesReturn SalesReturn
+}
+
+type SalesReturn struct {
+ ClientId int `json:"clientId" gorm:"column:client_id;type:int;comment:瀹㈡埛id"`
+ Number string `json:"number" gorm:"column:number;type:varchar(255);comment:閫�璐у崟鍙�"`
+ Repository string `json:"repository" gorm:"column:repository;type:varchar(255);comment:浠撳簱"`
+ MemberId int `json:"memberId" gorm:"column:member_id;type:int;comment:璐熻矗浜篿d"`
+ ReturnDate string `json:"returnDate" gorm:"column:return_date;type:datetime;comment:閫�璐ф棩鏈�"`
+ Status int `json:"status" gorm:"column:status;type:int;comment:閫�璐х姸鎬�"`
+ Reason string `json:"reason" gorm:"column:reason;type:varchar(255);comment:閫�璐у師鍥�"`
+ Products []model.Product `json:"products" gorm:"many2many:salesReturn_product;"`
+}
+
+type UpdateSalesReturnRequest struct {
+ Id int `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
+ SalesReturn
+}
diff --git a/model/response/response.go b/model/response/response.go
index ef188e4..666cad4 100644
--- a/model/response/response.go
+++ b/model/response/response.go
@@ -137,4 +137,8 @@
SalesDetailsResponse struct {
List []*model.SalesDetails `json:"list"`
}
+
+ SalesReturnResponse struct {
+ List []*model.SalesReturn `json:"list"`
+ }
)
diff --git a/model/salesReturn.go b/model/salesReturn.go
new file mode 100644
index 0000000..d72c54c
--- /dev/null
+++ b/model/salesReturn.go
@@ -0,0 +1,79 @@
+package model
+
+import (
+ "aps_crm/pkg/mysqlx"
+ "gorm.io/gorm"
+ "time"
+)
+
+type (
+ SalesReturn struct {
+ Id int `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
+ ClientId int `json:"clientId" gorm:"column:client_id;type:int;comment:瀹㈡埛id"`
+ Number string `json:"number" gorm:"column:number;type:varchar(255);comment:閫�璐у崟鍙�"`
+ Repository string `json:"repository" gorm:"column:repository;type:varchar(255);comment:浠撳簱"`
+ MemberId int `json:"memberId" gorm:"column:member_id;type:int;comment:璐熻矗浜篿d"`
+ ReturnDate time.Time `json:"returnDate" gorm:"column:return_date;type:datetime;comment:閫�璐ф棩鏈�"`
+ Status int `json:"status" gorm:"column:status;type:int;comment:閫�璐х姸鎬�"`
+ Reason string `json:"reason" gorm:"column:reason;type:varchar(255);comment:閫�璐у師鍥�"`
+ Products []Product `json:"products" gorm:"many2many:salesReturn_product;"`
+ }
+
+ SalesReturnSearch struct {
+ SalesReturn
+ Orm *gorm.DB
+ }
+)
+
+func (SalesReturn) TableName() string {
+ return "sales_return"
+}
+
+func NewSalesReturnSearch() *SalesReturnSearch {
+ return &SalesReturnSearch{
+ Orm: mysqlx.GetDB(),
+ }
+}
+
+func (slf *SalesReturnSearch) build() *gorm.DB {
+ var db = slf.Orm.Model(&SalesReturn{})
+ if slf.Id != 0 {
+ db = db.Where("id = ?", slf.Id)
+ }
+
+ return db
+}
+
+func (slf *SalesReturnSearch) Create(record *SalesReturn) error {
+ var db = slf.build()
+ return db.Create(record).Error
+}
+
+func (slf *SalesReturnSearch) Delete() error {
+ var db = slf.build()
+ return db.Delete(&SalesReturn{}).Error
+}
+
+func (slf *SalesReturnSearch) Update(record *SalesReturn) error {
+ var db = slf.build()
+ return db.Updates(record).Error
+}
+
+func (slf *SalesReturnSearch) Find() (*SalesReturn, error) {
+ var db = slf.build()
+ var record = new(SalesReturn)
+ err := db.First(record).Error
+ return record, err
+}
+
+func (slf *SalesReturnSearch) FindAll() ([]*SalesReturn, error) {
+ var db = slf.build()
+ var record = make([]*SalesReturn, 0)
+ err := db.Preload("Products").Find(&record).Error
+ return record, err
+}
+
+func (slf *SalesReturnSearch) SetId(id int) *SalesReturnSearch {
+ slf.Id = id
+ return slf
+}
diff --git a/pkg/ecode/code.go b/pkg/ecode/code.go
index b4008d2..1808279 100644
--- a/pkg/ecode/code.go
+++ b/pkg/ecode/code.go
@@ -205,4 +205,11 @@
SalesDetailsUpdateErr = 2800005 // 鏇存柊閿�鍞槑缁嗗け璐�
SalesDetailsDeleteErr = 2800006 // 鍒犻櫎閿�鍞槑缁嗗け璐�
+ SalesReturnExist = 2900001 // 閿�鍞��璐у崟宸插瓨鍦�
+ SalesReturnNotExist = 2900002 // 閿�鍞��璐у崟涓嶅瓨鍦�
+ SalesReturnListErr = 2900003 // 鑾峰彇閿�鍞��璐у崟鍒楄〃澶辫触
+ SalesReturnSetErr = 2900004 // 璁剧疆閿�鍞��璐у崟澶辫触
+ SalesReturnUpdateErr = 2900005 // 鏇存柊閿�鍞��璐у崟澶辫触
+ SalesReturnDeleteErr = 2900006 // 鍒犻櫎閿�鍞��璐у崟澶辫触
+
)
diff --git a/router/index.go b/router/index.go
index 6b96a23..8fc92b1 100644
--- a/router/index.go
+++ b/router/index.go
@@ -41,6 +41,7 @@
MasterOrderRouter
SubOrderRouter
SalesDetailsRouter
+ SalesReturnRouter
}
func InitRouter() *gin.Engine {
@@ -99,6 +100,7 @@
routerGroup.InitMasterOrderRouter(PrivateGroup) // 娉ㄥ唽masterOrder璺敱
routerGroup.InitSubOrderRouter(PrivateGroup) // 娉ㄥ唽subOrder璺敱
routerGroup.InitSalesDetailsRouter(PrivateGroup) // 娉ㄥ唽salesDetails璺敱
+ routerGroup.InitSalesReturnRouter(PrivateGroup) // 娉ㄥ唽salesReturn璺敱
}
return Router
}
diff --git a/router/salesReturn.go b/router/salesReturn.go
new file mode 100644
index 0000000..8c73643
--- /dev/null
+++ b/router/salesReturn.go
@@ -0,0 +1,19 @@
+package router
+
+import (
+ v1 "aps_crm/api/v1"
+ "github.com/gin-gonic/gin"
+)
+
+type SalesReturnRouter struct{}
+
+func (s *SalesReturnRouter) InitSalesReturnRouter(router *gin.RouterGroup) {
+ salesReturnRouter := router.Group("salesReturn")
+ salesReturnApi := v1.ApiGroup.SalesReturnApi
+ {
+ salesReturnRouter.POST("add", salesReturnApi.Add) // 娣诲姞閿�鍞��璐�
+ salesReturnRouter.DELETE("delete/:id", salesReturnApi.Delete) // 鍒犻櫎閿�鍞��璐�
+ salesReturnRouter.PUT("update", salesReturnApi.Update) // 鏇存柊閿�鍞��璐�
+ salesReturnRouter.GET("list", salesReturnApi.List) // 鑾峰彇閿�鍞��璐у垪琛�
+ }
+}
diff --git a/service/index.go b/service/index.go
index fd6af9f..b7c5f56 100644
--- a/service/index.go
+++ b/service/index.go
@@ -30,6 +30,7 @@
MasterOrderService
SubOrderService
SalesDetailsService
+ SalesReturnService
}
var ServiceGroup = new(Group)
diff --git a/service/salesReturn.go b/service/salesReturn.go
new file mode 100644
index 0000000..f354d2d
--- /dev/null
+++ b/service/salesReturn.go
@@ -0,0 +1,54 @@
+package service
+
+import (
+ "aps_crm/model"
+ "aps_crm/pkg/ecode"
+)
+
+type SalesReturnService struct{}
+
+func (SalesReturnService) AddSalesReturn(salesReturn *model.SalesReturn) int {
+ err := model.NewSalesReturnSearch().Create(salesReturn)
+ if err != nil {
+ return ecode.SalesReturnExist
+ }
+
+ return ecode.OK
+}
+
+func (SalesReturnService) DeleteSalesReturn(id int) int {
+ _, err := model.NewSalesReturnSearch().SetId(id).Find()
+ if err != nil {
+ return ecode.SalesReturnNotExist
+ }
+
+ err = model.NewSalesReturnSearch().SetId(id).Delete()
+ if err != nil {
+ return ecode.SalesReturnNotExist
+ }
+ return ecode.OK
+}
+
+func (SalesReturnService) GetSalesReturnList() ([]*model.SalesReturn, int) {
+ list, err := model.NewSalesReturnSearch().FindAll()
+ if err != nil {
+ return nil, ecode.SalesReturnListErr
+ }
+
+ return list, ecode.OK
+}
+
+func (SalesReturnService) UpdateSalesReturn(salesReturn *model.SalesReturn) int {
+ // check salesReturn exist
+ _, err := model.NewSalesReturnSearch().SetId(salesReturn.Id).Find()
+ if err != nil {
+ return ecode.SalesReturnNotExist
+ }
+
+ err = model.NewSalesReturnSearch().SetId(salesReturn.Id).Update(salesReturn)
+ if err != nil {
+ return ecode.SalesReturnSetErr
+ }
+
+ return ecode.OK
+}
--
Gitblit v1.8.0