组织数据读取权限完成

This commit is contained in:
XM-GO
2023-09-15 15:13:39 +08:00
parent b5ee2a54b9
commit 6630ebdb02
37 changed files with 717 additions and 59 deletions

View File

@@ -40,6 +40,7 @@ func (g *GenTableApi) GetTablePage(rc *restfulx.ReqCtx) {
dgt.TableName = restfulx.QueryParam(rc, "tableName")
dgt.TableComment = restfulx.QueryParam(rc, "tableComment")
dgt.RoleId = rc.LoginAccount.RoleId
dgt.Owner = rc.LoginAccount.UserName
list, total := g.GenTableApp.FindListPage(pageNum, pageSize, dgt)
rc.ResData = model.ResultPage{
@@ -78,6 +79,7 @@ func (g *GenTableApi) GetTableInfoByName(rc *restfulx.ReqCtx) {
func (g *GenTableApi) GetTableTree(rc *restfulx.ReqCtx) {
dgt := entity.DevGenTable{}
dgt.RoleId = rc.LoginAccount.RoleId
dgt.Owner = rc.LoginAccount.UserName
rc.ResData = g.GenTableApp.FindTree(dgt)
}
@@ -92,6 +94,7 @@ func (g *GenTableApi) Insert(rc *restfulx.ReqCtx) {
go func(wg *sync.WaitGroup, index int) {
genTable := gen.ToolsGenTableColumn.GenTableInit(tablesList[index])
genTable.OrgId = rc.LoginAccount.OrganizationId
genTable.Owner = rc.LoginAccount.UserName
g.GenTableApp.Insert(genTable)
wg.Done()
}(&wg, index)

View File

@@ -5,6 +5,7 @@ import "github.com/PandaXGO/PandaKit/model"
type DevGenTable struct {
TableId int64 `gorm:"primaryKey;autoIncrement" json:"tableId"` // 编号
OrgId int64 `json:"orgId" gorm:"type:int;comment:机构ID"`
Owner string `json:"owner" gorm:"type:varchar(64);comment:创建者,所有者"`
TableName string `gorm:"table_name" json:"tableName"` // 表名称
TableComment string `gorm:"table_comment" json:"tableComment"` // 表描述
ClassName string `gorm:"class_name" json:"className"` // 实体类名称

View File

@@ -3,6 +3,7 @@ package entity
type DevGenTableColumn struct {
ColumnId int64 `gorm:"primaryKey;autoIncrement" json:"columnId"` // 编号
OrgId int64 `json:"orgId" gorm:"type:int;comment:机构ID"`
Owner string `json:"owner" gorm:"type:varchar(64);comment:创建者,所有者"`
TableId int64 `gorm:"table_id" json:"tableId"` // 归属表编号
TableName string `gorm:"table_name" json:"tableName"`
ColumnName string `gorm:"column_name" json:"columnName"` // 列名称

View File

@@ -97,6 +97,7 @@ func (m *devGenTableModelImpl) Insert(dgt entity.DevGenTable) {
dgt.Columns[i].TableId = dgt.TableId
columns := dgt.Columns[i]
columns.OrgId = dgt.OrgId
columns.Owner = dgt.Owner
DevTableColumnModelDao.Insert(columns)
}
}
@@ -134,7 +135,7 @@ func (m *devGenTableModelImpl) FindTree(data entity.DevGenTable) *[]entity.DevGe
db = db.Where("table_comment = ?", data.TableComment)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId)
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Find(&resData).Error
biz.ErrIsNil(err, "获取TableTree失败")
for i := 0; i < len(resData); i++ {
@@ -161,7 +162,7 @@ func (m *devGenTableModelImpl) FindListPage(page, pageSize int, data entity.DevG
db = db.Where("table_comment = ?", data.TableComment)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId)
tool.OrgAuthSet(db, data.RoleId, data.Owner)
db.Where("delete_time IS NULL")
err := db.Count(&total).Error
err = db.Limit(pageSize).Offset(offset).Find(&list).Error

View File

@@ -39,8 +39,9 @@ func (p *DeviceApi) GetDeviceList(rc *restfulx.ReqCtx) {
data.DeviceType = restfulx.QueryParam(rc, "deviceType")
data.ParentId = restfulx.QueryParam(rc, "parentId")
data.LinkStatus = restfulx.QueryParam(rc, "linkStatus")
// 权限检查
data.RoleId = rc.LoginAccount.RoleId
data.Owner = rc.LoginAccount.UserName
list, total := p.DeviceApp.FindListPage(pageNum, pageSize, data)
rc.ResData = model.ResultPage{

View File

@@ -26,6 +26,9 @@ func (p *DeviceAlarmApi) GetDeviceAlarmList(rc *restfulx.ReqCtx) {
data.StartTime = restfulx.QueryParam(rc, "startTime")
data.EndTime = restfulx.QueryParam(rc, "endTime")
data.RoleId = rc.LoginAccount.RoleId
data.Owner = rc.LoginAccount.UserName
list, total := p.DeviceAlarmApp.FindListPage(pageNum, pageSize, data)
rc.ResData = model.ResultPage{

View File

@@ -18,14 +18,20 @@ func (p *DeviceGroupApi) GetDeviceGroupTree(rc *restfulx.ReqCtx) {
status := restfulx.QueryParam(rc, "status")
id := restfulx.QueryParam(rc, "id")
sg := entity.DeviceGroup{Name: name, Status: status}
sg.Id = id
rc.ResData = p.DeviceGroupApp.SelectDeviceGroup(sg)
vsg := entity.DeviceGroup{Name: name, Status: status}
vsg.Id = id
vsg.RoleId = rc.LoginAccount.RoleId
vsg.Owner = rc.LoginAccount.UserName
rc.ResData = p.DeviceGroupApp.SelectDeviceGroup(vsg)
}
func (p *DeviceGroupApi) GetDeviceGroupTreeLabel(rc *restfulx.ReqCtx) {
sg := entity.DeviceGroup{}
rc.ResData = p.DeviceGroupApp.SelectDeviceGroupLabel(sg)
vsg := entity.DeviceGroup{}
vsg.RoleId = rc.LoginAccount.RoleId
vsg.Owner = rc.LoginAccount.UserName
rc.ResData = p.DeviceGroupApp.SelectDeviceGroupLabel(vsg)
}
func (p *DeviceGroupApi) GetDeviceGroupList(rc *restfulx.ReqCtx) {
@@ -33,18 +39,24 @@ func (p *DeviceGroupApi) GetDeviceGroupList(rc *restfulx.ReqCtx) {
status := restfulx.QueryParam(rc, "status")
id := restfulx.QueryParam(rc, "id")
sg := entity.DeviceGroup{Name: name, Status: status}
sg.Id = id
if sg.Name == "" {
rc.ResData = p.DeviceGroupApp.SelectDeviceGroup(sg)
vsg := entity.DeviceGroup{Name: name, Status: status}
vsg.Id = id
vsg.RoleId = rc.LoginAccount.RoleId
vsg.Owner = rc.LoginAccount.UserName
if vsg.Name == "" {
rc.ResData = p.DeviceGroupApp.SelectDeviceGroup(vsg)
} else {
rc.ResData = p.DeviceGroupApp.FindList(sg)
rc.ResData = p.DeviceGroupApp.FindList(vsg)
}
}
// GetDeviceGroupAllList 查询所有
func (p *DeviceGroupApi) GetDeviceGroupAllList(rc *restfulx.ReqCtx) {
var vsg entity.DeviceGroup
vsg.RoleId = rc.LoginAccount.RoleId
vsg.Owner = rc.LoginAccount.UserName
rc.ResData = p.DeviceGroupApp.FindList(vsg)
}

View File

@@ -10,6 +10,7 @@ import "time"
type DeviceAlarm struct {
Id string `json:"id" gorm:"primary_key;"`
OrgId int64 `json:"orgId" gorm:"type:int;comment:机构ID"`
Owner string `json:"owner" gorm:"type:varchar(64);comment:创建者,所有者"`
Time time.Time `gorm:"comment:告警时间" json:"time"`
Name string `gorm:"type:varchar(64);comment:告警名称" json:"name"`
DeviceId string `gorm:"type:varchar(64);comment:所属设备" json:"deviceId"`

View File

@@ -58,7 +58,7 @@ func getDeviceToken(data *entity.Device) *tool.DeviceAuth {
etoken := &tool.DeviceAuth{
DeviceId: data.Id,
OrgId: data.OrgId,
User: data.Owner,
Owner: data.Owner,
Name: data.Name,
DeviceType: data.DeviceType,
ProductId: data.Pid,
@@ -114,7 +114,7 @@ func (m *deviceModelImpl) FindListPage(page, pageSize int, data entity.Device) (
db = db.Where("parent_id = ?", data.ParentId)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId)
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Count(&total).Error
err = db.Order("create_time").Preload("Product").Preload("DeviceGroup").Limit(pageSize).Offset(offset).Find(&list).Error
@@ -153,7 +153,7 @@ func (m *deviceModelImpl) FindList(data entity.Device) *[]entity.DeviceRes {
if data.ParentId != "" {
db = db.Where("parent_id = ?", data.ParentId)
}
tool.OrgAuthSet(db, data.RoleId)
tool.OrgAuthSet(db, data.RoleId, data.Owner)
db.Preload("Product").Preload("DeviceGroup")
biz.ErrIsNil(db.Order("create_time").Find(&list).Error, "查询设备列表失败")
return &list

View File

@@ -4,6 +4,7 @@ import (
"github.com/PandaXGO/PandaKit/biz"
"pandax/apps/device/entity"
"pandax/pkg/global"
"pandax/pkg/tool"
)
type (
@@ -72,6 +73,9 @@ func (m *alarmModelImpl) FindListPage(page, pageSize int, data entity.DeviceAlar
if data.EndTime != "" {
db = db.Where("time < ?", data.EndTime)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Count(&total).Error
err = db.Order("time").Limit(pageSize).Offset(offset).Find(&list).Error
biz.ErrIsNil(err, "查询设备告警分页列表失败")

View File

@@ -5,6 +5,7 @@ import (
"github.com/PandaXGO/PandaKit/biz"
"pandax/apps/device/entity"
"pandax/pkg/global"
"pandax/pkg/tool"
)
type (
@@ -67,6 +68,9 @@ func (m *deviceGroupModelImpl) FindListPage(page, pageSize int, data entity.Devi
if data.Status != "" {
db = db.Where("status = ?", data.Status)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Count(&total).Error
err = db.Order("sort").Limit(pageSize).Offset(offset).Find(&list).Error
biz.ErrIsNil(err, "查询设备分组分页列表失败")
@@ -86,6 +90,8 @@ func (m *deviceGroupModelImpl) FindList(data entity.DeviceGroup) *[]entity.Devic
if data.Status != "" {
db = db.Where("status = ?", data.Status)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
biz.ErrIsNil(db.Order("sort").Find(&list).Error, "查询设备分组列表失败")
return &list
}

View File

@@ -62,9 +62,6 @@ func (m *productModelImpl) FindListPage(page, pageSize int, data entity.Product)
if data.DeviceType != "" {
db = db.Where("device_type = ?", data.DeviceType)
}
if data.Id != "" {
db = db.Where("id = ?", data.Id)
}
if data.ProductCategoryId != "" {
db = db.Where("product_category_id = ?", data.ProductCategoryId)
}
@@ -77,9 +74,6 @@ func (m *productModelImpl) FindListPage(page, pageSize int, data entity.Product)
if data.Name != "" {
db = db.Where("name like ?", "%"+data.Name+"%")
}
if data.OrgId != 0 {
db = db.Where("org_id = ?", data.OrgId)
}
if data.RuleChainId != "" {
db = db.Where("rule_chain_id = ?", data.RuleChainId)
}
@@ -99,9 +93,6 @@ func (m *productModelImpl) FindList(data entity.Product) *[]entity.ProductRes {
if data.DeviceType != "" {
db = db.Where("device_type = ?", data.DeviceType)
}
if data.Id != "" {
db = db.Where("id = ?", data.Id)
}
if data.ProductCategoryId != "" {
db = db.Where("product_category_id = ?", data.ProductCategoryId)
}
@@ -114,9 +105,6 @@ func (m *productModelImpl) FindList(data entity.Product) *[]entity.ProductRes {
if data.Name != "" {
db = db.Where("name like ?", "%"+data.Name+"%")
}
if data.OrgId != 0 {
db = db.Where("org_id = ?", data.OrgId)
}
if data.RuleChainId != "" {
db = db.Where("rule_chain_id = ?", data.RuleChainId)
}

View File

@@ -27,12 +27,16 @@ func (j *JobApi) CreateJob(rc *restfulx.ReqCtx) {
}
func (j *JobApi) GetJobList(rc *restfulx.ReqCtx) {
job := entity.SysJob{}
pageNum := restfulx.QueryInt(rc, "pageNum", 1)
pageSize := restfulx.QueryInt(rc, "pageSize", 10)
jobName := restfulx.QueryParam(rc, "jobName")
status := restfulx.QueryParam(rc, "status")
job.JobName = restfulx.QueryParam(rc, "jobName")
job.Status = restfulx.QueryParam(rc, "status")
list, total := j.JobApp.FindListPage(pageNum, pageSize, entity.SysJob{JobName: jobName, Status: status})
job.RoleId = rc.LoginAccount.RoleId
job.Owner = rc.LoginAccount.UserName
list, total := j.JobApp.FindListPage(pageNum, pageSize, job)
rc.ResData = model.ResultPage{
Total: total,
PageNum: int64(pageNum),
@@ -80,6 +84,7 @@ func (l *JobApi) StartJobForService(rc *restfulx.ReqCtx) {
j.Args = job.TargetArgs
j.MisfirePolicy = job.MisfirePolicy
j.OrgId = job.OrgId
j.Owner = job.Owner
job.EntryId, err = jobs.AddJob(jobs.Crontab, j)
log.Println(err)
biz.ErrIsNil(err, "添加JOB失败")

View File

@@ -14,12 +14,16 @@ type JobLogApi struct {
// GetJobLogList Job日志列表
func (l *JobLogApi) GetJobLogList(rc *restfulx.ReqCtx) {
job := entity.JobLog{}
pageNum := restfulx.QueryInt(rc, "pageNum", 1)
pageSize := restfulx.QueryInt(rc, "pageSize", 10)
name := restfulx.QueryParam(rc, "name")
status := restfulx.QueryParam(rc, "status")
job.Name = restfulx.QueryParam(rc, "name")
job.Status = restfulx.QueryParam(rc, "status")
list, total := l.JobLogApp.FindListPage(pageNum, pageSize, entity.JobLog{Name: name, Status: status})
job.RoleId = rc.LoginAccount.RoleId
job.Owner = rc.LoginAccount.UserName
list, total := l.JobLogApp.FindListPage(pageNum, pageSize, job)
rc.ResData = model.ResultPage{
Total: total,
PageNum: int64(pageNum),

View File

@@ -38,6 +38,7 @@ type JobCore struct {
Name string
JobId string
OrgId int64
Owner string
EntryId int
CronExpression string // 任务表达式
MisfirePolicy string
@@ -55,6 +56,7 @@ func (e *ExecJob) Run() {
jobLog := logEntity.JobLog{Name: e.Name, EntryId: e.EntryId, TargetInvoke: e.InvokeTarget, Status: "0"}
jobLog.Id = kgo.KStr.Uniqid("")
jobLog.OrgId = e.OrgId
jobLog.Owner = e.Owner
var obj = jobList[e.InvokeTarget]
err := CallExec(obj.(JobsExec), e.Args, e.Content)

View File

@@ -4,6 +4,7 @@ import (
"github.com/PandaXGO/PandaKit/biz"
"pandax/apps/job/entity"
"pandax/pkg/global"
"pandax/pkg/tool"
)
type (
@@ -52,6 +53,10 @@ func (m *jobModelImpl) FindListPage(page, pageSize int, data entity.SysJob) (*[]
if data.Status != "" {
db = db.Where("status = ?", data.Status)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Count(&total).Error
err = db.Order("create_time desc").Limit(pageSize).Offset(offset).Find(&list).Error
@@ -69,6 +74,8 @@ func (m *jobModelImpl) FindList(data entity.SysJob) *[]entity.SysJob {
if data.Status != "" {
db = db.Where("status = ?", data.Status)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Order("create_time desc").Find(&list).Error
if err != nil {
global.Log.Error("查询任务分页信息失败:" + err.Error())

View File

@@ -4,6 +4,7 @@ import (
"github.com/PandaXGO/PandaKit/biz"
"pandax/apps/job/entity"
"pandax/pkg/global"
"pandax/pkg/tool"
)
type (
@@ -40,6 +41,10 @@ func (m *JobLogModelImpl) FindListPage(page, pageSize int, data entity.JobLog) (
if data.Name != "" {
db = db.Where("name like ?", "%"+data.Name+"%")
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Count(&total).Error
err = db.Order("create_time desc").Limit(pageSize).Offset(offset).Find(&list).Error

View File

@@ -20,8 +20,5 @@ type LogLogin struct {
Params string `json:"params" gorm:"-"`
Remark string `json:"remark" gorm:"type:varchar(255);"` //备注
Msg string `json:"msg" gorm:"type:varchar(255);"`
OrgId int64 `json:"orgId" gorm:"type:int;"`
model.BaseModel
RoleId int64 `gorm:"-"` // 角色数据权限
}

View File

@@ -6,7 +6,6 @@ import (
type LogOper struct {
OperId int64 `json:"operId" gorm:"primary_key;AUTO_INCREMENT"` //主键
OrgId int64 `json:"orgId" gorm:"type:int;comment:机构ID"`
Title string `json:"title" gorm:"type:varchar(128);comment:操作的模块"`
BusinessType string `json:"businessType" gorm:"type:varchar(1);comment:0其它 1新增 2修改 3删除"`
Method string `json:"method" gorm:"type:varchar(255);comment:请求方法"`
@@ -17,6 +16,4 @@ type LogOper struct {
OperParam string `json:"operParam" gorm:"type:varchar(255);comment:请求参数"` //
Status string `json:"status" gorm:"type:varchar(1);comment:0=正常,1=异常"`
model.BaseModel
RoleId int64 `gorm:"-"` // 角色数据权限
}

View File

@@ -26,8 +26,6 @@ var LogLoginModelDao LogLoginModel = &logLoginModelImpl{
}
func (m *logLoginModelImpl) Insert(data entity.LogLogin) *entity.LogLogin {
data.CreateBy = "0"
data.UpdateBy = "0"
global.Db.Table(m.table).Create(&data)
return &data
}
@@ -51,9 +49,6 @@ func (m *logLoginModelImpl) FindListPage(page, pageSize int, data entity.LogLogi
if data.LoginLocation != "" {
db = db.Where("login_location like ?", "%"+data.LoginLocation+"%")
}
if data.Username != "" {
db = db.Where("username like ?", "%"+data.Username+"%")
}
err := db.Where("delete_time IS NULL").Count(&total).Error
err = db.Order("info_id desc").Limit(pageSize).Offset(offset).Find(&list).Error

View File

@@ -35,6 +35,10 @@ func (p *RuleChainApi) GetRuleChainList(rc *restfulx.ReqCtx) {
pageNum := restfulx.QueryInt(rc, "pageNum", 1)
pageSize := restfulx.QueryInt(rc, "pageSize", 10)
data.RuleName = restfulx.QueryParam(rc, "ruleName")
data.RoleId = rc.LoginAccount.RoleId
data.Owner = rc.LoginAccount.UserName
list, total := p.RuleChainApp.FindListPage(pageNum, pageSize, data)
rc.ResData = model.ResultPage{

View File

@@ -23,6 +23,10 @@ func (p *RuleChainMsgLogApi) GetRuleChainMsgLogList(rc *restfulx.ReqCtx) {
pageSize := restfulx.QueryInt(rc, "pageSize", 10)
data.DeviceName = restfulx.QueryParam(rc, "deviceName")
data.MsgType = restfulx.QueryParam(rc, "msgType")
data.RoleId = rc.LoginAccount.RoleId
data.Owner = rc.LoginAccount.UserName
list, total := p.RuleChainMsgLogApp.FindListPage(pageNum, pageSize, data)
rc.ResData = model.ResultPage{

View File

@@ -33,6 +33,7 @@ func (RuleChain) TableName() string {
type RuleChainMsgLog struct {
MessageId string `gorm:"message_id;type:varchar(64);comment:消息Id" json:"messageId"`
OrgId int64 `json:"orgId" gorm:"type:int;comment:机构ID"`
Owner string `json:"owner" gorm:"type:varchar(64);comment:创建者,所有者"`
MsgType string `gorm:"msg_type;type:varchar(64);comment:消息类型" json:"msgType"`
DeviceId string `gorm:"device_id;type:varchar(64);comment:设备ID" json:"deviceId"`
DeviceName string `gorm:"device_name;type:varchar(255);comment:设备名称" json:"deviceName"`

View File

@@ -11,6 +11,7 @@ import (
"pandax/apps/rule/entity"
"pandax/pkg/events"
"pandax/pkg/global"
"pandax/pkg/tool"
)
type (
@@ -78,6 +79,8 @@ func (m *ruleChainModelImpl) FindListPage(page, pageSize int, data entity.RuleCh
if data.RuleRemark != "" {
db = db.Where("rule_remark like ?", "%"+data.RuleRemark+"%")
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Count(&total).Error
err = db.Order("create_time").Limit(pageSize).Offset(offset).Find(&list).Error
biz.ErrIsNil(err, "查询规则链分页列表失败")
@@ -97,6 +100,8 @@ func (m *ruleChainModelImpl) FindList(data entity.RuleChain) *[]entity.RuleChain
if data.RuleRemark != "" {
db = db.Where("rule_remark like ?", "%"+data.RuleRemark+"%")
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
biz.ErrIsNil(db.Order("create_time").Find(&list).Error, "查询规则链列表失败")
return &list
}
@@ -111,6 +116,8 @@ func (m *ruleChainModelImpl) FindListBaseLabel(data entity.RuleChain) *[]entity.
if data.RuleName != "" {
db = db.Where("rule_name like ?", "%"+data.RuleName+"%")
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
biz.ErrIsNil(db.Find(&list).Error, "查询规则链列表失败")
return &list
}

View File

@@ -10,6 +10,7 @@ import (
"github.com/PandaXGO/PandaKit/biz"
"pandax/apps/rule/entity"
"pandax/pkg/global"
"pandax/pkg/tool"
)
type (
@@ -49,6 +50,8 @@ func (m *ruleChainLogModelImpl) FindListPage(page, pageSize int, data entity.Rul
if data.MsgType != "" {
db = db.Where("msg_type = ?", data.MsgType)
}
// 组织数据访问权限
tool.OrgAuthSet(db, data.RoleId, data.Owner)
err := db.Count(&total).Error
err = db.Order("create_at").Limit(pageSize).Offset(offset).Find(&list).Error
biz.ErrIsNil(err, "查询规则链分页列表失败")

View File

@@ -90,7 +90,6 @@ func (u *UserApi) Login(rc *restfulx.ReqCtx) {
loginLog.Ipaddr = rc.Request.Request.RemoteAddr
loginLog.LoginLocation = utils.GetRealAddressByIP(rc.Request.Request.RemoteAddr)
loginLog.LoginTime = time.Now()
loginLog.OrgId = login.OrganizationId
loginLog.Status = "0"
loginLog.Remark = rc.Request.Request.UserAgent()
browserName, browserVersion := ua.Browser()
@@ -131,7 +130,6 @@ func (u *UserApi) LogOut(rc *restfulx.ReqCtx) {
loginLog.Ipaddr = rc.Request.Request.RemoteAddr
loginLog.LoginTime = time.Now()
loginLog.Status = "0"
loginLog.OrgId = rc.LoginAccount.OrganizationId
loginLog.Remark = rc.Request.Request.UserAgent()
browserName, browserVersion := ua.Browser()
loginLog.Browser = browserName + " " + browserVersion

View File

@@ -27,6 +27,8 @@ type SysRole struct {
ApiIds []casbin.CasbinRule `json:"apiIds" gorm:"-"`
MenuIds []int64 `json:"menuIds" gorm:"-"`
OrganizationIds []int64 `json:"organizationIds" gorm:"-"`
Org string `json:"org" gorm:"column:org"`
}
type MenuIdList struct {

View File

@@ -17,6 +17,7 @@ type (
Delete(roleId []int64)
GetRoleMeunId(data entity.SysRole) []int64
GetRoleOrganizationId(data entity.SysRole) []int64
FindOrganizationsByRoleId(roleId int64) (entity.SysRole, error)
}
sysRoleModel struct {
@@ -130,3 +131,14 @@ func (m *sysRoleModel) GetRoleOrganizationId(data entity.SysRole) []int64 {
}
return organizationIds
}
func (m *sysRoleModel) FindOrganizationsByRoleId(roleId int64) (entity.SysRole, error) {
var roleData entity.SysRole
err := global.Db.Table(m.table).
Select("sys_roles.data_scope, GROUP_CONCAT(sys_role_organizations.organization_id) as org").
Joins("LEFT JOIN sys_role_organizations ON sys_roles.role_id = sys_role_organizations.role_id").
Where("sys_roles.role_id = ?", roleId).
Group("sys_roles.role_id").
First(&roleData).Error
return roleData, err
}

View File

@@ -258,3 +258,51 @@ created by pandax/iothub.(*HookService).handleOne
2023-09-14 17:03:46--------------------------------
2023-09-14 17:16:48--------------------------------
2023-09-14 17:22:08--------------------------------
2023-09-15 08:46:35--------------------------------
2023-09-15 08:47:33--------------------------------
2023-09-15 08:49:55--------------------------------
2023-09-15 08:51:36--------------------------------
2023-09-15 08:57:24--------------------------------
2023-09-15 08:59:11--------------------------------
2023-09-15 09:00:14--------------------------------
2023-09-15 09:02:06--------------------------------
2023-09-15 09:04:31--------------------------------
2023-09-15 09:06:29--------------------------------
2023-09-15 09:09:13--------------------------------
2023-09-15 09:11:32--------------------------------
2023-09-15 09:13:46--------------------------------
2023-09-15 09:14:22--------------------------------
2023-09-15 09:41:31--------------------------------
2023-09-15 09:43:12--------------------------------
2023-09-15 09:43:57--------------------------------
2023-09-15 09:46:00--------------------------------
2023-09-15 09:46:49--------------------------------
2023-09-15 09:47:19--------------------------------
2023-09-15 10:38:48--------------------------------
2023-09-15 14:45:53--------------------------------
2023-09-15 14:52:47--------------------------------

View File

@@ -126,10 +126,11 @@ func buildRuleMessage(etoken *tool.DeviceAuth, dei *DeviceEventInfo, msgType str
"deviceType": etoken.DeviceType,
"productId": etoken.ProductId,
"orgId": etoken.OrgId,
"owner": etoken.Owner,
}
msgVals := make(map[string]interface{})
json.Unmarshal([]byte(dei.Datas), &msgVals)
return message.NewMessage(etoken.User, msgType, msgVals, metadataVals)
return message.NewMessage(etoken.Owner, msgType, msgVals, metadataVals)
}
func SendZtWebsocket(deviceId, message string) {

View File

@@ -1517,3 +1517,541 @@
2023-09-14 17:22:41.255 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/develop/code/table/info/7] : 获取表信息 ->9ms
2023-09-14 17:22:41.260 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/type/list] : 获取字典类型分页列表 ->8ms
2023-09-14 17:22:41.308 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/develop/code/table/tableTree] : 获取表树 ->46ms
2023-09-15 08:20:32.436 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [POST=/system/user/login] : 登录 ->80ms
2023-09-15 08:20:32.463 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/user/auth] [uid=1] : 认证信息 ->20ms
2023-09-15 08:20:47.668 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/alarm/list] [uid=1] : 获取告警分页列表 ->29ms
2023-09-15 08:21:14.260 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 08:21:17.603 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 08:21:17.616 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/rule/chain/list] [uid=1] : 获取规则引擎分页列表 ->8ms
2023-09-15 08:21:20.280 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/rule/chain/log/list] : 获取规则引擎日志分页列表 ->13ms
2023-09-15 08:22:23.706 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 08:22:23.713 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list/tree/label] [uid=1] [uname=panda] : 获取DeviceGroup树 ->4ms
2023-09-15 08:22:23.887 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->115ms
2023-09-15 08:22:23.911 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表 ->192ms
2023-09-15 08:46:26.606 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 08:46:35.877 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 08:46:35.882 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 08:46:35.884 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 08:46:35.884 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 08:46:35.891 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 08:46:35.891 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 08:46:35.892 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 08:46:35.896 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 08:46:35 [INFO] JobCore start success.
2023-09-15 08:46:38.655 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 08:46:38.656 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 08:46:38.658 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 08:47:00.546 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->3ms
2023-09-15 08:47:00.555 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 08:47:01.418 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->8ms
2023-09-15 08:47:01.428 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->6ms
2023-09-15 08:47:01.438 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表
<-e errCode: 400, errMsg: 查询角色数据权限失败
2023-09-15 08:47:01.450 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->9ms
2023-09-15 08:47:25.430 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 08:47:34.017 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 08:47:34.023 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 08:47:34.026 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 08:47:34.026 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 08:47:34.034 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 08:47:34.034 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 08:47:34.035 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 08:47:34.039 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 08:47:34 [INFO] JobCore start success.
2023-09-15 08:47:37.499 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 08:47:37.500 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 08:47:37.502 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 08:47:45.209 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->12ms
2023-09-15 08:47:45.212 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 08:47:46.299 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 08:47:46.311 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表
<-e errCode: 400, errMsg: 查询角色数据权限失败
2023-09-15 08:47:46.324 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->4ms
2023-09-15 08:47:46.335 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->8ms
2023-09-15 08:49:48.433 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 08:49:55.547 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 08:49:55.553 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 08:49:55.554 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 08:49:55.554 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 08:49:55.563 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 08:49:55.563 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 08:49:55.564 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 08:49:55.569 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 08:49:55 [INFO] JobCore start success.
2023-09-15 08:50:00.501 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 08:50:00.503 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 08:50:00.505 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 08:50:11.679 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 08:50:11.686 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list] [uid=1] [uname=panda] : 获取DeviceGroup列表 ->4ms
2023-09-15 08:50:12.661 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 08:50:12.670 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 08:50:12.678 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list/tree/label] [uid=1] [uname=panda] : 获取DeviceGroup树 ->4ms
2023-09-15 08:50:12.693 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->10ms
2023-09-15 08:51:29.128 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 08:51:36.232 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 08:51:36.239 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 08:51:36.241 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 08:51:36.241 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 08:51:36.248 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 08:51:36.248 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 08:51:36.249 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 08:51:36.254 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 08:51:36 [INFO] JobCore start success.
2023-09-15 08:51:38.893 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 08:51:38.901 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list] [uid=1] : 获取DeviceGroup列表 ->6ms
2023-09-15 08:51:39.761 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->7ms
2023-09-15 08:51:39.772 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 08:51:39.780 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list/tree/label] [uid=1] [uname=panda] : 获取DeviceGroup树 ->4ms
2023-09-15 08:51:39.793 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->10ms
2023-09-15 08:51:41.207 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 08:51:41.208 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 08:51:41.211 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 08:55:04.739 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 08:55:04.744 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->4ms
2023-09-15 08:55:05.686 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 08:55:05.701 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->11ms
2023-09-15 08:55:05.702 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 08:55:05.709 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->3ms
2023-09-15 08:57:18.375 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 08:57:24.207 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 08:57:24.213 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 08:57:24.215 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 08:57:24.215 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 08:57:24.222 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 08:57:24.222 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 08:57:24.222 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 08:57:24.227 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 08:57:24 [INFO] JobCore start success.
2023-09-15 08:57:24.415 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 08:57:24.418 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 08:57:24.419 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 08:57:30.484 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 08:57:30.489 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->4ms
2023-09-15 08:57:31.141 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 08:57:31.152 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 08:57:31.158 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树 ->6ms
2023-09-15 08:57:31.172 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/list/all] [uid=1] [uname=panda] : 获取Product分页列表 ->11ms
2023-09-15 08:59:05.184 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 08:59:11.663 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 08:59:11.669 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 08:59:11.671 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 08:59:11.671 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 08:59:11.678 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 08:59:11.678 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 08:59:11.679 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 08:59:11.683 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 08:59:11 [INFO] JobCore start success.
2023-09-15 08:59:11.738 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 08:59:11.739 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 08:59:11.742 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 08:59:16.049 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->4ms
2023-09-15 08:59:16.057 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 08:59:16.676 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 08:59:16.685 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 08:59:16.691 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->3ms
2023-09-15 08:59:16.704 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/list/all] [uid=1] [uname=panda] : 获取Product分页列表 ->9ms
2023-09-15 09:00:08.415 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:00:14.660 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:00:14.666 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:00:14.668 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:00:14.668 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:00:14.675 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:00:14.675 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:00:14.675 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:00:14.679 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:00:14 [INFO] JobCore start success.
2023-09-15 09:00:14.979 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:00:14.981 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:00:14.984 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:00:20.045 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->4ms
2023-09-15 09:00:20.056 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:00:21.349 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->9ms
2023-09-15 09:00:21.368 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表
<-e errCode: 400, errMsg: 查询角色数据权限失败
2023-09-15 09:00:21.368 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->6ms
2023-09-15 09:00:21.383 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->11ms
2023-09-15 09:02:00.333 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:02:06.691 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:02:06.696 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:02:06.698 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:02:06.698 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:02:06.705 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:02:06.705 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:02:06.706 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:02:06.710 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:02:06 [INFO] JobCore start success.
2023-09-15 09:02:06.874 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:02:06.875 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:02:06.878 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:02:10.681 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list] [uid=1] : 获取DeviceGroup列表 ->3ms
2023-09-15 09:02:10.690 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 09:02:11.728 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:02:11.743 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表
<-e errCode: 400, errMsg: 查询角色数据权限失败
2023-09-15 09:02:11.744 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list/tree/label] [uid=1] [uname=panda] : 获取DeviceGroup树 ->3ms
2023-09-15 09:02:11.757 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->9ms
2023-09-15 09:04:24.497 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:04:31.686 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:04:31.691 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:04:31.693 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:04:31.693 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:04:31.700 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:04:31.700 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:04:31.701 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:04:31.705 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:04:31 [INFO] JobCore start success.
2023-09-15 09:04:35.825 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:04:35.830 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->4ms
2023-09-15 09:04:36.578 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:04:36.580 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:04:36.583 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:04:36.744 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 09:04:36.749 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表
<-e errCode: 400, errMsg: 查询角色数据权限失败
2023-09-15 09:04:36.756 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树 ->4ms
2023-09-15 09:04:36.771 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->11ms
2023-09-15 09:06:23.606 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:06:29.907 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:06:29.912 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:06:29.915 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:06:29.915 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:06:29.924 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:06:29.924 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:06:29.925 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:06:29.930 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:06:29 [INFO] JobCore start success.
2023-09-15 09:06:30.156 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:06:30.159 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:06:30.161 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:06:33.794 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list] [uid=1] : 获取DeviceGroup列表 ->4ms
2023-09-15 09:06:33.802 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:06:34.763 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->17ms
2023-09-15 09:06:34.774 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->6ms
2023-09-15 09:06:34.788 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 09:06:34.798 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->8ms
2023-09-15 09:09:07.016 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:09:13.580 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:09:13.586 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:09:13.588 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:09:13.588 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:09:13.595 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:09:13.595 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:09:13.596 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:09:13.601 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:09:13 [INFO] JobCore start success.
2023-09-15 09:09:14.085 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:09:14.086 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:09:14.090 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:09:30.055 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 09:09:30.063 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->5ms
2023-09-15 09:09:30.804 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->43ms
2023-09-15 09:09:30.816 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 09:09:30.825 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->6ms
2023-09-15 09:09:30.840 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->10ms
2023-09-15 09:11:14.599 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:11:32.414 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:11:32.419 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:11:32.421 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:11:32.421 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:11:32.428 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:11:32.429 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:11:32.429 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:11:32.433 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:11:32 [INFO] JobCore start success.
2023-09-15 09:11:33.701 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:11:33.702 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:11:33.704 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:11:35.331 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->5ms
2023-09-15 09:11:35.339 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 09:11:36.417 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:11:36.424 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->3ms
2023-09-15 09:11:36.433 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 09:11:36.444 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->9ms
2023-09-15 09:11:46.008 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->5ms
2023-09-15 09:11:46.023 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 09:11:46.652 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->7ms
2023-09-15 09:11:46.663 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [GET=/device/list] [uid=1] [uname=panda] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 09:11:46.670 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list/tree/label] [uid=1] [uname=panda] : 获取DeviceGroup树 ->5ms
2023-09-15 09:11:46.682 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->10ms
2023-09-15 09:13:40.040 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:13:46.475 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:13:46.480 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:13:46.482 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:13:46.482 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:13:46.490 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:13:46.490 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:13:46.490 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:13:46.496 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:13:46 [INFO] JobCore start success.
2023-09-15 09:13:46.591 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:13:46.592 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:13:46.596 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:13:52.226 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->3ms
2023-09-15 09:13:52.235 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list] [uid=1] : 获取DeviceGroup列表 ->6ms
2023-09-15 09:13:52.766 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->48ms
2023-09-15 09:13:52.780 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 09:13:52.789 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->5ms
2023-09-15 09:13:52.799 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->8ms
2023-09-15 09:14:16.934 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:14:22.586 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:14:22.591 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:14:22.594 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:14:22.594 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:14:22.603 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:14:22.603 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:14:22.603 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:14:22.607 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:14:22 [INFO] JobCore start success.
2023-09-15 09:14:22.974 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:14:22.976 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:14:22.978 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:41:32.042 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:41:32.046 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:41:32.048 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:41:32.048 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:41:32.056 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:41:32.056 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:41:32.057 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:41:32.062 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:41:32 [INFO] JobCore start success.
2023-09-15 09:41:32.192 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:41:32.193 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:41:32.195 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:41:42.189 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list] [uid=1] [uname=panda] : 获取DeviceGroup列表 ->4ms
2023-09-15 09:41:42.197 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 09:41:43.101 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->44ms
2023-09-15 09:41:43.113 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表
<-e errCode: 400, errMsg: 查询角色数据权限失败
2023-09-15 09:41:43.121 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->5ms
2023-09-15 09:41:43.137 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->9ms
2023-09-15 09:43:05.097 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:43:12.091 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:43:12.096 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:43:12.098 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:43:12.098 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:43:12.105 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:43:12.105 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:43:12.105 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:43:12.110 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:43:12 [INFO] JobCore start success.
2023-09-15 09:43:12.156 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:43:12.158 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:43:12.161 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:43:17.362 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:43:17.369 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->3ms
2023-09-15 09:43:18.091 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 09:43:18.098 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表
<-e errCode: 400, errMsg: 查询角色数据权限失败
2023-09-15 09:43:18.107 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树 ->5ms
2023-09-15 09:43:18.121 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->9ms
2023-09-15 09:43:50.969 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:43:57.373 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:43:57.379 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:43:57.381 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:43:57.381 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:43:57.389 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:43:57.389 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:43:57.390 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:43:57.394 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:43:57 [INFO] JobCore start success.
2023-09-15 09:43:57.515 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:43:57.517 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:43:57.520 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:44:01.558 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->8ms
2023-09-15 09:44:01.567 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:44:02.192 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:44:02.202 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表
<-e errCode: 400, errMsg: 查询角色数据权限失败
2023-09-15 09:44:02.208 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list/tree/label] [uid=1] [uname=panda] : 获取DeviceGroup树 ->4ms
2023-09-15 09:44:02.220 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->9ms
2023-09-15 09:45:51.769 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:46:00.123 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:46:00.129 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:46:00.131 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:46:00.131 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:46:00.137 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:46:00.137 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:46:00.138 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:46:00.143 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:46:00 [INFO] JobCore start success.
2023-09-15 09:46:02.506 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list] [uid=1] [uname=panda] : 获取DeviceGroup列表 ->3ms
2023-09-15 09:46:02.515 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->3ms
2023-09-15 09:46:03.519 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->53ms
2023-09-15 09:46:03.534 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 09:46:03.546 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list/tree/label] [uid=1] [uname=panda] : 获取DeviceGroup树 ->6ms
2023-09-15 09:46:03.559 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->10ms
2023-09-15 09:46:03.846 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:46:03.848 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:46:03.850 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:46:44.150 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:46:49.400 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:46:49.405 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:46:49.407 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:46:49.407 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:46:49.414 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:46:49.414 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:46:49.415 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:46:49.419 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:46:49 [INFO] JobCore start success.
2023-09-15 09:46:49.674 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:46:49.676 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:46:49.678 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:46:53.020 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->3ms
2023-09-15 09:46:53.030 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 09:46:53.622 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:46:53.631 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 09:46:53.637 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->3ms
2023-09-15 09:46:53.650 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/list/all] [uid=1] [uname=panda] : 获取Product分页列表 ->9ms
2023-09-15 09:47:12.318 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 09:47:19.299 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 09:47:19.304 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 09:47:19.305 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 09:47:19.306 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 09:47:19.313 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 09:47:19.313 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 09:47:19.314 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 09:47:19.320 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:85] : 2023-09-15 09:47:19 [INFO] JobCore start success.
2023-09-15 09:47:19.380 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 09:47:19.381 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 09:47:19.383 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 09:47:22.101 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->3ms
2023-09-15 09:47:22.112 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->8ms
2023-09-15 09:47:23.714 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 09:47:23.721 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树 ->4ms
2023-09-15 09:47:23.740 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->9ms
2023-09-15 09:47:23.747 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表 ->24ms
2023-09-15 09:48:02.721 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list] [uid=1] [uname=panda] : 获取DeviceGroup列表 ->3ms
2023-09-15 09:48:02.732 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 09:48:04.234 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 09:48:04.247 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树 ->5ms
2023-09-15 09:48:04.256 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->7ms
2023-09-15 09:48:04.259 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表 ->24ms
2023-09-15 10:08:34.925 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 10:08:34.939 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/log/logLogin/list] [uid=1] : 获取登录日志列表 ->11ms
2023-09-15 10:38:04.244 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 10:38:48.260 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 10:38:48.266 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 10:38:48.269 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 10:38:48.269 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 10:38:48.278 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 10:38:48.278 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 10:38:48.278 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 10:38:48.283 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:87] : 2023-09-15 10:38:48 [INFO] JobCore start success.
2023-09-15 10:38:48.286 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 10:38:48.289 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 10:39:02.062 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树 ->6ms
2023-09-15 10:39:02.083 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->11ms
2023-09-15 10:39:02.085 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 10:39:02.091 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表 ->27ms
2023-09-15 10:39:03.399 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 10:39:03.404 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list] [uid=1] : 获取DeviceGroup列表 ->3ms
2023-09-15 10:39:04.670 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 10:39:04.686 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/category/list/tree/label] [uid=1] : 获取ProductCategory树 ->5ms
2023-09-15 10:39:04.687 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list] : 获取Product分页列表 ->16ms
2023-09-15 10:39:04.729 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/upload/get/d7432e83df771fad85aa4e74235b0591_20230819092625.png] : 获取图片 ->0ms
2023-09-15 10:39:09.635 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 10:39:11.210 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->31ms
2023-09-15 10:39:12.251 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 10:39:12.263 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/rule/chain/list] : 获取规则引擎分页列表 ->8ms
2023-09-15 10:39:13.376 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/rule/chain/log/list] : 获取规则引擎日志分页列表 ->8ms
2023-09-15 14:45:53.349 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 14:45:53.355 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 14:45:53.357 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 14:45:53.357 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 14:45:53.365 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 14:45:53.365 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 14:45:53.366 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 14:45:53.371 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:87] : 2023-09-15 14:45:53 [INFO] JobCore start success.
2023-09-15 14:45:54.081 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 14:45:54.085 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 14:45:54.088 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 14:46:28.934 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [POST=/system/user/login] : 登录 ->72ms
2023-09-15 14:46:28.961 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/user/auth] [uid=1] [uname=panda] : 认证信息 ->18ms
2023-09-15 14:49:44.417 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 14:49:44.424 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 14:49:44.433 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表 ->29ms
2023-09-15 14:49:44.439 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->9ms
2023-09-15 14:49:59.124 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list] : 获取DeviceGroup列表 ->11ms
2023-09-15 14:49:59.127 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 14:50:00.734 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->7ms
2023-09-15 14:50:00.757 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 14:50:00.775 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表 ->37ms
2023-09-15 14:50:00.777 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/list/all] [uid=1] [uname=panda] : 获取Product分页列表 ->14ms
2023-09-15 14:52:39.778 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:31] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树
<-e errCode: 400, errMsg: 该角色下未分配组织权限
2023-09-15 14:52:39.823 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->34ms
2023-09-15 14:52:39.831 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->15ms
2023-09-15 14:52:39.839 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表 ->58ms
2023-09-15 14:52:40.885 [ERROR] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:41] : error http serve: http: Server closed
2023-09-15 14:52:47.379 [INFO] [D:/workspace/go/pkg/mod/github.com/!panda!x!g!o/!panda!kit@v0.0.0-20230914055936-853aa978dda1/starter/gorm.go:36] : 连接mysql [root:!MyEMS1@tcp(127.0.0.1:3306)/pandax_iot?charset=utf8&loc=Local&parseTime=true]
2023-09-15 14:52:47.385 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功
2023-09-15 14:52:47.387 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功
2023-09-15 14:52:47.387 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功
2023-09-15 14:52:47.395 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成
2023-09-15 14:52:47.395 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788
2023-09-15 14:52:47.395 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001
2023-09-15 14:52:47.400 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:87] : 2023-09-15 14:52:47 [INFO] JobCore start success.
2023-09-15 14:52:47.450 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接
2023-09-15 14:52:47.451 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax密码pandax,开始认证
2023-09-15 14:52:47.453 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected
2023-09-15 14:57:24.025 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->18ms
2023-09-15 14:57:24.044 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->11ms
2023-09-15 14:57:24.056 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->34ms
2023-09-15 14:57:24.066 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表 ->83ms
2023-09-15 14:57:45.151 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/d_1928b99619910dae5a001fa7/status] [uid=1] : 获取Device状态信息 ->19ms
2023-09-15 14:57:46.000 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/alarm/list] : 获取告警分页列表 ->46ms
2023-09-15 14:57:46.762 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/cmd/list] : 获取命令下发分页列表 ->12ms
2023-09-15 14:57:54.709 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list] [uid=1] : 获取DeviceGroup列表 ->35ms
2023-09-15 14:57:54.711 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->9ms
2023-09-15 14:57:57.988 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->8ms
2023-09-15 14:57:58.018 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->15ms
2023-09-15 14:57:58.030 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表 ->40ms
2023-09-15 14:57:58.030 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->12ms
2023-09-15 14:57:59.064 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/group/list] [uid=1] [uname=panda] : 获取DeviceGroup列表 ->16ms
2023-09-15 14:57:59.065 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 14:58:00.445 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/category/list/tree/label] : 获取ProductCategory树 ->7ms
2023-09-15 14:58:00.452 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/list] [uid=1] [uname=panda] : 获取Product分页列表 ->33ms
2023-09-15 14:58:00.471 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->13ms
2023-09-15 14:58:00.524 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/upload/get/d7432e83df771fad85aa4e74235b0591_20230819092625.png] : 获取图片 ->1ms
2023-09-15 14:58:05.326 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->7ms
2023-09-15 14:58:05.332 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/category/list] [uid=1] [uname=panda] : 获取ProductCategory列表 ->4ms
2023-09-15 14:58:06.683 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/category/list/tree/label] : 获取ProductCategory树 ->5ms
2023-09-15 14:58:06.687 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/list] [uid=1] [uname=panda] : 获取Product分页列表 ->20ms
2023-09-15 14:58:06.695 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 14:58:06.740 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/upload/get/d7432e83df771fad85aa4e74235b0591_20230819092625.png] : 获取图片 ->0ms
2023-09-15 14:58:10.066 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->7ms
2023-09-15 14:58:10.074 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/rule/chain/list] : 获取规则引擎分页列表 ->29ms
2023-09-15 14:58:11.596 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/rule/chain/log/list] [uid=1] : 获取规则引擎日志分页列表 ->24ms
2023-09-15 14:58:40.412 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 14:58:40.419 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/rule/chain/list] [uid=1] : 获取规则引擎分页列表 ->19ms
2023-09-15 14:58:41.407 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/rule/chain/log/list] [uid=1] : 获取规则引擎日志分页列表 ->18ms
2023-09-15 15:01:27.011 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/category/list/tree/label] [uid=1] : 获取ProductCategory树 ->7ms
2023-09-15 15:01:27.011 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list] : 获取Product分页列表 ->17ms
2023-09-15 15:01:27.020 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/dict/data/type] [uid=1] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 15:01:30.519 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/category/list/tree/label] [uid=1] [uname=panda] : 获取ProductCategory树 ->9ms
2023-09-15 15:01:30.534 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list] : 获取Product分页列表 ->39ms
2023-09-15 15:01:30.543 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->12ms
2023-09-15 15:01:51.178 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/group/list/tree/label] [uid=1] : 获取DeviceGroup树 ->29ms
2023-09-15 15:01:51.187 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->12ms
2023-09-15 15:01:51.187 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/list] : 获取Device分页列表 ->49ms
2023-09-15 15:01:51.196 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->8ms
2023-09-15 15:01:55.101 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->8ms
2023-09-15 15:01:55.117 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/category/list/tree/label] : 获取ProductCategory树 ->4ms
2023-09-15 15:01:55.124 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/list] [uid=1] [uname=panda] : 获取Product分页列表 ->18ms
2023-09-15 15:02:59.209 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/category/list/tree/label] [uid=1] [uname=panda] : 获取ProductCategory树 ->7ms
2023-09-15 15:02:59.212 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list] : 获取Product分页列表 ->18ms
2023-09-15 15:02:59.229 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->17ms
2023-09-15 15:02:59.306 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/upload/get/d7432e83df771fad85aa4e74235b0591_20230819092625.png] : 获取图片 ->0ms
2023-09-15 15:03:11.908 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/upload/get/d7432e83df771fad85aa4e74235b0591_20230819092625.png] : 获取图片 ->1ms
2023-09-15 15:03:11.929 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/template/list] [uid=1] : 获取Template分页列表 ->11ms
2023-09-15 15:04:36.893 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->15ms
2023-09-15 15:04:36.902 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表 ->38ms
2023-09-15 15:04:36.904 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->14ms
2023-09-15 15:04:36.905 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->5ms
2023-09-15 15:04:41.928 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/category/list/tree/label] [uid=1] [uname=panda] : 获取ProductCategory树 ->5ms
2023-09-15 15:04:41.971 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->26ms
2023-09-15 15:04:41.976 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list] [uid=1] : 获取Product分页列表 ->41ms
2023-09-15 15:04:42.020 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/upload/get/d7432e83df771fad85aa4e74235b0591_20230819092625.png] : 获取图片 ->0ms
2023-09-15 15:04:43.972 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/template/list] : 获取Template分页列表 ->9ms
2023-09-15 15:06:18.618 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->4ms
2023-09-15 15:06:18.620 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/job/list] [uid=1] [uname=panda] : 获取Job列表 ->14ms
2023-09-15 15:06:20.423 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->6ms
2023-09-15 15:06:20.438 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/job/log/list] [uid=1] [uname=panda] : 获取操作日志列表 ->12ms
2023-09-15 15:06:54.882 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/alarm/list] [uid=1] : 获取告警分页列表 ->16ms
2023-09-15 15:07:55.932 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/alarm/list] [uid=1] [uname=panda] : 获取告警分页列表 ->15ms
2023-09-15 15:08:04.836 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [PUT=/device/alarm] : 修改告警信息 ->134ms

