From ba513511eb84549d7a3b5558f49df2bed6319be9 Mon Sep 17 00:00:00 2001
From: 554325746@qq.com <554325746@qq.com>
Date: 星期二, 11 二月 2020 15:53:57 +0800
Subject: [PATCH] fix: sysconfig add nginx port

---
 controllers/syssetcont.go |    2 ++
 extend/sys/system.go      |   39 ++++++++++++++++++++++++++++++++++++++-
 controllers/sdk.go        |    8 ++++----
 3 files changed, 44 insertions(+), 5 deletions(-)

diff --git a/controllers/sdk.go b/controllers/sdk.go
index 58cb37c..3f3fd33 100644
--- a/controllers/sdk.go
+++ b/controllers/sdk.go
@@ -154,16 +154,16 @@
 	var soApi dbapi.SoApi
 	var sdkConfig map[string]interface{}
 
-	path, exist := c.GetQuery("path")
+	sdkId, exist := c.GetQuery("path")
 	if !exist {
 		util.ResponseFormat(c, code.ComError, "涓嬭浇鐨勭畻娉曞弬鏁版湁璇�")
 	}
 
-	logger.Info(path)
+	logger.Info(sdkId)
 
 	// 鍏堟煡鎵炬湰鍦扮洰褰曞唴鏄惁宸插瓨鍦ㄧ畻娉晄o, 娌℃湁璧颁簯绔笅杞�
-	if sdkConfig = service.FindLocalSdkSoById(path); sdkConfig == nil {
-		sdkConfig = service.DownSdk(path)
+	if sdkConfig = service.FindLocalSdkSoById(sdkId); sdkConfig == nil {
+		sdkConfig = service.DownSdk(sdkId)
 	}
 
 	if sdkConfig != nil {
diff --git a/controllers/syssetcont.go b/controllers/syssetcont.go
index 12f0593..5da3064 100644
--- a/controllers/syssetcont.go
+++ b/controllers/syssetcont.go
@@ -176,6 +176,8 @@
 	} else {
 		resData["server_id"] = sysconf.GetServerId()
 		resData["server_name"] = sysconf.GetServerName()
+		resData["server_port"] = sys.GetNginxListenPort()
+
 		ipv4, mask, _ := sys.GetLocalIP(config.Server.NetworkAdapter)
 		gateway, _ := sys.GetDefaultRoute(config.Server.NetworkAdapter)
 		dns, _ := sys.GetDnsServer()
diff --git a/extend/sys/system.go b/extend/sys/system.go
index 647917d..2433309 100644
--- a/extend/sys/system.go
+++ b/extend/sys/system.go
@@ -61,7 +61,7 @@
 
 // 鑾峰彇鏈満缃戝叧ip
 func GetDefaultRoute(networkName string) (route string, err error) {
-	cmdStr := fmt.Sprintf("ip route show | grep -P \"^default.*%s\" | awk '{printf $3}'", networkName)
+	cmdStr := fmt.Sprintf("ip route show | grep -P \"^default.*%s onlink\" | awk '{printf $3}'", networkName)
 	cmd := exec.Command("/bin/sh", "-c", cmdStr)
 	b, err := cmd.Output()
 	if err != nil {
@@ -234,3 +234,40 @@
 
 	return err == nil
 }
+
+const ngConfig = "/opt/vasystem/config/system-2.0.conf"
+func GetNginxListenPort() string {
+	_, err := os.Stat(ngConfig)
+	if err != nil {
+		return "7003"
+	}
+
+	cmdStr := fmt.Sprintf("cat %s | grep listen | awk  '{printf $2}' | sed 's/;//g'", ngConfig)
+	cmd := exec.Command("/bin/sh", "-c", cmdStr)
+	port, err := cmd.Output()
+	if err != nil {
+		return ""
+	}
+
+	return string(port)
+}
+
+func SetNginxListenPort(port string) bool {
+	_, err := os.Stat(ngConfig)
+	if err != nil {
+		return false
+	}
+
+	// 淇敼閰嶇疆鏂囦欢绔彛
+	cmdStr := fmt.Sprintf("sed -i 's/listen.*/listen %s;/' %s", port, ngConfig)
+	cmd := exec.Command("/bin/sh", "-c", cmdStr)
+	_, err = cmd.Output()
+	if err != nil {
+		return false
+	}
+
+	// 閲嶅惎nginx
+	_, err = execRootCommand("service nginx reload")
+
+	return err == nil
+}
\ No newline at end of file

--
Gitblit v1.8.0