|
@@ -74,36 +74,38 @@ func GetInvoicePaymentCensusPageList(page base.IPage, condition string, pars []i
|
|
|
}
|
|
|
|
|
|
type InvoicePaymentSummaryItem struct {
|
|
|
- SummaryId int `json:"summary_id" description:"汇总ID"`
|
|
|
- RegisterId int `json:"register_id" description:"登记ID"`
|
|
|
- CompanyName string `json:"company_name" description:"客户名称"`
|
|
|
- NewCompany int `json:"new_company" description:"是否为新客户: 0-否; 1-是"`
|
|
|
- StartDate time.Time `json:"start_date" description:"合同开始日期"`
|
|
|
- EndDate time.Time `json:"end_date" description:"合同结束日期"`
|
|
|
- InvoiceId int `json:"invoice_id" description:"开票ID"`
|
|
|
- InvoiceDate time.Time `json:"invoice_time" description:"开票日期"`
|
|
|
- InvoiceAmount float64 `json:"invoice_amount" description:"开票金额"`
|
|
|
- SellerId int `json:"seller_id" description:"销售ID"`
|
|
|
- SellerName string `json:"seller_name" description:"销售名称"`
|
|
|
- SellerGroupId int `json:"seller_group_id" description:"销售组别ID"`
|
|
|
- SellerGroupName string `json:"seller_group_name" description:"销售组别名称"`
|
|
|
- PaymentId int `json:"payment_id" description:"到款ID"`
|
|
|
- PaymentDate time.Time `json:"payment_date" description:"到款日期"`
|
|
|
- PaymentAmount float64 `json:"payment_amount" description:"到款金额"`
|
|
|
- PayType int `json:"pay_type" description:"付款方式:0-无;1-年付;2-半年付;3-季付;4-次付;5-异常"`
|
|
|
- ServiceProductId int `json:"service_product_id" description:"套餐类型:1ficc套餐,2权益套餐"`
|
|
|
- ContractAmount float64 `gorm:"column:contract_amount" json:"contract_amount" description:"合同金额"`
|
|
|
- InvoicedAmount float64 `gorm:"column:invoiced_amount" json:"invoiced_amount" description:"开票金额"`
|
|
|
- CurrencyUnit string `gorm:"column:currency_unit" json:"currency_unit" description:"货币国际代码"`
|
|
|
- RMBRate float64 `gorm:"column:rmb_rate" json:"rmb_rate" description:"人民币汇率(create_time当日)"`
|
|
|
- UnitName string `json:"unit_name" description:"单位名称"`
|
|
|
+ SummaryId int `json:"summary_id" description:"汇总ID"`
|
|
|
+ RegisterId int `json:"register_id" description:"登记ID"`
|
|
|
+ CompanyName string `json:"company_name" description:"客户名称"`
|
|
|
+ NewCompany int `json:"new_company" description:"是否为新客户: 0-否; 1-是"`
|
|
|
+ StartDate time.Time `json:"start_date" description:"合同开始日期"`
|
|
|
+ EndDate time.Time `json:"end_date" description:"合同结束日期"`
|
|
|
+ InvoiceId int `json:"invoice_id" description:"开票ID"`
|
|
|
+ InvoiceDate time.Time `json:"invoice_time" description:"开票日期"`
|
|
|
+ InvoiceOriginAmount float64 `json:"invoice_origin_amount" description:"开票原始金额"`
|
|
|
+ InvoiceAmount float64 `json:"invoice_amount" description:"开票换算金额"`
|
|
|
+ SellerId int `json:"seller_id" description:"销售ID"`
|
|
|
+ SellerName string `json:"seller_name" description:"销售名称"`
|
|
|
+ SellerGroupId int `json:"seller_group_id" description:"销售组别ID"`
|
|
|
+ SellerGroupName string `json:"seller_group_name" description:"销售组别名称"`
|
|
|
+ PaymentId int `json:"payment_id" description:"到款ID"`
|
|
|
+ PaymentDate time.Time `json:"payment_date" description:"到款日期"`
|
|
|
+ PaymentOriginAmount float64 `json:"payment_origin_amount" description:"到款原始金额"`
|
|
|
+ PaymentAmount float64 `json:"payment_amount" description:"到款换算金额"`
|
|
|
+ PayType int `json:"pay_type" description:"付款方式:0-无;1-年付;2-半年付;3-季付;4-次付;5-异常"`
|
|
|
+ ServiceProductId int `json:"service_product_id" description:"套餐类型:1ficc套餐,2权益套餐"`
|
|
|
+ ContractAmount float64 `gorm:"column:contract_amount" json:"contract_amount" description:"合同金额"`
|
|
|
+ InvoicedAmount float64 `gorm:"column:invoiced_amount" json:"invoiced_amount" description:"开票金额"`
|
|
|
+ CurrencyUnit string `gorm:"column:currency_unit" json:"currency_unit" description:"货币国际代码"`
|
|
|
+ RMBRate float64 `gorm:"column:rmb_rate" json:"rmb_rate" description:"人民币汇率(create_time当日)"`
|
|
|
+ UnitName string `json:"unit_name" description:"单位名称"`
|
|
|
}
|
|
|
|
|
|
|
|
|
func GetInvoicePaymentCensusSummaryData(condition string, pars []interface{}) (results []*InvoicePaymentSummaryItem, err error) {
|
|
|
fields := []string{"a.id AS summary_id", "a.register_id", "a.invoice_id", "a.payment_id", "a.service_product_id", "b.company_name", "b.start_date", "b.end_date",
|
|
|
- "c.origin_amount AS invoice_amount", "c.invoice_time AS invoice_date", "IF(c.seller_id > 0, c.seller_id, d.seller_id) AS seller_id", "IF(c.seller_name = '' OR c.seller_name IS NULL, d.seller_name, c.seller_name) AS seller_name", "IF(c.seller_group_id > 0,c.seller_group_id,d.seller_group_id) AS seller_group_id",
|
|
|
- "IF(c.seller_group_name = '' OR c.seller_group_name IS NULL, d.seller_group_name, c.seller_group_name) AS seller_group_name", "d.origin_amount AS payment_amount", "d.invoice_time AS payment_date", "d.pay_type", "b.currency_unit",
|
|
|
+ "c.origin_amount AS invoice_origin_amount", "c.amount AS invoice_amount", "c.invoice_time AS invoice_date", "IF(c.seller_id > 0, c.seller_id, d.seller_id) AS seller_id", "IF(c.seller_name = '' OR c.seller_name IS NULL, d.seller_name, c.seller_name) AS seller_name", "IF(c.seller_group_id > 0,c.seller_group_id,d.seller_group_id) AS seller_group_id",
|
|
|
+ "IF(c.seller_group_name = '' OR c.seller_group_name IS NULL, d.seller_group_name, c.seller_group_name) AS seller_group_name", "d.amount AS payment_amount", "d.origin_amount AS payment_origin_amount", "d.invoice_time AS payment_date", "d.pay_type", "b.currency_unit",
|
|
|
}
|
|
|
query := global.DEFAULT_MYSQL.Table("invoice_payment_summary AS a").
|
|
|
Select(strings.Join(fields, ",")).
|
|
@@ -206,7 +208,7 @@ type IncomeSummaryItem struct {
|
|
|
func GetContractSummaryIncomeAmount(condition string, pars []interface{}) (results []*IncomeSummaryItem, err error) {
|
|
|
query := global.DEFAULT_MYSQL.Table("invoice_payment_summary AS a").
|
|
|
Select("IF(a.invoice_id=0,d.amount, b.amount) AS amount,IF(a.invoice_id=0,d.invoice_time, b.invoice_time) AS invoice_date,"+
|
|
|
- " c.contract_type,c.company_name," +
|
|
|
+ " c.contract_type,c.company_name,"+
|
|
|
"IF(a.invoice_id=0,d.seller_name, b.seller_name) AS seller_name,"+
|
|
|
"IF(a.invoice_id=0,d.seller_id, b.seller_id) AS final_seller_id,"+
|
|
|
"IF(a.invoice_id=0,d.seller_group_id, b.seller_group_id) AS seller_group_id").
|