zhangqian
2023-08-19 2b2193e255e55fe55dedf7dce0e6bdc22f4860ee
api/v1/config.go
@@ -1,6 +1,7 @@
package v1
import (
   "apsClient/conf"
   "apsClient/model"
   "apsClient/model/request"
   _ "apsClient/model/response"
@@ -8,6 +9,8 @@
   "apsClient/pkg/ecode"
   "apsClient/pkg/logx"
   "apsClient/service"
   "apsClient/utils"
   "fmt"
   "github.com/gin-gonic/gin"
)
@@ -56,13 +59,29 @@
      ctx.FailWithMsg(ecode.UnknownErr, "获取网络配置失败")
      return
   }
   err = service.NewConfigService().SetNetConfig(params.Id, &params)
   if err != nil {
      logx.Errorf("SetNetConfig error: %v", err.Error())
      ctx.FailWithMsg(ecode.DBErr, "设置失败")
      return
   }
   if conf.Conf.System.NetSetShellPath == "" || conf.Conf.System.NetUpShellName == "" || conf.Conf.System.NetDownShellName == "" {
      ctx.FailWithMsg(ecode.DBErr, "请先配置网络设置路径和脚本名")
      return
   }
   var shName string
   if params.Status == model.NetConfigStatusEnabled {
      shName = conf.Conf.System.NetUpShellName
   } else {
      shName = conf.Conf.System.NetDownShellName
   }
   sh := fmt.Sprintf("%s %v %v %v", shName, params.IP, params.MASK, params.Gateway)
   err = utils.Cmd(conf.Conf.System.NetSetShellPath, sh)
   if err != nil {
      logx.Errorf("network update failed: %v", err.Error())
      ctx.FailWithMsg(ecode.UnknownErr, "网络设置失败")
      return
   }
   ctx.Ok()
}