From fe3906038b25efaf0983a7cf5fede29e26d35093 Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期四, 03 八月 2023 15:40:27 +0800 Subject: [PATCH] add --- constvar/const.go | 13 ++-- api/v1/client.go | 4 - service/client.go | 26 +++++++- model/salesLeads.go | 8 ++ service/salesLeads.go | 12 ++-- model/request/client.go | 1 docs/swagger.yaml | 17 +++++ docs/docs.go | 23 ++++++- docs/swagger.json | 23 ++++++- 9 files changed, 97 insertions(+), 30 deletions(-) diff --git a/api/v1/client.go b/api/v1/client.go index 278374b..6b565b3 100644 --- a/api/v1/client.go +++ b/api/v1/client.go @@ -32,9 +32,7 @@ return } - // check member exist - - errCode = clientService.AddClient(client) + errCode = clientService.AddClient(client, params.SalesLeadsId) if errCode != ecode.OK { ctx.Fail(errCode) return diff --git a/constvar/const.go b/constvar/const.go index dbb8fbb..88e7daa 100644 --- a/constvar/const.go +++ b/constvar/const.go @@ -35,13 +35,12 @@ type SalesStatus int const ( - SalesStatusNew SalesStatus = iota + 1 - SalesStatusIng // 杩涜涓� - SalesStatusSuccess // 鎴愬姛 - SalesStatusFail // 澶辫触 - SalesStatusLevelUptoClient // 鍗囩骇涓哄鎴� - SalesStatusLevelUptoClientAndSalesChance // 鍗囩骇涓哄鎴峰苟涓旀湁閿�鍞満浼� - + SalesStatusFail SalesStatus = -1 // 澶辫触 + SalesStatusNew SalesStatus = iota // 鏂板缓 + SalesStatusIng // 杩涜涓� + SalesStatusSuccess // 鎴愬姛 + SalesStatusLevelUptoClient // 鍗囩骇涓哄鎴� + SalesStatusLevelUptoClientAndSalesChance // 鍗囩骇涓哄鎴峰苟涓旀湁閿�鍞満浼� ) type CurrencyType int diff --git a/docs/docs.go b/docs/docs.go index 9d0da4f..25722ed 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -7093,25 +7093,26 @@ "constvar.SalesStatus": { "type": "integer", "enum": [ + -1, 1, 2, 3, 4, - 5, - 6 + 5 ], "x-enum-comments": { "SalesStatusFail": "澶辫触", "SalesStatusIng": "杩涜涓�", "SalesStatusLevelUptoClient": "鍗囩骇涓哄鎴�", "SalesStatusLevelUptoClientAndSalesChance": "鍗囩骇涓哄鎴峰苟涓旀湁閿�鍞満浼�", + "SalesStatusNew": "鏂板缓", "SalesStatusSuccess": "鎴愬姛" }, "x-enum-varnames": [ + "SalesStatusFail", "SalesStatusNew", "SalesStatusIng", "SalesStatusSuccess", - "SalesStatusFail", "SalesStatusLevelUptoClient", "SalesStatusLevelUptoClientAndSalesChance" ] @@ -8815,6 +8816,10 @@ "description": "娉曚汉浠h〃", "type": "string" }, + "sales_leads_id": { + "description": "閿�鍞嚎绱D", + "type": "integer" + }, "service_member_id": { "description": "鏈嶅姟璐熻矗浜篒D", "type": "integer" @@ -9666,6 +9671,10 @@ "representative": { "description": "娉曚汉浠h〃", "type": "string" + }, + "sales_leads_id": { + "description": "閿�鍞嚎绱D", + "type": "integer" }, "service_member_id": { "description": "鏈嶅姟璐熻矗浜篒D", @@ -10814,6 +10823,10 @@ "representative": { "description": "娉曚汉浠h〃", "type": "string" + }, + "sales_leads_id": { + "description": "閿�鍞嚎绱D", + "type": "integer" }, "service_member_id": { "description": "鏈嶅姟璐熻矗浜篒D", @@ -12213,6 +12226,10 @@ "description": "娉曚汉浠h〃", "type": "string" }, + "sales_leads_id": { + "description": "閿�鍞嚎绱D", + "type": "integer" + }, "service_member_id": { "description": "鏈嶅姟璐熻矗浜篒D", "type": "integer" diff --git a/docs/swagger.json b/docs/swagger.json index 8107b58..662bcfb 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -7081,25 +7081,26 @@ "constvar.SalesStatus": { "type": "integer", "enum": [ + -1, 1, 2, 3, 4, - 5, - 6 + 5 ], "x-enum-comments": { "SalesStatusFail": "澶辫触", "SalesStatusIng": "杩涜涓�", "SalesStatusLevelUptoClient": "鍗囩骇涓哄鎴�", "SalesStatusLevelUptoClientAndSalesChance": "鍗囩骇涓哄鎴峰苟涓旀湁閿�鍞満浼�", + "SalesStatusNew": "鏂板缓", "SalesStatusSuccess": "鎴愬姛" }, "x-enum-varnames": [ + "SalesStatusFail", "SalesStatusNew", "SalesStatusIng", "SalesStatusSuccess", - "SalesStatusFail", "SalesStatusLevelUptoClient", "SalesStatusLevelUptoClientAndSalesChance" ] @@ -8803,6 +8804,10 @@ "description": "娉曚汉浠h〃", "type": "string" }, + "sales_leads_id": { + "description": "閿�鍞嚎绱D", + "type": "integer" + }, "service_member_id": { "description": "鏈嶅姟璐熻矗浜篒D", "type": "integer" @@ -9654,6 +9659,10 @@ "representative": { "description": "娉曚汉浠h〃", "type": "string" + }, + "sales_leads_id": { + "description": "閿�鍞嚎绱D", + "type": "integer" }, "service_member_id": { "description": "鏈嶅姟璐熻矗浜篒D", @@ -10802,6 +10811,10 @@ "representative": { "description": "娉曚汉浠h〃", "type": "string" + }, + "sales_leads_id": { + "description": "閿�鍞嚎绱D", + "type": "integer" }, "service_member_id": { "description": "鏈嶅姟璐熻矗浜篒D", @@ -12201,6 +12214,10 @@ "description": "娉曚汉浠h〃", "type": "string" }, + "sales_leads_id": { + "description": "閿�鍞嚎绱D", + "type": "integer" + }, "service_member_id": { "description": "鏈嶅姟璐熻矗浜篒D", "type": "integer" diff --git a/docs/swagger.yaml b/docs/swagger.yaml index f050aae..b768f08 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -1,24 +1,25 @@ definitions: constvar.SalesStatus: enum: + - -1 - 1 - 2 - 3 - 4 - 5 - - 6 type: integer x-enum-comments: SalesStatusFail: 澶辫触 SalesStatusIng: 杩涜涓� SalesStatusLevelUptoClient: 鍗囩骇涓哄鎴� SalesStatusLevelUptoClientAndSalesChance: 鍗囩骇涓哄鎴峰苟涓旀湁閿�鍞満浼� + SalesStatusNew: 鏂板缓 SalesStatusSuccess: 鎴愬姛 x-enum-varnames: + - SalesStatusFail - SalesStatusNew - SalesStatusIng - SalesStatusSuccess - - SalesStatusFail - SalesStatusLevelUptoClient - SalesStatusLevelUptoClientAndSalesChance constvar.UserType: @@ -1144,6 +1145,9 @@ representative: description: 娉曚汉浠h〃 type: string + sales_leads_id: + description: 閿�鍞嚎绱D + type: integer service_member_id: description: 鏈嶅姟璐熻矗浜篒D type: integer @@ -1713,6 +1717,9 @@ representative: description: 娉曚汉浠h〃 type: string + sales_leads_id: + description: 閿�鍞嚎绱D + type: integer service_member_id: description: 鏈嶅姟璐熻矗浜篒D type: integer @@ -2495,6 +2502,9 @@ representative: description: 娉曚汉浠h〃 type: string + sales_leads_id: + description: 閿�鍞嚎绱D + type: integer service_member_id: description: 鏈嶅姟璐熻矗浜篒D type: integer @@ -3428,6 +3438,9 @@ representative: description: 娉曚汉浠h〃 type: string + sales_leads_id: + description: 閿�鍞嚎绱D + type: integer service_member_id: description: 鏈嶅姟璐熻矗浜篒D type: integer diff --git a/model/request/client.go b/model/request/client.go index 7ebbf6c..b647db4 100644 --- a/model/request/client.go +++ b/model/request/client.go @@ -18,6 +18,7 @@ NextVisitTime string `json:"next_visit_time"` // 涓嬫鍥炶鏃堕棿 LatestServiceTime string `json:"latest_service_time"` // 鏈�鏅氭湇鍔℃椂闂� Contact Contact `json:"contact"` + SalesLeadsId int `json:"sales_leads_id"` // 閿�鍞嚎绱D Address Business } diff --git a/model/salesLeads.go b/model/salesLeads.go index fa5951e..4bf986a 100644 --- a/model/salesLeads.go +++ b/model/salesLeads.go @@ -38,9 +38,13 @@ return "sales_leads" } -func NewSalesLeadsSearch() *SalesLeadsSearch { +func NewSalesLeadsSearch(db *gorm.DB) *SalesLeadsSearch { + if db == nil { + db = mysqlx.GetDB() + } + return &SalesLeadsSearch{ - Orm: mysqlx.GetDB(), + Orm: db, } } diff --git a/service/client.go b/service/client.go index 5243a3c..8743ee3 100644 --- a/service/client.go +++ b/service/client.go @@ -3,15 +3,33 @@ import ( "aps_crm/model" "aps_crm/pkg/ecode" + "aps_crm/pkg/mysqlx" ) type ClientService struct{} -func (ClientService) AddClient(client *model.Client) int { - err := model.NewClientSearch(nil).Create(client) - if err != nil { - return ecode.ClientExist +func (ClientService) AddClient(client *model.Client, sId int) int { + if sId == 0 { + err := model.NewClientSearch(nil).Create(client) + if err != nil { + return ecode.ClientExist + } + } else { + tx := mysqlx.GetDB().Begin() + err := model.NewClientSearch(tx).Create(client) + if err != nil { + tx.Rollback() + return ecode.ClientExist + } + + err = model.NewSalesLeadsSearch(tx).SetId(sId).Delete() + if err != nil { + tx.Rollback() + return ecode.ClientExist + } + tx.Commit() } + return ecode.OK } diff --git a/service/salesLeads.go b/service/salesLeads.go index 0239207..114c089 100644 --- a/service/salesLeads.go +++ b/service/salesLeads.go @@ -8,7 +8,7 @@ type SalesLeadsService struct{} func (SalesLeadsService) AddSalesLeads(salesLeads *model.SalesLeads) int { - err := model.NewSalesLeadsSearch().Create(salesLeads) + err := model.NewSalesLeadsSearch(nil).Create(salesLeads) if err != nil { return ecode.SalesLeadsExist } @@ -17,7 +17,7 @@ func (SalesLeadsService) UpdateSalesLeads(salesLeads *model.SalesLeads) int { // update salesLeads - err := model.NewSalesLeadsSearch().SetId(salesLeads.Id).Update(salesLeads) + err := model.NewSalesLeadsSearch(nil).SetId(salesLeads.Id).Update(salesLeads) if err != nil { return ecode.SalesLeadsUpdateErr } @@ -27,7 +27,7 @@ // CheckSalesLeadsExist check salesLeads exist func CheckSalesLeadsExist(id int) int { - tmp, err := model.NewSalesLeadsSearch().SetId(id).Find() + tmp, err := model.NewSalesLeadsSearch(nil).SetId(id).Find() if err != nil { return ecode.SalesLeadsNotExist } @@ -41,7 +41,7 @@ func (SalesLeadsService) GetSalesLeadsList(page, pageSize int, keyword string) ([]*model.SalesLeads, int64, int) { // get contact list - contacts, total, err := model.NewSalesLeadsSearch().SetKeyword(keyword).SetPage(page, pageSize).FindAll() + contacts, total, err := model.NewSalesLeadsSearch(nil).SetKeyword(keyword).SetPage(page, pageSize).FindAll() if err != nil { return nil, 0, ecode.SalesLeadsListErr } @@ -56,7 +56,7 @@ //} // update salesLeads - err := model.NewSalesLeadsSearch().SetIds(ids).UpdateMap(map[string]interface{}{ + err := model.NewSalesLeadsSearch(nil).SetIds(ids).UpdateMap(map[string]interface{}{ "member_id": memberId, }) if err != nil { @@ -68,7 +68,7 @@ func (SalesLeadsService) DeleteSalesLeads(ids []int) int { // delete client - err := model.NewSalesLeadsSearch().SetIds(ids).Delete() + err := model.NewSalesLeadsSearch(nil).SetIds(ids).Delete() if err != nil { return ecode.SalesLeadsDeleteErr } -- Gitblit v1.8.0