forked from free-lancers/electricity_bill_calc_service
		
	enhance(report):构建报表数据库相关功能文件。
This commit is contained in:
		
							
								
								
									
										92
									
								
								model/calculate/calculate.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								model/calculate/calculate.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,92 @@ | ||||
| package calculate | ||||
|  | ||||
| import ( | ||||
| 	"electricity_bill_calc/model" | ||||
| 	"electricity_bill_calc/types" | ||||
|  | ||||
| 	"github.com/shopspring/decimal" | ||||
| ) | ||||
|  | ||||
| type Reading struct { | ||||
| 	ReadAt   types.DateTime | ||||
| 	Ratio    decimal.Decimal | ||||
| 	Overall  decimal.Decimal | ||||
| 	Critical decimal.Decimal | ||||
| 	Peak     decimal.Decimal | ||||
| 	Flat     decimal.Decimal | ||||
| 	Valley   decimal.Decimal | ||||
| } | ||||
|  | ||||
| type Pooling struct { | ||||
| 	Code   string | ||||
| 	Detail model.ConsumptionUnit | ||||
| } | ||||
|  | ||||
| type Meter struct { | ||||
| 	Code                    string | ||||
| 	Detail                  model.MeterDetail | ||||
| 	CoveredArea             decimal.Decimal | ||||
| 	LastTermReading         *Reading | ||||
| 	CurrentTermReading      *Reading | ||||
| 	Overall                 model.ConsumptionUnit | ||||
| 	Critical                model.ConsumptionUnit | ||||
| 	Peak                    model.ConsumptionUnit | ||||
| 	Flat                    model.ConsumptionUnit | ||||
| 	Valley                  model.ConsumptionUnit | ||||
| 	AdjustLoss              model.ConsumptionUnit | ||||
| 	PooledBasic             model.ConsumptionUnit | ||||
| 	PooledAdjust            model.ConsumptionUnit | ||||
| 	PooledLoss              model.ConsumptionUnit | ||||
| 	PooledPublic            model.ConsumptionUnit | ||||
| 	SharedPoolingProportion decimal.Decimal | ||||
| 	Poolings                []*Pooling | ||||
| } | ||||
|  | ||||
| type TenementCharge struct { | ||||
| 	Tenement     string | ||||
| 	Overall      model.ConsumptionUnit | ||||
| 	Critical     model.ConsumptionUnit | ||||
| 	Peak         model.ConsumptionUnit | ||||
| 	Flat         model.ConsumptionUnit | ||||
| 	Valley       model.ConsumptionUnit | ||||
| 	BasicFee     decimal.Decimal | ||||
| 	AdjustFee    decimal.Decimal | ||||
| 	LossPooled   decimal.Decimal | ||||
| 	PublicPooled decimal.Decimal | ||||
| 	FinalCharges decimal.Decimal | ||||
| 	Submeters    []*Meter | ||||
| 	Poolings     []*Meter | ||||
| } | ||||
|  | ||||
| type Summary struct { | ||||
| 	ReportId                     string | ||||
| 	OverallArea                  decimal.Decimal | ||||
| 	Overall                      model.ConsumptionUnit | ||||
| 	ConsumptionFee               decimal.Decimal | ||||
| 	Critical                     model.ConsumptionUnit | ||||
| 	Peak                         model.ConsumptionUnit | ||||
| 	Flat                         model.ConsumptionUnit | ||||
| 	Valley                       model.ConsumptionUnit | ||||
| 	Loss                         decimal.Decimal | ||||
| 	LossFee                      decimal.Decimal | ||||
| 	LossProportion               decimal.Decimal | ||||
| 	AuthoizeLoss                 model.ConsumptionUnit | ||||
| 	BasicFee                     decimal.Decimal | ||||
| 	BasicPooledPriceConsumption  decimal.Decimal | ||||
| 	BasicPooledPriceArea         decimal.Decimal | ||||
| 	AdjustFee                    decimal.Decimal | ||||
| 	AdjustPooledPriceConsumption decimal.Decimal | ||||
| 	AdjustPooledPriceArea        decimal.Decimal | ||||
| 	LossDilutedPrice             decimal.Decimal | ||||
| 	TotalConsumption             decimal.Decimal | ||||
| 	FinalDilutedOverall          decimal.Decimal | ||||
| } | ||||
|  | ||||
| type PoolingSummary struct { | ||||
| 	Tenement          string | ||||
| 	Meter             string | ||||
| 	TargetMeter       string | ||||
| 	Area              decimal.NullDecimal | ||||
| 	OverallAmount     decimal.Decimal | ||||
| 	PoolingProportion decimal.Decimal | ||||
| } | ||||
		Reference in New Issue
	
	Block a user