View File

@@ -20,7 +20,6 @@ func OperationHandler(rc *restfulx.ReqCtx) error {
go func() {
oper := entity.LogOper{
Title: rc.LogInfo.Description,
OrgId: rc.LoginAccount.OrganizationId,
BusinessType: "0",
Method: c.Request.Method,
OperName: rc.LoginAccount.UserName,

View File

@@ -32,17 +32,17 @@ type Message struct {
Id string //uuid 消息Id
Ts time.Time //时间戳
MsgType string //消息类型, attributes参数telemetry遥测Connect连接事件
UserId string //客户Id UUID 设备发布人
User string //客户 设备发布人 设备所有者
Msg Msg //数据 数据结构JSON 设备原始数据 msg
Metadata Metadata //消息的元数据 包括设备Id设备类型产品ID等
}
// NewMessage ...
func NewMessage(userId, messageType string, msg Msg, metadata Metadata) *Message {
func NewMessage(user, messageType string, msg Msg, metadata Metadata) *Message {
return &Message{
Id: uuid.New().String(),
Ts: time.Now(),
UserId: userId,
User: user,
MsgType: messageType,
Msg: msg,
Metadata: metadata,

View File

@@ -61,6 +61,7 @@ func (n *createAlarmNode) Handle(msg *message.Message) error {
alarm.Type = n.AlarmType
alarm.Time = time.Now()
alarm.OrgId = msg.Metadata.GetValue("orgId").(int64)
alarm.Owner = msg.Metadata.GetValue("owner").(string)
marshal, _ := json.Marshal(msg.Msg)
alarm.Details = string(marshal)
err := services.DeviceAlarmModelDao.Insert(*alarm)

View File

@@ -41,6 +41,7 @@ func (n *logNode) Handle(msg *message.Message) error {
MsgType: msg.MsgType,
DeviceId: msg.Metadata["deviceId"].(string),
OrgId: msg.Metadata["orgId"].(int64),
Owner: msg.Metadata["owner"].(string),
DeviceName: msg.Metadata["deviceName"].(string),
Ts: msg.Ts,
Content: logMessage,

View File

@@ -7,6 +7,7 @@ import (
"github.com/PandaXGO/PandaKit/biz"
"github.com/google/uuid"
"gorm.io/gorm"
"pandax/apps/system/entity"
"pandax/apps/system/services"
"pandax/pkg/global"
"strconv"
@@ -14,7 +15,7 @@ import (
)
type DeviceAuth struct {
User string `json:"user"`
Owner string `json:"owner"`
OrgId int64 `json:"orgId"`
DeviceId string `json:"device_id"`
DeviceType string `json:"device_type"`
@@ -65,10 +66,15 @@ func (m *DeviceAuth) UnmarshalBinary(data []byte) error {
return json.Unmarshal(data, m)
}
func OrgAuthSet(tx *gorm.DB, roleId int64) {
// todo 使用缓存
ids, err := services.SysRoleOrganizationModelDao.FindOrganizationsByRoleId(roleId)
func OrgAuthSet(tx *gorm.DB, roleId int64, owner string) {
//TODO 使用缓存
role, err := services.SysRoleModelDao.FindOrganizationsByRoleId(roleId)
biz.ErrIsNil(err, "查询角色数据权限失败")
biz.IsTrue(len(ids) > 0, "该角色下未分配组织权限")
tx.Where("org_id in (?)", ids)
if role.DataScope != entity.SELFDATASCOPE {
biz.IsTrue(len(role.Org) > 0, "该角色下未分配组织权限")
tx.Where("org_id in (?)", strings.Split(role.Org, ","))
} else {
tx.Where("owner = ?", owner)
}
}

View File

@@ -1 +1 @@
taskkill /pid 8140 -t -f
taskkill /pid 27928 -t -f