|
@@ -1,6 +1,7 @@
|
|
|
package service
|
|
|
|
|
|
import (
|
|
|
+ "fmt"
|
|
|
"iot_manager_service/app/dao"
|
|
|
"iot_manager_service/app/model"
|
|
|
"iot_manager_service/app/utils"
|
|
@@ -12,50 +13,138 @@ var LampPoleGroupService = new(lampPoleGroupService)
|
|
|
|
|
|
type lampPoleGroupService struct{}
|
|
|
|
|
|
+func (s *lampPoleGroupService) Get(id int) (*dao.LampPoleGroup, *utils.Errors) {
|
|
|
+ // 创建查询实例
|
|
|
+ device := &dao.LampPoleGroup{
|
|
|
+ ID: id,
|
|
|
+ }
|
|
|
+ err := device.GetDevice()
|
|
|
+ if err != nil {
|
|
|
+ return nil, utils.FailResponse(err.Error(), nil)
|
|
|
+ }
|
|
|
+ return device, nil
|
|
|
+}
|
|
|
+
|
|
|
func (s *lampPoleGroupService) CreateOrUpdate(req *model.ReqLampPoleGroupSubmit) *utils.Errors {
|
|
|
// 创建查询实例
|
|
|
device := dao.LampPoleGroup{
|
|
|
PoleGroupName: req.PoleGroupName,
|
|
|
TenantId: "000000", // todo: 使用登录态
|
|
|
IsDeleted: 0,
|
|
|
- }
|
|
|
-
|
|
|
- if id, err := device.GetDeviceID(); err != nil || id == req.ID {
|
|
|
- return utils.ParamsInvalidResponse("列表中存在重名,请更改灯杆分组名称!", nil)
|
|
|
+ UpdateUser: "TODO", // todo: 使用登录态
|
|
|
+ UpdateTime: time.Now(),
|
|
|
}
|
|
|
|
|
|
if req.ID == 0 {
|
|
|
device.CreateTime = time.Now()
|
|
|
device.CreateUser = "TODO" // todo: 使用登录态
|
|
|
+
|
|
|
+ if device.IsExistedByName() {
|
|
|
+ fmt.Printf("Create GetDeviceID err \n")
|
|
|
+ return utils.ParamsInvalidResponse("列表中存在重名,请更改灯杆分组名称!", nil)
|
|
|
+ }
|
|
|
if err := device.Create(); err != nil {
|
|
|
+ fmt.Printf("Create err = %s \n", err.Error())
|
|
|
return utils.FailResponse(err.Error(), nil)
|
|
|
}
|
|
|
return utils.SuccessResponse(utils.Succeeded, nil)
|
|
|
}
|
|
|
- device.UpdateTime = time.Now()
|
|
|
- device.UpdateUser = "TODO" // todo: 使用登录态
|
|
|
+
|
|
|
+ device.ID = req.ID
|
|
|
+ if device.IsExistedByNameAndCode() {
|
|
|
+ return utils.ParamsInvalidResponse("列表中存在重名,请更改灯杆分组名称!", nil)
|
|
|
+ }
|
|
|
+
|
|
|
if err := device.Update(); err != nil {
|
|
|
+ fmt.Printf("Update err = %s \n", err.Error())
|
|
|
return utils.FailResponse(err.Error(), nil)
|
|
|
}
|
|
|
+
|
|
|
+ //todo operation record
|
|
|
return utils.SuccessResponse(utils.Succeeded, nil)
|
|
|
}
|
|
|
|
|
|
-func (s *lampPoleGroupService) List(req *model.ReqLampPoleGroupList) ([]dao.LampPoleGroup, *utils.Errors) {
|
|
|
+func (s *lampPoleGroupService) List(poleGroupName string, current, size int) ([]dao.LampPoleGroup, *utils.Errors) {
|
|
|
// 创建查询实例
|
|
|
- device := dao.LampPoleGroup{
|
|
|
- PoleGroupName: req.PoleGroupName,
|
|
|
+ device := &dao.LampPoleGroup{
|
|
|
+ PoleGroupName: poleGroupName,
|
|
|
}
|
|
|
- if req.Current == 0 {
|
|
|
- req.Current = 1
|
|
|
+
|
|
|
+ offset := (current - 1) * size
|
|
|
+ limit := size
|
|
|
+ devices, err := device.GetDevices(offset, limit)
|
|
|
+ if err != nil {
|
|
|
+ return nil, utils.FailResponse(err.Error(), nil)
|
|
|
}
|
|
|
- if req.Size < 0 || req.Size > 100 {
|
|
|
- req.Size = 10
|
|
|
+ return devices, nil
|
|
|
+}
|
|
|
+
|
|
|
+func (s *lampPoleGroupService) Remove(id int) *utils.Errors {
|
|
|
+ // 创建查询实例
|
|
|
+ device := &dao.LampPoleGroup{
|
|
|
+ ID: id,
|
|
|
+ IsDeleted: 1,
|
|
|
+ UpdateUser: "TODO", // todo 使用登录态
|
|
|
+ UpdateTime: time.Now(),
|
|
|
}
|
|
|
- offset := (req.Current - 1) * req.Size
|
|
|
- limit := req.Size
|
|
|
- devices, err := device.GetDevices(offset, limit)
|
|
|
+
|
|
|
+ //todo
|
|
|
+ // service.lampPoleService.CountRelation()
|
|
|
+
|
|
|
+ //todo operation record
|
|
|
+ err := device.Delete()
|
|
|
+ if err != nil {
|
|
|
+ return utils.FailResponse(err.Error(), nil)
|
|
|
+ }
|
|
|
+ return nil
|
|
|
+}
|
|
|
+
|
|
|
+func (s *lampPoleGroupService) GetList() ([]dao.LampPoleGroup, *utils.Errors) {
|
|
|
+ // todo use redis cache
|
|
|
+ device := &dao.LampPoleGroup{
|
|
|
+ TenantId: "000000", // todo 使用登录态
|
|
|
+ IsDeleted: 0,
|
|
|
+ }
|
|
|
+ devices, err := device.GetAllDevices()
|
|
|
+ if err != nil {
|
|
|
+ return nil, utils.FailResponse(err.Error(), nil)
|
|
|
+ }
|
|
|
+
|
|
|
+ return devices, nil
|
|
|
+}
|
|
|
+
|
|
|
+func (s *lampPoleGroupService) GetFiltration() ([]dao.LampPoleGroup, *utils.Errors) {
|
|
|
+ // todo use redis cache
|
|
|
+ device := &dao.LampPoleGroup{
|
|
|
+ TenantId: "000000", // todo 使用登录态
|
|
|
+ IsDeleted: 0,
|
|
|
+ }
|
|
|
+
|
|
|
+ //todo
|
|
|
+ // get t_dev_light_control group_id
|
|
|
+ // groupIds := lightControl.GetGroupIds()
|
|
|
+
|
|
|
+ devices, err := device.GetAllDevices()
|
|
|
+ if err != nil {
|
|
|
+ return nil, utils.FailResponse(err.Error(), nil)
|
|
|
+ }
|
|
|
+
|
|
|
+ return devices, nil
|
|
|
+}
|
|
|
+
|
|
|
+func (s *lampPoleGroupService) GetTree() ([]dao.LampPoleGroup, *utils.Errors) {
|
|
|
+ // todo use redis cache
|
|
|
+ device := &dao.LampPoleGroup{
|
|
|
+ TenantId: "000000", // todo 使用登录态
|
|
|
+ IsDeleted: 0,
|
|
|
+ }
|
|
|
+
|
|
|
+ //todo lampPole getALlDevice
|
|
|
+
|
|
|
+ devices, err := device.GetAllDevices()
|
|
|
if err != nil {
|
|
|
return nil, utils.FailResponse(err.Error(), nil)
|
|
|
}
|
|
|
+
|
|
|
return devices, nil
|
|
|
}
|