electricity_bill_calc_service/service/park.go

52 lines
1.2 KiB
Go

package service
import (
"electricity_bill_calc/exceptions"
"electricity_bill_calc/global"
"electricity_bill_calc/model"
"xorm.io/builder"
)
type _ParkService struct{}
var ParkService _ParkService
func (_ParkService) SaveNewPark(park model.Park) error {
_, err := global.DBConn.Insert(park)
if err != nil {
return err
}
return nil
}
func (_ParkService) UpdateParkInfo(park *model.Park) error {
rows, err := global.DBConn.
Where(builder.Eq{"id": park.Id, "user_id": park.UserId}).
Cols("name", "abbr", "region", "address", "contact", "phone", "capacity", "tenement_quantity", "category", "meter_04kv_type").
Update(park)
if err != nil {
if rows == 0 {
return exceptions.NewNotFoundError("未能找到符合条件的园区。")
} else {
return err
}
}
return nil
}
func (_ParkService) ChangeParkState(uid, pid string, state bool) error {
rows, err := global.DBConn.
Table(&model.Park{}).
Where(builder.Eq{"id": pid, "user_id": uid}).
Update(map[string]interface{}{"enabled": state})
if err != nil {
if rows == 0 {
return exceptions.NewNotFoundError("未能找到符合条件的园区。")
} else {
return err
}
}
return nil
}