enhance(enduser):基本完成终端用户表计在一个时间阶段内的统计功能。

This commit is contained in:
徐涛
2022-09-22 09:56:33 +08:00
parent f8f8a0ced1
commit f4ee7cf8a4
7 changed files with 176 additions and 3 deletions

View File

@@ -4,6 +4,7 @@ import (
"database/sql"
"electricity_bill_calc/excel"
"electricity_bill_calc/global"
"electricity_bill_calc/model"
"electricity_bill_calc/response"
"electricity_bill_calc/security"
"electricity_bill_calc/service"
@@ -21,6 +22,7 @@ func InitializeEndUserController(router *gin.Engine) {
router.GET("/report/:rid/meter/template", downloadEndUserRegisterTemplate)
router.POST("/report/:rid/meter/batch", security.EnterpriseAuthorize, uploadEndUserRegisterTemplate)
router.PUT("/report/:rid/submeter/:pid/:mid", security.EnterpriseAuthorize, modifyEndUserRegisterRecord)
router.GET("/end/user/adjusts", security.MustAuthenticated, statEndUserInPeriod)
}
func fetchEndUserInReport(c *gin.Context) {
@@ -224,3 +226,33 @@ func modifyEndUserRegisterRecord(c *gin.Context) {
}
result.Success("指定终端用户抄表记录已经更新。")
}
func statEndUserInPeriod(c *gin.Context) {
result := response.NewResult(c)
session, err := _retreiveSession(c)
if err != nil {
result.Unauthorized(err.Error())
return
}
requestUser := lo.
If(session.Type == model.USER_TYPE_ENT, session.Uid).
Else(c.DefaultQuery("user", ""))
requestPark := c.DefaultQuery("park", "")
if len(requestPark) > 0 && session.Type == model.USER_TYPE_ENT {
if !ensureParkBelongs(c, result, requestPark) {
result.Unauthorized("不能获取不属于自己的园区。")
return
}
}
startDate := c.DefaultQuery("start", "")
endDate := c.DefaultQuery("end", "")
stat, err := service.EndUserService.StatEndUserRecordInPeriod(requestUser, requestPark, startDate, endDate)
if err != nil {
result.Error(http.StatusInternalServerError, err.Error())
return
}
result.Success(
"已经完成终端用户的费用统计",
gin.H{"details": stat},
)
}

View File

@@ -186,6 +186,7 @@ func statAdditionalCharges(c *gin.Context) {
requestPark := c.DefaultQuery("park", "")
if len(requestPark) > 0 && session.Type == model.USER_TYPE_ENT {
if !ensureParkBelongs(c, result, requestPark) {
result.Unauthorized("不能获取不属于自己的园区。")
return
}
}

View File

@@ -190,7 +190,6 @@ func batchImport04kVMeterArchive(c *gin.Context) {
mergedMeters := lo.Map(records, func(meter model.Meter04KV, index int) model.Meter04KV {
meter.ParkId = requestParkId
meter.Enabled = true
meter.WillDilute = false
return meter
})
errs = service.Meter04kVService.DuplicateMeterCodeValidate(mergedMeters)