fix(#27): 修复用户电量电费详细为空

This commit is contained in:
2023-08-15 14:13:25 +08:00
parent 7d3fafeb04
commit 2844db1a86
4 changed files with 39 additions and 43 deletions

View File

@@ -501,57 +501,53 @@ func (cr _CalculateRepository) SaveReportTenement(tx pgx.Tx, report model.Report
defer cancel()
insertQuery := cr.ds.
Insert("report_tenement")
//var values []goqu.Record
var rows []goqu.Record
for _, tenement := range tenements {
//charge := findTenementCharge(tenementCharges, tenement.Id)
for _, charge := range tenementCharges {
tenementStr, _ := json.Marshal(tenement)
overallStr, _ := json.Marshal(charge.Overall)
criticalStr, _ := json.Marshal(charge.Critical)
peakStr, _ := json.Marshal(charge.Peak)
flatStr, _ := json.Marshal(charge.Flat)
valleyStr, _ := json.Marshal(charge.Valley)
lossStr, _ := json.Marshal(charge.Loss)
meters, _ := json.Marshal(convertToNestedMeters(charge.Submeters))
pooled, _ := json.Marshal(convertToNestedMeters(charge.Poolings))
fmt.Println(report.Id, tenement.Id, "123")
insertQuery = insertQuery.
Cols(
"report_id", "tenement_id", "tenement_detail", "calc_period", "overall", "critical", "peak", "flat", "valley", "loss", "basic_fee_pooled",
"adjust_fee_pooled", "loss_fee_pooled", "final_charge", "invoice", "meters", "pooled",
).
Vals(goqu.Vals{report.Id,
tenement.Id,
tenementStr,
report.Period,
overallStr,
criticalStr,
peakStr,
flatStr,
valleyStr,
lossStr,
charge.BasicFee,
charge.AdjustFee,
charge.LossPooled,
charge.PublicPooled,
charge.FinalCharges,
meters,
pooled})
tenementCharge := findTenementCharge(tenementCharges, tenement.Id)
tenementDetail, _ := json.Marshal(tenement)
overallJSON, _ := json.Marshal(tenementCharge.Overall)
criticalJSON, _ := json.Marshal(tenementCharge.Critical)
peakJSON, _ := json.Marshal(tenementCharge.Peak)
flatJSON, _ := json.Marshal(tenementCharge.Flat)
valleyJSON, _ := json.Marshal(tenementCharge.Valley)
lossJSON, _ := json.Marshal(tenementCharge.Loss)
submetersJSON, _ := json.Marshal(convertToNestedMeters(tenementCharge.Submeters))
poolingsJSON, _ := json.Marshal(convertToNestedMeters(tenementCharge.Poolings))
row := goqu.Record{
"report_id": report.Id,
"tenement_id": tenement.Id,
"tenement_detail": tenementDetail,
"calc_period": report.Period,
"overall": overallJSON,
"critical": criticalJSON,
"peak": peakJSON,
"flat": flatJSON,
"valley": valleyJSON,
"loss": lossJSON,
"basic_fee_pooled": tenementCharge.BasicFee,
"adjust_fee_pooled": tenementCharge.AdjustFee,
"loss_fee_pooled": tenementCharge.LossPooled,
"final_pooled": tenementCharge.PublicPooled,
"final_charge": tenementCharge.FinalCharges,
"meters": submetersJSON,
"pooled": poolingsJSON,
}
rows = append(rows, row)
}
sql, params, err := insertQuery.Prepared(true).ToSQL()
sql, params, err := insertQuery.Rows(rows).Prepared(true).ToSQL()
if err != nil {
fmt.Println(err)
}
fmt.Println("====================================================================", sql)
_, err = tx.Exec(ctx, sql, params...)
if err != nil {
fmt.Println(err.Error())
return err
}
fmt.Println("保存成功")
return nil
}