feat: 为MES和工作站服务添加启动后自动打开浏览器功能

优化WMS客户端URL处理逻辑,移除尾斜杠避免请求404错误
更新工作站配置默认工位号为1
新增数据库字段支持工位页签配置
删除WMS端未完成的权限树形化和范围验证测试文件
删除物料档案对齐方案文档

新增自动打开浏览器的跨平台实现,服务启动后等待1秒后打开管理后台,提升使用便捷性
This commit is contained in:
SunYF
2026-09-24 17:27:24 +08:00
parent f274da044c
commit d9d4155de6
9 changed files with 63 additions and 221 deletions
+25
View File
@@ -10,8 +10,11 @@ import (
"io/fs"
"net/http"
"os"
"os/exec"
"path"
"runtime"
"strings"
"time"
"bj_power_mes/common/logx"
"bj_power_mes/internal/config"
@@ -150,6 +153,22 @@ func newStaticHandler(fsys embed.FS) http.Handler {
})
}
// openBrowser 用系统默认浏览器打开 url(Windows/macOS/Linux)
func openBrowser(url string) {
var cmd *exec.Cmd
switch runtime.GOOS {
case "windows":
cmd = exec.Command("rundll32", "url.dll,FileProtocolHandler", url)
case "darwin":
cmd = exec.Command("open", url)
default:
cmd = exec.Command("xdg-open", url)
}
if err := cmd.Start(); err != nil {
gologx.Errorf("自动打开浏览器失败(%s): %v", url, err)
}
}
func main() {
flag.Parse()
@@ -221,5 +240,11 @@ func main() {
fmt.Printf("Starting bj_power_mes server at %s:%d...\n", c.Host, c.Port)
gologx.Infof("Starting bj_power_mes server at %s:%d...", c.Host, c.Port)
// 启动后自动打开管理后台(等 1 秒让端口就绪;Host=0.0.0.0 时用 127.0.0.1 访问)
go func() {
time.Sleep(time.Second)
openBrowser(fmt.Sprintf("http://127.0.0.1:%d", c.Port))
}()
server.Start()
}