forked from free-lancers/electricity_bill_calc_service
enhance(enduser):基本完成终端用户表计在一个时间阶段内的统计功能。
This commit is contained in:
@@ -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},
|
||||
)
|
||||
}
|
||||
|
@@ -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
|
||||
}
|
||||
}
|
||||
|
@@ -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)
|
||||
|
Reference in New Issue
Block a user