xx
This commit is contained in:
@@ -8,11 +8,10 @@ import (
|
|||||||
|
|
||||||
type DevUpData struct {
|
type DevUpData struct {
|
||||||
Id int `gorm:"column:id;primaryKey" json:"id"`
|
Id int `gorm:"column:id;primaryKey" json:"id"`
|
||||||
Imei string `gorm:"column:imei;comment:IMEI;type:varchar(255)" json:"imei"`
|
Imei string `gorm:"column:imei;unique;comment:IMEI;type:varchar(255)" json:"imei"`
|
||||||
|
Sum string `gorm:"column:sum;comment:总次数;type:varchar(255)" json:"sum"`
|
||||||
Sum string `gorm:"column:sum;comment:IMEI;type:varchar(255)" json:"sum"`
|
Time string `gorm:"column:time;comment:总运行时间;type:varchar(255)" json:"time"`
|
||||||
Time string `gorm:"column:time;comment:IMEI;type:varchar(255)" json:"time"`
|
Mile string `gorm:"column:mile;comment:总里程;type:varchar(255)" json:"mile"`
|
||||||
Mile string `gorm:"column:mile;comment:IMEI;type:varchar(255)" json:"mile"`
|
|
||||||
|
|
||||||
Created time.Time `gorm:"column:created;autoCreateTime;comment:创建时间" json:"created"`
|
Created time.Time `gorm:"column:created;autoCreateTime;comment:创建时间" json:"created"`
|
||||||
Updated time.Time `gorm:"column:updated;autoUpdateTime;comment:修改时间" json:"updated"`
|
Updated time.Time `gorm:"column:updated;autoUpdateTime;comment:修改时间" json:"updated"`
|
||||||
81
repository/dev_up_data.go
Normal file
81
repository/dev_up_data.go
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
package repository
|
||||||
|
|
||||||
|
import (
|
||||||
|
"DT/global"
|
||||||
|
"DT/model"
|
||||||
|
)
|
||||||
|
|
||||||
|
type DevUpData struct {
|
||||||
|
}
|
||||||
|
|
||||||
|
//func (r *Device) GetDeviceList(qr map[string]interface{}) (p []*model.Device, err error) {
|
||||||
|
// db := global.Db
|
||||||
|
// for key, value := range qr {
|
||||||
|
// db = db.Where(key, value)
|
||||||
|
// }
|
||||||
|
// err = db.Order("id DESC").Find(&p).Error
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
|
||||||
|
//func (r *Device) GetDevicePage(req *form.DevicePageReq) (count int64, list []*device_model.Device, err error) {
|
||||||
|
// db := global.Db.Model(&device_model.Device{})
|
||||||
|
// //for key, value := range qr {
|
||||||
|
// // db = db.Where(key, value)
|
||||||
|
// //}
|
||||||
|
// //if req.DriverId > 0 {
|
||||||
|
// // db = db.Where("driver_id = ?", req.DriverId)
|
||||||
|
// //}
|
||||||
|
// err = db.Count(&count).Error
|
||||||
|
// if err != nil {
|
||||||
|
// return
|
||||||
|
// }
|
||||||
|
// //err = db.Offset((req.Page.GetPageIndex() - 1) * req.Page.GetPageSize()).Limit(req.Page.GetPageSize()).Order("id desc").Preload("Rule").Find(&list).Error
|
||||||
|
// err = db.Offset((req.Page.GetPageIndex() - 1) * req.Page.GetPageSize()).Limit(req.Page.GetPageSize()).Order("id desc").Find(&list).Error
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
|
||||||
|
func (r *DevUpData) CreateDevUpData(d *model.DevUpData) error {
|
||||||
|
return global.Db.Create(d).Error
|
||||||
|
}
|
||||||
|
func (r *DevUpData) UpdateDevUpData(d *model.DevUpData) error {
|
||||||
|
return global.Db.Save(d).Error
|
||||||
|
}
|
||||||
|
|
||||||
|
func (r *DevUpData) GetDevUpData(qr map[string]interface{}) (d *model.DevUpData, err error) {
|
||||||
|
db := global.Db
|
||||||
|
for key, value := range qr {
|
||||||
|
db = db.Where(key, value)
|
||||||
|
}
|
||||||
|
err = db.First(&d).Error
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
//func (r *User) GetPeakValleyQuarterPage(req *form.PeakValleyQuarterListReq) (count int64, list []*peak_valley_model.PeakValleyQuarter, err error) {
|
||||||
|
// db := global.Db.Model(&peak_valley_model.PeakValleyQuarter{})
|
||||||
|
//
|
||||||
|
// //for key, value := range qr {
|
||||||
|
// // db = db.Where(key, value)
|
||||||
|
// //}
|
||||||
|
// err = db.Count(&count).Error
|
||||||
|
// if err != nil {
|
||||||
|
// return
|
||||||
|
// }
|
||||||
|
// err = db.Offset((req.Page.GetPageIndex() - 1) * req.Page.GetPageSize()).Limit(req.Page.GetPageSize()).Order("id desc").Preload("Rule").Find(&list).Error
|
||||||
|
// return
|
||||||
|
//}
|
||||||
|
|
||||||
|
//func (r *User) CreatePeakValleyQuarter(d *user_model.User) error {
|
||||||
|
// return global.Db.Create(d).Error
|
||||||
|
//}
|
||||||
|
//func (r *User) UpdatePeakValleyQuarter(d *user_model.User) error {
|
||||||
|
// return global.Db.Save(d).Error
|
||||||
|
//}
|
||||||
|
|
||||||
|
//func (r *User) GetUser(qr map[string]interface{}) (d *user_model.User, err error) {
|
||||||
|
// db := global.Db
|
||||||
|
// for key, value := range qr {
|
||||||
|
// db = db.Where(key, value)
|
||||||
|
// }
|
||||||
|
// err = db.First(&d).Error
|
||||||
|
// return
|
||||||
|
//}
|
||||||
@@ -2,6 +2,7 @@ package repository
|
|||||||
|
|
||||||
type groupRepository struct {
|
type groupRepository struct {
|
||||||
Device
|
Device
|
||||||
|
DevUpData
|
||||||
}
|
}
|
||||||
|
|
||||||
var GroupRepositorys = new(groupRepository)
|
var GroupRepositorys = new(groupRepository)
|
||||||
|
|||||||
@@ -1,9 +1,13 @@
|
|||||||
package tcpserver
|
package tcpserver
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"DT/model"
|
||||||
"DT/repository"
|
"DT/repository"
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"gorm.io/gorm"
|
||||||
|
"strconv"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -46,16 +50,16 @@ func (s *Server) HandleAuth(client *Client, message []byte) error {
|
|||||||
return fmt.Errorf("unauthorized")
|
return fmt.Errorf("unauthorized")
|
||||||
}
|
}
|
||||||
|
|
||||||
model, err := repository.GroupRepositorys.Device.GetDevice(map[string]interface{}{"imei": msg.Imei})
|
mod, err := repository.GroupRepositorys.Device.GetDevice(map[string]interface{}{"imei": msg.Imei})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("设备不存在")
|
return fmt.Errorf("设备不存在")
|
||||||
}
|
}
|
||||||
if msg.Pwd != model.DriverPass {
|
if msg.Pwd != mod.DriverPass {
|
||||||
return fmt.Errorf("设备密码不正确")
|
return fmt.Errorf("设备密码不正确")
|
||||||
}
|
}
|
||||||
|
|
||||||
model.DriverVer = msg.Ver
|
mod.DriverVer = msg.Ver
|
||||||
err = repository.GroupRepositorys.Device.UpdateDevice(model)
|
err = repository.GroupRepositorys.Device.UpdateDevice(mod)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("更新设备版本号失败")
|
return fmt.Errorf("更新设备版本号失败")
|
||||||
}
|
}
|
||||||
@@ -129,6 +133,29 @@ func (s *Server) TimingReporting(client *Client, message []byte) error {
|
|||||||
if msg.Type != "up" {
|
if msg.Type != "up" {
|
||||||
return fmt.Errorf("unauthorized")
|
return fmt.Errorf("unauthorized")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mod, err := repository.GroupRepositorys.DevUpData.GetDevUpData(map[string]interface{}{"imei": client.Imei})
|
||||||
|
fmt.Println(mod)
|
||||||
|
if err == nil {
|
||||||
|
mod.Mile = strconv.Itoa(msg.MessageUpData.Mile)
|
||||||
|
mod.Sum = strconv.Itoa(msg.MessageUpData.Sum)
|
||||||
|
mod.Time = strconv.Itoa(msg.MessageUpData.Time)
|
||||||
|
err = repository.GroupRepositorys.DevUpData.UpdateDevUpData(mod)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("更新设备定时上报信息错误\n")
|
||||||
|
}
|
||||||
|
} else if errors.Is(err, gorm.ErrRecordNotFound) {
|
||||||
|
devUpData := &model.DevUpData{}
|
||||||
|
devUpData.Imei = client.Imei
|
||||||
|
devUpData.Mile = strconv.Itoa(msg.MessageUpData.Mile)
|
||||||
|
devUpData.Sum = strconv.Itoa(msg.MessageUpData.Sum)
|
||||||
|
devUpData.Time = strconv.Itoa(msg.MessageUpData.Time)
|
||||||
|
err = repository.GroupRepositorys.DevUpData.CreateDevUpData(devUpData)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("设备定时上报存储失败\n")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fmt.Printf("设备定时上报数据:%v\r\n", msg.MessageUpData)
|
fmt.Printf("设备定时上报数据:%v\r\n", msg.MessageUpData)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user