From e027ac6cb0705ab4eda2a162fb70f4532f24af93 Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期五, 11 八月 2023 17:43:34 +0800 Subject: [PATCH] update --- model/serviceOrder.go | 23 +++++ model/request/serviceFollowup.go | 5 service/serviceOrder.go | 4 api/v1/serviceOrder.go | 2 docs/swagger.yaml | 47 +++++++---- service/serviceFollowup.go | 3 docs/docs.go | 65 +++++++++------ api/v1/serviceFollowup.go | 3 docs/swagger.json | 65 +++++++++------ model/request/serviceOrder.go | 8 + model/serviceFollowup.go | 7 + 11 files changed, 148 insertions(+), 84 deletions(-) diff --git a/api/v1/serviceFollowup.go b/api/v1/serviceFollowup.go index b657e7d..f3b5982 100644 --- a/api/v1/serviceFollowup.go +++ b/api/v1/serviceFollowup.go @@ -96,6 +96,7 @@ ctx.Ok() } + // checkServiceFollowupParams func checkServiceFollowupParams(serviceFollowup request.ServiceFollowup) (errCode int, serviceFollowupModel model.ServiceFollowup) { //if serviceFollowup.Number == "" { @@ -140,7 +141,7 @@ return } - serviceFollowups, total, errCode := serviceFollowupService.GetServiceFollowupList(params.Page, params.PageSize, params.KeywordType, params.Keyword) + serviceFollowups, total, errCode := serviceFollowupService.GetServiceFollowupList(params.Page, params.PageSize, params.KeywordType, params.Keyword, params.ServiceOrderId) if errCode != ecode.OK { ctx.Fail(errCode) return diff --git a/api/v1/serviceOrder.go b/api/v1/serviceOrder.go index 1eec84f..f76babe 100644 --- a/api/v1/serviceOrder.go +++ b/api/v1/serviceOrder.go @@ -109,7 +109,7 @@ return } - serviceOrder, total, errCode := service.NewServiceOrderService().GetServiceOrderList(params.Page, params.PageSize, params.QueryClass, params.KeywordType, params.Keyword) + serviceOrder, total, errCode := service.NewServiceOrderService().GetServiceOrderList(params.Page, params.PageSize, params.QueryClass, params.KeywordType, params.Keyword, params.ServiceContractId, params.SalesDetailsId) if errCode != ecode.OK { ctx.Fail(errCode) return diff --git a/docs/docs.go b/docs/docs.go index 3927227..373da68 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -12213,11 +12213,11 @@ "satisfactionId": { "type": "integer" }, - "serviceId": { - "type": "integer" - }, "serviceOrder": { "$ref": "#/definitions/model.ServiceOrder" + }, + "serviceOrderId": { + "type": "integer" }, "solveRate": { "$ref": "#/definitions/model.SolveRate" @@ -12266,13 +12266,6 @@ "description": "鑱旂郴浜篿d", "type": "integer" }, - "contract": { - "$ref": "#/definitions/model.Contract" - }, - "contractId": { - "description": "鍚堝悓id", - "type": "integer" - }, "expectTime": { "description": "甯屾湜澶勭悊鏃堕棿", "type": "string" @@ -12292,10 +12285,6 @@ "type": "integer" }, "id": { - "type": "integer" - }, - "orderId": { - "description": "閿�鍞鍗昳d", "type": "integer" }, "orderManage": { @@ -12334,6 +12323,20 @@ "description": "閿�鍞満浼歩d", "type": "integer" }, + "salesDetails": { + "$ref": "#/definitions/model.SalesDetails" + }, + "salesDetailsId": { + "description": "閿�鍞槑缁唅d", + "type": "integer" + }, + "serviceContract": { + "$ref": "#/definitions/model.ServiceContract" + }, + "serviceContractId": { + "description": "鏈嶅姟鍚堝悓id", + "type": "integer" + }, "serviceManId": { "description": "鏈嶅姟浜哄憳", "type": "integer" @@ -12344,6 +12347,10 @@ }, "serviceOrderStatus": { "$ref": "#/definitions/model.ServiceOrderStatus" + }, + "serviceOrderStatusId": { + "description": "澶勭悊鐘舵��", + "type": "integer" }, "serviceType": { "$ref": "#/definitions/model.ServiceType" @@ -12362,10 +12369,6 @@ "solutionRemark": { "description": "鍐呴儴澶囨敞", "type": "string" - }, - "status": { - "description": "澶勭悊鐘舵��", - "type": "integer" }, "subject": { "description": "涓婚", @@ -13994,6 +13997,10 @@ "description": "鏈嶅姟鍗曠紪鍙�", "type": "string" }, + "serviceOrderStatusId": { + "description": "澶勭悊鐘舵��", + "type": "integer" + }, "serviceTypeId": { "description": "鏈嶅姟鏂瑰紡id", "type": "integer" @@ -14009,10 +14016,6 @@ "solutionRemark": { "description": "鍐呴儴澶囨敞", "type": "string" - }, - "status": { - "description": "澶勭悊鐘舵��", - "type": "integer" }, "subject": { "description": "涓婚", @@ -14786,6 +14789,10 @@ "pageSize": { "description": "姣忛〉澶у皬", "type": "integer" + }, + "serviceOrderId": { + "description": "鏈嶅姟鍥炶鍗昳d", + "type": "integer" } } }, @@ -14808,6 +14815,12 @@ }, "queryClass": { "$ref": "#/definitions/constvar.ServiceOrderQueryClass" + }, + "salesDetailsId": { + "type": "integer" + }, + "serviceContractId": { + "type": "integer" } } }, @@ -17140,6 +17153,10 @@ "description": "鏈嶅姟鍗曠紪鍙�", "type": "string" }, + "serviceOrderStatusId": { + "description": "澶勭悊鐘舵��", + "type": "integer" + }, "serviceTypeId": { "description": "鏈嶅姟鏂瑰紡id", "type": "integer" @@ -17155,10 +17172,6 @@ "solutionRemark": { "description": "鍐呴儴澶囨敞", "type": "string" - }, - "status": { - "description": "澶勭悊鐘舵��", - "type": "integer" }, "subject": { "description": "涓婚", diff --git a/docs/swagger.json b/docs/swagger.json index f142c53..2f50976 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -12201,11 +12201,11 @@ "satisfactionId": { "type": "integer" }, - "serviceId": { - "type": "integer" - }, "serviceOrder": { "$ref": "#/definitions/model.ServiceOrder" + }, + "serviceOrderId": { + "type": "integer" }, "solveRate": { "$ref": "#/definitions/model.SolveRate" @@ -12254,13 +12254,6 @@ "description": "鑱旂郴浜篿d", "type": "integer" }, - "contract": { - "$ref": "#/definitions/model.Contract" - }, - "contractId": { - "description": "鍚堝悓id", - "type": "integer" - }, "expectTime": { "description": "甯屾湜澶勭悊鏃堕棿", "type": "string" @@ -12280,10 +12273,6 @@ "type": "integer" }, "id": { - "type": "integer" - }, - "orderId": { - "description": "閿�鍞鍗昳d", "type": "integer" }, "orderManage": { @@ -12322,6 +12311,20 @@ "description": "閿�鍞満浼歩d", "type": "integer" }, + "salesDetails": { + "$ref": "#/definitions/model.SalesDetails" + }, + "salesDetailsId": { + "description": "閿�鍞槑缁唅d", + "type": "integer" + }, + "serviceContract": { + "$ref": "#/definitions/model.ServiceContract" + }, + "serviceContractId": { + "description": "鏈嶅姟鍚堝悓id", + "type": "integer" + }, "serviceManId": { "description": "鏈嶅姟浜哄憳", "type": "integer" @@ -12332,6 +12335,10 @@ }, "serviceOrderStatus": { "$ref": "#/definitions/model.ServiceOrderStatus" + }, + "serviceOrderStatusId": { + "description": "澶勭悊鐘舵��", + "type": "integer" }, "serviceType": { "$ref": "#/definitions/model.ServiceType" @@ -12350,10 +12357,6 @@ "solutionRemark": { "description": "鍐呴儴澶囨敞", "type": "string" - }, - "status": { - "description": "澶勭悊鐘舵��", - "type": "integer" }, "subject": { "description": "涓婚", @@ -13982,6 +13985,10 @@ "description": "鏈嶅姟鍗曠紪鍙�", "type": "string" }, + "serviceOrderStatusId": { + "description": "澶勭悊鐘舵��", + "type": "integer" + }, "serviceTypeId": { "description": "鏈嶅姟鏂瑰紡id", "type": "integer" @@ -13997,10 +14004,6 @@ "solutionRemark": { "description": "鍐呴儴澶囨敞", "type": "string" - }, - "status": { - "description": "澶勭悊鐘舵��", - "type": "integer" }, "subject": { "description": "涓婚", @@ -14774,6 +14777,10 @@ "pageSize": { "description": "姣忛〉澶у皬", "type": "integer" + }, + "serviceOrderId": { + "description": "鏈嶅姟鍥炶鍗昳d", + "type": "integer" } } }, @@ -14796,6 +14803,12 @@ }, "queryClass": { "$ref": "#/definitions/constvar.ServiceOrderQueryClass" + }, + "salesDetailsId": { + "type": "integer" + }, + "serviceContractId": { + "type": "integer" } } }, @@ -17128,6 +17141,10 @@ "description": "鏈嶅姟鍗曠紪鍙�", "type": "string" }, + "serviceOrderStatusId": { + "description": "澶勭悊鐘舵��", + "type": "integer" + }, "serviceTypeId": { "description": "鏈嶅姟鏂瑰紡id", "type": "integer" @@ -17143,10 +17160,6 @@ "solutionRemark": { "description": "鍐呴儴澶囨敞", "type": "string" - }, - "status": { - "description": "澶勭悊鐘舵��", - "type": "integer" }, "subject": { "description": "涓婚", diff --git a/docs/swagger.yaml b/docs/swagger.yaml index 8934514..73ca838 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -1527,10 +1527,10 @@ $ref: '#/definitions/model.Satisfaction' satisfactionId: type: integer - serviceId: - type: integer serviceOrder: $ref: '#/definitions/model.ServiceOrder' + serviceOrderId: + type: integer solveRate: $ref: '#/definitions/model.SolveRate' solveRateId: @@ -1566,11 +1566,6 @@ contactId: description: 鑱旂郴浜篿d type: integer - contract: - $ref: '#/definitions/model.Contract' - contractId: - description: 鍚堝悓id - type: integer expectTime: description: 甯屾湜澶勭悊鏃堕棿 type: string @@ -1585,9 +1580,6 @@ description: 鏁呴殰绫诲埆id type: integer id: - type: integer - orderId: - description: 閿�鍞鍗昳d type: integer orderManage: $ref: '#/definitions/model.OrderManage' @@ -1615,6 +1607,16 @@ saleChanceId: description: 閿�鍞満浼歩d type: integer + salesDetails: + $ref: '#/definitions/model.SalesDetails' + salesDetailsId: + description: 閿�鍞槑缁唅d + type: integer + serviceContract: + $ref: '#/definitions/model.ServiceContract' + serviceContractId: + description: 鏈嶅姟鍚堝悓id + type: integer serviceManId: description: 鏈嶅姟浜哄憳 type: integer @@ -1623,6 +1625,9 @@ type: string serviceOrderStatus: $ref: '#/definitions/model.ServiceOrderStatus' + serviceOrderStatusId: + description: 澶勭悊鐘舵�� + type: integer serviceType: $ref: '#/definitions/model.ServiceType' serviceTypeId: @@ -1636,9 +1641,6 @@ solutionRemark: description: 鍐呴儴澶囨敞 type: string - status: - description: 澶勭悊鐘舵�� - type: integer subject: description: 涓婚 type: string @@ -2739,6 +2741,9 @@ serviceNumber: description: 鏈嶅姟鍗曠紪鍙� type: string + serviceOrderStatusId: + description: 澶勭悊鐘舵�� + type: integer serviceTypeId: description: 鏈嶅姟鏂瑰紡id type: integer @@ -2751,9 +2756,6 @@ solutionRemark: description: 鍐呴儴澶囨敞 type: string - status: - description: 澶勭悊鐘舵�� - type: integer subject: description: 涓婚 type: string @@ -3298,6 +3300,9 @@ pageSize: description: 姣忛〉澶у皬 type: integer + serviceOrderId: + description: 鏈嶅姟鍥炶鍗昳d + type: integer type: object request.GetServiceOrderList: properties: @@ -3313,6 +3318,10 @@ type: integer queryClass: $ref: '#/definitions/constvar.ServiceOrderQueryClass' + salesDetailsId: + type: integer + serviceContractId: + type: integer type: object request.GetSubOrderList: properties: @@ -4887,6 +4896,9 @@ serviceNumber: description: 鏈嶅姟鍗曠紪鍙� type: string + serviceOrderStatusId: + description: 澶勭悊鐘舵�� + type: integer serviceTypeId: description: 鏈嶅姟鏂瑰紡id type: integer @@ -4899,9 +4911,6 @@ solutionRemark: description: 鍐呴儴澶囨敞 type: string - status: - description: 澶勭悊鐘舵�� - type: integer subject: description: 涓婚 type: string diff --git a/model/request/serviceFollowup.go b/model/request/serviceFollowup.go index e1b5764..72f2891 100644 --- a/model/request/serviceFollowup.go +++ b/model/request/serviceFollowup.go @@ -29,8 +29,9 @@ type GetServiceFollowupList struct { PageInfo - KeywordType constvar.ServiceFollowupKeywordType `json:"keywordType"` - Keyword string `json:"keyword"` + KeywordType constvar.ServiceFollowupKeywordType `json:"keywordType"` + Keyword string `json:"keyword"` + ServiceOrderId int `json:"serviceOrderId"` //鏈嶅姟鍥炶鍗昳d } type DeleteServiceFollowup struct { diff --git a/model/request/serviceOrder.go b/model/request/serviceOrder.go index 434121a..7312c61 100644 --- a/model/request/serviceOrder.go +++ b/model/request/serviceOrder.go @@ -40,7 +40,9 @@ type GetServiceOrderList struct { PageInfo - QueryClass constvar.ServiceOrderQueryClass `json:"queryClass" form:"queryClass"` - KeywordType constvar.ServiceOrderKeywordType `json:"keywordType" form:"keywordType"` - Keyword string `json:"keyword" form:"keyword"` + QueryClass constvar.ServiceOrderQueryClass `json:"queryClass" form:"queryClass"` + KeywordType constvar.ServiceOrderKeywordType `json:"keywordType" form:"keywordType"` + Keyword string `json:"keyword" form:"keyword"` + ServiceContractId int `json:"serviceContractId" form:"serviceContractId"` + SalesDetailsId int `json:"salesDetailsId" form:"salesDetailsId"` } diff --git a/model/serviceFollowup.go b/model/serviceFollowup.go index be9255b..787c48e 100644 --- a/model/serviceFollowup.go +++ b/model/serviceFollowup.go @@ -16,7 +16,7 @@ Number string `json:"number" gorm:"column:number;type:varchar(255);comment:鍚堝悓缂栧彿"` ContactId int `json:"contactId" gorm:"column:contact_id;type:int;comment:鑱旂郴浜篿d"` Contact Contact `json:"contact" gorm:"foreignKey:ContactId"` - ServiceId int `json:"serviceId" gorm:"column:service_id;type:int;comment:瀹㈡埛鏈嶅姟鍗昳d"` + ServiceOrderId int `json:"serviceOrderId" gorm:"column:service_order_id;type:int;comment:瀹㈡埛鏈嶅姟鍗昳d"` ServiceOrder ServiceOrder `gorm:"foreignKey:ServiceId"` CustomerServiceSheet CustomerServiceSheet `json:"customerServiceSheet" gorm:"foreignKey:ServiceId"` MemberId int `json:"memberId" gorm:"column:member_id;type:int;comment:鏈嶅姟浜哄憳id"` @@ -144,6 +144,11 @@ return slf } +func (slf *ServiceFollowupSearch) SetServiceOrderId(id int) *ServiceFollowupSearch { + slf.ServiceOrderId = id + return slf +} + func (slf *ServiceFollowupSearch) SetPreload(preload bool) *ServiceFollowupSearch { slf.Preload = preload return slf diff --git a/model/serviceOrder.go b/model/serviceOrder.go index f6ef036..e249844 100644 --- a/model/serviceOrder.go +++ b/model/serviceOrder.go @@ -17,9 +17,10 @@ ServiceNumber string `gorm:"column:service_number;type:varchar(255);not null;default:'';comment:鏈嶅姟鍗曠紪鍙�" json:"serviceNumber"` // 鏈嶅姟鍗曠紪鍙� ClientId int `gorm:"column:client_id;type:int;not null;default:0;comment:瀹㈡埛id" json:"clientId"` // 瀹㈡埛id Client Client `gorm:"foreignKey:ClientId"` - ContractId int `gorm:"column:contract_id;type:int;not null;default:0;comment:鍚堝悓id" json:"contractId"` // 鍚堝悓id - Contract Contract `gorm:"foreignKey:ContractId"` - OrderId int `gorm:"column:order_id;type:int;not null;default:0;comment:閿�鍞鍗昳d" json:"orderId"` // 閿�鍞鍗昳d + ServiceContractId int `gorm:"column:contract_id;type:int;not null;default:0;comment:鏈嶅姟鍚堝悓id" json:"serviceContractId"` // 鏈嶅姟鍚堝悓id + ServiceContract ServiceContract `gorm:"foreignKey:ServiceContractId"` + SalesDetailsId int `gorm:"column:order_id;type:int;not null;default:0;comment:閿�鍞鍗昳d" json:"salesDetailsId"` // 閿�鍞槑缁唅d + SalesDetails SalesDetails `gorm:"foreignKey:SalesDetailsId"` OrderManage OrderManage `gorm:"foreignKey:OrderId"` Subject string `gorm:"column:subject;type:varchar(255);not null;default:'';comment:涓婚" json:"subject"` // 涓婚 ProductId int `gorm:"column:product_id;type:int;not null;default:0;comment:浜у搧id" json:"productId"` // 浜у搧id @@ -83,6 +84,12 @@ if slf.Id != 0 { db = db.Where("id = ?", slf.Id) } + if slf.ServiceContractId != 0 { + db = db.Where("service_contract_id = ?", slf.ServiceContractId) + } + if slf.SalesDetailsId != 0 { + db = db.Where("sales_details_id = ?", slf.SalesDetailsId) + } if slf.Preload { db = db. Preload("Client"). @@ -143,6 +150,16 @@ return slf } +func (slf *ServiceOrderSearch) SetServiceContractId(id int) *ServiceOrderSearch { + slf.ServiceContractId = id + return slf +} + +func (slf *ServiceOrderSearch) SetSalesDetailsId(id int) *ServiceOrderSearch { + slf.SalesDetailsId = id + return slf +} + func (slf *ServiceOrderSearch) SetPage(page, size int) *ServiceOrderSearch { slf.PageNum, slf.PageSize = page, size return slf diff --git a/service/serviceFollowup.go b/service/serviceFollowup.go index 1ae3722..46c52c9 100644 --- a/service/serviceFollowup.go +++ b/service/serviceFollowup.go @@ -41,13 +41,14 @@ return ecode.OK } -func (FollowupService) GetServiceFollowupList(page, pageSize int, keywordType constvar.ServiceFollowupKeywordType, keyword string) ([]*model.ServiceFollowup, int64, int) { +func (FollowupService) GetServiceFollowupList(page, pageSize int, keywordType constvar.ServiceFollowupKeywordType, keyword string, serviceOrderId int) ([]*model.ServiceFollowup, int64, int) { // get contact list contacts, total, err := model.NewServiceFollowupSearch(). SetKeywordType(keywordType). SetKeyword(keyword). SetPage(page, pageSize). SetPreload(true). + SetServiceOrderId(serviceOrderId). FindAll() if err != nil { return nil, 0, ecode.ServiceFollowupListErr diff --git a/service/serviceOrder.go b/service/serviceOrder.go index cdfe5d9..8de6e57 100644 --- a/service/serviceOrder.go +++ b/service/serviceOrder.go @@ -30,13 +30,15 @@ return ecode.OK } -func (ServiceOrderService) GetServiceOrderList(page, pageSize int, queryClass constvar.ServiceOrderQueryClass, keywordType constvar.ServiceOrderKeywordType, keyword string) ([]*model.ServiceOrder, int64, int) { +func (ServiceOrderService) GetServiceOrderList(page, pageSize int, queryClass constvar.ServiceOrderQueryClass, keywordType constvar.ServiceOrderKeywordType, keyword string, serviceContractId, salesDetailsId int) ([]*model.ServiceOrder, int64, int) { list, total, err := model.NewServiceOrderSearch(). SetPage(page, pageSize). SetKeyword(keyword). SetKeywordType(keywordType). SetQueryClass(queryClass). SetPreload(true). + SetServiceContractId(serviceContractId). + SetSalesDetailsId(salesDetailsId). Find() if err != nil { return nil, 0, ecode.DBErr -- Gitblit v1.8.0