diff --git a/apps/device/api/device.go b/apps/device/api/device.go index 8983d36..b35ffa4 100644 --- a/apps/device/api/device.go +++ b/apps/device/api/device.go @@ -11,9 +11,9 @@ import ( "github.com/PandaXGO/PandaKit/biz" "github.com/PandaXGO/PandaKit/model" "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" "pandax/pkg/global" "pandax/pkg/mqtt" + "pandax/pkg/tool" "strings" "time" @@ -139,7 +139,7 @@ func (p *DeviceApi) InsertDevice(rc *restfulx.ReqCtx) { data.OrgId = rc.LoginAccount.OrganizationId list := p.DeviceApp.FindList(entity.Device{Name: data.Name}) biz.IsTrue(!(list != nil && len(*list) > 0), fmt.Sprintf("名称%s已存在,设置其他命名", data.Name)) - data.Id = kgo.KStr.Uniqid("d_") + data.Id = tool.GenerateID() data.LinkStatus = global.INACTIVE data.LastAt = time.Now() p.DeviceApp.Insert(data) diff --git a/apps/device/api/device_cmd.go b/apps/device/api/device_cmd.go index e891488..8a384cf 100644 --- a/apps/device/api/device_cmd.go +++ b/apps/device/api/device_cmd.go @@ -5,9 +5,9 @@ import ( "github.com/PandaXGO/PandaKit/biz" "github.com/PandaXGO/PandaKit/model" "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" "pandax/pkg/global" "pandax/pkg/mqtt" + "pandax/pkg/tool" "strings" "time" @@ -42,7 +42,7 @@ func (p *DeviceCmdLogApi) GetDeviceCmdLogList(rc *restfulx.ReqCtx) { func (p *DeviceCmdLogApi) InsertDeviceCmdLog(rc *restfulx.ReqCtx) { var data entity.DeviceCmdLog restfulx.BindJsonAndValid(rc, &data) - data.Id = kgo.KStr.Uniqid("cmd_") + data.Id = tool.GenerateID() data.State = "2" data.RequestTime = time.Now().Format("2006-01-02 15:04:05") err := p.DeviceCmdLogApp.Insert(data) diff --git a/apps/device/api/device_group.go b/apps/device/api/device_group.go index 544ce0a..bba7860 100644 --- a/apps/device/api/device_group.go +++ b/apps/device/api/device_group.go @@ -2,9 +2,9 @@ package api import ( "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" "pandax/apps/device/entity" "pandax/apps/device/services" + "pandax/pkg/tool" "strings" ) @@ -70,7 +70,7 @@ func (p *DeviceGroupApi) GetDeviceGroup(rc *restfulx.ReqCtx) { func (p *DeviceGroupApi) InsertDeviceGroup(rc *restfulx.ReqCtx) { var data entity.DeviceGroup restfulx.BindJsonAndValid(rc, &data) - data.Id = kgo.KStr.Uniqid("dg_") + data.Id = tool.GenerateID() data.Owner = rc.LoginAccount.UserName data.OrgId = rc.LoginAccount.OrganizationId p.DeviceGroupApp.Insert(data) diff --git a/apps/device/api/product.go b/apps/device/api/product.go index 861f1c9..de770fe 100644 --- a/apps/device/api/product.go +++ b/apps/device/api/product.go @@ -10,7 +10,7 @@ import ( "github.com/PandaXGO/PandaKit/biz" "github.com/PandaXGO/PandaKit/model" "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" + "pandax/pkg/tool" "strings" "pandax/apps/device/entity" @@ -66,7 +66,7 @@ func (p *ProductApi) GetProduct(rc *restfulx.ReqCtx) { func (p *ProductApi) InsertProduct(rc *restfulx.ReqCtx) { var data entity.Product restfulx.BindJsonAndValid(rc, &data) - data.Id = kgo.KStr.Uniqid("p_") + data.Id = tool.GenerateID() data.Owner = rc.LoginAccount.UserName data.OrgId = rc.LoginAccount.OrganizationId p.ProductApp.Insert(data) diff --git a/apps/device/api/product_category.go b/apps/device/api/product_category.go index 21436e8..a3305b2 100644 --- a/apps/device/api/product_category.go +++ b/apps/device/api/product_category.go @@ -2,9 +2,9 @@ package api import ( "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" "pandax/apps/device/entity" "pandax/apps/device/services" + "pandax/pkg/tool" "strings" ) @@ -59,7 +59,7 @@ func (p *ProductCategoryApi) GetProductCategory(rc *restfulx.ReqCtx) { func (p *ProductCategoryApi) InsertProductCategory(rc *restfulx.ReqCtx) { var data entity.ProductCategory restfulx.BindJsonAndValid(rc, &data) - data.Id = kgo.KStr.Uniqid("pc_") + data.Id = tool.GenerateID() data.Owner = rc.LoginAccount.UserName data.OrgId = rc.LoginAccount.OrganizationId p.ProductCategoryApp.Insert(data) diff --git a/apps/device/api/product_ota.go b/apps/device/api/product_ota.go index b4bccbf..a152533 100644 --- a/apps/device/api/product_ota.go +++ b/apps/device/api/product_ota.go @@ -4,7 +4,7 @@ package api import ( "github.com/PandaXGO/PandaKit/model" "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" + "pandax/pkg/tool" "strings" "pandax/apps/device/entity" @@ -43,7 +43,7 @@ func (p *ProductOtaApi) GetProductOta(rc *restfulx.ReqCtx) { func (p *ProductOtaApi) InsertProductOta(rc *restfulx.ReqCtx) { var data entity.ProductOta restfulx.BindJsonAndValid(rc, &data) - data.Id = kgo.KStr.Uniqid("ota_") + data.Id = tool.GenerateID() p.ProductOtaApp.Insert(data) } diff --git a/apps/device/api/product_template.go b/apps/device/api/product_template.go index 66bfbc4..6c87d2e 100644 --- a/apps/device/api/product_template.go +++ b/apps/device/api/product_template.go @@ -4,8 +4,8 @@ import ( "github.com/PandaXGO/PandaKit/biz" "github.com/PandaXGO/PandaKit/model" "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" "pandax/pkg/global" + "pandax/pkg/tool" "strings" "pandax/apps/device/entity" @@ -55,7 +55,7 @@ func (p *ProductTemplateApi) GetProductTemplate(rc *restfulx.ReqCtx) { func (p *ProductTemplateApi) InsertProductTemplate(rc *restfulx.ReqCtx) { var data entity.ProductTemplate restfulx.BindJsonAndValid(rc, &data) - data.Id = kgo.KStr.Uniqid("tm_") + data.Id = tool.GenerateID() data.OrgId = rc.LoginAccount.OrganizationId // 向超级表及子表中添加字段 stable := "" diff --git a/apps/job/api/job.go b/apps/job/api/job.go index eed7b86..06b6978 100644 --- a/apps/job/api/job.go +++ b/apps/job/api/job.go @@ -4,12 +4,12 @@ import ( "github.com/PandaXGO/PandaKit/biz" "github.com/PandaXGO/PandaKit/model" "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" "log" "pandax/apps/job/api/from" "pandax/apps/job/entity" "pandax/apps/job/jobs" "pandax/apps/job/services" + "pandax/pkg/tool" "strings" ) @@ -20,7 +20,7 @@ type JobApi struct { func (j *JobApi) CreateJob(rc *restfulx.ReqCtx) { var job entity.SysJob restfulx.BindQuery(rc, &job) - job.Id = kgo.KStr.Uniqid("") + job.Id = tool.GenerateID() job.Owner = rc.LoginAccount.UserName job.OrgId = rc.LoginAccount.OrganizationId j.JobApp.Insert(job) diff --git a/apps/job/jobs/jobbase.go b/apps/job/jobs/jobbase.go index 4a19920..11972c6 100644 --- a/apps/job/jobs/jobbase.go +++ b/apps/job/jobs/jobbase.go @@ -2,10 +2,10 @@ package jobs import ( "fmt" - "github.com/kakuilan/kgo" "pandax/apps/job/entity" "pandax/apps/job/services" "pandax/pkg/global" + "pandax/pkg/tool" logEntity "pandax/apps/job/entity" logServices "pandax/apps/job/services" @@ -54,7 +54,7 @@ type ExecJob struct { func (e *ExecJob) Run() { startTime := time.Now() jobLog := logEntity.JobLog{Name: e.Name, EntryId: e.EntryId, TargetInvoke: e.InvokeTarget, Status: "0"} - jobLog.Id = kgo.KStr.Uniqid("") + jobLog.Id = tool.GenerateID() jobLog.OrgId = e.OrgId jobLog.Owner = e.Owner var obj = jobList[e.InvokeTarget] diff --git a/apps/rule/api/rulechain.go b/apps/rule/api/rulechain.go index 1fd7300..7775660 100644 --- a/apps/rule/api/rulechain.go +++ b/apps/rule/api/rulechain.go @@ -5,12 +5,12 @@ import ( "github.com/PandaXGO/PandaKit/biz" "github.com/PandaXGO/PandaKit/model" "github.com/PandaXGO/PandaKit/restfulx" - "github.com/kakuilan/kgo" "pandax/apps/rule/entity" "pandax/apps/rule/services" "pandax/pkg/rule_engine" "pandax/pkg/rule_engine/message" "pandax/pkg/rule_engine/nodes" + "pandax/pkg/tool" "strings" ) @@ -66,7 +66,7 @@ func (p *RuleChainApi) GetRuleChain(rc *restfulx.ReqCtx) { func (p *RuleChainApi) InsertRuleChain(rc *restfulx.ReqCtx) { var data entity.RuleChain restfulx.BindJsonAndValid(rc, &data) - data.Id = kgo.KStr.Uniqid("rule_") + data.Id = tool.GenerateID() data.Owner = rc.LoginAccount.UserName data.OrgId = rc.LoginAccount.OrganizationId p.RuleChainApp.Insert(data) @@ -94,7 +94,7 @@ func (p *RuleChainApi) CloneRuleChain(rc *restfulx.ReqCtx) { id := restfulx.PathParam(rc, "id") one := p.RuleChainApp.FindOne(id) one.RuleName = one.RuleName + "-克隆" - one.Id = kgo.KStr.Uniqid("rule_") + one.Id = tool.GenerateID() one.Root = "0" p.RuleChainApp.Insert(*one) } diff --git a/fatal.log b/fatal.log index f198a18..8cd1191 100644 --- a/fatal.log +++ b/fatal.log @@ -306,3 +306,55 @@ created by pandax/iothub.(*HookService).handleOne 2023-09-15 14:45:53-------------------------------- 2023-09-15 14:52:47-------------------------------- + +2023-09-16 10:02:42-------------------------------- + +2023-09-19 10:13:20-------------------------------- +panic: (*logrus.Entry) 0xc0002540e0 + +goroutine 1 [running]: +github.com/sirupsen/logrus.(*Entry).log(0xc000254000, 0x0, {0xc0005320e0, 0x6d}) + D:/workspace/go/pkg/mod/github.com/sirupsen/logrus@v1.9.0/entry.go:260 +0x4a7 +github.com/sirupsen/logrus.(*Entry).Log(0xc000254000, 0x0, {0xc0004c6ba0?, 0x0?, 0x1a59720?}) + D:/workspace/go/pkg/mod/github.com/sirupsen/logrus@v1.9.0/entry.go:304 +0x4f +github.com/sirupsen/logrus.(*Logger).Log(0xc000438780, 0x0, {0xc0004c6ba0, 0x1, 0x1}) + D:/workspace/go/pkg/mod/github.com/sirupsen/logrus@v1.9.0/logger.go:204 +0x65 +github.com/sirupsen/logrus.(*Logger).Panic(...) + D:/workspace/go/pkg/mod/github.com/sirupsen/logrus@v1.9.0/logger.go:253 +pandax/pkg/initialize.InitTable() + D:/workspace/go/project/PandaX/PandaX/pkg/initialize/table.go:43 +0x831 +main.glob..func1(0x34ca040?, {0x1d4ab4d?, 0x0?, 0x0?}) + D:/workspace/go/project/PandaX/PandaX/main.go:61 +0x538 +github.com/spf13/cobra.(*Command).execute(0x34ca040, {0xc000078240, 0x0, 0x0}) + D:/workspace/go/pkg/mod/github.com/spf13/cobra@v1.5.0/command.go:861 +0x5e3 +github.com/spf13/cobra.(*Command).ExecuteC(0x34ca040) + D:/workspace/go/pkg/mod/github.com/spf13/cobra@v1.5.0/command.go:990 +0x3bd +github.com/spf13/cobra.(*Command).Execute(...) + D:/workspace/go/pkg/mod/github.com/spf13/cobra@v1.5.0/command.go:918 +main.main() + D:/workspace/go/project/PandaX/PandaX/main.go:106 +0x25 + +2023-09-19 10:14:35-------------------------------- +panic: (*logrus.Entry) 0xc000460690 + +goroutine 1 [running]: +github.com/sirupsen/logrus.(*Entry).log(0xc000460230, 0x0, {0xc000532000, 0x6d}) + D:/workspace/go/pkg/mod/github.com/sirupsen/logrus@v1.9.0/entry.go:260 +0x4a7 +github.com/sirupsen/logrus.(*Entry).Log(0xc000460230, 0x0, {0xc00051cba0?, 0x0?, 0x1459720?}) + D:/workspace/go/pkg/mod/github.com/sirupsen/logrus@v1.9.0/entry.go:304 +0x4f +github.com/sirupsen/logrus.(*Logger).Log(0xc000134880, 0x0, {0xc00051cba0, 0x1, 0x1}) + D:/workspace/go/pkg/mod/github.com/sirupsen/logrus@v1.9.0/logger.go:204 +0x65 +github.com/sirupsen/logrus.(*Logger).Panic(...) + D:/workspace/go/pkg/mod/github.com/sirupsen/logrus@v1.9.0/logger.go:253 +pandax/pkg/initialize.InitTable() + D:/workspace/go/project/PandaX/PandaX/pkg/initialize/table.go:43 +0x831 +main.glob..func1(0x2eca040?, {0x174ab4d?, 0x0?, 0x0?}) + D:/workspace/go/project/PandaX/PandaX/main.go:61 +0x538 +github.com/spf13/cobra.(*Command).execute(0x2eca040, {0xc000078240, 0x0, 0x0}) + D:/workspace/go/pkg/mod/github.com/spf13/cobra@v1.5.0/command.go:861 +0x5e3 +github.com/spf13/cobra.(*Command).ExecuteC(0x2eca040) + D:/workspace/go/pkg/mod/github.com/spf13/cobra@v1.5.0/command.go:990 +0x3bd +github.com/spf13/cobra.(*Command).Execute(...) + D:/workspace/go/pkg/mod/github.com/spf13/cobra@v1.5.0/command.go:918 +main.main() + D:/workspace/go/project/PandaX/PandaX/main.go:106 +0x25 diff --git a/panda_log.log b/panda_log.log index a89c122..436855e 100644 --- a/panda_log.log +++ b/panda_log.log @@ -2149,3 +2149,47 @@ 2023-09-16 10:01:04.706 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/product/list/all] : 获取Product分页列表 ->32ms 2023-09-16 10:01:04.707 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/dict/data/type] : 获取字典数据列表通过字典类型 ->12ms 2023-09-16 10:01:08.321 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/organization/organizationTree] : 获取所有组织树 ->3ms +2023-09-16 10:02:42.772 [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-16 10:02:42.779 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功 +2023-09-16 10:02:42.781 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功 +2023-09-16 10:02:42.781 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功 +2023-09-16 10:02:42.788 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成 +2023-09-16 10:02:42.788 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788 +2023-09-16 10:02:42.789 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001 +2023-09-16 10:02:42.793 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:87] : 2023-09-16 10:02:42 [INFO] JobCore start success. +2023-09-16 10:02:43.093 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:124] : pandax断开连接 +2023-09-16 10:02:43.095 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:153] : 账号pandax,密码pandax,开始认证 +2023-09-16 10:02:43.101 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:96] : Client emqx@172.17.0.4 Connected +2023-09-16 10:03:12.739 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/d_a377f18263b5915adac41736/allot/org] : 分配组织 ->253ms +2023-09-16 10:03:20.841 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/organization/organizationTree] [uid=1] : 获取所有组织树 ->15ms +2023-09-16 10:03:25.405 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/organization/organizationTree] : 获取所有组织树 ->5ms +2023-09-16 10:04:43.660 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/organization/organizationTree] [uid=1] [uname=panda] : 获取所有组织树 ->6ms +2023-09-16 10:04:49.054 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/organization/organizationTree] : 获取所有组织树 ->4ms +2023-09-16 10:04:52.008 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/system/organization/organizationTree] [uid=1] : 获取所有组织树 ->6ms +2023-09-16 10:05:05.465 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/organization/organizationTree] : 获取所有组织树 ->3ms +2023-09-16 10:05:11.641 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->29ms +2023-09-16 10:05:11.683 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/device/product/list/all] [uid=1] [uname=panda] : 获取Product分页列表 ->15ms +2023-09-16 10:05:11.695 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->14ms +2023-09-16 10:05:11.710 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/list] [uid=1] : 获取Device分页列表 ->73ms +2023-09-16 10:05:14.918 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/system/organization/organizationTree] : 获取所有组织树 ->5ms +2023-09-16 10:06:23.080 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uname=panda] [GET=/device/product/list/all] [uid=1] : 获取Product分页列表 ->18ms +2023-09-16 10:06:23.090 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [uid=1] [uname=panda] [GET=/device/group/list/tree/label] : 获取DeviceGroup树 ->20ms +2023-09-16 10:06:23.093 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/middleware/log.go:34] [GET=/system/dict/data/type] [uid=1] [uname=panda] : 获取字典数据列表通过字典类型 ->9ms +2023-09-19 10:13:20.929 [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-19 10:13:20.935 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功 +2023-09-19 10:13:20.937 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功 +2023-09-19 10:13:20.937 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功 +2023-09-19 10:13:20.940 [PANIC] [D:/workspace/go/project/PandaX/PandaX/pkg/initialize/table.go:43] : server response: 400 Bad Request - {"status":"error","code":896,"desc":"Database not specified or available"} +2023-09-19 10:14:35.863 [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-19 10:14:35.871 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功 +2023-09-19 10:14:35.873 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功 +2023-09-19 10:14:35.873 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功 +2023-09-19 10:14:35.875 [PANIC] [D:/workspace/go/project/PandaX/PandaX/pkg/initialize/table.go:43] : server response: 400 Bad Request - {"status":"error","code":896,"desc":"Database not specified or available"} +2023-09-19 10:16:07.753 [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-19 10:16:07.760 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:46] : mysql连接成功 +2023-09-19 10:16:07.762 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:51] : Redis连接成功 +2023-09-19 10:16:07.762 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:58] : Tdengine连接成功 +2023-09-19 10:16:07.967 [INFO] [D:/workspace/go/project/PandaX/PandaX/main.go:76] : 路由初始化完成 +2023-09-19 10:16:07.967 [INFO] [D:/workspace/go/project/PandaX/PandaX/pkg/transport/http_server.go:38] : HTTP Server listen: :7788 +2023-09-19 10:16:07.968 [INFO] [D:/workspace/go/project/PandaX/PandaX/iothub/hook.go:37] : IOTHUB HOOK Start SUCCESS,Grpc Server listen: :9001 +2023-09-19 10:16:07.975 [INFO] [D:/workspace/go/project/PandaX/PandaX/apps/job/jobs/jobbase.go:87] : 2023-09-19 10:16:07 [INFO] JobCore start success. diff --git a/pkg/rule_engine/nodes/action_create_alarm_node.go b/pkg/rule_engine/nodes/action_create_alarm_node.go index 125fc8b..c760048 100644 --- a/pkg/rule_engine/nodes/action_create_alarm_node.go +++ b/pkg/rule_engine/nodes/action_create_alarm_node.go @@ -2,12 +2,12 @@ package nodes import ( "encoding/json" - "github.com/kakuilan/kgo" "github.com/sirupsen/logrus" "pandax/apps/device/entity" "pandax/apps/device/services" "pandax/pkg/global" "pandax/pkg/rule_engine/message" + "pandax/pkg/tool" "time" ) @@ -52,7 +52,7 @@ func (n *createAlarmNode) Handle(msg *message.Message) error { } } else { alarm = &entity.DeviceAlarm{} - alarm.Id = kgo.KStr.Uniqid("a") + alarm.Id = tool.GenerateID() alarm.DeviceId = msg.Metadata.GetValue("deviceId").(string) alarm.ProductId = msg.Metadata.GetValue("productId").(string) alarm.Name = msg.Metadata.GetValue("deviceName").(string) diff --git a/pkg/tool/base_test.go b/pkg/tool/base_test.go index 36eef82..d741a43 100644 --- a/pkg/tool/base_test.go +++ b/pkg/tool/base_test.go @@ -6,3 +6,8 @@ func TestToCamelCase(t *testing.T) { camelCase := ToCamelCase("hello_world") t.Log(camelCase) } + +func TestGenerateID(t *testing.T) { + id := GenerateID() + t.Log(id) +} diff --git a/pkg/tool/device.go b/pkg/tool/device.go index c924e47..62b1f2f 100644 --- a/pkg/tool/device.go +++ b/pkg/tool/device.go @@ -7,6 +7,7 @@ import ( "github.com/PandaXGO/PandaKit/biz" "github.com/google/uuid" "gorm.io/gorm" + "math/rand" "pandax/apps/system/entity" "pandax/apps/system/services" "pandax/pkg/global" @@ -79,5 +80,13 @@ func OrgAuthSet(tx *gorm.DB, roleId int64, owner string) { } else { tx.Where("owner = ?", owner) } - +} +func GenerateID() string { + rand.Seed(time.Now().UnixNano()) + id := make([]byte, 7) // 由于base64编码会增加字符数,这里使用7个字节生成10位ID + _, err := rand.Read(id) + if err != nil { + panic(err) // 错误处理,根据实际情况进行处理 + } + return base64.URLEncoding.EncodeToString(id)[:10] } diff --git a/shutdown.bat b/shutdown.bat index 5b95952..f12be83 100644 --- a/shutdown.bat +++ b/shutdown.bat @@ -1 +1 @@ -taskkill /pid 18372 -t -f \ No newline at end of file +taskkill /pid 21060 -t -f \ No newline at end of file