From d8c708a30d938ceb87348257add9dc10926044df Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期二, 24 十月 2023 20:08:02 +0800
Subject: [PATCH] 编码规则需求功能开发2
---
model/severity.go | 2
api/v1/client.go | 2
model/contract.go | 1
model/request/salesDetails.go | 1
api/v1/code.go | 2
api/v1/serviceOrder.go | 2
docs/swagger.yaml | 39 +++++
docs/docs.go | 54 ++++++++
service/invoice.go | 2
docs/swagger.json | 54 ++++++++
model/request/serviceOrder.go | 2
model/request/invoice.go | 56 +++++----
model/request/contract.go | 1
api/v1/salesRefund.go | 2
model/serviceOrder.go | 8
model/salesDetails.go | 5
api/v1/invoice.go | 9 +
model/salesRefund.go | 14 +-
model/client.go | 3
service/salesRefund.go | 14 +-
model/invoice.go | 34 +++++
21 files changed, 242 insertions(+), 65 deletions(-)
diff --git a/api/v1/client.go b/api/v1/client.go
index bca5872..d7dc42e 100644
--- a/api/v1/client.go
+++ b/api/v1/client.go
@@ -41,7 +41,7 @@
return
}
- count, err := model.NewClientSearch(nil).SetNumber(params.Number).Count()
+ count, err := model.NewClientSearch(nil).SetNumber(client.Number).Count()
if err != nil {
ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜楠岃瘉澶辫触")
return
diff --git a/api/v1/code.go b/api/v1/code.go
index 2514e44..a94cb5a 100644
--- a/api/v1/code.go
+++ b/api/v1/code.go
@@ -122,6 +122,8 @@
id, err = model.NewServiceOrderSearch().MaxAutoIncr()
case constvar.CodeStandardTypeServerFollow:
id, err = model.NewServiceFollowupSearch().MaxAutoIncr()
+ case constvar.CodeStandardTypeSaleInvoice:
+ id, err = model.NewInvoiceSearch().MaxAutoIncr()
default:
ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜瑙勫垯涓嶅瓨鍦�")
return
diff --git a/api/v1/invoice.go b/api/v1/invoice.go
index c451f3c..3c51eb3 100644
--- a/api/v1/invoice.go
+++ b/api/v1/invoice.go
@@ -34,6 +34,15 @@
ctx.Fail(ecode.ParamsErr)
return
}
+ count, err := model.NewInvoiceSearch().SetNumber(invoice.Number).Count()
+ if err != nil {
+ ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜楠岃瘉澶辫触")
+ return
+ }
+ if count > 0 {
+ ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜宸插瓨鍦�")
+ return
+ }
errCode := service.NewInvoiceService().AddInvoice(&invoice)
if errCode != ecode.OK {
diff --git a/api/v1/salesRefund.go b/api/v1/salesRefund.go
index 2c30b99..00ce774 100644
--- a/api/v1/salesRefund.go
+++ b/api/v1/salesRefund.go
@@ -160,7 +160,7 @@
salesRefundRes.Reason = salesRefund.Reason
salesRefundRes.Products = salesRefund.Products
salesRefundRes.SourceType = salesRefund.SourceType
- salesRefundRes.SourceId = salesRefund.SourceId
+ salesRefundRes.SalesReturnId = salesRefund.SourceId
salesRefundRes.CodeStandID = salesRefund.CodeStandID
return ecode.OK, salesRefundRes
diff --git a/api/v1/serviceOrder.go b/api/v1/serviceOrder.go
index b2bd4f1..e557bd7 100644
--- a/api/v1/serviceOrder.go
+++ b/api/v1/serviceOrder.go
@@ -42,7 +42,7 @@
return
}
- count, err := model.NewServiceOrderSearch().SetNumber(serviceOrder.Number).Count()
+ count, err := model.NewServiceOrderSearch().SetNumber(serviceOrder.ServiceNumber).Count()
if err != nil {
ctx.FailWithMsg(ecode.UnknownErr, "缂栫爜楠岃瘉澶辫触")
return
diff --git a/docs/docs.go b/docs/docs.go
index b6d87f1..bf61850 100644
--- a/docs/docs.go
+++ b/docs/docs.go
@@ -11351,6 +11351,9 @@
"description": "瀹㈡埛id",
"type": "integer"
},
+ "codeStandID": {
+ "type": "string"
+ },
"courierCompany": {
"$ref": "#/definitions/model.CourierCompany"
},
@@ -11386,6 +11389,9 @@
"invoiceTypeId": {
"description": "鍙戠エ绫诲瀷id",
"type": "integer"
+ },
+ "number": {
+ "type": "string"
},
"principalId": {
"description": "閿�鍞礋璐d汉id",
@@ -12205,6 +12211,12 @@
"$ref": "#/definitions/model.Product"
}
},
+ "quotation": {
+ "$ref": "#/definitions/model.Quotation"
+ },
+ "quotationId": {
+ "type": "integer"
+ },
"remark": {
"type": "string"
},
@@ -12322,9 +12334,6 @@
}
]
},
- "Source": {
- "$ref": "#/definitions/model.SalesReturn"
- },
"amountTotal": {
"description": "浠风◣鍚堣",
"type": "number"
@@ -12388,6 +12397,9 @@
"refundTypeId": {
"description": "閫�娆炬柟寮廔D",
"type": "integer"
+ },
+ "salesReturn": {
+ "$ref": "#/definitions/model.SalesReturn"
},
"sourceId": {
"description": "婧愬崟id",
@@ -13007,6 +13019,10 @@
"severity": {
"$ref": "#/definitions/model.Severity"
},
+ "severityId": {
+ "description": "涓ラ噸绋嬪害id",
+ "type": "integer"
+ },
"solution": {
"description": "瑙e喅鏂规硶",
"type": "string"
@@ -13561,6 +13577,10 @@
"quotation_id": {
"type": "integer"
},
+ "sendTime": {
+ "description": "鍙戣揣鏃堕棿s",
+ "type": "string"
+ },
"status_id": {
"type": "integer"
}
@@ -13701,6 +13721,9 @@
"description": "瀹㈡埛id",
"type": "integer"
},
+ "codeStandID": {
+ "type": "string"
+ },
"courierCompanyId": {
"description": "鐗╂祦鍏徃",
"type": "integer"
@@ -13724,6 +13747,10 @@
"invoiceTypeId": {
"description": "鍙戠エ绫诲瀷id",
"type": "integer"
+ },
+ "number": {
+ "description": "鍙戠エ缂栧彿",
+ "type": "string"
},
"principalId": {
"description": "閿�鍞礋璐d汉id",
@@ -14330,6 +14357,9 @@
"$ref": "#/definitions/model.Product"
}
},
+ "quotationId": {
+ "type": "integer"
+ },
"remark": {
"type": "string"
},
@@ -14815,7 +14845,7 @@
"description": "鏈嶅姟鏂瑰紡id",
"type": "integer"
},
- "severity": {
+ "severityId": {
"description": "涓ラ噸绋嬪害id",
"type": "integer"
},
@@ -15890,6 +15920,9 @@
"$ref": "#/definitions/model.Product"
}
},
+ "quotationId": {
+ "type": "integer"
+ },
"remark": {
"type": "string"
},
@@ -16481,6 +16514,10 @@
"quotation_id": {
"type": "integer"
},
+ "sendTime": {
+ "description": "鍙戣揣鏃堕棿s",
+ "type": "string"
+ },
"status_id": {
"type": "integer"
}
@@ -16718,6 +16755,9 @@
"description": "瀹㈡埛id",
"type": "integer"
},
+ "codeStandID": {
+ "type": "string"
+ },
"courierCompanyId": {
"description": "鐗╂祦鍏徃",
"type": "integer"
@@ -16744,6 +16784,10 @@
"invoiceTypeId": {
"description": "鍙戠エ绫诲瀷id",
"type": "integer"
+ },
+ "number": {
+ "description": "鍙戠エ缂栧彿",
+ "type": "string"
},
"principalId": {
"description": "閿�鍞礋璐d汉id",
@@ -18196,7 +18240,7 @@
"description": "鏈嶅姟鏂瑰紡id",
"type": "integer"
},
- "severity": {
+ "severityId": {
"description": "涓ラ噸绋嬪害id",
"type": "integer"
},
diff --git a/docs/swagger.json b/docs/swagger.json
index 29ed80e..28a34e8 100644
--- a/docs/swagger.json
+++ b/docs/swagger.json
@@ -11339,6 +11339,9 @@
"description": "瀹㈡埛id",
"type": "integer"
},
+ "codeStandID": {
+ "type": "string"
+ },
"courierCompany": {
"$ref": "#/definitions/model.CourierCompany"
},
@@ -11374,6 +11377,9 @@
"invoiceTypeId": {
"description": "鍙戠エ绫诲瀷id",
"type": "integer"
+ },
+ "number": {
+ "type": "string"
},
"principalId": {
"description": "閿�鍞礋璐d汉id",
@@ -12193,6 +12199,12 @@
"$ref": "#/definitions/model.Product"
}
},
+ "quotation": {
+ "$ref": "#/definitions/model.Quotation"
+ },
+ "quotationId": {
+ "type": "integer"
+ },
"remark": {
"type": "string"
},
@@ -12310,9 +12322,6 @@
}
]
},
- "Source": {
- "$ref": "#/definitions/model.SalesReturn"
- },
"amountTotal": {
"description": "浠风◣鍚堣",
"type": "number"
@@ -12376,6 +12385,9 @@
"refundTypeId": {
"description": "閫�娆炬柟寮廔D",
"type": "integer"
+ },
+ "salesReturn": {
+ "$ref": "#/definitions/model.SalesReturn"
},
"sourceId": {
"description": "婧愬崟id",
@@ -12995,6 +13007,10 @@
"severity": {
"$ref": "#/definitions/model.Severity"
},
+ "severityId": {
+ "description": "涓ラ噸绋嬪害id",
+ "type": "integer"
+ },
"solution": {
"description": "瑙e喅鏂规硶",
"type": "string"
@@ -13549,6 +13565,10 @@
"quotation_id": {
"type": "integer"
},
+ "sendTime": {
+ "description": "鍙戣揣鏃堕棿s",
+ "type": "string"
+ },
"status_id": {
"type": "integer"
}
@@ -13689,6 +13709,9 @@
"description": "瀹㈡埛id",
"type": "integer"
},
+ "codeStandID": {
+ "type": "string"
+ },
"courierCompanyId": {
"description": "鐗╂祦鍏徃",
"type": "integer"
@@ -13712,6 +13735,10 @@
"invoiceTypeId": {
"description": "鍙戠エ绫诲瀷id",
"type": "integer"
+ },
+ "number": {
+ "description": "鍙戠エ缂栧彿",
+ "type": "string"
},
"principalId": {
"description": "閿�鍞礋璐d汉id",
@@ -14318,6 +14345,9 @@
"$ref": "#/definitions/model.Product"
}
},
+ "quotationId": {
+ "type": "integer"
+ },
"remark": {
"type": "string"
},
@@ -14803,7 +14833,7 @@
"description": "鏈嶅姟鏂瑰紡id",
"type": "integer"
},
- "severity": {
+ "severityId": {
"description": "涓ラ噸绋嬪害id",
"type": "integer"
},
@@ -15878,6 +15908,9 @@
"$ref": "#/definitions/model.Product"
}
},
+ "quotationId": {
+ "type": "integer"
+ },
"remark": {
"type": "string"
},
@@ -16469,6 +16502,10 @@
"quotation_id": {
"type": "integer"
},
+ "sendTime": {
+ "description": "鍙戣揣鏃堕棿s",
+ "type": "string"
+ },
"status_id": {
"type": "integer"
}
@@ -16706,6 +16743,9 @@
"description": "瀹㈡埛id",
"type": "integer"
},
+ "codeStandID": {
+ "type": "string"
+ },
"courierCompanyId": {
"description": "鐗╂祦鍏徃",
"type": "integer"
@@ -16732,6 +16772,10 @@
"invoiceTypeId": {
"description": "鍙戠エ绫诲瀷id",
"type": "integer"
+ },
+ "number": {
+ "description": "鍙戠エ缂栧彿",
+ "type": "string"
},
"principalId": {
"description": "閿�鍞礋璐d汉id",
@@ -18184,7 +18228,7 @@
"description": "鏈嶅姟鏂瑰紡id",
"type": "integer"
},
- "severity": {
+ "severityId": {
"description": "涓ラ噸绋嬪害id",
"type": "integer"
},
diff --git a/docs/swagger.yaml b/docs/swagger.yaml
index 1e7b9cb..28a52ba 100644
--- a/docs/swagger.yaml
+++ b/docs/swagger.yaml
@@ -895,6 +895,8 @@
clientId:
description: 瀹㈡埛id
type: integer
+ codeStandID:
+ type: string
courierCompany:
$ref: '#/definitions/model.CourierCompany'
courierCompanyId:
@@ -921,6 +923,8 @@
invoiceTypeId:
description: 鍙戠エ绫诲瀷id
type: integer
+ number:
+ type: string
principalId:
description: 閿�鍞礋璐d汉id
type: integer
@@ -1457,6 +1461,10 @@
items:
$ref: '#/definitions/model.Product'
type: array
+ quotation:
+ $ref: '#/definitions/model.Quotation'
+ quotationId:
+ type: integer
remark:
type: string
saleChance:
@@ -1533,8 +1541,6 @@
allOf:
- $ref: '#/definitions/model.RefundType'
description: 閫�娆炬柟寮�
- Source:
- $ref: '#/definitions/model.SalesReturn'
amountTotal:
description: 浠风◣鍚堣
type: number
@@ -1579,6 +1585,8 @@
refundTypeId:
description: 閫�娆炬柟寮廔D
type: integer
+ salesReturn:
+ $ref: '#/definitions/model.SalesReturn'
sourceId:
description: 婧愬崟id
type: integer
@@ -1996,6 +2004,9 @@
type: integer
severity:
$ref: '#/definitions/model.Severity'
+ severityId:
+ description: 涓ラ噸绋嬪害id
+ type: integer
solution:
description: 瑙e喅鏂规硶
type: string
@@ -2378,6 +2389,9 @@
type: string
quotation_id:
type: integer
+ sendTime:
+ description: 鍙戣揣鏃堕棿s
+ type: string
status_id:
type: integer
type: object
@@ -2468,6 +2482,8 @@
clientId:
description: 瀹㈡埛id
type: integer
+ codeStandID:
+ type: string
courierCompanyId:
description: 鐗╂祦鍏徃
type: integer
@@ -2486,6 +2502,9 @@
invoiceTypeId:
description: 鍙戠エ绫诲瀷id
type: integer
+ number:
+ description: 鍙戠エ缂栧彿
+ type: string
principalId:
description: 閿�鍞礋璐d汉id
type: integer
@@ -2883,6 +2902,8 @@
items:
$ref: '#/definitions/model.Product'
type: array
+ quotationId:
+ type: integer
remark:
type: string
saleChanceId:
@@ -3221,7 +3242,7 @@
serviceTypeId:
description: 鏈嶅姟鏂瑰紡id
type: integer
- severity:
+ severityId:
description: 涓ラ噸绋嬪害id
type: integer
solution:
@@ -3975,6 +3996,8 @@
items:
$ref: '#/definitions/model.Product'
type: array
+ quotationId:
+ type: integer
remark:
type: string
saleChanceId:
@@ -4381,6 +4404,9 @@
type: string
quotation_id:
type: integer
+ sendTime:
+ description: 鍙戣揣鏃堕棿s
+ type: string
status_id:
type: integer
type: object
@@ -4534,6 +4560,8 @@
clientId:
description: 瀹㈡埛id
type: integer
+ codeStandID:
+ type: string
courierCompanyId:
description: 鐗╂祦鍏徃
type: integer
@@ -4554,6 +4582,9 @@
invoiceTypeId:
description: 鍙戠エ绫诲瀷id
type: integer
+ number:
+ description: 鍙戠エ缂栧彿
+ type: string
principalId:
description: 閿�鍞礋璐d汉id
type: integer
@@ -5533,7 +5564,7 @@
serviceTypeId:
description: 鏈嶅姟鏂瑰紡id
type: integer
- severity:
+ severityId:
description: 涓ラ噸绋嬪害id
type: integer
solution:
diff --git a/model/client.go b/model/client.go
index a9a5e1c..590c079 100644
--- a/model/client.go
+++ b/model/client.go
@@ -71,6 +71,9 @@
if slf.Name != "" {
db.Where("name = ?", slf.Name)
}
+ if slf.Number != "" {
+ db.Where("number = ?", slf.Number)
+ }
if len(slf.SearchMap) > 0 {
for key, value := range slf.SearchMap {
diff --git a/model/contract.go b/model/contract.go
index 4617805..63dd9cf 100644
--- a/model/contract.go
+++ b/model/contract.go
@@ -22,6 +22,7 @@
File string `json:"file" gorm:"column:file;type:varchar(255);comment:鍚堝悓鏂囦欢"`
CreatedAt *CustomTime `json:"created_at" gorm:"column:created_at;type:datetime;comment:鍒涘缓鏃堕棿"`
CodeStandID string `json:"codeStandID" gorm:"column:code_stand_id;type:varchar(255);comment:缂栫爜id"`
+ //SendTime string `json:"sendTime" gorm:"column:send_time;type:varchar(255);comment:鍙戣揣鏃堕棿"`
gormModel
}
diff --git a/model/invoice.go b/model/invoice.go
index 48ddcd2..0db64fa 100644
--- a/model/invoice.go
+++ b/model/invoice.go
@@ -12,6 +12,7 @@
// Invoice 閿�鍞彂绁�
Invoice struct {
Id int `json:"id" gorm:"column:id;primary_key;AUTO_INCREMENT"`
+ Number string `json:"number" gorm:"column:number;type:varchar(255);comment:鍙戠エ缂栧彿"`
ClientId int `gorm:"client_id" json:"clientId"` // 瀹㈡埛id
Client Client `gorm:"foreignKey:ClientId"`
InvoiceTypeId int `gorm:"invoice_type_id" json:"invoiceTypeId"` // 鍙戠エ绫诲瀷id
@@ -29,6 +30,7 @@
CourierCompanyId int `gorm:"courier_company_id" json:"courierCompanyId"` // 鐗╂祦鍏徃
CourierCompany CourierCompany `gorm:"foreignKey:CourierCompanyId"`
Products []*Product `json:"products" gorm:"many2many:invoice_product;"`
+ CodeStandID string `json:"codeStandID" gorm:"column:code_stand_id;type:varchar(255);comment:缂栫爜id"`
}
// InvoiceSearch 閿�鍞彂绁ㄦ悳绱㈡潯浠�
@@ -76,6 +78,9 @@
if slf.SourceId > 0 {
db = db.Where("source_id = ?", slf.SourceId)
}
+ if slf.Number != "" {
+ db.Where("number = ?", slf.Number)
+ }
return db
}
@@ -107,6 +112,35 @@
return record, err
}
+func (slf *InvoiceSearch) Count() (int64, error) {
+ var db = slf.build()
+ var total int64
+ err := db.Count(&total).Error
+ return total, err
+}
+
+func (slf *InvoiceSearch) MaxAutoIncr() (int, error) {
+ type Result struct {
+ Max int
+ }
+
+ var (
+ result Result
+ db = slf.build()
+ )
+
+ err := db.Select("MAX(id) as max").Scan(&result).Error
+ if err != nil {
+ return result.Max, fmt.Errorf("max err: %v", err)
+ }
+ return result.Max, nil
+}
+
+func (slf *InvoiceSearch) SetNumber(number string) *InvoiceSearch {
+ slf.Number = number
+ return slf
+}
+
func (slf *InvoiceSearch) SetId(id int) *InvoiceSearch {
slf.Id = id
return slf
diff --git a/model/request/contract.go b/model/request/contract.go
index 9a939f8..e051bb6 100644
--- a/model/request/contract.go
+++ b/model/request/contract.go
@@ -13,6 +13,7 @@
StatusId int `json:"status_id"`
File string `json:"file"`
CodeStandID string `json:"codeStandID"` //缂栫爜id
+ SendTime string `json:"sendTime"` //鍙戣揣鏃堕棿s
}
type UpdateContract struct {
diff --git a/model/request/invoice.go b/model/request/invoice.go
index 4e7c7e6..fa08e2f 100644
--- a/model/request/invoice.go
+++ b/model/request/invoice.go
@@ -6,36 +6,40 @@
)
type AddInvoice struct {
- ClientId int `gorm:"client_id" json:"clientId"` // 瀹㈡埛id
- InvoiceTypeId int `gorm:"invoice_type_id" json:"invoiceTypeId"` // 鍙戠エ绫诲瀷id
- PrincipalId int `gorm:"principal_id" json:"principalId"` // 閿�鍞礋璐d汉id
- Subject string `gorm:"subject" json:"subject"` // 涓婚
- InvoiceStatusId int `gorm:"invoice_status_id" json:"invoiceStatusId"` // 鍙戠エ鐘舵�乮d
- SourceType constvar.InvoiceSourceType `gorm:"source_type" json:"sourceType"` // 婧愬崟绫诲瀷(1閿�鍞槑缁嗗崟2鏈嶅姟鍚堝悓)
- SourceId int `gorm:"source_id" json:"sourceId"` // 婧愬崟id
- TaxpayerIdNumber string `gorm:"taxpayer_id_number" json:"taxpayerIdNumber"` // 绾崇◣璇嗗埆鍙�
- InvoiceNumber string `gorm:"invoice_number" json:"invoiceNumber"` // 鍙戠エ鍙风爜
- InvoiceDate string `gorm:"invoice_date" json:"invoiceDate"` // 寮�绁ㄦ棩鏈�
- CourierNumber string `gorm:"courier_number" json:"courierNumber"` // 鐗╂祦鍗曞彿
- CourierCompanyId int `gorm:"courier_company_id" json:"courierCompanyId"` // 鐗╂祦鍏徃
- Products []model.Product `json:"products"` //鍙戠エ瀵瑰簲浜у搧锛屼粠鐩稿簲婧愬崟閲岃幏鍙�
+ Number string `json:"number" gorm:"column:number;type:varchar(255);comment:鍙戠エ缂栧彿"` //鍙戠エ缂栧彿
+ ClientId int `gorm:"client_id" json:"clientId"` // 瀹㈡埛id
+ InvoiceTypeId int `gorm:"invoice_type_id" json:"invoiceTypeId"` // 鍙戠エ绫诲瀷id
+ PrincipalId int `gorm:"principal_id" json:"principalId"` // 閿�鍞礋璐d汉id
+ Subject string `gorm:"subject" json:"subject"` // 涓婚
+ InvoiceStatusId int `gorm:"invoice_status_id" json:"invoiceStatusId"` // 鍙戠エ鐘舵�乮d
+ SourceType constvar.InvoiceSourceType `gorm:"source_type" json:"sourceType"` // 婧愬崟绫诲瀷(1閿�鍞槑缁嗗崟2鏈嶅姟鍚堝悓)
+ SourceId int `gorm:"source_id" json:"sourceId"` // 婧愬崟id
+ TaxpayerIdNumber string `gorm:"taxpayer_id_number" json:"taxpayerIdNumber"` // 绾崇◣璇嗗埆鍙�
+ InvoiceNumber string `gorm:"invoice_number" json:"invoiceNumber"` // 鍙戠エ鍙风爜
+ InvoiceDate string `gorm:"invoice_date" json:"invoiceDate"` // 寮�绁ㄦ棩鏈�
+ CourierNumber string `gorm:"courier_number" json:"courierNumber"` // 鐗╂祦鍗曞彿
+ CourierCompanyId int `gorm:"courier_company_id" json:"courierCompanyId"` // 鐗╂祦鍏徃
+ Products []model.Product `json:"products"` //鍙戠エ瀵瑰簲浜у搧锛屼粠鐩稿簲婧愬崟閲岃幏鍙�
+ CodeStandID string `json:"codeStandID" gorm:"column:code_stand_id;type:varchar(255);comment:缂栫爜id"`
}
type UpdateInvoice struct {
Id int `json:"id" binding:"required"`
- ClientId int `gorm:"client_id" json:"clientId"` // 瀹㈡埛id
- InvoiceTypeId int `gorm:"invoice_type_id" json:"invoiceTypeId"` // 鍙戠エ绫诲瀷id
- PrincipalId int `gorm:"principal_id" json:"principalId"` // 閿�鍞礋璐d汉id
- Subject string `gorm:"subject" json:"subject"` // 涓婚
- InvoiceStatusId int `gorm:"invoice_status_id" json:"invoiceStatusId"` // 鍙戠エ鐘舵�乮d
- SourceType int `gorm:"source_type" json:"sourceType"` // 婧愬崟绫诲瀷(1閿�鍞槑缁嗗崟2鏈嶅姟鍚堝悓)
- SourceId int `gorm:"source_id" json:"sourceId"` // 婧愬崟id
- TaxpayerIdNumber string `gorm:"taxpayer_id_number" json:"taxpayerIdNumber"` // 绾崇◣璇嗗埆鍙�
- InvoiceNumber string `gorm:"invoice_number" json:"invoiceNumber"` // 鍙戠エ鍙风爜
- InvoiceDate int `gorm:"invoice_date" json:"invoiceDate"` // 寮�绁ㄦ棩鏈�
- CourierNumber string `gorm:"courier_number" json:"courierNumber"` // 鐗╂祦鍗曞彿
- CourierCompanyId int `gorm:"courier_company_id" json:"courierCompanyId"` // 鐗╂祦鍏徃
- Products []model.Product `json:"products"` //鍙戠エ瀵瑰簲浜у搧锛屼粠鐩稿簲婧愬崟閲岃幏鍙�
+ Number string `json:"number" gorm:"column:number;type:varchar(255);comment:鍙戠エ缂栧彿"` //鍙戠エ缂栧彿
+ ClientId int `gorm:"client_id" json:"clientId"` // 瀹㈡埛id
+ InvoiceTypeId int `gorm:"invoice_type_id" json:"invoiceTypeId"` // 鍙戠エ绫诲瀷id
+ PrincipalId int `gorm:"principal_id" json:"principalId"` // 閿�鍞礋璐d汉id
+ Subject string `gorm:"subject" json:"subject"` // 涓婚
+ InvoiceStatusId int `gorm:"invoice_status_id" json:"invoiceStatusId"` // 鍙戠エ鐘舵�乮d
+ SourceType int `gorm:"source_type" json:"sourceType"` // 婧愬崟绫诲瀷(1閿�鍞槑缁嗗崟2鏈嶅姟鍚堝悓)
+ SourceId int `gorm:"source_id" json:"sourceId"` // 婧愬崟id
+ TaxpayerIdNumber string `gorm:"taxpayer_id_number" json:"taxpayerIdNumber"` // 绾崇◣璇嗗埆鍙�
+ InvoiceNumber string `gorm:"invoice_number" json:"invoiceNumber"` // 鍙戠エ鍙风爜
+ InvoiceDate int `gorm:"invoice_date" json:"invoiceDate"` // 寮�绁ㄦ棩鏈�
+ CourierNumber string `gorm:"courier_number" json:"courierNumber"` // 鐗╂祦鍗曞彿
+ CourierCompanyId int `gorm:"courier_company_id" json:"courierCompanyId"` // 鐗╂祦鍏徃
+ Products []model.Product `json:"products"` //鍙戠エ瀵瑰簲浜у搧锛屼粠鐩稿簲婧愬崟閲岃幏鍙�
+ CodeStandID string `json:"codeStandID" gorm:"column:code_stand_id;type:varchar(255);comment:缂栫爜id"`
}
type GetInvoiceList struct {
diff --git a/model/request/salesDetails.go b/model/request/salesDetails.go
index 08e425c..0b4a8bd 100644
--- a/model/request/salesDetails.go
+++ b/model/request/salesDetails.go
@@ -29,6 +29,7 @@
LogisticCost float64 `json:"logisticCost" gorm:"column:logistic_cost;type:decimal(10,2);comment:鐗╂祦璐圭敤"`
CodeStandID string `json:"codeStandID"` //缂栫爜id
DeliverType int `json:"deliverType"` //浜や粯绫诲瀷:1.涓�娆″彂璐�,2.澶氭鍙戣揣
+ QuotationId int `json:"quotationId" gorm:"column:quotation_id;type:int;comment:鎶ヤ环鍗昳d"`
}
type UpdateSalesDetails struct {
diff --git a/model/request/serviceOrder.go b/model/request/serviceOrder.go
index a9641dc..4805c77 100644
--- a/model/request/serviceOrder.go
+++ b/model/request/serviceOrder.go
@@ -20,7 +20,7 @@
AppointmentTime string `gorm:"appointment_time" json:"appointmentTime"` // 棰勭害涓婇棬鏃堕棿
SaleChanceId int `gorm:"sale_leads" json:"saleChanceId"` // 閿�鍞満浼歩d
FaultTypeId int `gorm:"severity_id" json:"faultTypeId"` // 鏁呴殰绫诲埆id
- SeverityId int `gorm:"severity_id" json:"severity"` // 涓ラ噸绋嬪害id
+ SeverityId int `gorm:"severity_id" json:"severityId"` // 涓ラ噸绋嬪害id
ServiceOrderStatusId int `gorm:"column:service_order_status_id;type:int;not null;default:0;comment:鏈嶅姟鍗曠姸鎬乮d" json:"serviceOrderStatusId"` // 澶勭悊鐘舵��
ExpectTime string `gorm:"expect_time" json:"expectTime"` // 甯屾湜澶勭悊鏃堕棿
RealTime string `gorm:"real_time" json:"realTime"` // 瀹為檯澶勭悊鏃堕棿
diff --git a/model/salesDetails.go b/model/salesDetails.go
index bf371e3..569fbf3 100644
--- a/model/salesDetails.go
+++ b/model/salesDetails.go
@@ -41,6 +41,8 @@
AmountTotal decimal.Decimal `gorm:"column:amount_total;type:decimal(12,2);comment:浠风◣鍚堣" json:"amountTotal"` // 浠风◣鍚堣
CodeStandID string `json:"codeStandID" gorm:"column:code_stand_id;type:varchar(255);comment:缂栫爜id"`
DeliverType int `json:"deliverType" gorm:"column:deliver_type;type:int;comment:浜や粯绫诲瀷(1.涓�娆″彂璐�,2.澶氭鍙戣揣)"`
+ QuotationId int `json:"quotationId" gorm:"column:quotation_id;type:int;comment:鎶ヤ环鍗昳d"`
+ Quotation Quotation `json:"quotation" gorm:"foreignKey:QuotationId"`
CrmModel
}
@@ -107,7 +109,8 @@
Preload("Member").
Preload("SaleChance").
Preload("WechatOrderStatus").
- Preload("Client")
+ Preload("Client").
+ Preload("Quotation")
}
return db
diff --git a/model/salesRefund.go b/model/salesRefund.go
index 9155fb5..e593902 100644
--- a/model/salesRefund.go
+++ b/model/salesRefund.go
@@ -16,8 +16,8 @@
Client Client `json:"client" gorm:"foreignKey:ClientId"`
Number string `json:"number" gorm:"column:number;type:varchar(255);comment:閫�娆惧崟鍙�"`
SourceType constvar.RefundSourceType `gorm:"column:source_type;type:int;not null;default 0;comment:鏉ユ簮绫诲瀷锛�1閿�鍞��璐э級" json:"sourceType"` // 鏉ユ簮绫诲瀷锛�1閿�鍞��璐э級
- SourceId int `gorm:"column:source_id;type:int;not null;default 0;comment:婧愬崟id " json:"sourceId"` // 婧愬崟id
- Source SalesReturn `gorm:"foreignKey:SourceId" json:"Source"`
+ SalesReturnId int `gorm:"column:source_id;type:int;not null;default 0;comment:婧愬崟id " json:"sourceId"` // 婧愬崟id
+ SalesReturn SalesReturn `gorm:"foreignKey:SalesReturnId" json:"salesReturn"`
MemberId int `json:"memberId" gorm:"column:member_id;type:int;comment:璐熻矗浜篿d"`
Member User `json:"member" gorm:"foreignKey:MemberId"`
RefundDate string `json:"refundDate" gorm:"column:refund_date;type:varchar(255);comment:閫�娆炬棩鏈�"`
@@ -78,16 +78,16 @@
db = db.Where("source_type = ?", slf.SourceType)
}
- if slf.SourceId != 0 {
- db = db.Where("source_id = ?", slf.SourceId)
+ if slf.SalesReturnId != 0 {
+ db = db.Where("source_id = ?", slf.SalesReturnId)
}
if slf.Preload {
db = db.Preload("Client").
Preload("PaymentType").
Preload("BankAccount").
- Preload("Source").
- Preload("Products")
+ Preload("Products").
+ Preload("SalesReturn")
}
if slf.KeywordType != "" {
switch slf.KeywordType {
@@ -212,7 +212,7 @@
}
func (slf *SalesRefundSearch) SetSourceId(id int) *SalesRefundSearch {
- slf.SourceId = id
+ slf.SalesReturnId = id
return slf
}
diff --git a/model/serviceOrder.go b/model/serviceOrder.go
index 3440357..c3d350b 100644
--- a/model/serviceOrder.go
+++ b/model/serviceOrder.go
@@ -38,7 +38,7 @@
SaleChance SaleChance `gorm:"foreignKey:SaleChanceId"`
FaultTypeId int `gorm:"column:severity_id;type:int;not null;default:0;comment:鏁呴殰绫诲埆id" json:"faultTypeId"` // 鏁呴殰绫诲埆id
FaultType FaultType `gorm:"foreignKey:FaultTypeId"`
- SeverityId int `gorm:"column:severity_id;type:int;not null;default:0;comment:涓ラ噸绋嬪害id" json:"severity"` // 涓ラ噸绋嬪害id
+ SeverityId int `gorm:"column:severity_order_id;type:int;not null;default:0;comment:涓ラ噸绋嬪害id" json:"severityId"` // 涓ラ噸绋嬪害id
Severity Severity `gorm:"foreignKey:SeverityId"`
ServiceOrderStatusId int `gorm:"column:service_order_status_id;type:int;not null;default:0;comment:鏈嶅姟鍗曠姸鎬乮d" json:"serviceOrderStatusId"` // 澶勭悊鐘舵��
ServiceOrderStatus ServiceOrderStatus `gorm:"foreignKey:ServiceOrderStatusId"`
@@ -134,8 +134,8 @@
if len(slf.ServiceManIds) > 0 {
db = db.Where("service_man_id in ?", slf.ServiceManIds)
}
- if slf.Number != "" {
- db = db.Where("number = ?", slf.Number)
+ if slf.ServiceNumber != "" {
+ db = db.Where("service_number = ?", slf.ServiceNumber)
}
return db
@@ -220,7 +220,7 @@
}
func (slf *ServiceOrderSearch) SetNumber(number string) *ServiceOrderSearch {
- slf.Number = number
+ slf.ServiceNumber = number
return slf
}
diff --git a/model/severity.go b/model/severity.go
index bccf576..51284df 100644
--- a/model/severity.go
+++ b/model/severity.go
@@ -29,7 +29,7 @@
)
func (Severity) TableName() string {
- return "severity"
+ return "severity_order"
}
func NewSeveritySearch() *SeveritySearch {
diff --git a/service/invoice.go b/service/invoice.go
index edb207e..9aaf90f 100644
--- a/service/invoice.go
+++ b/service/invoice.go
@@ -43,7 +43,7 @@
if err != nil {
return ecode.DBErr
}
- } else if invoice.SourceType == constvar.InvoiceSourceTypeServiceContract { //鏇存柊閿�鍞槑缁嗗凡寮�绁ㄩ噾棰�
+ } else if invoice.SourceType == constvar.InvoiceSourceTypeSaleDetail { //鏇存柊閿�鍞槑缁嗗凡寮�绁ㄩ噾棰�
salesDetails, err := model.NewSalesDetailsSearch().SetId(invoice.SourceId).SetPreload(true).First()
if err != nil {
return ecode.DBErr
diff --git a/service/salesRefund.go b/service/salesRefund.go
index c9897a1..52a4a88 100644
--- a/service/salesRefund.go
+++ b/service/salesRefund.go
@@ -12,7 +12,7 @@
type SalesRefundService struct{}
func (SalesRefundService) AddSalesRefund(salesRefund *model.SalesRefund) int {
- salesReturnRecord, err := model.NewSalesReturnSearch().SetId(salesRefund.SourceId).SetPreload(true).First()
+ salesReturnRecord, err := model.NewSalesReturnSearch().SetId(salesRefund.SalesReturnId).SetPreload(true).First()
if err != nil {
return ecode.SalesReturnNotExist
}
@@ -37,7 +37,7 @@
return errors.New("閫�璐т骇鍝佸搴旀�讳环瓒呭嚭搴旈��鎬讳环")
}
salesReturnRecord.AmountShouldRefund = salesReturnRecord.AmountTotal.Sub(salesReturnRecord.AmountHasRefund).Round(2)
- err = model.NewSalesReturnSearch().SetId(salesRefund.SourceId).Update(salesReturnRecord)
+ err = model.NewSalesReturnSearch().SetId(salesRefund.SalesReturnId).Update(salesReturnRecord)
if err != nil {
code = ecode.DBErr
return err
@@ -73,7 +73,7 @@
if err != nil {
return ecode.SalesRefundNotExist
}
- salesReturnRecord, err := model.NewSalesReturnSearch().SetId(refund.SourceId).SetPreload(true).First()
+ salesReturnRecord, err := model.NewSalesReturnSearch().SetId(refund.SalesReturnId).SetPreload(true).First()
if err != nil {
return ecode.SalesReturnNotExist
}
@@ -90,7 +90,7 @@
}
salesReturnRecord.AmountHasRefund = salesReturnRecord.AmountHasRefund.Sub(amount).Round(2)
salesReturnRecord.AmountShouldRefund = salesReturnRecord.AmountTotal.Sub(salesReturnRecord.AmountHasRefund).Round(2)
- err = model.NewSalesReturnSearch().SetId(refund.SourceId).Update(salesReturnRecord)
+ err = model.NewSalesReturnSearch().SetId(refund.SalesReturnId).Update(salesReturnRecord)
if err != nil {
return err
}
@@ -120,7 +120,7 @@
return ecode.SalesRefundNotExist
}
- salesReturnRecord, err := model.NewSalesReturnSearch().SetId(salesRefund.SourceId).SetPreload(true).First()
+ salesReturnRecord, err := model.NewSalesReturnSearch().SetId(salesRefund.SalesReturnId).SetPreload(true).First()
if err != nil {
return ecode.SalesReturnNotExist
}
@@ -153,7 +153,7 @@
return errors.New("閫�璐т骇鍝佸搴旀�讳环瓒呭嚭搴旈��鎬讳环")
}
- err = model.NewSalesReturnSearch().SetId(salesRefund.SourceId).Update(salesReturnRecord)
+ err = model.NewSalesReturnSearch().SetId(salesRefund.SalesReturnId).Update(salesReturnRecord)
if err != nil {
code = ecode.DBErr
return err
@@ -168,7 +168,7 @@
return ecode.OK
}
-func (SalesRefundService) GetSalesRefundList(page, pageSize int, keywordType constvar.SalesRefundKeywordType, keyword string, sourceId int, memberIds []int) ([]*model.SalesRefund, int64, int) {
+func (SalesRefundService) GetSalesRefundList(page, pageSize int, keywordType constvar.SalesRefundKeywordType, keyword string, sourceId int, memberIds []int) ([]*model.SalesRefund, int64, int) {
// get contact list
contacts, total, err := model.NewSalesRefundSearch().
SetKeywordType(keywordType).
--
Gitblit v1.8.0