wangmengwei 3 mesi fa
parent
commit
0389872574

+ 54 - 0
ruoyi-ui/src/api/zhihuixy/recipe.js

@@ -0,0 +1,54 @@
+import request from '@/utils/request'
+
+// 查询请假记录信息列表
+export function listLeave(query) {
+  return request({
+    url: '/system/recipe/list',
+    method: 'get',
+    params: query
+  })
+}
+
+// 查询请假记录信息详细
+export function getLeave(id) {
+  return request({
+    url: '/system/recipe/' + id,
+    method: 'get'
+  })
+}
+
+// 新增请假记录信息
+export function addLeave(data) {
+  return request({
+    url: '/system/recipe',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改请假记录信息
+export function updateLeave(data) {
+  return request({
+    url: '/system/recipe/put',
+    method: 'post',
+    data: data
+  })
+}
+
+// 删除请假记录信息
+export function delLeave(id) {
+  return request({
+    url: '/system/recipe/delete/' + id,
+    method: 'get'
+  })
+}
+
+export function sh(data) {
+ return request({
+   url: '/system/recipe/sh',
+   method: 'post',
+   data: data
+ })
+}
+
+

BIN
ruoyi-ui/src/assets/images/icon_kcgl_ht_add.png


BIN
ruoyi-ui/src/assets/images/icon_qjlb_del.png


BIN
ruoyi-ui/src/assets/images/icon_qjlb_xxkc.png


BIN
ruoyi-ui/src/assets/images/pic_qjlb_tp_normal.png


BIN
ruoyi-ui/src/assets/images/pic_xyht_tksj_zt_bty.png


BIN
ruoyi-ui/src/assets/images/pic_xyht_tksj_zt_ty.png


BIN
ruoyi-ui/src/assets/images/pic_xyht_zwsj.png


+ 217 - 0
ruoyi-ui/src/components/FileUploadsch/index.vue

@@ -0,0 +1,217 @@
+<template>
+  <div class="upload-file">
+    <el-upload
+      multiple
+      :action="uploadFileUrl"
+      :before-upload="handleBeforeUpload"
+      :file-list="fileList"
+      :limit="limit"
+      :on-error="handleUploadError"
+      :on-exceed="handleExceed"
+      :on-success="handleUploadSuccess"
+      :show-file-list="false"
+      :headers="headers"
+      class="upload-file-uploader"
+      ref="fileUpload"
+    >
+      <!-- 上传按钮 -->
+      <el-button size="mini" type="primary">选取文件</el-button>
+      <!-- 上传提示 -->
+      <div class="el-upload__tip" slot="tip" v-if="showTip">
+        <!-- 请上传 -->
+        <template v-if="fileSize"> 大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b> </template>
+        <template v-if="fileType"> 格式为 <b style="color: #f56c6c">{{ fileType.join("/") }}</b> </template>
+        的文件
+      </div>
+    </el-upload>
+
+    <!-- 文件列表 -->
+    <transition-group class="upload-file-list el-upload-list el-upload-list--text" name="el-fade-in-linear" tag="ul">
+      <li :key="file.url" class="el-upload-list__item ele-upload-list__item-content" v-for="(file, index) in fileList">
+        <el-link :href="`${ defaultSettings.urls}${baseUrl}${file.url}`" :underline="false" target="_blank">
+          <span class="el-icon-document"> {{ file.name }} </span>
+        </el-link>
+        <div class="ele-upload-list__item-content-action">
+          <el-link :underline="false" @click="handleDelete(index)" type="danger">删除</el-link>
+        </div>
+      </li>
+    </transition-group>
+  </div>
+</template>
+
+<script>
+import { getToken } from "@/utils/auth";
+const defaultSettings = require("@/settings.js");
+export default {
+
+  name: "FileUpload",
+  props: {
+    // 值
+    value: [String, Object, Array],
+    // 数量限制
+    limit: {
+      type: Number,
+      default: 5,
+    },
+    // 大小限制(MB)
+    fileSize: {
+      type: Number,
+      default: 500,
+    },
+    // 文件类型, 例如['png', 'jpg', 'jpeg']
+    fileType: {
+      type: Array,
+      default: () => ["doc", "xls", "ppt", "txt", "pdf","wgt"],
+    },
+    // 是否显示提示
+    isShowTip: {
+      type: Boolean,
+      default: true
+    }
+  },
+  data() {
+    return {
+      number: 0,
+      uploadList: [],
+      defaultSettings:defaultSettings,
+      baseUrl:  process.env.VUE_APP_BASE_API,
+      uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", // 上传文件服务器地址
+      headers: {
+        Authorization: "Bearer " + getToken(),
+      },
+      fileList: [],
+    };
+  },
+  watch: {
+    value: {
+      handler(val) {
+        if (val) {
+          let temp = 1;
+          // 首先将值转为数组
+          const list = Array.isArray(val) ? val : this.value.split(',');
+          // 然后将数组转为对象数组
+          this.fileList = list.map(item => {
+            if (typeof item === "string") {
+              item = { name: item, url: item };
+            }
+            item.uid = item.uid || new Date().getTime() + temp++;
+            return item;
+          });
+        } else {
+          this.fileList = [];
+          return [];
+        }
+      },
+      deep: true,
+      immediate: true
+    }
+  },
+  computed: {
+    // 是否显示提示
+    showTip() {
+      return this.isShowTip && (this.fileType || this.fileSize);
+    },
+  },
+  methods: {
+    // 上传前校检格式和大小
+    handleBeforeUpload(file) {
+      // 校检文件类型
+      if (this.fileType) {
+        const fileName = file.name.split('.');
+        const fileExt = fileName[fileName.length - 1];
+        const isTypeOk = this.fileType.indexOf(fileExt) >= 0;
+        if (!isTypeOk) {
+          this.$modal.msgError(`文件格式不正确, 请上传${this.fileType.join("/")}格式文件!`);
+          return false;
+        }
+      }
+      // 校检文件大小
+      if (this.fileSize) {
+        const isLt = file.size / 1024 / 1024 < this.fileSize;
+        if (!isLt) {
+          this.$modal.msgError(`上传文件大小不能超过 ${this.fileSize} MB!`);
+          return false;
+        }
+      }
+      this.$modal.loading("正在上传文件,请稍候...");
+      this.number++;
+      return true;
+    },
+    // 文件个数超出
+    handleExceed() {
+      this.$modal.msgError(`上传文件数量不能超过 ${this.limit} 个!`);
+    },
+    // 上传失败
+    handleUploadError(err) {
+      this.$modal.msgError("上传文件失败,请重试");
+      this.$modal.closeLoading()
+    },
+    // 上传成功回调
+    handleUploadSuccess(res, file) {
+      if (res.code === 200) {
+        this.uploadList.push({ name: res.fileName, url: res.fileName });
+        this.uploadedSuccessfully();
+      } else {
+        this.number--;
+        this.$modal.closeLoading();
+        this.$modal.msgError(res.msg);
+        this.$refs.fileUpload.handleRemove(file);
+        this.uploadedSuccessfully();
+      }
+    },
+    // 删除文件
+    handleDelete(index) {
+      this.fileList.splice(index, 1);
+      this.$emit("input", this.listToString(this.fileList));
+    },
+    // 上传结束处理
+    uploadedSuccessfully() {
+      if (this.number > 0 && this.uploadList.length === this.number) {
+        this.fileList = this.fileList.concat(this.uploadList);
+        this.uploadList = [];
+        this.number = 0;
+        this.$emit("input", this.listToString(this.fileList));
+        this.$modal.closeLoading();
+      }
+    },
+    // 获取文件名称
+    getFileName(name) {
+      if (name.lastIndexOf("/") > -1) {
+        return name.slice(name.lastIndexOf("/") + 1);
+      } else {
+        return "";
+      }
+    },
+    // 对象转成指定字符串分隔
+    listToString(list, separator) {
+      let strs = "";
+      separator = separator || ",";
+      for (let i in list) {
+        strs += list[i].url + separator;
+      }
+      return strs != '' ? strs.substr(0, strs.length - 1) : '';
+    }
+  }
+};
+</script>
+
+<style scoped lang="scss">
+.upload-file-uploader {
+  margin-bottom: 5px;
+}
+.upload-file-list .el-upload-list__item {
+  border: 1px solid #e4e7ed;
+  line-height: 2;
+  margin-bottom: 10px;
+  position: relative;
+}
+.upload-file-list .ele-upload-list__item-content {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  color: inherit;
+}
+.ele-upload-list__item-content-action .el-link {
+  margin-right: 10px;
+}
+</style>

+ 240 - 0
ruoyi-ui/src/components/ImageUploadslis/index.vue

@@ -0,0 +1,240 @@
+<template>
+  <div class="component-upload-image nhtwrlq">
+    <el-upload
+      multiple
+      :action="uploadImgUrl"
+      list-type="picture-card"
+      :on-success="handleUploadSuccess"
+      :before-upload="handleBeforeUpload"
+      :limit="limit"
+      :on-error="handleUploadError"
+      :on-exceed="handleExceed"
+      ref="imageUpload"
+      :on-remove="handleDelete"
+      :show-file-list="true"
+      :headers="headers"
+      :file-list="fileList"
+      :on-preview="handlePictureCardPreview"
+      :class="{hide: this.fileList.length >= this.limit}"
+    >
+      <i class="el-icon-plus"></i>
+	  <!-- <el-button size="small" type="primary">点击上传</el-button> -->
+    </el-upload>
+    
+    <!-- 上传提示 -->
+    <div class="el-upload__tip" slot="tip" v-if="showTip">
+      请上传
+      <template v-if="fileSize"> 大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b> </template>
+      <template v-if="fileType"> 格式为 <b style="color: #f56c6c">{{ fileType.join("/") }}</b> </template>
+      的文件
+    </div>
+
+    <el-dialog
+      :visible.sync="dialogVisible"
+      title="预览"
+      width="800"
+      append-to-body
+    >
+      <img
+        :src="dialogImageUrl"
+        style="display: block; max-width: 100%; margin: 0 auto"
+      />
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { getToken } from "@/utils/auth";
+
+export default {
+  props: {
+    value: [String, Object, Array],
+    // 图片数量限制
+    limit: {
+      type: Number,
+      default: 5,
+    },
+    // 大小限制(MB)
+    fileSize: {
+       type: Number,
+      default: 100,
+    },
+    // 文件类型, 例如['png', 'jpg', 'jpeg']
+    fileType: {
+      type: Array,
+      default: () => ["png", "jpg", "jpeg"],
+    },
+    // 是否显示提示
+    isShowTip: {
+      type: Boolean,
+      default: true
+    }
+  },
+  data() {
+    return {
+      number: 0,
+      uploadList: [],
+      dialogImageUrl: "",
+      dialogVisible: false,
+      hideUpload: false,
+      baseUrl: process.env.VUE_APP_BASE_API,
+      uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/upload", // 上传的图片服务器地址 common/upload
+      headers: {
+        Authorization: "Bearer " + getToken(),
+      },
+      fileList: []
+    };
+  },
+  watch: {
+    value: {
+      handler(val) {
+        if (val) {
+          // 首先将值转为数组
+          const list = Array.isArray(val) ? val : this.value.split(',');
+          // 然后将数组转为对象数组
+          this.fileList = list.map(item => {
+            if (typeof item === "string") {
+              if (item.indexOf(this.baseUrl) === -1) {
+                  item = { name: this.baseUrl + item, url: this.baseUrl + item };
+              } else {
+                  item = { name: item, url: item };
+              }
+            }
+            return item;
+          });
+        } else {
+          this.fileList = [];
+          return [];
+        }
+      },
+      deep: true,
+      immediate: true
+    }
+  },
+  computed: {
+    // 是否显示提示
+    showTip() {
+      return this.isShowTip && (this.fileType || this.fileSize);
+    },
+  },
+  methods: {
+    // 上传前loading加载
+    handleBeforeUpload(file) {
+      let isImg = false;
+      if (this.fileType.length) {
+        let fileExtension = "";
+        if (file.name.lastIndexOf(".") > -1) {
+          fileExtension = file.name.slice(file.name.lastIndexOf(".") + 1);
+        }
+        isImg = this.fileType.some(type => {
+          if (file.type.indexOf(type) > -1) return true;
+          if (fileExtension && fileExtension.indexOf(type) > -1) return true;
+          return false;
+        });
+      } else {
+        isImg = file.type.indexOf("image") > -1;
+      }
+
+      if (!isImg) {
+        this.$modal.msgError(`文件格式不正确, 请上传${this.fileType.join("/")}图片格式文件!`);
+        return false;
+      }
+      if (this.fileSize) {
+        const isLt = file.size / 1024 / 1024 < this.fileSize;
+        if (!isLt) {
+          this.$modal.msgError(`上传头像图片大小不能超过 ${this.fileSize} MB!`);
+          return false;
+        }
+      }
+      this.$modal.loading("正在上传图片,请稍候...");
+      this.number++;
+    },
+    // 文件个数超出
+    handleExceed() {
+      this.$modal.msgError(`上传文件数量不能超过 ${this.limit} 个!`);
+    },
+    // 上传成功回调
+    handleUploadSuccess(res, file) {
+      if (res.code === 200) {
+        this.uploadList.push({ name: res.fileName, url: res.fileName });
+        this.uploadedSuccessfully();
+      } else {
+        this.number--;
+        this.$modal.closeLoading();
+        this.$modal.msgError(res.msg);
+        this.$refs.imageUpload.handleRemove(file);
+        this.uploadedSuccessfully();
+      }
+    },
+    // 删除图片
+    handleDelete(file) {
+      const findex = this.fileList.map(f => f.name).indexOf(file.name);
+      if(findex > -1) {
+        this.fileList.splice(findex, 1);
+        this.$emit("input", this.listToString(this.fileList));
+      }
+    },
+    // 上传失败
+    handleUploadError() {
+      this.$modal.msgError("上传图片失败,请重试");
+      this.$modal.closeLoading();
+    },
+    // 上传结束处理
+    uploadedSuccessfully() {
+      if (this.number > 0 && this.uploadList.length === this.number) {
+        this.fileList = this.fileList.concat(this.uploadList);
+        this.uploadList = [];
+        this.number = 0;
+        this.$emit("input", this.listToString(this.fileList));
+        this.$modal.closeLoading();
+      }
+    },
+    // 预览
+    handlePictureCardPreview(file) {
+      this.dialogImageUrl = file.url;
+      this.dialogVisible = true;
+    },
+    // 对象转成指定字符串分隔
+    listToString(list, separator) {
+      let strs = "";
+      separator = separator || ",";
+      for (let i in list) {
+        if (list[i].url) {
+          strs += list[i].url.replace(this.baseUrl, "") + separator;
+        }
+      }
+      return strs != '' ? strs.substr(0, strs.length - 1) : '';
+    }
+  }
+};
+</script>
+<style lang="scss">
+	.nhtwrlq{
+		.el-upload--picture-card{
+			width: 100px;
+			height: 100px;
+			line-height: 100px;
+		}
+		.el-upload-list--picture-card .el-upload-list__item{
+			width: 100px;
+			height: 100px;
+		}
+	}
+</style>
+<style scoped lang="scss">
+// .el-upload--picture-card 控制加号部分
+::v-deep.hide .el-upload--picture-card {
+    display: none;
+}
+// 去掉动画效果
+::v-deep .el-list-enter-active,
+::v-deep .el-list-leave-active {
+    transition: all 0s;
+}
+
+::v-deep .el-list-enter, .el-list-leave-active {
+    opacity: 0;
+    transform: translateY(0);
+}
+</style>
+

+ 2 - 2
ruoyi-ui/src/settings.js

@@ -1,7 +1,7 @@
 module.exports = {
     // urls: `http://192.168.101.245:8030`,
-    urls: `http://192.168.101.168:8030`,
-    // urls:`https://xy.cnzxy.cn`,
+    // urls: `http://192.168.101.168:8030`,
+    urls:`https://xygl.qs163.cn`,
     // urls: `http://47.99.82.249:5010`,
 
   /**

+ 12 - 12
ruoyi-ui/src/views/index.vue

@@ -1732,18 +1732,18 @@ export default {
 			  nhe.version = 'v61'
 			  nhe.vue = 1
 
-			  gettq(nhe).then(response => {
-			    let todayWeather = response.data.forecast[0]
-			    if (todayWeather !== '') {
-			      // 获取温度,取平均值
-			      let high = todayWeather.high.split(' ')[1].slice(0, -1)
-			      let low = todayWeather.low.split(' ')[1].slice(0, -1)
-			      this.local.temperature = (parseInt(low) + parseInt(high)) / 2
-			      // 获取天气类型
-			      this.local.type = todayWeather.type
-			    console.log(response,this.local,19)
-				}
-			  });
+			 //  gettq(nhe).then(response => {
+			 //    let todayWeather = response.data.forecast[0]
+			 //    if (todayWeather !== '') {
+			 //      // 获取温度,取平均值
+			 //      let high = todayWeather.high.split(' ')[1].slice(0, -1)
+			 //      let low = todayWeather.low.split(' ')[1].slice(0, -1)
+			 //      this.local.temperature = (parseInt(low) + parseInt(high)) / 2
+			 //      // 获取天气类型
+			 //      this.local.type = todayWeather.type
+			 //    console.log(response,this.local,19)
+				// }
+			 //  });
 			},
 			 // this.$axios
 			 //        .get('http://wthrcdn.etouch.cn/weather_mini?city=' + val)

+ 357 - 0
ruoyi-ui/src/views/system/app/index.vue

@@ -0,0 +1,357 @@
+<template>
+  <div class="app-container">
+    <el-form style="background-color: #fff; padding: 15px 5px; border-radius:10px;" :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+      <el-row class="last">
+       <!-- <p class="bgtan" style="margin-top: 0;">搜索条件</p> -->
+        <el-col :span="8">
+          <el-form-item label="系统类型" prop="model">
+            <el-select
+              v-model="queryParams.model"
+              placeholder="系统类型"
+              clearable
+              style="width: 260px;"
+            >
+              <el-option
+                v-for="dict in dict.type.model"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              />
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+           <el-form-item label="版本名称" prop="name">
+             <el-input
+               v-model="queryParams.name"
+               placeholder="请输入版本名称"
+               clearable
+               style="width: 260px;"
+               @keyup.enter.native="handleQuery"
+             />
+           </el-form-item>
+        </el-col>
+        <el-col :span="8">
+           <el-form-item label="版本号" prop="code">
+             <el-input
+               v-model="queryParams.code"
+               placeholder="请输入版本号"
+               clearable
+               style="width: 260px;"
+               @keyup.enter.native="handleQuery"
+             />
+           </el-form-item>
+        </el-col>
+        <el-col :span="8">
+           <el-form-item label="下载地址" prop="path">
+             <el-input
+               v-model="queryParams.path"
+               placeholder="请输入下载地址"
+               clearable
+               style="width: 260px;"
+               @keyup.enter.native="handleQuery"
+             />
+           </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item label="是否有效" prop="isDel">
+            <el-select
+              v-model="queryParams.isDel"
+              placeholder="是否有效"
+              clearable
+              style="width: 260px;"
+            >
+              <el-option
+                v-for="dict in dict.type.sys_is_del"
+                :key="dict.value"
+                :label="dict.label"
+                :value="dict.value"
+              />
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8">
+          <el-form-item>
+            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+          </el-form-item>
+        </el-col>
+      </el-row>
+
+    </el-form>
+   <div class="navde">
+     <el-row :gutter="10" class="mb8">
+       <!-- <p><span>版本更新</span> <i></i></p> -->
+       <el-col :span="1.5">
+         <el-button
+           type="primary"
+           plain
+           icon="el-icon-plus"
+           size="mini"
+           @click="handleAdd"
+           v-hasPermi="['system:app:add']"
+         >新增</el-button>
+       </el-col>
+       <el-col :span="1.5">
+         <el-button
+           type="success"
+           plain
+           icon="el-icon-edit"
+           size="mini"
+           :disabled="single"
+           @click="handleUpdate"
+           v-hasPermi="['system:app:edit']"
+         >修改</el-button>
+       </el-col>
+       <el-col :span="1.5">
+         <el-button
+           type="danger"
+           plain
+           icon="el-icon-delete"
+           size="mini"
+           :disabled="multiple"
+           @click="handleDelete"
+           v-hasPermi="['system:app:remove']"
+         >删除</el-button>
+       </el-col>
+
+       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+     </el-row>
+
+     <el-table v-loading="loading" :data="appList" @selection-change="handleSelectionChange">
+       <el-table-column type="selection" width="55" align="center" />
+       <el-table-column label="系统类型" align="center" prop="model" />
+       <el-table-column label="版本名称" align="center" prop="name" />
+       <el-table-column label="版本号" align="center" prop="code" />
+       <el-table-column label="版本描述" align="center" prop="description" />
+       <el-table-column label="下载地址" align="center" prop="path" />
+       <el-table-column label="是否有效" align="center" prop="isDel" />
+       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
+         <template slot-scope="scope">
+           <el-button
+             size="mini"
+             type="text"
+             icon="el-icon-edit"
+             @click="handleUpdate(scope.row)"
+             v-hasPermi="['system:app:edit']"
+           >修改</el-button>
+           <el-button
+             size="mini"
+             type="text"
+             icon="el-icon-delete"
+             @click="handleDelete(scope.row)"
+             v-hasPermi="['system:app:remove']"
+           >删除</el-button>
+         </template>
+       </el-table-column>
+     </el-table>
+
+     <pagination
+       v-show="total>0"
+       :total="total"
+       :page.sync="queryParams.pageNum"
+       :limit.sync="queryParams.pageSize"
+       @pagination="getList"
+     />
+   </div>
+
+
+    <!-- 添加或修改【请填写功能名称】对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+        <el-row>
+          <el-col :span="8">
+             <el-form-item label="系统类型" prop="model">
+
+               <el-select
+                 v-model="form.model"
+                 placeholder="系统类型"
+                 clearable
+               >
+                 <el-option
+                   v-for="dict in dict.type.model"
+                   :key="dict.value"
+                   :label="dict.label"
+                   :value="dict.value"
+                 />
+               </el-select>
+             </el-form-item>
+          </el-col>
+          <el-col :span="8">
+             <el-form-item label="版本名称" prop="name">
+               <el-input v-model="form.name" placeholder="请输入版本名称" />
+             </el-form-item>
+          </el-col>
+          <el-col :span="8">
+             <el-form-item label="版本号" prop="code">
+               <el-input v-model="form.code" placeholder="请输入版本号" />
+             </el-form-item>
+          </el-col>
+          <el-col :span="8">
+             <el-form-item label="版本描述" prop="description">
+               <el-input v-model="form.description" type="textarea" placeholder="请输入内容" />
+             </el-form-item>
+          </el-col>
+          <el-col :span="24">
+             <el-form-item label="版本上传" prop="path">
+               <fileUpload :limit="5" v-model="form.path" />
+             </el-form-item>
+          </el-col>
+         
+        </el-row>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listApp, getApp, delApp, addApp, updateApp } from "@/api/system/app";
+
+export default {
+  name: "App",
+  dicts: ['model','sys_is_del'],
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 【请填写功能名称】表格数据
+      appList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        model: null,
+        name: null,
+        code: null,
+        description: null,
+        path: null,
+        isDel: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+      }
+    };
+  },
+  created() {
+    this.getList();
+  },
+  methods: {
+    /** 查询【请填写功能名称】列表 */
+    getList() {
+      this.loading = true;
+      listApp(this.queryParams).then(response => {
+        this.appList = response.rows;
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        model: null,
+        name: null,
+        code: null,
+        description: null,
+        path: null,
+        isDel: null,
+        createTime: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加app信息";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getApp(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改app信息";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateApp(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addApp(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除【请填写功能名称】编号为"' + ids + '"的数据项?').then(function() {
+        return delApp(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('system/app/export', {
+        ...this.queryParams
+      }, `app_${new Date().getTime()}.xlsx`)
+    }
+  }
+};
+</script>

+ 2 - 2
ruoyi-ui/src/views/zhihuixy/change/index.vue

@@ -126,7 +126,7 @@
 
     <div v-if="changeList.length !=0">
       <el-row :gutter="10">
-        <el-col :span="6" v-for="(item,index) in changeList" :key="idnex" v-if="changeList.length !=0">
+        <el-col :span="6" v-for="(item,index) in changeList" :key="idnex" v-if="changeList.length !=0" style="margin-bottom: 20px;">
            <div style="background: #FFFFFF;border-radius: 4px;">
              <div style="border-bottom: 1px solid #DADADA;" class="ingweflq">
                <div>
@@ -217,7 +217,7 @@
         />
       </div>
     </div>
-    <div v-if="infoList.length ==0" style="text-align: center;margin: 40px 0;">
+    <div v-if="changeList.length ==0" style="text-align: center;margin: 40px 0;">
        <img src="../../../assets/images/pic_xyht_zwsj.png" alt="">
     </div>
 

+ 24 - 7
ruoyi-ui/src/views/zhihuixy/infor/index.vue

@@ -111,7 +111,7 @@
 			         v-hasPermi="['score:data:add']"
 			       >防溺水计划</el-button>
 			     </el-col>
-	        <el-col :span="1.5">
+	       <!-- <el-col :span="1.5">
 	          <el-button
 	            type="success"
 	            plain
@@ -121,8 +121,8 @@
 	            @click="handleUpdate"
 	            v-hasPermi="['student:info:edit']"
 	          >修改</el-button>
-	        </el-col>
-	        <el-col :span="1.5">
+	        </el-col> -->
+	       <!-- <el-col :span="1.5">
 	          <el-button
 	            type="danger"
 	            plain
@@ -132,7 +132,7 @@
 	            @click="handleDelete"
 	            v-hasPermi="['student:info:remove']"
 	          >删除</el-button>
-	        </el-col>
+	        </el-col> -->
 	        <el-col :span="1.5">
 	          <el-button
 	            type="warning"
@@ -286,8 +286,8 @@
             </div>
           </div>
           <div class="bortt tongty" style="justify-content: space-between;">
-            <p @click="handleUpdate(item)"><span>修改</span>  <span>查看</span></p>
-            <p style="border-left: 1px solid #DADADA;color:red">删除</p>
+            <p ><span  v-hasPermi="['student:info:edit']" @click="handleUpdate(item)">修改</span>  <span @click="handleUpdatef(item)">查看</span></p>
+            <p v-hasPermi="['student:info:remove']" style="border-left: 1px solid #DADADA;color:red">删除</p>
           </div>
         </div>
        </el-col>
@@ -672,7 +672,7 @@
 
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button type="primary" @click="submitForm" v-if="isth == true">确 定</el-button>
         <el-button @click="cancel">取 消</el-button>
       </div>
     </el-dialog>
@@ -886,6 +886,7 @@ export default {
 	   hgdtesge:{},
 	   ngshg:false,
 	   ngtzh:false,
+     isth:false
     };
   },
   created() {
@@ -1043,8 +1044,24 @@ export default {
 			this.uhgte =  true
 		}
         this.open = true;
+        this.isth = true
         this.title = "修改学生档案信息";
       });
+    },
+    handleUpdatef(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getInfo(id).then(response => {
+        this.form = response.data;
+    if(this.form.isNearsightedness == '1'){
+    	this.uhgte =  false
+    }else {
+    	this.uhgte =  true
+    }
+    this.isth = false
+        this.open = true;
+        this.title = "查看学生档案信息";
+      });
     },
 	// 身份证
 	idcde(event) {

File diff suppressed because it is too large
+ 190 - 932
ruoyi-ui/src/views/zhihuixy/shipu/index.vue


+ 845 - 0
ruoyi-ui/src/views/zhihuixy/tablexq/index.vue

@@ -0,0 +1,845 @@
+<template>
+  <div class="app-container">
+
+
+    <el-row :gutter="10" class="mb8" style=" border-top-left-radius: 12px; border-top-right-radius: 12px; background-color: #fff;margin: 0;margin-top: 20px;padding: 10px 5px; ">
+      <p class="bgtan" style="margin-top: 0;">新增课程</p>
+      <!-- <el-col :span="1.5">
+        <el-button
+          type="danger"
+          plain
+          icon="el-icon-delete"
+          size="mini"
+          @click="handleDelete"
+          v-hasPermi="['course:time:remove']"
+        >清空</el-button>
+      </el-col>
+      <el-col :span="1.5">
+        <el-button
+          type="warning"
+          plain
+          icon="el-icon-download"
+          size="mini"
+          @click="handleExport"
+          v-hasPermi="['course:time:export']"
+        >导出</el-button>
+      </el-col> -->
+      <!-- <el-col :span="19" style="text-align: right;">
+          <el-button
+            type="primary"
+            plain
+            icon="el-icon-check"
+            size="mini"
+            @click="submitForm"
+            v-hasPermi="['course:time:add']"
+          >确定修改</el-button>
+        </el-col> -->
+      <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> -->
+    </el-row>
+
+    <el-form ref="form" :model="form" :rules="rules" label-width="120px" style="background-color: #fff;padding-right: 20px;">
+    <el-row>
+      <el-col :span="24">
+        <el-col :span="12">
+          <el-form-item label="班级名称" prop="classId">
+          <el-select style="width: 100%;" v-model="form.classId" placeholder="请选择班级名称">
+            <el-option
+              v-for="dict in kiuesegh"
+              :key="dict.deptId"
+              :label="dict.deptName"
+              :value="dict.deptId"
+        	  @click.native="mjyhess(dict)"
+            ></el-option>
+          </el-select>
+          </el-form-item>
+        </el-col>
+    	  <el-col :span="12">
+        	 <el-form-item label="周几" prop="week">
+        	   <el-select style="width: 100%;" v-model="form.week" placeholder="请选择周几">
+        	     <el-option
+        	       v-for="dict in dict.type.sys_week"
+        	       :key="dict.value"
+        	       :label="dict.label"
+        	       :value="dict.value"
+                 @click.native="znwe(dict)"
+        	     ></el-option>
+        	   </el-select>
+        	 </el-form-item>
+        </el-col>
+
+      </el-col>
+      <el-col :span="24" style="padding-left: 5px;">
+       <p class="bgtan" style="margin-top: 0;font-weight: bold;font-size: 15px;color: #4775EA;display: flex;justify-content: space-between;align-items: center;padding-right: 30px;"><span>上午课程配置<span style="color: red;">*</span></span>
+         <!-- <span style="color: #4775EA;margin-left: 20px;display: flex;align-items: center;" @click="shangwuxin">
+            <img style="width: 16px; height: 16px;margin-right: 5px;" src="../../../assets/images/icon_kcgl_ht_add.png" alt="" >
+           新增课程
+          </span> -->
+       </p>
+      </el-col>
+      <el-col :span="24" v-for="(item,index) in shangwu" :key="index">
+        <el-col :span="12">
+        	<el-form-item :label="'上午第'+ (index+1) + '节课'" >
+        	  <el-select style="width: 100%;" v-model="item.courseName" placeholder="请选择课程名称">
+        	              <el-option
+        	                v-for="dict in dict.type.sys_subject"
+        	                :key="dict.value"
+        	                :label="dict.label"
+        	                :value="dict.label"
+        	  			        style="width: 100%;"
+        	              ></el-option>
+        	  </el-select>
+            </el-form-item>
+        </el-col>
+        <el-col :span="12" style="position: relative;" >
+        	<el-form-item :label="'上午第'+ (index+1) + '节课'"  >
+        	  <el-input v-model="item.courseTeacher" placeholder="请输入课程老师" />
+        	</el-form-item>
+         <!-- <img @click="shangwudel(index)" style="width: 16px; height: 16px;position: absolute;right: 30px;top:10px;" src="../../../assets/images/icon_qjlb_del.png" alt="" > -->
+        </el-col>
+
+      </el-col>
+      <el-col :span="24" style="padding-left: 5px;">
+       <p class="bgtan" style="margin-top: 0;font-weight: bold;font-size: 15px;color: #4775EA;display: flex;justify-content: space-between;align-items: center;padding-right: 30px;"><span>下午课程配置<span style="color: red;">*</span></span>
+
+       </p>
+      </el-col>
+      <el-col :span="24" v-for="(item,index) in xiawu" :key="index + 'b'">
+        <el-col :span="12">
+        	<el-form-item :label="'下午第'+ (index+1) + '节课'" >
+        	  <el-select style="width: 100%;" v-model="item.courseName" placeholder="请选择课程名称">
+        	              <el-option
+        	                v-for="dict in dict.type.sys_subject"
+        	                :key="dict.value"
+        	                :label="dict.label"
+        	                :value="dict.label"
+        	  			        style="width: 100%;"
+        	              ></el-option>
+        	  </el-select>
+            </el-form-item>
+        </el-col>
+        <el-col :span="12" style="position: relative;" >
+        	<el-form-item :label="'下午第'+ (index+1) + '节课'"  >
+        	  <el-input v-model="item.courseTeacher" placeholder="请输入课程老师" />
+        	</el-form-item>
+         <!-- <img @click="shangwudel(index)" style="width: 16px; height: 16px;position: absolute;right: 30px;top:10px;" src="../../../assets/images/icon_qjlb_del.png" alt="" > -->
+        </el-col>
+      </el-col>
+      <el-col :span="24" style="padding-left: 5px;">
+      <p class="bgtan" style="margin-top: 0;font-weight: bold;font-size: 15px;color: #4775EA;display: flex;justify-content: space-between;align-items: center;padding-right: 30px;"><span>晚自习课程配置<span style="color: red;">*</span></span>
+
+      </p>
+      </el-col>
+      <el-col :span="24" v-for="(item,index) in wanzixi" :key="index + 'a'">
+        <el-col :span="12">
+        	<el-form-item :label="'晚自习第'+ (index+1) + '节课'" >
+        	  <el-select style="width: 100%;" v-model="item.courseName" placeholder="请选择课程名称">
+        	              <el-option
+        	                v-for="dict in dict.type.sys_subject"
+        	                :key="dict.value"
+        	                :label="dict.label"
+        	                :value="dict.label"
+        	  			        style="width: 100%;"
+        	              ></el-option>
+        	  </el-select>
+            </el-form-item>
+        </el-col>
+        <el-col :span="12" style="position: relative;" >
+        	<el-form-item :label="'晚自习第'+ (index+1) + '节课'"  >
+        	  <el-input v-model="item.courseTeacher" placeholder="请输入课程老师" />
+        	</el-form-item>
+         <!-- <img @click="shangwudel(index)" style="width: 16px; height: 16px;position: absolute;right: 30px;top:10px;" src="../../../assets/images/icon_qjlb_del.png" alt="" > -->
+        </el-col>
+      </el-col>
+
+
+      <el-col :span="24">
+      	<el-form-item label="备注" prop="remark">
+      	  <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+      	</el-form-item>
+      </el-col>
+    </el-row>
+    </el-form>
+    <div slot="footer" class="dialog-footer">
+      <el-button type="primary" @click="submitForm">确 定</el-button>
+      <el-button @click="cancel">取 消</el-button>
+    </div>
+
+    <!-- <el-table v-loading="loading" :data="timeList" @selection-change="handleSelectionChange">
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="学校名称" align="center" prop="schoolName" />
+      <el-table-column label="第一节课时间" align="center" prop="oneStartTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ scope.row.oneStartTime}}</span> / <span>{{scope.row.oneEndTime}}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="第二节课时间" align="center" prop="twoStartTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ scope.row.twoStartTime}}</span> / <span>{{ scope.row.twoEndTime}}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="第三节课时间" align="center" prop="threeStartTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ scope.row.threeStartTime}}</span> /  <span>{{ scope.row.threeEndTime}}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="第四节课时间" align="center" prop="fourStartTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ scope.row.fourStartTime}}</span> / <span>{{ scope.row.fourEndTime}}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="第五节课时间" align="center" prop="fiveStartTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ scope.row.fiveStartTime }}</span> / <span>{{ scope.row.fiveEndTime}}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="第六节课时间" align="center" prop="sixStartTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ scope.row.sixStartTime}}</span> / <span>{{ scope.row.sixEndTime}}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="第七节课时间" align="center" prop="sevenStartTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ scope.row.sevenStartTime}}</span> / <span>{{ scope.row.sevenEndTime}}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="第八节课时间" align="center" prop="eightStartTime" width="180">
+        <template slot-scope="scope">
+          <span>{{ scope.row.eightStartTime}}</span> / <span>{{ scope.row.eightEndTime}}</span>
+        </template>
+      </el-table-column>
+
+      <el-table-column label="备注" align="center" prop="remark" />
+      <el-table-column label="操作" fixed="right" align="center" class-name="small-padding fixed-width" width="120">
+        <template slot-scope="scope">
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-edit"
+            @click="handleUpdate(scope.row)"
+            v-hasPermi="['course:time:edit']"
+          >修改</el-button>
+          <el-button
+            size="mini"
+            type="text"
+            icon="el-icon-delete"
+            @click="handleDelete(scope.row)"
+            v-hasPermi="['course:time:remove']"
+          >删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <pagination
+      v-show="total>0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    /> -->
+
+    <!-- 添加或修改课程-时间对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="1300px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+		  <el-row>
+			  <el-col :span="6">
+				  <el-form-item label="学校名称" prop="schoolId">
+				  					    <!-- <treeselect v-model="form.parentId" :options="deptOptions" :normalizer="normalizer" placeholder="选择上级部门" /> -->
+				  					  <el-select    v-model="form.schoolId" placeholder="请选择学校名称">
+				  					    <el-option
+				  					      v-for="dict in deptOptions"
+				  					      :key="dict.deptId"
+				  					      :label="dict.deptName"
+				  					      :value="dict.deptId"
+				  						  @click.native="mjyhes(dict)"
+				  					    ></el-option>
+				  					  </el-select>
+				 </el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第一节课" prop="oneStartTime">
+			  	  <el-time-picker
+			  	      v-model="form.oneStartTime"
+					  @change="nhyesefr"
+					  value-format="HH:mm"
+			  	      placeholder="选择第一节课开始时间">
+			  	    </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第一节课" prop="oneEndTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.oneEndTime"
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第一节课结束时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第二节课" prop="twoStartTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.twoStartTime"
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第二节课开始时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第二节课" prop="twoEndTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.twoEndTime"
+			  	    el-time-picker
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第二节课结束时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第三节课" prop="threeStartTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.threeStartTime"
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第三节课开始时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+				  <el-form-item label="第三节课" prop="threeEndTime">
+				   <el-time-picker clearable
+				     v-model="form.threeEndTime"
+				     value-format="HH:mm"
+				     placeholder="请选择第三节课结束时间">
+				   </el-time-picker>
+				  </el-form-item>
+
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第四节课" prop="fourStartTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.fourStartTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第四节课开始时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第四节课" prop="fourEndTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.fourEndTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第四节课结束时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第五节课" prop="fiveStartTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.fiveStartTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第五节课开始时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第五节课" prop="fiveEndTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.fiveEndTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第五节课结束时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第六节课" prop="sixStartTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.sixStartTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第六节课开始时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第六节课" prop="sixEndTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.sixEndTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第六节课结束时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第七节课" prop="sevenStartTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.sevenStartTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第七节课开始时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第七节课" prop="sevenEndTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.sevenEndTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第七节课结束时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第八节课" prop="eightStartTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.eightStartTime"
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第八节课开始时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="第八节课" prop="eightEndTime">
+			  	  <el-time-picker clearable
+			  	    v-model="form.eightEndTime"
+
+			  	    value-format="HH:mm"
+			  	    placeholder="请选择第八节课结束时间">
+			  	  </el-time-picker>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="6">
+			  	<el-form-item label="备注" prop="remark">
+			  	  <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+			  	</el-form-item>
+			  </el-col>
+		  </el-row>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { listTime, getTime, delTime, addTime, updateTime } from "@/api/system/time";
+import { listTable, getTable, delTable, addTable, updateTable } from "@/api/system/table";
+import { listDept,listDeptode} from "@/api/system/dept";
+
+export default {
+  name: "Time",
+  dicts: ['sys_week','sys_subject'],
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+      // 课程-时间表格数据
+      timeList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        schoolName: null,
+        oneStartTime: null,
+        oneEndTime: null,
+        twoStartTime: null,
+        twoEndTime: null,
+        threeStartTime: null,
+        threeEndTime: null,
+        fourStartTime: null,
+        fourEndTime: null,
+        fiveStartTime: null,
+        fiveEndTime: null,
+        sixStartTime: null,
+        sixEndTime: null,
+        sevenStartTime: null,
+        sevenEndTime: null,
+        eightStartTime: null,
+        eightEndTime: null,
+		schoolId:null
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+		  schoolId: [
+		            { required: true, message: "学校名称不能为空", trigger: "blur" }
+		          ],
+		          oneStartTime: [
+		            { required: true, message: "第一节课开始时间不能为空", trigger: "blur" }
+		          ],
+		          oneEndTime: [
+		            { required: true, message: "第一节课结束时间不能为空", trigger: "blur" }
+		          ],
+		          twoStartTime: [
+		            { required: true, message: "第二节课开始时间不能为空", trigger: "blur" }
+		          ],
+		          twoEndTime: [
+		            { required: true, message: "第二节课结束时间不能为空", trigger: "blur" }
+		          ],
+		          threeStartTime: [
+		            { required: true, message: "第三节课开始时间不能为空", trigger: "blur" }
+		          ],
+		          threeEndTime: [
+		            { required: true, message: "第三节课结束时间不能为空", trigger: "blur" }
+		          ],
+		          fourStartTime: [
+		            { required: true, message: "第四节课开始时间不能为空", trigger: "blur" }
+		          ],
+		          fourEndTime: [
+		            { required: true, message: "第四节课结束时间不能为空", trigger: "blur" }
+		          ],
+		          fiveStartTime: [
+		            { required: true, message: "第五节课开始时间不能为空", trigger: "blur" }
+		          ],
+		          fiveEndTime: [
+		            { required: true, message: "第五节课结束时间不能为空", trigger: "blur" }
+		          ],
+		          sixStartTime: [
+		            { required: true, message: "第六节课开始时间不能为空", trigger: "blur" }
+		          ],
+		          sixEndTime: [
+		            { required: true, message: "第六节课结束时间不能为空", trigger: "blur" }
+		          ],
+
+      },
+      shangwu:[
+        {week:null,classNumber:null,timeFrame:'AM',courseName:null,courseTeacher:null},
+        {week:null,classNumber:null,timeFrame:'AM',courseName:null,courseTeacher:null},
+        {week:null,classNumber:null,timeFrame:'AM',courseName:null,courseTeacher:null},
+        ],
+      xiawu:[
+        {week:null,classNumber:null,timeFrame:'PM',courseName:null,courseTeacher:null},
+        {week:null,classNumber:null,timeFrame:'PM',courseName:null,courseTeacher:null},
+        {week:null,classNumber:null,timeFrame:'PM',courseName:null,courseTeacher:null},
+        ],
+      wanzixi:[
+        {week:null,classNumber:null,timeFrame:'TM',courseName:null,courseTeacher:null},
+        {week:null,classNumber:null,timeFrame:'TM',courseName:null,courseTeacher:null},
+        {week:null,classNumber:null,timeFrame:'TM',courseName:null,courseTeacher:null},
+        ],
+	  deptOptions:[],
+    kiuesegh:[],
+    isput:false
+    };
+  },
+  created() {
+	  // this.queryParams.schoolId = this.$store.state.user.schoolId - 0
+	  console.log(this.roleqh(),28)
+   this.getdept()
+    this.getList();
+
+  },
+  methods: {
+	  getdept(){
+	  		  let kuesf={'parentId':0}
+	  		  // this.kiuesegh = []
+	  		listDept(kuesf).then(response => {
+	  		  this.deptOptions = this.handleTree(response.data, "deptId");
+          this.getdept(this.deptOptions[0].deptId)
+	  		});
+	  },
+    getdept(val){
+      let kuesf={'parentId':val}
+      // this.kiuesegh = []
+      // kuesf
+    listDeptode(kuesf).then(response => {
+      this.deptOptions = this.handleTree(response.data, "deptId");
+      this.deptOptions.filter(rou =>{
+    	  if(rou.children != undefined){
+    	  	rou.children.filter(rour =>{
+    	  		this.kiuesegh.push(rour)
+    	  	})
+    		this.queryParams.classId = this.kiuesegh[0].classId
+    	  }else{
+    		this.queryParams.classId = null
+    	  }
+    	  // this.kiuesegh = rou.children
+    	  // this.kiuesegh.push(rou.children)
+    	  console.log(rou.children,6)
+      })
+
+      this.kiueseghs = this.kiuesegh
+      // this.deptOptions = response.data
+      console.log(this.kiuesegh)
+    });
+    },
+    /** 查询课程-时间列表 */
+    getList() {
+      this.loading = true;
+      listTime(this.queryParams).then(response => {
+        this.timeList = response.rows;
+        if(response.rows.length != 0){
+          let nhd=[]
+          let xis=[]
+          let wan=[]
+          for(var i = 0; i < response.rows.length; i++){
+            this.form.schoolId = response.rows[i].schoolId
+            this.form.schoolName = response.rows[i].schoolName
+            if(response.rows[i].timeFrame == 'AM'){
+             response.rows[i].id = undefined
+             response.rows[i].startTime = undefined
+             response.rows[i].endTime = undefined
+             response.rows[i].week = null
+             this.$set(response.rows[i],"courseName",null)
+             this.$set(response.rows[i],"courseTeacher",null)
+             nhd.push(response.rows[i])
+            }
+            if(response.rows[i].timeFrame == 'PM'){
+              response.rows[i].id = undefined
+              response.rows[i].startTime = undefined
+              response.rows[i].endTime = undefined
+              response.rows[i].week = null
+              this.$set(response.rows[i],"courseName",null)
+              this.$set(response.rows[i],"courseTeacher",null)
+              xis.push(response.rows[i])
+            }
+            if(response.rows[i].timeFrame == 'TM'){
+              response.rows[i].id = undefined
+              response.rows[i].startTime = undefined
+              response.rows[i].endTime = undefined
+              response.rows[i].week = null
+             this.$set(response.rows[i],"courseName",null)
+             this.$set(response.rows[i],"courseTeacher",null)
+              wan.push(response.rows[i])
+            }
+            // console.log(response.rows[i])
+          }
+          if(nhd.length != 0){
+            this.shangwu = nhd
+          }
+          if(xis.length != 0){
+            this.xiawu = xis
+          }
+          if(wan.length != 0){
+            this.wanzixi = wan
+          }
+          // console.log(response.rows,nhd)
+          // this.shangwu
+          // this.form = response.rows[0]
+        }
+        console.log(this.shangwu)
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    znwe(val){
+     // isput
+     let ngew={'schoolId':this.form.schoolId,'classId':this.form.classId,'week':this.form.week}
+     listTable(ngew).then(response => {
+         if(response.rows.length !=0){
+           this.isput = true
+         }else{
+           this.isput = false
+         }
+     })
+    },
+    // 取消按钮
+    cancel() {
+      // this.open = false;
+      // this.reset();
+     this.$router.go(-1);
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+        schoolId: null,
+        schoolName: null,
+        oneStartTime: null,
+        oneEndTime: null,
+        twoStartTime: null,
+        twoEndTime: null,
+        threeStartTime: null,
+        threeEndTime: null,
+        fourStartTime: null,
+        fourEndTime: null,
+        fiveStartTime: null,
+        fiveEndTime: null,
+        sixStartTime: null,
+        sixEndTime: null,
+        sevenStartTime: null,
+        sevenEndTime: null,
+        eightStartTime: null,
+        eightEndTime: null,
+        createBy: null,
+        createTime: null,
+        updateBy: null,
+        updateTime: null,
+        remark: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加课程-时间";
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getTime(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改课程-时间";
+      });
+    },
+    /** 提交按钮 */
+    submitForm() {
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+           this.form.courseTableBoList= []
+           for(var i=0; i < this.shangwu.length; i++){
+             this.shangwu[i].classNumber = i+1
+             if(this.shangwu[i].courseName != null ){
+               if(this.shangwu[i].courseName != ''){
+                 this.form.courseTableBoList.push(this.shangwu[i])
+               }
+             }
+
+           }
+           for(var i=0; i < this.xiawu.length; i++){
+             this.xiawu[i].classNumber = i+1
+             if(this.xiawu[i].courseName != null ){
+               if(this.xiawu[i].courseName != ''){
+                 this.form.courseTableBoList.push(this.xiawu[i])
+               }
+             }
+           }
+           for(var i=0; i < this.wanzixi.length; i++){
+             this.wanzixi[i].classNumber = i+1
+             if(this.wanzixi[i].courseName != null ){
+               if(this.wanzixi[i].courseName != '' ){
+                 this.form.courseTableBoList.push(this.wanzixi[i])
+               }
+             }
+
+           }
+           console.log(this.form.courseTableBoList,34)
+          if (this.isput == true) {
+            updateTable(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addTable(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      if(this.timeList.length !=0){
+        const ids = this.timeList[0].id
+      }else{
+        this.$modal.msgSuccess("数据已清空");
+      }
+      // const ids = row.id || this.ids;
+	   delTime(ids).then(response => {
+	   this.getList();
+	   this.$modal.msgSuccess("删除成功");
+	  });
+      // this.$modal.confirm('是否确认删除课程-时间编号为"' + ids + '"的数据项?').then(function() {
+      //   return delTime(ids);
+      // }).then(() => {
+      //   this.getList();
+      //   this.$modal.msgSuccess("删除成功");
+      // }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('course/time/export', {
+        ...this.queryParams
+      }, `time_${new Date().getTime()}.xlsx`)
+    },
+	nhyesefr(val){
+	  console.log(val)
+	},
+	mjyhes(val){
+		console.log(val,this.form.schoolName)
+		this.form.schoolName = val.deptName
+	},
+  shangwuxin(){
+    this.shangwu.push({classNumber:null,timeFrame:'AM',endTime:null,startTime:null},)
+  },
+  xiawuxin(){
+    this.xiawu.push({classNumber:null,timeFrame:'PM',endTime:null,startTime:null},)
+  },
+  wanzixixin(){
+   this.wanzixi.push({classNumber:null,timeFrame:'TM',endTime:null,startTime:null},)
+  },
+  shangwudel(index){
+   this.shangwu.splice(index,1)
+  },
+  xiawudel(index){
+    this.xiawu.splice(index,1)
+  },
+  wanzixidel(index){
+   this.wanzixi.splice(index,1)
+  },
+  mjyhess(val){
+  	this.form.className = val.deptName
+  },
+  }
+};
+</script>
+<style scoped lang="scss">
+	.bgtan{
+		border-left: 3px solid #4775EA;
+		padding-left: 10px;
+	}
+
+	.app-container{
+		background-color: #f6f6f6;
+		height: 180vh;
+	}
+</style>

+ 7 - 7
ruoyi-ui/src/views/zhihuixy/teacherdan/index.vue

@@ -102,7 +102,7 @@
 	            v-hasPermi="['teacher:info:add']"
 	          >新增</el-button>
 	        </el-col>
-	        <el-col :span="1.5">
+	       <!-- <el-col :span="1.5">
 	          <el-button
 	            type="success"
 	            plain
@@ -112,8 +112,8 @@
 	            @click="handleUpdate"
 	            v-hasPermi="['teacher:info:edit']"
 	          >修改</el-button>
-	        </el-col>
-	        <el-col :span="1.5">
+	        </el-col> -->
+	        <!-- <el-col :span="1.5">
 	          <el-button
 	            type="danger"
 	            plain
@@ -123,7 +123,7 @@
 	            @click="handleDelete"
 	            v-hasPermi="['teacher:info:remove']"
 	          >删除</el-button>
-	        </el-col>
+	        </el-col> -->
 	        <el-col :span="1.5">
 	          <el-button
 	            type="warning"
@@ -160,8 +160,8 @@
            </div>
          </div>
          <div class="bortt tongty" style="justify-content: space-between;">
-           <p  style="cursor: pointer;"><span @click="handleUpdate(item)">修改</span>  <span @click="handleUpdatech(item)">查看</span></p>
-           <p style="border-left: 1px solid #DADADA;color:red;cursor: pointer;">删除</p>
+           <p  style="cursor: pointer;"><span  v-hasPermi="['teacher:info:edit']" @click="handleUpdate(item)">修改</span>  <span @click="handleUpdatech(item)">查看</span></p>
+           <p v-hasPermi="['teacher:info:remove']" style="border-left: 1px solid #DADADA;color:red;cursor: pointer;">删除</p>
          </div>
        </div>
       </el-col>
@@ -947,7 +947,7 @@ export default {
     // 查看
     handleUpdatech(row){
      this.$router.push({
-       path: '/danga/teacherdanme',
+       path: '/danga/teacherdanmech',
      		query: {
      			'id':row.id,
      		}

+ 4 - 2
ruoyi-ui/src/views/zhihuixy/teacherdanme/index.vue

@@ -18,10 +18,12 @@
                       class="thumbnail_18"
                       referrerpolicy="no-referrer"
                       src="https://lanhu-oss.lanhuapp.com/ps6ihrxy7fre3nw8kmt2gr34tizjy0ytiw79bf6d91-ac44-4c43-a008-2730f35335a3"
+                      v-if="ignes.sex == 2"
                     />
                     <img
                       class="thumbnail_19"
                       referrerpolicy="no-referrer"
+                      v-if="ignes.sex == 1"
                       src="https://lanhu-oss.lanhuapp.com/ps3ibbso3ffohzfn9mlwckxsuvjbrw1ihq4f5a6a2f-5709-4d99-977a-7ce5d0dcb560"
                     />
                   </div>
@@ -96,9 +98,9 @@
                   >
                 </div>
               </div>
-              <div class="section_8 flex-row">
+              <!-- <div class="section_8 flex-row">
                 <div class="block_1 flex-col"></div>
-              </div>
+              </div> -->
               <div class="section_9 flex-row">
                 <span class="text_40">毕业证明照:</span>
                 <div class="group_7 flex-col">

+ 2174 - 0
ruoyi-ui/src/views/zhihuixy/teacherdanmech/index.vue

@@ -0,0 +1,2174 @@
+<template>
+  <div class="app-container">
+   <div style="background-color: #fff;border-radius: 3px;padding: 20px 15px;">
+      <!-- <p class="bgtan" style="margin-top: 0;">教师档案信息</p> -->
+      <div class="group_4 flex-col">
+              <div class="section_1 flex-row justify-between">
+                <div class="section_2 flex-col"></div>
+                <span class="text_6">教师档案信息</span>
+              </div>
+              <div class="section_3 flex-row">
+                <div class="group_5 flex-col">
+                   <image-preview :src="ignes.identificationPhoto" :width="98" :height="98"/>
+                </div>
+                <div class="group_6 flex-col justify-between">
+                  <div class="box_5 flex-row">
+                    <span class="text_7">{{ignes.name == null?'暂无数据': ignes.name }}</span>
+                    <img
+                      class="thumbnail_18"
+                      referrerpolicy="no-referrer"
+                      src="https://lanhu-oss.lanhuapp.com/ps6ihrxy7fre3nw8kmt2gr34tizjy0ytiw79bf6d91-ac44-4c43-a008-2730f35335a3"
+                      v-if="ignes.sex == 2"
+                    />
+                    <img
+                      class="thumbnail_19"
+                      referrerpolicy="no-referrer"
+                      v-if="ignes.sex == 1"
+                      src="https://lanhu-oss.lanhuapp.com/ps3ibbso3ffohzfn9mlwckxsuvjbrw1ihq4f5a6a2f-5709-4d99-977a-7ce5d0dcb560"
+                    />
+                  </div>
+                  <div class="text-wrapper_3">
+                    <span class="text_8">身份证号:</span>
+                    <span class="text_9">{{ignes.idCard == null?'暂无数据': ignes.idCard=="" ? '暂无数据' : ignes.idCard }}</span>
+                  </div>
+                </div>
+                <div class="text-wrapper_4">
+                  <span class="text_10">年</span> <span class="text_11">龄:</span>
+                  <span class="text_12">{{ignes.age == null?'暂无数据': ignes.age=="" ? '暂无数据' : ignes.age }}岁</span>
+                </div>
+                <div class="text-wrapper_5">
+                  <span class="text_13">联系方式:</span>
+                  <span class="text_14">{{ignes.phone == null?'暂无数据': ignes.phone=="" ? '暂无数据' : ignes.phone }}</span>
+                </div>
+               <!-- <div class="text-wrapper_6 flex-col">
+                  <span class="text_15">修改</span>
+                </div>
+                <div class="text-wrapper_7 flex-col">
+                  <span class="text_16">删除</span>
+                </div> -->
+              </div>
+              <div class="section_4 flex-row">
+                <div class="text-wrapper_8">
+                  <span class="text_17">班级名称:</span>
+                  <span class="text_18">{{ignes.classId == null?'暂无数据': ignes.classId=="" ? '暂无数据' : ignes.classId }}</span>
+                </div>
+                <div class="text-wrapper_9">
+                  <span class="text_19">职</span> <span class="text_20">称:</span>
+                  <span class="text_21">{{ignes.professional == null?'暂无数据': ignes.professional=="" ? '暂无数据' : ignes.professional }}</span>
+                </div>
+                <div class="text-wrapper_10">
+                  <span class="text_22">入职时间:</span>
+                  <span class="text_23">{{ignes.onBoardTime == null?'暂无数据': ignes.onBoardTime=="" ? '暂无数据' : ignes.onBoardTime }}</span>
+                </div>
+                <div class="text-wrapper_11">
+                  <span class="text_24">工作时间:</span>
+                  <span class="text_25">{{ignes.jobTimes == null?'暂无数据': ignes.jobTimes=="" ? '暂无数据' : ignes.jobTimes }}</span>
+                </div>
+              </div>
+              <div class="section_5 flex-row">
+                <div class="text-wrapper_12">
+                  <span class="text_26">政治面貌:</span>
+                  <span class="text_27">{{ignes.politicalStatus == null?'暂无数据': ignes.politicalStatus=="" ? '暂无数据' : ignes.politicalStatus }}</span>
+                </div>
+                <div class="text-wrapper_13">
+                  <span class="text_28">身</span> <span class="text_29">高:</span>
+                  <span class="text_30">{{ignes.height == null? '暂无数据' : ignes.height =="" ? '暂无数据' : ignes.height }}</span>
+                </div>
+                <div class="text-wrapper_14">
+                  <span class="text_31">体</span> <span class="text_32">重:</span>
+                  <span class="text_33">{{ignes.weight == null?'暂无数据': ignes.weight=="" ?'暂无数据' : ignes.weight }}</span>
+                </div>
+                <div class="text-wrapper_15">
+                  <span class="text_34">血型:</span> <span class="text_35">{{ignes.bloodType == null?'暂无数据': ignes.bloodType=="" ?'暂无数据' : ignes.bloodType }}</span>
+                </div>
+              </div>
+              <div class="section_6 flex-row">
+                <div class="text-wrapper_16">
+                  <span class="text_36">备注信息:</span>
+                  <span class="text_37"
+                    >{{ignes.remark == null?'暂无数据': ignes.remark=="" ? '暂无数据' : ignes.remark }}</span
+                  >
+                </div>
+              </div>
+              <div class="section_7 flex-row">
+                <div class="text-wrapper_17">
+                  <span class="text_38">居住地址:</span>
+                  <span class="text_39"
+                    >{{ignes.address == null?'暂无数据': ignes.address=="" ? '暂无数据' : ignes.address }}</span
+                  >
+                </div>
+              </div>
+              <!-- <div class="section_8 flex-row">
+                <div class="block_1 flex-col"></div>
+              </div> -->
+              <div class="section_9 flex-row">
+                <span class="text_40">毕业证明照:</span>
+                <div class="group_7 flex-col">
+                   <image-preview :src="ignes.graduationPhoto" :width="160" :height="160"/>
+                </div>
+                <span class="text_41">学位证书照:</span>
+                <div class="group_8 flex-col">
+                  <image-preview :src="ignes.degreePhoto" :width="160" :height="160"/>
+                </div>
+                <span class="text_42">教资证明照:</span>
+                <div class="group_9 flex-col">
+                  <image-preview :src="ignes.degreePhoto" :width="160" :height="160"/>
+                </div>
+              </div>
+              <div class="section_10 flex-row">
+                <span class="text_43">职称证明照:</span>
+                <div class="group_10 flex-col">
+                  <image-preview :src="ignes.degreePhoto" :width="160" :height="160"/>
+                </div>
+                <span class="text_44">门禁照:</span>
+                <div class="group_11 flex-col">
+                  <image-preview :src="ignes.entrancePermit" :width="160" :height="160"/>
+                </div>
+              </div>
+            </div>
+   </div>
+
+
+    <!-- 添加或修改注册-老师-班级(学科)对话框 -->
+    <el-dialog :title="title" :visible.sync="open" width="1268px" append-to-body>
+      <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+        <!-- <el-form-item label="老师id" prop="teacherId">
+          <el-input v-model="form.teacherId" placeholder="请输入老师id" />
+        </el-form-item> -->
+		<el-row>
+			<el-col :span="8">
+				  <!-- <el-form-item label="学校名称" prop="schoolId">
+				  					  <el-select :disabled="fku"  style="width: 100%;"   v-model="form.schoolId" placeholder="请选择学校名称">
+				  					    <el-option
+				  					      v-for="dict in deptOptions"
+				  					      :key="dict.deptId"
+				  					      :label="dict.deptName"
+				  					      :value="dict.deptId"
+				  						  @click.native="mjyhes(dict)"
+				  					    ></el-option>
+				  					  </el-select>
+				  </el-form-item> -->
+			</el-col>
+
+			<el-col :span="6">
+
+				 <el-form-item label="班级名称" prop="classId">
+				  <el-select style="width: 100%;" v-model="form.classId" placeholder="请选择班级名称">
+				    <el-option
+				      v-for="dict in kiuesegh"
+				      :key="dict.deptId"
+				      :label="dict.deptName"
+				      :value="dict.deptId"
+				  	@click.native="mjyhess(dict)"
+				    ></el-option>
+				  </el-select>
+				  </el-form-item>
+			</el-col>
+			<el-col :span="6">
+				<el-form-item label="姓名" prop="name">
+					<el-select  filterable v-model="form.name" placeholder="请选择老师名称">
+					  <el-option
+					    v-for="dict in infoListstu"
+					    :key="dict.teacherId"
+					    :label="dict.teacherName"
+					    :value="dict.teacherName"
+						@click.native="mjyhesstu(dict)"
+					  ></el-option>
+					</el-select>
+				          <!-- <el-input v-model="form.name" placeholder="请输入姓名" /> -->
+
+				</el-form-item>
+			</el-col>
+			<el-col :span="6">
+				<el-form-item label="身份证号" prop="idCard">
+				          <el-input @blur="idcde" v-model="form.idCard" placeholder="请输入身份证号" />
+				        </el-form-item>
+			</el-col>
+
+			<el-col :span="6">
+				<el-form-item label="年龄" prop="age">
+				          <el-input type="Number" v-model="form.age" placeholder="请输入年龄" />
+				        </el-form-item>
+			</el-col>
+			<el-col :span="6">
+				<el-form-item label="性别" prop="sex">
+				          <el-select v-model="form.sex" placeholder="请选择性别(1:男,2:女)">
+				            <el-option
+				              v-for="dict in dict.type.xshsex"
+				              :key="dict.value"
+				              :label="dict.label"
+				              :value="dict.value"
+				            ></el-option>
+				          </el-select>
+				</el-form-item>
+			</el-col>
+			<!-- <el-col :span="8">
+				<el-form-item label="学校" prop="school">
+				          <el-input v-model="form.school" placeholder="请输入学校" />
+				        </el-form-item>
+			</el-col> -->
+			<el-col :span="6">
+				<el-form-item label="联系方式" prop="phone">
+				          <el-input type="Number" v-model="form.phone" placeholder="请输入联系方式" />
+				        </el-form-item>
+			</el-col>
+
+			<el-col :span="6">
+				<el-form-item label="身高(CM)" prop="height">
+				          <el-input v-model="form.height" placeholder="请输入身高" />
+				        </el-form-item>
+			</el-col>
+
+			<el-col :span="6">
+				<el-form-item label="体重(KG)" prop="weight">
+				          <el-input v-model="form.weight" placeholder="请输入体重" />
+				        </el-form-item>
+			</el-col>
+
+			<el-col :span="6">
+          <el-form-item label="职称" prop="professional">
+			  <el-select v-model="form.professional" placeholder="请选择职称" clearable>
+			    <el-option
+			      v-for="dict in dict.type.title"
+			      :key="dict.value"
+			      :label="dict.label"
+			      :value="dict.label"
+			    />
+			  </el-select>
+          <!-- <el-input v-model="form.professional" placeholder="请输入职称" /> -->
+        </el-form-item>
+			</el-col>
+
+			<el-col :span="6">
+			  <el-form-item label="政治面貌" prop="politicalStatus">
+			  <el-select v-model="form.politicalStatus" placeholder="请选择政治面貌">
+			    <el-option
+			      v-for="dict in dict.type.political_outlook"
+			      :key="dict.value"
+			      :label="dict.label"
+			      :value="dict.label"
+			    ></el-option>
+			  </el-select>
+			</el-form-item>
+			</el-col>
+			<el-col :span="6">
+				<el-form-item label="血型" prop="bloodType">
+					<el-select  v-model="form.bloodType" placeholder="请选择血型" clearable>
+					  <el-option
+					    v-for="dict in dict.type.blood_type"
+					    :key="dict.value"
+					    :label="dict.label"
+					    :value="dict.label"
+					  />
+					</el-select>
+				          <!-- <el-input v-model="form.bloodType" placeholder="请输入血型" /> -->
+				</el-form-item>
+			</el-col>
+			<el-col :span="6">
+				<el-form-item label="入职时间" prop="onBoardTime">
+					<el-date-picker clearable
+					style="width:100%"
+					  v-model="form.onBoardTime"
+					  type="date"
+					  value-format="yyyy-MM-dd"
+					  placeholder="请选择入职时间">
+					</el-date-picker>
+				          <!-- <el-input v-model="form.bloodType" placeholder="请输入血型" /> -->
+				</el-form-item>
+			</el-col>
+			<el-col :span="6">
+				<el-form-item label="工作时间" prop="jobTime">
+					<el-date-picker clearable
+					style="width:100%"
+					  v-model="form.jobTime"
+					  type="date"
+					  value-format="yyyy-MM-dd"
+					  placeholder="请选择参加工作时间">
+					</el-date-picker>
+				          <!-- <el-input v-model="form.bloodType" placeholder="请输入血型" /> -->
+				</el-form-item>
+			</el-col>
+			<el-col :span="6">
+			 <el-form-item label="备注" prop="remark">
+			           <el-input v-model="form.remark" type="textarea" placeholder="请输入内容" />
+			         </el-form-item>
+			</el-col>
+			<el-col :span="24">
+				<el-form-item label="居住地址" prop="address">
+				          <!-- <el-input v-model="form.address" placeholder="请输入居住地址" /> -->
+						  <baidu-map :center="mapCenter" :zoom="11" @click ="getLocationPoint"  class="iuey" :scroll-wheel-zoom="true" :autoViewport="true">
+						           <bm-view class="bm-view"></bm-view>
+						             <bm-control :offset="{width: '10px', height: '10px'}">
+										 <bm-geolocation anchor="BMAP_ANCHOR_BOTTOM_RIGHT" :showAddressBar="true" :autoLocation="true" @locationSuccess="secc" @locationError="errw"></bm-geolocation>
+						      <!-- <bm-auto-complete v-model="form.address" :sugStyle="{zIndex: 99}"> -->
+						        <!-- <el-input placeholder="请输入地名关键字" v-model="form.address" @blur = "boiu" @focus= "faie"></el-input>  -->
+
+						      <!-- <search-field placeholder="请输入地名关键字"></search-field>  -->
+						      <!-- 这里指代一个自定义搜索框组件 -->
+						      <!-- </bm-auto-complete> -->
+						       <el-autocomplete
+						        v-model="form.address"
+						        :fetch-suggestions="querySearch"
+						        placeholder="请输入详细地址"
+						        style="width: 100%"
+						        :trigger-on-focus="false"
+						        @select="handleSelect"
+								@blur="handleSelectb"
+						      />
+						    </bm-control>
+						    <!-- <bm-local-search :keyword="form.address" :auto-viewport="true" class="pui" @searchcomplete = "oieueo" v-show="okuyt" @confirm= "confirmf" :location="location" ></bm-local-search>  :panel ="false"-->
+						    <bm-local-search :keyword="form.address" :auto-viewport="true" :location="location" :forceLocal="true" :pageCapacity = "20" @searchcomplete ="oieueo"  @markersset = "confirmf"  :panel ="false" ></bm-local-search>
+						  </baidu-map>
+				</el-form-item>
+			</el-col>
+			<el-col :span="24">
+
+			</el-col>
+			<el-col :span="24">
+			  <el-col :span="8">
+			  	<el-form-item label="毕业证明照" prop="graduationPhoto">
+			  	          <image-uploads v-model="form.graduationPhoto"/>
+			  	</el-form-item>
+			  </el-col>
+			  <el-col :span="8">
+			  	<el-form-item label="学位证书照" prop="degreePhoto">
+			  	          <image-uploads v-model="form.degreePhoto"/>
+			  	        </el-form-item>
+			  </el-col>
+			  <el-col :span="8">
+			  	<el-form-item label="教资证明照" prop="teachingPhoto">
+			  	          <image-uploads v-model="form.teachingPhoto"/>
+			  	        </el-form-item>
+			  </el-col>
+			</el-col>
+			<el-col :spn="24">
+
+
+			</el-col>
+			<el-col :spn="24">
+				<el-col :span="8">
+					<el-form-item label="职称证明照" prop="professionalPhoto">
+					          <image-uploads v-model="form.professionalPhoto"/>
+					        </el-form-item>
+				</el-col>
+				<el-col :span="8">
+					<el-form-item label="证件照" prop="identificationPhoto">
+					          <image-uploads v-model="form.identificationPhoto"/>
+					        </el-form-item>
+				</el-col>
+				<el-col :span="8">
+					<el-form-item label="门禁照" prop="entrancePermit">
+					          <image-uploads v-model="form.entrancePermit"/>
+					        </el-form-item>
+				</el-col>
+			</el-col>
+
+
+
+
+
+
+		</el-row>
+        <!-- <el-form-item label="班级id" prop="classId">
+          <el-input v-model="form.classId" placeholder="请输入班级id" />
+        </el-form-item> -->
+
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitForm">确 定</el-button>
+        <el-button @click="cancel">取 消</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<!-- <script src="http://api.map.baidu.com/api?v=2.0&ak=Bjardsym8W1tLv0PmOAVfCosOLIiFdKX"></script> -->
+<script>
+import { listInfo, listInfostu, getInfo, delInfo, addInfo, updateInfo,jignwe } from "@/api/zhihuixy/teacherdan";
+import { listDepts,listDeptode} from "@/api/system/dept";
+import {regionData,CodeToText} from 'element-china-area-data'
+import { MP } from '../../../map.js'
+import myBMap from "../../../utils/myBMap";
+export default {
+  name: "Info",
+  dicts: ['xshsex','political_outlook','title','blood_type'],
+  data() {
+    return {
+      // 遮罩层
+      loading: true,
+      // 选中数组
+      ids: [],
+      // 非单个禁用
+      single: true,
+      // 非多个禁用
+      multiple: true,
+      // 显示搜索条件
+      showSearch: true,
+      // 总条数
+      total: 0,
+	  tableMaxHeight:400,
+      // 学生档案信息表格数据
+      infoList: [],
+      // 弹出层标题
+      title: "",
+      // 是否显示弹出层
+      open: false,
+      // 查询参数
+      queryParams: {
+        pageNum: 1,
+                pageSize: 10,
+                teacherId: null,
+                name: null,
+                sex: null,
+                age: null,
+                phone: null,
+                professional: null,
+                idCard: null,
+                height: null,
+                weight: null,
+                bloodType: null,
+                politicalStatus: null,
+                graduationPhoto: null,
+                degreePhoto: null,
+                teachingPhoto: null,
+                professionalPhoto: null,
+                identificationPhoto: null,
+                entrancePermit: null,
+                address: null,
+      },
+      // 表单参数
+      form: {},
+      // 表单校验
+      rules: {
+		  idCard: [
+		    { required: true, message: "不能为空", trigger: "blur" }
+		  ],
+		  name: [
+		    { required: true, message: "不能为空", trigger: "blur" }
+		  ],
+		  sex: [
+		    { required: true, message: "不能为空", trigger: "blur" }
+		  ],
+      },
+	  kiuesegh:[],
+	   kiueseghs:[],
+	   options: regionData,
+	     selectedOptions: [],
+	     addtions:{},			//存储地址数据
+	     namestwo:[],
+	      keyword: '',
+	   mapZoom: 15,
+	   mapCenter: '潜山市',
+	   mapLocation: {
+	     address: undefined,
+	     coordinate: undefined
+	   },
+	   okuyt:true,
+	   nameadd:[],
+	   kdourg:[{'value':'抱歉,没有搜索到位置请重新输入'}],
+	   location:'',
+	   pageCapacitys:20,
+	   cb:undefined,
+	   nameadd:[],
+	   listInfostucs:{},
+	   infoListstu:[],
+	   longit: '', // 经度
+	   latit: '',  // 纬度
+	   ak:'Bjardsym8W1tLv0PmOAVfCosOLIiFdKX',
+	   ferg:false,
+     ignes:{},
+     isgwe:false,
+     itwid:0
+    };
+  },
+  created() {
+    if(this.$route.query.id == undefined){
+       this.isgwe = false
+    }else{
+      this.isgwe = true
+      this.itwid = this.$route.query.id
+    }
+
+		window.onresize = () => {
+		          this.changeTableMaxHeight()
+		        }
+		        this.changeTableMaxHeight()
+    this.getList();
+	this.getdept(0)
+	// this.getLocation()
+  },
+	mounted() {
+		this.getMap()
+		// this.$nextTick(function () {
+		//       //写入自己的ak
+		//       MP(this.ak).then(BMap => {
+		// 		// cons
+		//         //在此调用api
+		//         this.lib_getPosition()//这是我自定义的
+
+		//       })
+		//     })
+		 window.onresize = () => {
+		           this.changeTableMaxHeight()
+		         }
+		         this.changeTableMaxHeight()
+	},
+  methods: {
+	  getLocation() {
+	        //Toast("如长时间未获取办理区域请手动选择");
+	        myBMap.init().then(() => {
+	          let that = this;
+	          let geolocation = new BMap.Geolocation();
+	          // 创建百度地理位置实例,代替 navigator.geolocation
+	          geolocation.getCurrentPosition(function (e) {
+	            if (this.getStatus() == BMAP_STATUS_SUCCESS) {
+	              // 百度 geolocation 的经纬度属性不同,此处是 point.lat 而不是 coords.latitude
+	              let point = new BMap.Point(e.point.lng, e.point.lat);
+	              let gc = new BMap.Geocoder();
+	              gc.getLocation(point, function (rs) {
+	                console.log(rs,2);
+	                //<<<<<<<<<<<<<<<<需要的位置信息在这获取
+	              });
+	            } else {
+	              Toast("定位失败,请手动选择区域或重新定位");
+	              this.showloading = false;
+	            }
+	          });
+	        });
+	      },
+
+	  getMap () {
+	      // 先定义that = this
+	    var that = this
+	    // 生成地图
+	    var map = new window.AMap.Map('container', {
+	      resizeEnable: true,
+	      zoom: 11,
+	      showIndoorMap: false, // 是否在有矢量底图的时候自动展示室内地图,PC默认true,移动端默认false
+	      dragEnable: true, // 地图是否可通过鼠标拖拽平移,默认为true
+	      keyboardEnable: false, // 地图是否可通过键盘控制,默认为true
+	      doubleClickZoom: true, // 地图是否可通过双击鼠标放大地图,默认为true
+	      zoomEnable: true, // 地图是否可缩放,默认值为true
+	      rotateEnable: false, // 地图是否可旋转,3D视图默认为true,2D视图默认false
+	      viewMode: '3D'
+	    })
+
+	    // 获取到当前位置的定位
+	    AMap.plugin('AMap.Geolocation', function() {
+	      var geolocation = new AMap.Geolocation({
+	      enableHighAccuracy: true, // 是否使用高精度定位,默认:true
+	                timeout: 100000, // 超过10秒后停止定位,默认:无穷大
+	                maximumAge: 0, // 定位结果缓存0毫秒,默认:0
+	                noIpLocate: 0, // 是否禁止使用IP定位,默认值为0,可选值0-3  0: 可以使用IP定位    1: 手机设备禁止使用IP定位  2: PC上禁止使用IP定位  3: 所有终端禁止使用IP定位
+	                convert: true, // 自动偏移坐标,偏移后的坐标为高德坐标,默认:true
+	                showButton: false, // 显示定位按钮,默认:true
+	                buttonPosition: "RB", // 定位按钮停靠位置,默认:"LB",左下角
+	                showMarker: false, // 定位成功后在定位到的位置显示点标记,默认:true
+	                showCircle: true, // 定位成功后用圆圈表示定位精度范围,默认:true
+	                panToLocation: true, // 定位成功后将定位到的位置作为地图中心点,默认:true
+	                zoomToAccuracy: true, // 定位成功后调整地图视野范围使定位位置及精度范围视野内可见,默认:f
+	                extensions: "all",
+	                pName: "Geolocation",
+
+	      })
+
+	      geolocation.getCurrentPosition()
+	      AMap.event.addListener(geolocation, 'complete', onComplete)
+	      AMap.event.addListener(geolocation, 'error', onError)
+		  console.log(geolocation)
+	      function onComplete (data) {
+	        // data是具体的定位信息
+	        console.log('data是具体的定位信息', data)
+
+	        // 这里使用that而不是this,如果使用this,则无法在其他地方获取到这里的经纬度
+	        that.longit = data.position.lng
+	        that.latit = data.position.lat
+	      }
+	       function onError (data) {
+
+	         // 定位出错
+	         console.log('定位失败',data)
+			 // that.$nextTick(function () {
+			 //       //写入自己的ak
+				//    console.log('data是具体的定位信息')
+			      MP(that.ak).then(BMap => {
+			      	var map = new BMap.Map('allmap');
+			      	// const BMap = window.BMapGL;
+			      	// const AMap = new window.AMap;
+			      	const BMapGeolocation = new BMap.Geolocation();
+			      	BMapGeolocation.getCurrentPosition( (r) => {
+			      	  if (r.latitude && r.longitude) {
+			      	    console.log("baidu");
+			      	    // 获取到经纬度(百度转换高德经纬度)
+			      	    const {lng, lat} = that.bd_decrypt(r.longitude, r.latitude);
+						console.log({lng, lat},29)
+			      	    // that.center = [lng, lat];
+			      	    // 根据经纬度获取当前经纬度的位置信息
+			      				  console.log(r,r.latitude,r.longitude)
+			      	    // that.getAdd();
+
+
+						const geocoder = new AMap.Geocoder({
+						  radius: 1000,
+						  extensions: "all",
+						});
+						// const [lng, lat] = this.center;
+						geocoder.getAddress({lng, lat}, function (status, result) {
+							console.log({lng, lat},status, result)
+						  if (status === "complete" && result.info === "OK") {
+						    console.log(result, "result");
+						    if (result && result.regeocode) {
+						      console.log(
+						        `result.regeocode.formattedAddress:`,
+						        result.regeocode.formattedAddress
+						      );
+						      // 获取到定位信息的处理逻辑
+						      // ...
+						    }
+						  }
+						 })
+			      	  } else {
+			      	    console.log(22);
+			      	  }
+			      	});
+			      })
+			 //     })
+
+
+			 // that.lib_getPosition();
+	       }
+	    })
+	    that.maps = map
+	  },
+	  conf () {
+	    console.log('确定')
+	    console.log('666', this.longit, this.latit)
+	  },
+	  /**
+	     * 百度地图获取经纬度
+	     */
+
+	    lib_getPosition() {
+	      const that = this;
+		  console.log(23)
+		  var map = new BMap.Map('allmap');
+	      // const BMap = window.BMapGL;
+		  // const AMap = new window.AMap;
+	      const BMapGeolocation = new BMap.Geolocation();
+	      BMapGeolocation.getCurrentPosition( (r) => {
+	        if (r.latitude && r.longitude) {
+	          console.log("baidu");
+	          // 获取到经纬度(百度转换高德经纬度)
+	          const {lng, lat} = that.bd_decrypt(r.longitude, r.latitude);
+	          // that.center = [lng, lat];
+	          // 根据经纬度获取当前经纬度的位置信息
+			  console.log(r,r.latitude,r.longitude)
+	          that.getAdd();
+	        } else {
+	          console.log(22);
+	        }
+	      });
+	    },
+
+	  /**
+	     * 根据经纬度获取地址
+	     */
+	     getAdd() {
+	      const that = this;
+	       // var AMap = new BMap.Map('allmap');
+		   // var map = new BMap.Map('allmap');
+		    // new AMap.Geolocation
+	      const geocoder = new AMap.Geocoder({
+	        radius: 1000,
+	        extensions: "all",
+	      });
+	      const [lng, lat] = this.center;
+	      geocoder.getAddress([lng, lat], function (status, result) {
+	        if (status === "complete" && result.info === "OK") {
+	          console.log(result, "result");
+	          if (result && result.regeocode) {
+	            console.log(
+	              `result.regeocode.formattedAddress:`,
+	              result.regeocode.formattedAddress
+	            );
+	            // 获取到定位信息的处理逻辑
+	            // ...
+	          }
+	        }
+	       })
+	     },
+		 bd_decrypt(bdLng, bdLat) {
+		   const X_PI = Math.PI * 3000.0 / 180.0;
+		   const x = bdLng - 0.0065;
+		   const Y = bdLat - 0.006;
+		   const Z = Math.sqrt(x * x + Y * Y) - 0.00002 * Math.sin(Y * X_PI);
+		   const Theta = Math.atan2(Y, x) - 0.000003 * Math.cos(x * X_PI);
+		   const lng = Z * Math.cos(Theta);
+		   const lat = Z * Math.sin(Theta);
+		   return {lng, lat};
+		 },
+
+
+
+	  /** 查询老师档案信息列表 */
+	  getListuye(val) {
+	    this.loading = true;
+	  		this.listInfostucs.classId = val
+	    listInfostu(this.listInfostucs).then(response => {
+	      this.infoListstu = response.rows;
+
+	      this.loading = false;
+	    });
+	  },
+	  getdept(val){
+	  		  let kuesf=  {'parentId':val}
+	  		  // this.kiuesegh = []
+	  			  console.log(kuesf)
+	  		listDeptode(kuesf).then(response => {
+	  		  this.deptOptions = this.handleTree(response.data, "deptId");
+	  		  this.deptOptions.filter(rou =>{
+	  			  if(rou.children != undefined){
+	  			  	rou.children.filter(rour =>{
+	  			  					  this.kiuesegh.push(rour)
+	  			  	})
+	  			  }
+	  			  // this.kiuesegh = rou.children
+	  			  // this.kiuesegh.push(rou.children)
+	  			  console.log(rou.children)
+	  		  })
+	  		  this.kiueseghs = this.kiuesegh
+	  		  // this.deptOptions = response.data
+	  		  console.log(this.kiuesegh)
+	  		});
+	  },
+    /** 查询学生档案信息列表 */
+    getList() {
+      this.loading = true;
+      listInfo(this.queryParams).then(response => {
+        this.infoList = response.rows;
+        if(this.isgwe == false){
+          if(this.infoList.length != 0){
+            this.ignes = this.infoList[0]
+          }else{
+            this.ignes = {teacherId: null,
+                name: null,
+                sex: null,
+                age: null,
+                phone: null,
+                professional: null,
+                idCard: null,
+                height: null,
+                weight: null,
+                bloodType: null,
+                politicalStatus: null,
+                graduationPhoto: null,
+                degreePhoto: null,
+                teachingPhoto: null,
+                professionalPhoto: null,
+                identificationPhoto: null,
+                entrancePermit: null,
+                address: null,
+                createBy: null,
+                createTime: null,
+                updateBy: null,
+                updateTime: null,
+                remark: null}
+          }
+        }else{
+          getInfo(this.itwid).then(response => {
+            this.ignes = response.data;
+          });
+        }
+
+        console.log( this.ignes,92)
+        this.total = response.total;
+        this.loading = false;
+      });
+    },
+    // 取消按钮
+    cancel() {
+      this.open = false;
+      this.reset();
+    },
+    // 表单重置
+    reset() {
+      this.form = {
+        id: null,
+                teacherId: null,
+                name: null,
+                sex: null,
+                age: null,
+                phone: null,
+                professional: null,
+                idCard: null,
+                height: null,
+                weight: null,
+                bloodType: null,
+                politicalStatus: null,
+                graduationPhoto: null,
+                degreePhoto: null,
+                teachingPhoto: null,
+                professionalPhoto: null,
+                identificationPhoto: null,
+                entrancePermit: null,
+                address: null,
+                createBy: null,
+                createTime: null,
+                updateBy: null,
+                updateTime: null,
+                remark: null
+      };
+      this.resetForm("form");
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+    // 多选框选中数据
+    handleSelectionChange(selection) {
+      this.ids = selection.map(item => item.id)
+      this.single = selection.length!==1
+      this.multiple = !selection.length
+    },
+    /** 新增按钮操作 */
+    handleAdd() {
+      this.reset();
+      this.open = true;
+      this.title = "添加老师档案信息";
+	  this.mapCenter = '潜山市'
+	  this.ferg = false
+    },
+    /** 修改按钮操作 */
+    handleUpdate(row) {
+      this.reset();
+      const id = row.id || this.ids
+      getInfo(id).then(response => {
+        this.form = response.data;
+        this.open = true;
+        this.title = "修改老师档案信息";
+      });
+    },
+	// 身份证
+	idcde(event) {
+		console.log(event);
+		// 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
+		let reg = /^([1-6][1-9]|50)\d{4}(18|19|20)\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
+	  let _IDre15 =  /^([1-6][1-9]|50)\d{4}\d{2}((0[1-9])|10|11|12)(([0-2][1-9])|10|20|30|31)\d{3}$/;
+	  // 护照
+	   // let ncjsle = /^1[45][0-9]{7}$|(^[P|p|S|s]\d{7}$)|(^[S|s|G|g|E|e]\d{8}$)|(^[Gg|Tt|Ss|Ll|Qq|Dd|Aa|Ff]\d{8}$)|(^[H|h|M|m]\d{8,10}$)/;
+	   let ncjsle = /^[a-zA-Z0-9]{5,17}$/
+	   let nhyeli = /^[a-zA-Z]{5,17}$/
+	  // 港澳
+	  let gnse = /^([A-Z]\d{6,10}(\(\w{1}\))?)$/;
+	  // 台湾
+	  // let tw = /^\d{8}|^[a-zA-Z0-9]{10}|^\d{18}$/
+	  var tw =  /^[0-9]{8}$/;
+	   var twe = /^[0-9]{10}$/;
+	  // 校验身份证:
+	  console.log(reg.test(this.form.idCard),23741)
+		if ( reg.test(this.form.idCard)|| _IDre15.test(this.form.idCard)) {
+			// this.idea();
+			this.go(this.form.idCard);
+			// callback()
+		} else {
+	    if(ncjsle.test(this.form.idCard) || nhyeli.test(this.form.idCard)){
+	       console.log(3)
+	    }else{
+	      if(gnse.test(this.form.idCard)  ){
+	          console.log(4)
+	      }else{
+	        if(tw.test(this.form.idCard) || twe.test(this.form.idCard)){
+	          console.log(5)
+	        }else{
+	          this.$message.error('证件格式不正确');
+	        }
+	      }
+
+	    }
+		}
+	},
+	// 实现自动生成生日,性别,年龄
+	go(idCard) {
+		 let sex = null;
+		        let birth = null;
+		        let myDate = new Date();
+		        let month = myDate.getMonth() + 1;
+		        let day = myDate.getDate();
+		        let age = 0;
+
+		        if (idCard.length === 18) {
+		          age = myDate.getFullYear() - idCard.substring(6, 10) - 1;
+		          sex = idCard.substring(16, 17);
+		          birth = idCard.substring(6, 10) + "-" + idCard.substring(10, 12) + "-" + idCard.substring(12, 14);
+		          if (idCard.substring(10, 12) < month || idCard.substring(10, 12) === month && idCard.substring(12, 14) <= day)
+		            age++;
+
+		        }
+		        if (idCard.length === 15) {
+		          age = myDate.getFullYear() - idCard.substring(6, 8) - 1901;
+		          sex = idCard.substring(13, 14);
+		          birth = "19" + idCard.substring(6, 8) + "-" + idCard.substring(8, 10) + "-" + idCard.substring(10, 12);
+		          if (idCard.substring(8, 10) < month || idCard.substring(8, 10) === month && idCard.substring(10, 12) <= day)
+		            age++;
+		        }
+
+		        if (sex % 2 === 0) sex = '2';
+		        else sex = '1';
+				this.form.sex = sex
+				this.form.age = age
+		        return {
+		          age,
+		          sex,
+		          birth
+		        }
+	},
+	// 请求身份证数据
+	// idea() {
+	// 	idces({ idCard: this.form.idCard }).then(response => {
+	// 		console.log(response);
+
+	// 	});
+	// },
+    /** 提交按钮 */
+    submitForm() {
+		let redw = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
+		if (this.form.phone == null) {
+		} else{
+		  if(this.form.phone !== ''){
+		    if(redw.test(this.form.phone)){
+
+		    }else{
+		      this.$message.error('手机号码不正确');
+		      return false
+		    }
+		  }
+		}
+
+      this.$refs["form"].validate(valid => {
+        if (valid) {
+          if (this.form.id != null) {
+            updateInfo(this.form).then(response => {
+              this.$modal.msgSuccess("修改成功");
+              this.open = false;
+              this.getList();
+            });
+          } else {
+            addInfo(this.form).then(response => {
+              this.$modal.msgSuccess("新增成功");
+              this.open = false;
+              this.getList();
+            });
+          }
+        }
+      });
+    },
+    /** 删除按钮操作 */
+    handleDelete(row) {
+      const ids = row.id || this.ids;
+      this.$modal.confirm('是否确认删除学生档案信息编号为"' + ids + '"的数据项?').then(function() {
+        return delInfo(ids);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("删除成功");
+      }).catch(() => {});
+    },
+    /** 导出按钮操作 */
+    handleExport() {
+      this.download('teacher/info/export', {
+        ...this.queryParams
+      }, `info_${new Date().getTime()}.xlsx`)
+    },
+	handleChange (value) {
+	        console.log(3976);
+
+	      //我们选择地址后,selectedOptions 会保存对应的区域码,例如北京的区域码为'110000'
+	      //我们要取出区域码对应的汉字,就需要用CodeToText(区域码)进行输出
+	        this.addtions.selectedOptions = value
+	        console.log(this.selectedOptions);
+
+	        var name = ''
+
+	        this.selectedOptions.map(item => name += CodeToText[item] + '/')
+	        this.addtions.names = name
+	        this.namestwo = this.addtions.names.split('/')
+	        // for (let index = 0; index < this.namestwo.length; index++) {
+	        //   const element = this.namestwo[index];
+	        //   this.form.provinceName.value = this.namestwo[0]
+	        //    this.form.cityName.value = this.namestwo[1]
+	        //    this.form.regionName.value = this.namestwo[2]
+	        //    console.log(this.form);
+
+	        // }
+	        this.form.area = this.addtions.names.split('/')
+	        this.form.areaCode = this.addtions.selectedOptions
+	        console.log(this.form.area);
+	        for(var i = 0 ; i < this.form.area.length; i++){
+	          this.mapCenter =  this.form.area[1]
+	          this.location = this.form.area[1]
+	        }
+	        console.log(this.mapCenter);
+	        console.log(this.location);
+
+
+	         console.log(this.form.areaCode);
+	        console.log(this.addtions.names.split('/'))
+
+	        console.log(this.addtions.selectedOptions)
+	      },
+	      // 、、地图
+	      getLocationPoint(e){
+	       console.log(e.point.lng,e.point.lat,e);
+		   let that = this
+		   that.form.longitude = e.point.lng
+		   that.form.latitude = e.point.lat
+		   const geoCoder = new BMap.Geocoder()
+		   geoCoder.getLocation(e.point, function(res) {
+		             console.log('获取经纬度', e.point, '获取详细地址', res)
+					 that.form.address = res.address
+		    //          const addrComponent = res.addressComponents
+		    //          const surroundingPois = res.surroundingPois
+		    //          const province = addrComponent.province
+		    //          const city = addrComponent.city
+		    //          const district = addrComponent.district
+		    //          let addr = addrComponent.street
+		    //          if (surroundingPois.length > 0 && surroundingPois[0].title) {
+		    //            if (addr) {
+		    //              addr += `-${surroundingPois[0].title}`
+		    //            } else {
+		    //              addr += `${surroundingPois[0].title}`
+		    //            }
+		    //          } else {
+		    //            addr += addrComponent.streetNumber
+		    //          }
+
+		    //          that.choosedLocation = { province, city, district, addr, ...that.center }
+		           })
+	      },
+	      searchcomplete(e){
+	        console.log(e);
+
+	      },
+	      handlerBMap({ BMap, map }) {
+	      this.BMap = BMap
+	      this.map = map
+	      console.log(BMap,map);
+	      console.log(this.mapLocatio);
+
+	      // if (this.mapLocation.coordinate && this.mapLocation.coordinate.lng) {
+	      //   // this.mapCenter.lng = this.mapLocation.coordinate.lng
+	      //   // this.mapCenter.lat = this.mapLocation.coordinate.lat
+	      //   this.mapZoom = 15
+	      //   map.addOverlay(new this.BMap.Marker(this.mapLocation.coordinate))
+	      // } else {
+	      //   // this.mapCenter.lng = 113.271429
+	      //   // this.mapCenter.lat = 23.135336
+	      //   this.mapZoom = 10
+	      // }
+	    },
+	    querySearch(queryString,cb) {
+	      // console.log(e);
+	      // this.keyword = e
+	      // results, cb
+	      // var that = this
+	      // var myGeo = new this.BMap.Geocoder()
+	      // console.log(queryString, cb);
+
+	      // myGeo.getPoint(queryString, function(point) {
+	      //   console.log(point);
+	      //   // var point = '安庆市'
+
+	      //   if (point) {
+	      //     that.mapLocation.coordinate = point
+	      //     that.makerCenter(point)
+	      //   } else {
+	      //     that.mapLocation.coordinate = null
+	      //   }
+	      // }, this.locationCity)
+	      // console.log(this.locationCity);
+
+	      // var options = {
+	      //   onSearchComplete: function(results) {
+	      //     console.log(local.getStatus());
+
+	      //     if (local.getStatus() === 0) {
+	      //       // 判断状态是否正确
+	      //       var s = []
+	      //       console.log(results.getCurrentNumPois());
+
+	      //       for (var i = 0; i < results.getCurrentNumPois(); i++) {
+	      //         var x = results.getPoi(i)
+	      //         console.log(x);
+
+	      //         var item = { value: x.address + x.title, point: x.point }
+	      //         s.push(item)
+	      //         // console.log(s);
+
+	      //         cb(s)
+	      //       }
+	      //       // console.log(s);
+
+	      //     } else {
+	      //       cb()
+	      //     }
+	      //   }
+	      // // this.oieueo(results)
+	      console.log(queryString);
+	      var item = []
+	      var x = ''
+	      //  this.nameadd = queryString.Ir
+	      // queryString.value = ''
+	       for(var i = 0 ; i <  this.nameadd.length; i++){
+	         console.log(queryString[i]);
+	        // var item = { value: this.nameadd[i].address + this.nameadd[i].title, point: this.nameadd[i].point }
+	        // if(queryString[i].address == undefined){
+	        //     queryString[i].address = ''
+	        // }
+	        //  x= this.nameadd[i].address + this.nameadd[i].title
+	        // item.push(x)
+	       this.nameadd[i].value = this.nameadd[i].address + this.nameadd[i].title
+	       console.log(this.nameadd[i].value);
+
+	      //  this.nameadd.push( item)
+	         }
+	        //  this.nameadd = item
+	         console.log(this.nameadd);
+	        //  this.cb = cb
+	      cb(this.nameadd)
+	      if(this.nameadd.length != 0){
+	        // console.log(local.getStatus());
+
+	      }else{
+	        cb(this.kdourg)
+	      }
+
+	      console.log(this.nameadd);
+
+	      // }
+	      // console.log(options );
+	    // var local = new this.BMap.LocalSearch('安庆市', options)
+
+	    // console.log(queryString );
+	      // local.search(queryString)
+	    },
+	    handleSelect(item) {
+	      var { point } = item
+	      this.mapLocation.coordinate = point
+		  this.form.longitude = this.mapLocation.coordinate.lng
+		  this.form.latitude = this.mapLocation.coordinate.lat
+	      console.log(this.mapLocation.coordinate);
+		  this.ferg = true
+
+	      // this.makerCenter(point)
+	    },
+		handleSelectb(item){
+			let that = this
+			// if(that.ferg == true){
+				var myGeo = new BMap.Geocoder();
+				myGeo.getPoint(that.form.address, function (point) {
+					        if (point) {
+					          console.log(point, "point");
+							  that.form.longitude = point.lng
+							  that.form.latitude = point.lat
+					          // that.location = point;
+					        }
+					      });
+			// }
+
+
+
+			console.log(this.form.address,396);
+		},
+	    makerCenter(point) {
+	      console.log(point);
+
+	      if (this.map) {
+	        this.map.clearOverlays()
+	        this.map.addOverlay(new this.BMap.Marker(point))
+	        // this.mapCenter.lng = point.lng
+	        // this.mapCenter.lat = point.lat
+	        // this.mapCenter = '安庆市'
+	        this.mapZoom = 15
+	      }
+	    },
+	    oieueo(results,cb){
+	    //  console.log(results,cb);
+	   console.log(results);
+	   console.log(this.form.address);
+
+
+	    // if(this.form.address == ''){
+	    //   this.nameadd = []
+	    // }else{
+	    //  this.nameadd = results.Ir
+	    // }
+	    //  console.log(type.Ir.value);
+	     console.log(this.nameadd);
+	    //  var cb= cb
+	     this.querySearch(this.nameadd,this.cb)
+	    //  results,cb
+
+	    //  this.nameadd.
+	    //  var local = new this.BMap.LocalSearch(this.map, options)
+	    //   local.search(queryString)
+
+	    },
+	    //选中数据
+	    confirmf(e){
+	      console.log(143);
+	      console.log(e);
+	      this.nameadd = e
+
+	    },
+	    boiu(){
+	      // this.okuyt = false
+	    },
+	    //获取焦点
+	    faie(){
+	// this.okuyt = true
+	    },
+		errw(val){
+			console.log(val)
+		},
+		secc(val){
+			console.log(val)
+		},
+		mjyhess(val){
+			this.getListuye(val.deptId)
+		},
+		// 老师姓名选择器
+		mjyhesstu(val){
+			this.form.teacherId = val.teacherId
+			// this.form.studentNumber = val.studentNumber
+		},
+		// 获取屏幕高度
+		showFilterForm () {
+		      this.filterActive = !this.filterActive
+		      this.changeTableMaxHeight()
+		    },
+
+		    changeTableMaxHeight () {
+		      let height = document.body.offsetHeight // 网页可视区域高度
+		      // if (this.filterActive) {
+		      //   this.tableMaxHeight = height - 320
+		      // } else {
+		        this.tableMaxHeight = height - 250
+		      // }
+		      console.log(height)
+		    }
+  }
+};
+</script>
+
+<style>
+ body * {
+   box-sizing: border-box;
+   flex-shrink: 0;
+ }
+ body {
+   font-family: PingFangSC-Regular, Roboto, Helvetica Neue, Helvetica, Tahoma,
+     Arial, PingFang SC-Light, Microsoft YaHei;
+ }
+ input {
+   background-color: transparent;
+   border: 0;
+ }
+ button {
+   margin: 0;
+   padding: 0;
+   border: 1px solid transparent;
+   outline: none;
+   background-color: transparent;
+ }
+
+ button:active {
+   opacity: 0.6;
+ }
+ .van-nav-bar__left:active,
+ .van-nav-bar__right:active {
+   opacity: 1;
+ }
+ [class*='van-']::after {
+   border-bottom: 0;
+ }
+ .flex-col {
+   display: flex;
+   flex-direction: column;
+ }
+ .flex-row {
+   display: flex;
+   flex-direction: row;
+ }
+ .justify-start {
+   display: flex;
+   justify-content: flex-start;
+ }
+ .justify-center {
+   display: flex;
+   justify-content: center;
+ }
+
+ .justify-end {
+   display: flex;
+   justify-content: flex-end;
+ }
+ .justify-evenly {
+   display: flex;
+   justify-content: space-evenly;
+ }
+ .justify-around {
+   display: flex;
+   justify-content: space-around;
+ }
+ .justify-between {
+   display: flex;
+   justify-content: space-between;
+ }
+ .align-start {
+   display: flex;
+   align-items: flex-start;
+ }
+ .align-center {
+   display: flex;
+   align-items: center;
+ }
+ .align-end {
+   display: flex;
+   align-items: flex-end;
+ }
+
+ /* .group_4 {
+    box-shadow: 0px 0px 9px 0px rgba(236, 236, 236, 1);
+    background-color: rgba(255, 255, 255, 1);
+    border-radius: 3px;
+    height: 1055px;
+    width: 1212px;
+    margin: 66px 12px 0 -1224px;
+  } */
+  .section_1 {
+    width: 113px;
+    height: 26px;
+    margin: 31px 0 0 15px;
+  }
+  .section_2 {
+    background-color: rgba(71, 117, 234, 1);
+    width: 4px;
+    height: 26px;
+  }
+  .text_6 {
+    width: 95px;
+    height: 16px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 16px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 18px;
+    margin-top: 4px;
+  }
+  .section_3 {
+    width: 1169px;
+    height: 123px;
+    margin: 12px 0 0 27px;
+  }
+  .group_5 {
+    background-color: rgba(255, 255, 255, 1);
+    border-radius: 10px;
+    width: 98px;
+    height: 98px;
+    margin-top: 25px;
+  }
+  .group_6 {
+    width: 220px;
+    height: 60px;
+    margin: 44px 0 0 30px;
+  }
+  .box_5 {
+    width: 110px;
+    height: 19px;
+  }
+  .text_7 {
+    width: 53px;
+    height: 17px;
+    overflow-wrap: break-word;
+    color: rgba(22, 22, 22, 1);
+    font-size: 18px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-top: 1px;
+  }
+  .thumbnail_18 {
+    width: 15px;
+    height: 19px;
+    margin-left: 18px;
+  }
+  .thumbnail_19 {
+    width: 17px;
+    height: 17px;
+    margin: 1px 0 0 7px;
+  }
+  .text-wrapper_3 {
+    width: 220px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-top: 27px;
+  }
+  .text_8 {
+    width: 220px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_9 {
+    width: 220px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_4 {
+    width: 99px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin: 90px 0 0 94px;
+  }
+  .text_10 {
+    width: 99px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_11 {
+    width: 99px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_12 {
+    width: 99px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_5 {
+    width: 162px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin: 89px 0 0 92px;
+  }
+  .text_13 {
+    width: 162px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(22, 22, 22, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_14 {
+    width: 162px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_6 {
+    background-color: rgba(0, 169, 240, 1);
+    border-radius: 4px;
+    height: 40px;
+    margin-left: 180px;
+    width: 90px;
+  }
+  .text_15 {
+    width: 28px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(255, 255, 255, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: center;
+    white-space: nowrap;
+    line-height: 46px;
+    margin: 13px 0 0 31px;
+  }
+  .text-wrapper_7 {
+    background-color: rgba(255, 242, 242, 1);
+    border-radius: 4px;
+    height: 40px;
+    border: 1px solid rgba(255, 105, 105, 1);
+    margin-left: 14px;
+    width: 90px;
+  }
+  .text_16 {
+    width: 28px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(255, 105, 105, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: center;
+    white-space: nowrap;
+    line-height: 46px;
+    margin: 13px 0 0 31px;
+  }
+  .section_4 {
+    width: 1060px;
+    height: 14px;
+    margin: 36px 0 0 32px;
+  }
+  .text-wrapper_8 {
+    width: 140px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_17 {
+    width: 140px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_18 {
+    width: 140px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_9 {
+    width: 126px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-left: 181px;
+  }
+  .text_19 {
+    width: 126px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_20 {
+    width: 126px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_21 {
+    width: 126px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_10 {
+    width: 154px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-left: 181px;
+  }
+  .text_22 {
+    width: 154px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_23 {
+    width: 154px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_11 {
+    width: 153px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-left: 125px;
+  }
+  .text_24 {
+    width: 153px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_25 {
+    width: 153px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .section_5 {
+    width: 971px;
+    height: 14px;
+    margin: 30px 0 0 32px;
+  }
+  .text-wrapper_12 {
+    width: 97px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_26 {
+    width: 97px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_27 {
+    width: 97px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_13 {
+    width: 106px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-left: 225px;
+  }
+  .text_28 {
+    width: 106px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_29 {
+    width: 106px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_30 {
+    width: 106px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_14 {
+    width: 97px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-left: 200px;
+  }
+  .text_31 {
+    width: 97px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_32 {
+    width: 97px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_33 {
+    width: 97px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text-wrapper_15 {
+    width: 64px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-left: 182px;
+  }
+  .text_34 {
+    width: 64px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_35 {
+    width: 64px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .section_6 {
+    width: 860px;
+    height: 15px;
+    margin: 30px 0 0 32px;
+  }
+  .text-wrapper_16 {
+    width: 860px;
+    height: 15px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_36 {
+    width: 860px;
+    height: 15px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_37 {
+    width: 860px;
+    height: 15px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .section_7 {
+    width: 375px;
+    height: 14px;
+    margin: 30px 0 0 32px;
+  }
+  .text-wrapper_17 {
+    width: 375px;
+    height: 14px;
+    overflow-wrap: break-word;
+    font-size: 0;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_38 {
+    width: 375px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .text_39 {
+    width: 375px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(102, 102, 102, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+  }
+  .section_8 {
+    width: 1096px;
+    height: 192px;
+    margin: 22px 0 0 100px;
+  }
+  .block_1 {
+    background-color: rgba(255, 255, 255, 1);
+    width: 80%;
+    height: 192px;
+  }
+  .section_9 {
+    width: 1017px;
+    height: 160px;
+    margin: 45px 0 0 32px;
+  }
+  .text_40 {
+    width: 75px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-top: 4px;
+  }
+  .group_7 {
+    background-color: rgba(255, 255, 255, 1);
+    width: 160px;
+    height: 160px;
+    border: 1px solid rgba(204, 204, 204, 1);
+    margin-left: 10px;
+  }
+  .text_41 {
+    width: 74px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin: 4px 0 0 142px;
+  }
+  .group_8 {
+    background-color: rgba(255, 255, 255, 1);
+    width: 160px;
+    height: 160px;
+    border: 1px solid rgba(204, 204, 204, 1);
+    margin-left: 10px;
+  }
+  .text_42 {
+    width: 75px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin: 4px 0 0 141px;
+  }
+  .group_9 {
+    background-color: rgba(255, 255, 255, 1);
+    width: 160px;
+    height: 160px;
+    border: 1px solid rgba(204, 204, 204, 1);
+    margin-left: 10px;
+  }
+  .section_10 {
+    width: 631px;
+    height: 160px;
+    margin: 45px 0 56px 32px;
+  }
+  .text_43 {
+    width: 75px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin-top: 4px;
+  }
+  .group_10 {
+    background-color: rgba(255, 255, 255, 1);
+    width: 160px;
+    height: 160px;
+    border: 1px solid rgba(204, 204, 204, 1);
+    margin-left: 10px;
+  }
+  .text_44 {
+    width: 46px;
+    height: 14px;
+    overflow-wrap: break-word;
+    color: rgba(52, 52, 52, 1);
+    font-size: 14px;
+    font-family: PingFang-SC-Bold;
+    font-weight: 700;
+    text-align: left;
+    white-space: nowrap;
+    line-height: 24px;
+    margin: 4px 0 0 142px;
+  }
+  .group_11 {
+    background-color: rgba(255, 255, 255, 1);
+    width: 160px;
+    height: 160px;
+    border: 1px solid rgba(204, 204, 204, 1);
+    margin-left: 38px;
+  }
+  .demo-table-expand {
+    font-size: 0;
+	.ngr{
+		color: #161616;
+	}
+  }
+  .demo-table-expand label {
+    width: 90px;
+	text-align: right;
+    color: #666;
+  }
+  .demo-table-expand .el-form-item {
+    margin-right: 0;
+    margin-bottom: 0;
+    width: 25%;
+  }
+</style>
+
+<style scoped lang="scss">
+	// 去除百度地图的图标 根据实际情况看是否要加样式穿透(::v-deep)
+	    ::v-deep .anchorBL {
+	      display: none !important;
+	    }
+
+	.bgtan{
+		border-left: 3px solid #4775EA;
+		padding-left: 10px;
+	}
+
+	.app-container{
+		background-color: #f6f6f6;
+		// height: 100vh;
+	}
+	.bm-view {
+	  width: 100%;
+	  height: 300px;
+	}
+	.oiue{
+	  height: 300px;
+	}
+	.pui{
+	  height: 100px;
+	  position: absolute;
+	  top: 40px;
+	  left: 0;
+	  z-index: 99;
+	  // overflow: hidden;
+	}
+	.anchorTL{
+	  width: 100%;
+	}
+	.app-container{
+	  // padding: 0 !important;
+	}
+	.BMap_mask{
+	  // background-color: #fff !important;
+	}
+	.bm-view {
+	  width: 100%;
+	  height: 300px;
+	}
+</style>

+ 2 - 2
ruoyi-ui/src/views/zhihuixy/yijianfk/index.vue

@@ -251,7 +251,7 @@ export default {
     handleAdd() {
       this.reset();
       this.open = true;
-      this.title = "添加注册-学校";
+      this.title = "添加信息";
     },
     /** 修改按钮操作 */
     handleUpdate(row) {
@@ -260,7 +260,7 @@ export default {
       getSchool(id).then(response => {
         this.form = response.data;
         this.open = true;
-        this.title = "修改注册-学校";
+        this.title = "修改信息";
       });
     },
     /** 提交按钮 */

Some files were not shown because too many files changed in this diff