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