Browse Source

实现基本方式处理

master
VIVIMAN 3 years ago
parent
commit
9dea2b88dd
  1. 0
      golang_learn/data_func/go_to_tray/demo03/shell/stopCX.bat
  2. 0
      golang_learn/data_func/go_to_tray/demo03/shell/stopCX.sh
  3. 0
      golang_learn/data_func/go_to_tray/demo03/shell/stopDB.bat
  4. 0
      golang_learn/data_func/go_to_tray/demo03/shell/stopDB.sh
  5. 71
      golang_learn/data_func/go_to_tray/demo04/main.go
  6. 0
      golang_learn/data_func/go_to_tray/demo04/shell/stopCX.bat
  7. 0
      golang_learn/data_func/go_to_tray/demo04/shell/stopCX.sh
  8. 0
      golang_learn/data_func/go_to_tray/demo04/shell/stopDB.bat
  9. 0
      golang_learn/data_func/go_to_tray/demo04/shell/stopDB.sh

0
golang_learn/data_func/go_to_tray/demo03/shell/closeCX.bat → golang_learn/data_func/go_to_tray/demo03/shell/stopCX.bat

0
golang_learn/data_func/go_to_tray/demo03/shell/closeCX.sh → golang_learn/data_func/go_to_tray/demo03/shell/stopCX.sh

0
golang_learn/data_func/go_to_tray/demo03/shell/closeDB.bat → golang_learn/data_func/go_to_tray/demo03/shell/stopDB.bat

0
golang_learn/data_func/go_to_tray/demo03/shell/closeDB.sh → golang_learn/data_func/go_to_tray/demo03/shell/stopDB.sh

71
golang_learn/data_func/go_to_tray/demo04/main.go

@ -4,6 +4,7 @@ import (
"github.com/riftbit/go-systray"
"io/ioutil"
"log"
"os"
"os/exec"
"runtime"
"syscall"
@ -13,6 +14,42 @@ func main() {
_ = systray.Run(onReady, onExit)
}
func mkFile() {
// 创建文件夹
err := os.Mkdir("shell", os.ModePerm)
if err == nil {
toFile("./shell/startCX.bat", "net start GWY20_Tomcat")
toFile("./shell/stopCX.bat", "net stop GWY20_Tomcat")
toFile("./shell/startDB.bat", "net start GWY20_Mysql")
toFile("./shell/stopDB.bat", "net stop GWY20_Mysql")
toFile("./shell/startCX.sh", "service qggwy.service start")
toFile("./shell/stopCX.sh", "service qggwy.service stop")
toFile("./shell/startDB.sh", "service qggwy-kingbase.service start")
toFile("./shell/stopDB.sh", "service qggwy-kingbase.service stop")
}
}
func toFile(fileName, str string) {
sqlObj, err := os.Create(fileName)
if err != nil {
return
}
_, _ = sqlObj.WriteString(str)
_ = sqlObj.Close()
}
// PathExists 判断文件夹是否存在
func PathExists(path string) (bool, error) {
_, err := os.Stat(path)
if err == nil {
return true, nil
}
if os.IsNotExist(err) {
return false, nil
}
return false, err
}
func onReady() {
timezone := "公务员"
_ = systray.SetTitle(timezone)
@ -30,7 +67,7 @@ func onReady() {
submenu := systray.AddSubMenu("帮助")
upCxMenu := submenu.AddSubMenuItem("升级", "进行下载安装组工软件", 0)
infoMenu := submenu.AddSubMenuItem("关于", "辅助使用公务员系统服务", 0)
infoMenu := submenu.AddSubMenuItem("配置文件", "创建配置文件", 0)
systray.AddSeparator()
mQuit := systray.AddMenuItem("退出", "退出", 0)
@ -40,25 +77,25 @@ func onReady() {
select {
case <-startDbMenu.OnClickCh():
_ = OpenServe(true)
return
break
case <-stopDbMenu.OnClickCh():
_ = CloseServe(true)
return
break
case <-startCxMenu.OnClickCh():
_ = OpenServe(false)
return
break
case <-stopCxMenu.OnClickCh():
_ = CloseServe(false)
return
break
case <-openMenu.OnClickCh():
_ = OpenUrl("http://localhost:54022/qggwy")
return
break
case <-upCxMenu.OnClickCh():
_ = OpenUrl("https://www.12371.cn/zgrjxz/gwywx/")
return
break
case <-infoMenu.OnClickCh():
_ = OpenUrl("https://www.12371.cn/zgrjxz/gwywx/")
return
mkFile()
break
case <-mQuit.OnClickCh():
_ = systray.Quit()
return
@ -108,18 +145,18 @@ func OpenServe(isDb bool) error {
case "windows":
if isDb {
cmd = "cmd"
args = []string{"/c", "./shell/startDB.bat"}
args = []string{"/c", "cd", "shell", "&&", "startDB.bat"}
} else {
cmd = "/bin/sh"
args = []string{"-c", "./shell/startDB.sh"}
args = []string{"-c", "cd", "shell", "&&", "startDB.sh"}
}
default: // "linux", "freebsd", "openbsd", "netbsd", "mac"
if isDb {
cmd = "cmd"
args = []string{"/c", "./shell/startCX.bat"}
args = []string{"/c", "cd", "shell", "&&", "startCX.bat"}
} else {
cmd = "/bin/sh"
args = []string{"-c", "./shell/startCX.sh"}
args = []string{"-c", "cd", "shell", "&&", "startCX.sh"}
}
}
c := exec.Command(cmd, args...)
@ -136,18 +173,18 @@ func CloseServe(isDb bool) error {
case "windows":
if isDb {
cmd = "cmd"
args = []string{"/c", "./shell/stopDB.bat"}
args = []string{"/c", "cd", "shell", "&&", "stopDB.bat"}
} else {
cmd = "/bin/sh"
args = []string{"-c", "./shell/stopDB.sh"}
args = []string{"-c", "cd", "shell", "&&", "stopDB.sh"}
}
default: // "linux", "freebsd", "openbsd", "netbsd", "mac"
if isDb {
cmd = "cmd"
args = []string{"/c", "./shell/stopCX.bat"}
args = []string{"/c", "cd", "shell", "&&", "stopCX.bat"}
} else {
cmd = "/bin/sh"
args = []string{"-c", "./shell/stopCX.sh"}
args = []string{"-c", "cd", "shell", "&&", "stopCX.sh"}
}
}
c := exec.Command(cmd, args...)

0
golang_learn/data_func/go_to_tray/demo04/shell/closeCX.bat → golang_learn/data_func/go_to_tray/demo04/shell/stopCX.bat

0
golang_learn/data_func/go_to_tray/demo04/shell/closeCX.sh → golang_learn/data_func/go_to_tray/demo04/shell/stopCX.sh

0
golang_learn/data_func/go_to_tray/demo04/shell/closeDB.bat → golang_learn/data_func/go_to_tray/demo04/shell/stopDB.bat

0
golang_learn/data_func/go_to_tray/demo04/shell/closeDB.sh → golang_learn/data_func/go_to_tray/demo04/shell/stopDB.sh

Loading…
Cancel
Save