fix(report):修正一系列报表查询中出现的无法获取数据的问题。
This commit is contained in:
parent
7806f07766
commit
b4ce754c0d
|
@ -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(
|
||||
"已经获取到核算报表计算状态。",
|
||||
|
|
|
@ -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"`
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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 (
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
|
|
@ -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"`
|
||||
}
|
||||
|
|
14
vo/report.go
14
vo/report.go
|
@ -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
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user