fix(report):修正一系列报表查询中出现的无法获取数据的问题。

This commit is contained in:
徐涛 2023-06-27 10:58:11 +08:00
parent 7806f07766
commit b4ce754c0d
7 changed files with 17 additions and 15 deletions

View File

@ -20,7 +20,7 @@ import (
var reportLog = logger.Named("Handler", "Report")
func InitializeReportHandlers(router *fiber.App) {
router.Get("/repotrs", security.MustAuthenticated, reportComprehensiveSearch)
router.Get("/reports", security.MustAuthenticated, reportComprehensiveSearch)
router.Post("/report", security.EnterpriseAuthorize, initNewReportCalculateTask)
router.Get("/report/draft", security.EnterpriseAuthorize, listDraftReportIndicies)
router.Post("/report/calcualte", security.EnterpriseAuthorize, testCalculateReportSummary)
@ -33,7 +33,7 @@ func InitializeReportHandlers(router *fiber.App) {
router.Get("/report/:rid/summary", security.MustAuthenticated, getReportSummary)
router.Get("/report/:rid/summary/filled", security.EnterpriseAuthorize, getParkFilledSummary)
router.Get("/report/:rid/pooled", security.MustAuthenticated, listPooledMetersInReport)
router.Get("/report/:rid/:code/submeters", security.MustAuthenticated, listSubmetersInPooledMeter)
router.Get("/report/:rid/pooled/:code/submeter", security.MustAuthenticated, listSubmetersInPooledMeter)
router.Get("/report/:rid/tenement", security.MustAuthenticated, listTenementsInReport)
router.Get("/report/:rid/tenement/:tid", security.MustAuthenticated, getTenementDetailInReport)
}
@ -198,7 +198,7 @@ func listCalculateTaskStatus(c *fiber.Ctx) error {
reportLog.Error("无法获取核算报表计算状态", zap.Error(err))
return result.Error(fiber.StatusInternalServerError, "无法获取核算报表计算状态。")
}
var statusResponse []*vo.ReportCalculateTaskStatusResponse
statusResponse := make([]*vo.ReportCalculateTaskStatusResponse, 0)
copier.Copy(&statusResponse, &status)
return result.Success(
"已经获取到核算报表计算状态。",

View File

@ -10,6 +10,7 @@ type Park struct {
Id string `json:"id"`
UserId string `json:"userId"`
Name string `json:"name"`
Abbr string `json:"-"`
Area decimal.NullDecimal `json:"area"`
TenementQuantity decimal.NullDecimal `json:"tenement"`
Capacity decimal.NullDecimal `json:"capacity"`

View File

@ -71,6 +71,7 @@ type ReportPublicConsumption struct {
ConsumptionTotal decimal.Decimal `json:"consumptionTotal" db:"consumption_total"`
LossAdjustTotal decimal.Decimal `json:"lossAdjustTotal" db:"loss_adjust_total"`
FinalTotal decimal.Decimal `json:"finalTotal" db:"final_total"`
PublicPooled int16 `json:"publicPooled" db:"public_pooled"`
}
type ReportDetailedPublicConsumption struct {

View File

@ -530,7 +530,7 @@ func (rr _ReportRepository) ListTenementInReport(rid string, page uint, keyword
startRow := (page - 1) * config.ServiceSettings.ItemsPageSize
reportQuery = reportQuery.
Order(goqu.I("t.movedin_at").Asc()).
Order(goqu.I("t.moved_in_at").Asc()).
Offset(startRow).Limit(config.ServiceSettings.ItemsPageSize)
var (

View File

@ -408,10 +408,10 @@ func (ur _UserRepository) RetrieveUsersDetail(uids []string) ([]*model.UserDetai
var users []*model.UserDetail
userQuery := ur.ds.
From("user_detail").
Where(goqu.Ex{"id": goqu.Any(uids)})
Where(goqu.Ex{"id": uids})
userSql, userParams, _ := userQuery.Prepared(true).ToSQL()
if err := pgxscan.Select(ctx, global.DB, users, userSql, userParams...); err != nil {
if err := pgxscan.Select(ctx, global.DB, &users, userSql, userParams...); err != nil {
ur.log.Error("从数据库查询用户列表失败。", zap.Error(err))
return make([]*model.UserDetail, 0), err
}

View File

@ -44,7 +44,7 @@ type MeterReplacingForm struct {
type SimplifiedMeterQueryResponse struct {
Code string `json:"code"`
Address *string `json:"address"`
Park string `json:"park"`
Park string `json:"parkId"`
}
type SimplifiedMeterDetailResponse struct {
@ -58,7 +58,7 @@ type SimplifiedMeterDetailResponse struct {
OnFloor *string `json:"onFloor"`
Area decimal.Decimal `json:"area"`
Enabled bool `json:"enabled"`
MeterType int16 `json:"meterType"`
MeterType int16 `json:"type"`
AttachedAt types.DateTime `json:"attachedAt"`
DetachedAt *types.DateTime `json:"detachedAt"`
}

View File

@ -197,32 +197,32 @@ type ReportCalculateTaskStatusResponse struct {
}
type ReportPublicQueryResponse struct {
SimplifiedMeterQueryResponse
SimplifiedMeterDetailResponse
Overall ConsumptionDisplay `json:"overall"`
AdjustLoss ConsumptionDisplay `json:"adjustLoss"`
}
func (rpqr *ReportPublicQueryResponse) FromReportDetailPublicConsumption(value *model.ReportDetailedPublicConsumption) {
copier.Copy(&rpqr.SimplifiedMeterQueryResponse, &value.MeterDetail)
copier.Copy(&rpqr.SimplifiedMeterDetailResponse, &value.MeterDetail)
rpqr.Overall.FromConsumptionUnit(&value.ReportPublicConsumption.Overall)
rpqr.Overall.Amount(value.ReportPublicConsumption.Overall.Amount.Add(value.ReportPublicConsumption.LossAdjust.Amount))
rpqr.AdjustLoss.FromConsumptionUnit(&value.ReportPublicConsumption.LossAdjust)
}
type ReportPooledQueryResponse struct {
SimplifiedMeterQueryResponse `copier:"MeterDetail"`
Overall ConsumptionDisplay `json:"overall"`
PoolMethod int16 `json:"poolMethod"`
SimplifiedMeterDetailResponse
Overall ConsumptionDisplay `json:"overall"`
PoolMethod int16 `json:"poolMethod"`
}
func (rpqr *ReportPooledQueryResponse) FromReportDetailPooledConsumption(value *model.ReportDetailedPooledConsumption) {
copier.Copy(&rpqr.SimplifiedMeterQueryResponse, &value.MeterDetail)
copier.Copy(&rpqr.SimplifiedMeterDetailResponse, &value.MeterDetail)
rpqr.Overall.FromConsumptionUnit(&value.ReportPooledConsumption.Overall)
rpqr.PoolMethod = value.PublicPooled
}
func (rpqr *ReportPooledQueryResponse) FromReportDetailNestedMeterConsumption(value *model.ReportDetailNestedMeterConsumption) {
copier.Copy(&rpqr.SimplifiedMeterQueryResponse, &value.Meter)
copier.Copy(&rpqr.SimplifiedMeterDetailResponse, &value.Meter)
rpqr.Overall.FromConsumptionUnit(&value.Consumption.Overall)
rpqr.PoolMethod = -1
}