Browse Source

取消 xlsx类型返回 后续作为单独接口示例 修复前端配置文件form表单内容

QM303176530 4 years ago
parent
commit
5e657972b3
3 changed files with 219 additions and 142 deletions
  1. 0 2
      server/global/response/response.go
  2. 0 1
      server/go.mod
  3. 219 139
      web/src/view/systemTools/system/system.vue

+ 0 - 2
server/global/response/response.go

@@ -1,10 +1,8 @@
 package response
 
 import (
-	"github.com/360EntSecGroup-Skylar/excelize"
 	"github.com/gin-gonic/gin"
 	"net/http"
-	"strconv"
 )
 
 type Response struct {

+ 0 - 1
server/go.mod

@@ -3,7 +3,6 @@ module gin-vue-admin
 go 1.12
 
 require (
-	github.com/360EntSecGroup-Skylar/excelize v1.4.1 // indirect
 	github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751
 	github.com/casbin/casbin v1.9.1
 	github.com/casbin/casbin/v2 v2.11.0

+ 219 - 139
web/src/view/systemTools/system/system.vue

@@ -1,138 +1,218 @@
 <template>
-	<div class="system">
-		<el-form :model="config" label-width="100px" ref="form" class="system">
-			<h2>系统配置</h2>
-			<el-form-item label="多点登录拦截">
-				<el-checkbox v-model="config.system.useMultipoint">开启</el-checkbox>
-			</el-form-item>
-			<el-form-item label="环境值">
-				<el-input v-model="config.system.env"></el-input>
-			</el-form-item>
-			<el-form-item label="端口值">
-				<el-input v-model.number="config.system.addr"></el-input>
-			</el-form-item>
-			<el-form-item label="数据库类型">
-				<el-select v-model="config.system.dbType">
-					<el-option value="sqlite"></el-option>
-					<el-option value="mysql"></el-option>
-				</el-select>
-			</el-form-item>
-			<h2>jwt签名</h2>
-			<el-form-item label="jwt签名">
-				<el-input v-model="config.jwt.signingKey"></el-input>
-			</el-form-item>
-			<h2>casbin配置</h2>
-			<el-form-item label="模型地址">
-				<el-input v-model="config.casbin.modelPath"></el-input>
-			</el-form-item>
-			<template v-show="config.system.dbType == 'mysql'">
-				<h2>mysql admin数据库配置</h2>
-				<el-form-item label="username">
-					<el-input v-model="config.mysql.username"></el-input>
-				</el-form-item>
-				<el-form-item label="password">
-					<el-input v-model="config.mysql.password"></el-input>
-				</el-form-item>
-				<el-form-item label="path">
-					<el-input v-model="config.mysql.path"></el-input>
-				</el-form-item>
-				<el-form-item label="dbname">
-					<el-input v-model="config.mysql.dbname"></el-input>
-				</el-form-item>
-				<el-form-item label="maxIdleConns">
-					<el-input v-model.number="config.mysql.maxIdleConns"></el-input>
-				</el-form-item>
-				<el-form-item label="maxOpenConns">
-					<el-input v-model.number="config.mysql.maxOpenConns"></el-input>
-				</el-form-item>
-				<el-form-item label="logMode">
-					<el-checkbox v-model="config.mysql.logMode"></el-checkbox>
-				</el-form-item>
-			</template>
-			<template v-show="config.system.dbType == 'sqlite'">
-				<h2>sqlite admin数据库配置</h2>
-				<el-form-item label="path">
-					<el-input v-model="config.sqlite.path"></el-input>
-				</el-form-item>
-				<el-form-item label="config">
-					<el-input v-model="config.sqlite.config"></el-input>
-				</el-form-item>
-				<el-form-item label="logMode">
-					<el-checkbox v-model="config.sqlite.logMode"></el-checkbox>
-				</el-form-item>
-			</template>
-			<h2>Redis admin数据库配置</h2>
-			<el-form-item label="addr">
-				<el-input v-model="config.redis.addr"></el-input>
-			</el-form-item>
-			<el-form-item label="password">
-				<el-input v-model="config.redis.password"></el-input>
-			</el-form-item>
-			<el-form-item label="db">
-				<el-input v-model="config.redis.db"></el-input>
-			</el-form-item>
-			<h2>上传配置</h2>
-				<el-form-item label="本地或七牛云">
-					<el-checkbox v-model="config.localUpload.local">本地</el-checkbox>
-				</el-form-item>
-				<el-form-item label="本地文件路径">
-					<el-input v-model="config.localUpload.filePath"></el-input>
-				</el-form-item>
-			<h2>七牛密钥配置</h2>
-			<el-form-item label="accessKey">
-				<el-input v-model="config.qiniu.accessKey"></el-input>
-			</el-form-item>
-			<el-form-item label="secretKey">
-				<el-input v-model="config.qiniu.secretKey"></el-input>
-			</el-form-item>
-			<h2>验证码配置</h2>
-			<el-form-item label="keyLong">
-				<el-input v-model.number="config.captcha.keyLong"></el-input>
-			</el-form-item>
-			<el-form-item label="imgWidth">
-				<el-input v-model.number="config.captcha.imgWidth"></el-input>
-			</el-form-item>
-			<el-form-item label="imgHeight">
-				<el-input v-model.number="config.captcha.imgHeight"></el-input>
-			</el-form-item>
-			<h2>日志配置</h2>
-			<el-form-item label="prefix">
-				<el-input v-model.number="config.log.prefix"></el-input>
-			</el-form-item>
-			<el-form-item label="logFile">
-				<el-checkbox v-model="config.log.logFile"></el-checkbox>
-			</el-form-item>
-			<h2>邮箱配置</h2>
-			<el-form-item label="emailFrom">
-				<el-input v-model="config.email.emailFrom"></el-input>
-			</el-form-item>
-			<el-form-item label="emailNickName">
-				<el-input v-model="config.email.emailNickName"></el-input>
-			</el-form-item>
-			<el-form-item label="emailSecret">
-				<el-input v-model="config.email.emailSecret"></el-input>
-			</el-form-item>
-			<el-form-item label="emailTo">
-				<el-input v-model="config.email.emailTo" placeholder="可多个,以逗号分隔"></el-input>
-			</el-form-item>
-			<el-form-item label="emailHost">
-				<el-input v-model="config.email.emailHost"></el-input>
-			</el-form-item>
-			<el-form-item label="emailPort">
-				<el-input v-model.number="config.email.emailPort"></el-input>
-			</el-form-item>
-			<el-form-item label="emailIsSSL">
-				<el-checkbox v-model="config.email.emailIsSSL"></el-checkbox>
-			</el-form-item>
-			<el-form-item label="测试邮件">
-				<el-button @click="email">测试邮件</el-button>
-			</el-form-item>
-			<el-form-item>
-				<el-button @click="update" type="primary">立即更新</el-button>
-				<el-button @click="reload" type="primary">重启服务(开发中)</el-button>
-			</el-form-item>
-		</el-form>
-	</div>
+  <div class="system">
+    <el-form :model="config" label-width="100px" ref="form" class="system">
+      <h2>系统配置</h2>
+      <el-form-item label="多点登录拦截">
+        <el-checkbox v-model="config.system.useMultipoint">开启</el-checkbox>
+      </el-form-item>
+      <el-form-item label="环境值">
+        <el-input v-model="config.system.env"></el-input>
+      </el-form-item>
+      <el-form-item label="端口值">
+        <el-input v-model.number="config.system.addr"></el-input>
+      </el-form-item>
+      <el-form-item label="数据库类型">
+        <el-select v-model="config.system.dbType">
+          <el-option value="sqlite"></el-option>
+          <el-option value="mysql"></el-option>
+          <el-option value="postgresql"></el-option>
+          <el-option value="sqlserver"></el-option>
+        </el-select>
+      </el-form-item>
+      <h2>jwt签名</h2>
+      <el-form-item label="jwt签名">
+        <el-input v-model="config.jwt.signingKey"></el-input>
+      </el-form-item>
+      <h2>casbin配置</h2>
+      <el-form-item label="模型地址">
+        <el-input v-model="config.casbin.modelPath"></el-input>
+      </el-form-item>
+      <template v-if="config.system.dbType == 'mysql'">
+        <h2>mysql admin数据库配置</h2>
+        <el-form-item label="username">
+          <el-input v-model="config.mysql.username"></el-input>
+        </el-form-item>
+        <el-form-item label="password">
+          <el-input v-model="config.mysql.password"></el-input>
+        </el-form-item>
+        <el-form-item label="path">
+          <el-input v-model="config.mysql.path"></el-input>
+        </el-form-item>
+        <el-form-item label="dbname">
+          <el-input v-model="config.mysql.dbname"></el-input>
+        </el-form-item>
+        <el-form-item label="maxIdleConns">
+          <el-input v-model.number="config.mysql.maxIdleConns"></el-input>
+        </el-form-item>
+        <el-form-item label="maxOpenConns">
+          <el-input v-model.number="config.mysql.maxOpenConns"></el-input>
+        </el-form-item>
+        <el-form-item label="logMode">
+          <el-checkbox v-model="config.mysql.logMode"></el-checkbox>
+        </el-form-item>
+      </template>
+      <template v-if="config.system.dbType == 'postgresql'">
+        <h2>postgresql admin数据库配置</h2>
+        <el-form-item label="username">
+          <el-input v-model="config.mysql.username"></el-input>
+        </el-form-item>
+        <el-form-item label="password">
+          <el-input v-model="config.mysql.password"></el-input>
+        </el-form-item>
+        <el-form-item label="dbName">
+          <el-input v-model="config.mysql.dbName"></el-input>
+        </el-form-item>
+        <el-form-item label="port">
+          <el-input v-model="config.mysql.port"></el-input>
+        </el-form-item>
+        <el-form-item label="config">
+          <el-input v-model="config.mysql.config"></el-input>
+        </el-form-item>
+        <el-form-item label="maxIdleConns">
+          <el-input v-model.number="config.mysql.maxIdleConns"></el-input>
+        </el-form-item>
+        <el-form-item label="maxOpenConns">
+          <el-input v-model.number="config.mysql.maxOpenConns"></el-input>
+        </el-form-item>
+        <el-form-item label="logger">
+          <el-checkbox v-model="config.mysql.logger"></el-checkbox>
+        </el-form-item>
+        <el-form-item label="prefer-simple-protocol">
+          <el-checkbox v-model="config.mysql.preferSimpleProtocol"></el-checkbox>
+        </el-form-item>
+      </template>
+      <template v-if="config.system.dbType == 'sqlite'">
+        <h2>sqlite admin数据库配置</h2>
+        <el-form-item label="path">
+          <el-input v-model="config.mysql.path"></el-input>
+        </el-form-item>
+        <el-form-item label="maxIdleConns">
+          <el-input v-model.number="config.mysql.maxIdleConns"></el-input>
+        </el-form-item>
+        <el-form-item label="maxOpenConns">
+          <el-input v-model.number="config.mysql.maxOpenConns"></el-input>
+        </el-form-item>
+        <el-form-item label="logger">
+          <el-checkbox v-model="config.mysql.logger"></el-checkbox>
+        </el-form-item>
+      </template>
+      <template v-if="config.system.dbType == 'sqlserver'">
+        <h2>sqlserver admin数据库配置</h2>
+        <el-form-item label="username">
+          <el-input v-model="config.sqlserver.username"></el-input>
+        </el-form-item>
+        <el-form-item label="password">
+          <el-input v-model="config.sqlserver.password"></el-input>
+        </el-form-item>
+        <el-form-item label="path">
+          <el-input v-model="config.sqlserver.path"></el-input>
+        </el-form-item>
+        <el-form-item label="dbname">
+          <el-input v-model="config.sqlserver.dbname"></el-input>
+        </el-form-item>
+        <el-form-item label="maxIdleConns">
+          <el-input v-model.number="config.sqlserver.maxIdleConns"></el-input>
+        </el-form-item>
+        <el-form-item label="maxOpenConns">
+          <el-input v-model.number="config.sqlserver.maxOpenConns"></el-input>
+        </el-form-item>
+        <el-form-item label="logger">
+          <el-checkbox v-model="config.sqlserver.logger"></el-checkbox>
+        </el-form-item>
+      </template>
+      <h2>Redis admin数据库配置</h2>
+      <el-form-item label="addr">
+        <el-input v-model="config.redis.addr"></el-input>
+      </el-form-item>
+      <el-form-item label="password">
+        <el-input v-model="config.redis.password"></el-input>
+      </el-form-item>
+      <el-form-item label="db">
+        <el-input v-model="config.redis.db"></el-input>
+      </el-form-item>
+      <h2>上传配置</h2>
+      <el-form-item label="本地或七牛云">
+        <el-checkbox v-model="config.localUpload.local">本地</el-checkbox>
+      </el-form-item>
+      <el-form-item label="本地文件路径">
+        <el-input v-model="config.localUpload.filePath"></el-input>
+      </el-form-item>
+      <h2>七牛密钥配置</h2>
+      <el-form-item label="accessKey">
+        <el-input v-model="config.qiniu.accessKey"></el-input>
+      </el-form-item>
+      <el-form-item label="secretKey">
+        <el-input v-model="config.qiniu.secretKey"></el-input>
+      </el-form-item>
+      <h2>验证码配置</h2>
+      <el-form-item label="keyLong">
+        <el-input v-model.number="config.captcha.keyLong"></el-input>
+      </el-form-item>
+      <el-form-item label="imgWidth">
+        <el-input v-model.number="config.captcha.imgWidth"></el-input>
+      </el-form-item>
+      <el-form-item label="imgHeight">
+        <el-input v-model.number="config.captcha.imgHeight"></el-input>
+      </el-form-item>
+      <h2>日志配置</h2>
+      <el-form-item label="level">
+        <el-input v-model.number="config.zap.level"></el-input>
+      </el-form-item>
+      <el-form-item label="format">
+        <el-input v-model="config.zap.format"></el-input>
+      </el-form-item>
+      <el-form-item label="prefix">
+        <el-input v-model="config.zap.prefix"></el-input>
+      </el-form-item>
+      <el-form-item label="director">
+        <el-input v-model="config.zap.director"></el-input>
+      </el-form-item>
+      <el-form-item label="link-name">
+        <el-input v-model="config.zap.linkName"></el-input>
+      </el-form-item>
+      <el-form-item label="encode-level">
+        <el-input v-model="config.zap.encodeLevel"></el-input>
+      </el-form-item>
+      <el-form-item label="stacktrace-key">
+        <el-input v-model="config.zap.stacktraceKey"></el-input>
+      </el-form-item>
+      <el-form-item label="show-line">
+        <el-checkbox v-model="config.zap.showLine"></el-checkbox>
+      </el-form-item>
+      <el-form-item label="log-in-console">
+        <el-checkbox v-model="config.zap.logInConsole"></el-checkbox>
+      </el-form-item>
+      <h2>邮箱配置</h2>
+      <el-form-item label="emailFrom">
+        <el-input v-model="config.email.emailFrom"></el-input>
+      </el-form-item>
+      <el-form-item label="emailNickName">
+        <el-input v-model="config.email.emailNickName"></el-input>
+      </el-form-item>
+      <el-form-item label="emailSecret">
+        <el-input v-model="config.email.emailSecret"></el-input>
+      </el-form-item>
+      <el-form-item label="emailTo">
+        <el-input v-model="config.email.emailTo" placeholder="可多个,以逗号分隔"></el-input>
+      </el-form-item>
+      <el-form-item label="emailHost">
+        <el-input v-model="config.email.emailHost"></el-input>
+      </el-form-item>
+      <el-form-item label="emailPort">
+        <el-input v-model.number="config.email.emailPort"></el-input>
+      </el-form-item>
+      <el-form-item label="emailIsSSL">
+        <el-checkbox v-model="config.email.emailIsSSL"></el-checkbox>
+      </el-form-item>
+      <el-form-item label="测试邮件">
+        <el-button @click="email">测试邮件</el-button>
+      </el-form-item>
+      <el-form-item>
+        <el-button @click="update" type="primary">立即更新</el-button>
+        <el-button @click="reload" type="primary">重启服务(开发中)</el-button>
+      </el-form-item>
+    </el-form>
+  </div>
 </template>
 
 <script>
@@ -151,9 +231,9 @@ export default {
         redis: {},
         qiniu: {},
         captcha: {},
-		log: {},
-		localUpload: {},
-		email: {},
+        log: {},
+        localUpload: {},
+        email: {}
       }
     };
   },
@@ -187,11 +267,11 @@ export default {
         });
         await this.initForm();
       } else {
-		this.$message({
+        this.$message({
           type: "error",
           message: "邮件发送失败"
         });
-	  }
+      }
     }
   }
 };