Quellcode durchsuchen

Merge branch 'master' into houxq

WINDOWS-7IFQK7E\EDY vor 2 Jahren
Ursprung
Commit
95f924505e

BIN
public/images/7.jpg


BIN
public/images/8.jpg


BIN
public/images/9.jpeg


BIN
public/images/a-1.png


BIN
public/images/a-2.png


BIN
public/images/a-3.png


BIN
public/images/a-4.png


BIN
public/images/icon-add.png


BIN
public/images/icon-message.png


BIN
public/images/icon-search.png


BIN
public/images/shot.jpeg


BIN
public/images/submit.png


BIN
src/assets/7.jpg


BIN
src/assets/8.jpg


BIN
src/assets/9.jpeg


BIN
src/assets/icon-add.png


BIN
src/assets/icon-search.png


BIN
src/assets/logo.png


BIN
src/assets/shot.jpeg


+ 0 - 2
src/main.js

@@ -11,8 +11,6 @@ import ElementUI from 'element-ui'
 import 'element-ui/lib/theme-chalk/index.css'
 Vue.use(ElementUI)
 
-import Chat from 'vue-beautiful-chat'
-Vue.use(Chat)
 // import { JwChat } from 'jwchat'
 // Vue.use(JwChat)
 

+ 106 - 1
src/router/index.js

@@ -101,6 +101,19 @@ export const allRoutes = [
                 ],
             },
             {
+                path: "zrhd",
+                component: MainDefaultLayout,
+                children: [
+                    {
+                        path: "",
+                        name: "zhxy_zrhd",
+                        meta: {title: "值日护导"},
+                        component: () => import("@/views/zrhd/index.vue"),
+                        props: true,
+                    },
+                ],
+            },
+            {
                 path: "gwgl",
                 component: MainDefaultLayout,
                 children: [
@@ -261,6 +274,19 @@ export const allRoutes = [
                 },]
             },
             {
+                path: "hgjc",
+                component: MainDefaultLayout,
+                children: [
+                    {
+                        path: "",
+                        name: "zhxy_hgjc",
+                        meta: {title: "行规检查"},
+                        component: () => import("@/views/hgjc/index.vue"),
+                        props: true,
+                    },
+                ],
+            },
+            {
                 path: "xjglxt",
                 component: MainDefaultLayout,
                 children: [
@@ -289,6 +315,72 @@ export const allRoutes = [
         ],
     },
     {
+        path: "/kzkt",
+        component: AppLayout,
+        name: "kzkt",
+        meta: {title: "空中课堂", icon: "el-icon-document"},
+        children: [
+            {
+                path: "",
+                // name: 'zzjg',
+                component: () => import("@/views/kzkt/index.vue"),
+                meta: {title: "空中课堂"},
+            },
+        ],
+    },
+    {
+        path: "/zhkt",
+        component: AppLayout,
+        name: "zhkt",
+        meta: {title: "智慧课堂", icon: "el-icon-document"},
+        children: [
+            {
+                path: "",
+                // name: 'zzjg',
+                component: () => import("@/views/zhkt/index.vue"),
+                meta: {title: "智慧课堂"},
+            },
+        ],
+    },
+    {
+        path: "/pkxk",
+        component: AppLayout,
+        name: "pkxk",
+        meta: {title: "排课选课", icon: "el-icon-document"},
+        children: [
+            {
+                path: "",
+                name: 'pkxk_bjgl',
+                component: () => import("@/views/pkxk/bjgl/index.vue"),
+                meta: {title: "班级管理"},
+            },
+            {
+                path: "kcgl",
+                name: 'pkxk_kcgl',
+                component: () => import("@/views/pkxk/kcgl/index.vue"),
+                meta: {title: "课程管理"},
+            },
+            {
+                path: "xqgl",
+                name: 'pkxk_xqgl',
+                component: () => import("@/views/pkxk/xqgl/index.vue"),
+                meta: {title: "学期管理"},
+            },
+            {
+                path: "xkgl",
+                name: 'pkxk_xkgl',
+                component: () => import("@/views/pkxk/xkgl/index.vue"),
+                meta: {title: "选课管理"},
+            },
+            {
+                path: "kcb",
+                name: 'pkxk_kcb',
+                component: () => import("@/views/pkxk/kcb/index.vue"),
+                meta: {title: "课程表"},
+            },
+        ],
+    },
+    {
         path: "/zsgl",
         component: AppLayout,
         redirect: "/zsgl/zsgg",
@@ -318,7 +410,20 @@ export const allRoutes = [
 
         ],
     },
-
+    {
+        path: "/dcwj",
+        component: AppLayout,
+        name: "dcwj",
+        meta: {title: "调查问卷", icon: "el-icon-document"},
+        children: [
+            {
+                path: "",
+                // name: 'zzjg',
+                component: () => import("@/views/dcwj/index.vue"),
+                meta: {title: "调查问卷"},
+            },
+        ],
+    },
     // {
     //   path: "/jsld",
     //   component: AppLayout,

+ 0 - 1
src/styles/mixin.scss

@@ -35,7 +35,6 @@
 .h100{
     height: 100%;
 }
-
 .w100{
     width: 100%;
 }

+ 28 - 0
src/views/dcwj/index.vue

@@ -0,0 +1,28 @@
+<template>
+  <div>调查问卷</div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  data() {
+    return{
+
+    }
+  },
+  methods:{
+    openLink() {
+      window.open('http://ycszxy.bozedu.net/app/activityRating/home/list.html?type=4','_blank');
+
+      this.$router.back();
+    }
+  },
+  mounted() {
+    this.openLink();
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 4 - 4
src/views/gwgl/gzt/index.vue

@@ -20,14 +20,14 @@
       <div class="bothList_left">
         <div class="commonTitle clearfix">
           <div class="commonTitle_left">公文列表</div>
-          <div class="commonTitle_right" @click="toMore('gwlb')">更多></div>
+<!--          <div class="commonTitle_right">更多></div>-->
         </div>
         <div class="table">
             <el-table  ref="multipleSelection"  :data="tableData"  tooltip-effect="dark"  style="width: 100%" >
           <el-table-column type="selection" width="50" align="center"> </el-table-column>
           <el-table-column label="标题" show-overflow-tooltip>
             <template slot-scope="scope" >
-              <div class="blueText" @click="toDetail(scope.row)"> {{ scope.row.xgg_bt }}</div>
+              <div class="blueText"> {{ scope.row.xgg_bt }}</div>
             </template>
           </el-table-column>
           <el-table-column label="类型">
@@ -41,7 +41,7 @@
       <div class="bothList_right">
          <div class="commonTitle clearfix">
           <div class="commonTitle_left">关注列表</div>
-          <div class="commonTitle_right" @click="toMore('gzlb')">更多></div>
+<!--          <div class="commonTitle_right">更多></div>-->
         </div>
         <div class="table">
            <el-table
@@ -53,7 +53,7 @@
             <el-table-column type="selection" width="50" align="center"> </el-table-column>
             <el-table-column label="标题" show-overflow-tooltip>
               <template slot-scope="scope" >
-                <div class="blueText" @click="toDetail(scope.row)"> {{ scope.row.xgg_bt}}</div>
+                <div class="blueText"> {{ scope.row.xgg_bt}}</div>
               </template>
             </el-table-column>
           </el-table>

+ 28 - 0
src/views/hgjc/index.vue

@@ -0,0 +1,28 @@
+<template>
+  <div>行规检查</div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  data() {
+    return{
+
+    }
+  },
+  methods:{
+    openLink() {
+      window.open('https://ycszxym.bozedu.net/app/jg/duban.html','_blank');
+
+      this.$router.back();
+    }
+  },
+  mounted() {
+    this.openLink();
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 28 - 0
src/views/kzkt/index.vue

@@ -0,0 +1,28 @@
+<template>
+<div>空中课堂</div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  data() {
+    return{
+
+    }
+  },
+  methods:{
+    openLink() {
+      window.open('https://qqyxt.bozedu.net/page/courseList.html?mod=live_class','_blank');
+
+      this.$router.back();
+    }
+  },
+  mounted() {
+    this.openLink();
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 226 - 0
src/views/pkxk/bjgl/api.js

@@ -0,0 +1,226 @@
+import request from '@/utils/request'
+export const ydlb_list = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk/index',
+        data: {
+            page: data.page,
+            limit: data.limit,
+            keyword: data.keyword,
+            xdx_xsxh: data.xdx_xsxh,
+            xdx_zjlx: data.xdx_zjlx,
+            xdx_zym: data.xdx_zym,
+            xdx_zjhm: data.xdx_zjhm,
+            xdx_jg: data.xdx_jg,
+            xdx_xb: data.xdx_xb,
+            xdx_mz: data.xdx_mz,
+            xdx_zzmm: data.xdx_zzmm,
+            xdx_whcd: data.xdx_whcd,
+            xdx_szzb: data.xdx_szzb,
+            xdx_szdxz: data.xdx_szdxz,
+            xdx_jtzz: data.xdx_jtzz,
+            xdx_xxdz: data.xdx_xxdz,
+            xdx_lxfs: data.xdx_lxfs,
+            xdx_ahtc: data.xdx_ahtc,
+            xdx_yddqzt: data.xdx_yddqzt,
+            grade_id: data.grade_id,
+            class_id: data.class_id,
+            grade_name: data.grade_name,
+            class_name: data.class_name,
+            xdx_nl: data.xdx_nl,
+            xdx_xx: data.xdx_xx,
+        }
+    })
+
+export const ydlb_add = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk/add',
+        data: {
+            issubmit: '1',
+            xddy_dygl_xsxjk: {
+                xdx_xsxm: data.xdx_xsxm,
+                xdx_xsxh: data.xdx_xsxh,
+                xdx_csrq: data.xdx_csrq,
+                xdx_zjlx: data.xdx_zjlx,
+                xdx_zym: data.xdx_zym,
+                xdx_zjhm: data.xdx_zjhm,
+                xdx_jg: data.xdx_jg,
+                xdx_xb: data.xdx_xb,
+                xdx_nl: data.xdx_nl,
+                xdx_bz: data.xdx_bz,
+                xdx_mz: data.xdx_mz,
+                xdx_zzmm: data.xdx_zzmm,
+                xdx_whcd: data.xdx_whcd,
+                xdx_rdsj: data.xdx_rdsj,
+                xdx_szzb: data.xdx_szzb,
+                xdx_szdxz: data.xdx_szdxz,
+                xdx_jtzz: data.xdx_jtzz,
+                xdx_xxdz: data.xdx_xxdz,
+                xdx_sczp: data.xdx_sczp,
+                xdx_lxfs: data.xdx_lxfs,
+                xdx_ahtc: data.xdx_ahtc,
+                xdx_ydbz: data.xdx_ydbz,
+                xdx_yddqzt: data.xdx_yddqzt,
+                grade_id: data.grade_id,
+                class_id: data.class_id,
+                grade_name: data.grade_name,
+                class_name: data.class_name,
+                xdx_xx: data.xdx_xx,
+            }
+
+        },
+    })
+
+export const ydlb_edit = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk/edit',
+        data: {
+            issubmit: '1',
+            xdx_id: data.xdx_id,
+            xddy_dygl_xsxjk: {
+                xdx_xsxm: data.xdx_xsxm,
+                xdx_xsxh: data.xdx_xsxh,
+                xdx_csrq: data.xdx_csrq,
+                xdx_zjlx: data.xdx_zjlx,
+                xdx_zym: data.xdx_zym,
+                xdx_zjhm: data.xdx_zjhm,
+                xdx_jg: data.xdx_jg,
+                xdx_xb: data.xdx_xb,
+                xdx_mz: data.xdx_mz,
+                xdx_zzmm: data.xdx_zzmm,
+                xdx_whcd: data.xdx_whcd,
+                xdx_rdsj: data.xdx_rdsj,
+                xdx_szzb: data.xdx_szzb,
+                xdx_szdxz: data.xdx_szdxz,
+                xdx_jtzz: data.xdx_jtzz,
+                xdx_xxdz: data.xdx_xxdz,
+                xdx_sczp: data.xdx_sczp,
+                xdx_lxfs: data.xdx_lxfs,
+                xdx_ahtc: data.xdx_ahtc,
+                xdx_ydbz: data.xdx_ydbz,
+                xdx_yddqzt: data.xdx_yddqzt,
+                grade_id: data.grade_id,
+                class_id: data.class_id,
+                grade_name: data.grade_name,
+                class_name: data.class_name,
+                xdx_nl: data.xdx_nl,
+                xdx_bz: data.xdx_bz,
+                xdx_xx: data.xdx_xx,
+            }
+
+        },
+    })
+
+export const ydlb_detail = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk/detail',
+        data: {
+            xdx_id: data.xdx_id,
+
+        },
+    })
+
+export const ydlb_del = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk/delete',
+        data: {
+            xdx_id: data.xdx_id
+        },
+    })
+
+export const ydlb_export = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk/index',
+        api: "xls",
+        data: {
+            page: data.page,
+            limit: data.limit
+        },
+    })
+export const jtcy_list = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk_jtcy/index',
+        data: {
+            page: data.page,
+            limit: data.limit,
+            keyword: data.keyword,
+            xdxj_xm: data.xdxj_xm,
+            xdxj_zzmm: data.xdxj_zzmm,
+            xdxj_gzdw: data.xdxj_gzdw,
+            xdxj_zw: data.xdxj_zw,
+            xdxj_sjhm: data.xdxj_sjhm,
+
+        }
+    })
+
+export const jtcy_add = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk_jtcy/add',
+        data: {
+            issubmit: '1',
+            xddy_dygl_xsxjk_jtcy: {
+                xdxj_cw: data.xdxj_cw,
+                xdxj_xm: data.xdxj_xm,
+                xdxj_zzmm: data.xdxj_zzmm,
+                xdxj_gzdw: data.xdxj_gzdw,
+                xdxj_zw: data.xdxj_zw,
+                xdxj_sjhm: data.xdxj_sjhm,
+
+            }
+
+        },
+    })
+
+export const jtcy_edit = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk_jtcy/edit',
+        data: {
+            issubmit: '1',
+            xdxj_id: data.xdxj_id,
+            xddy_dygl_xsxjk_jtcy: {
+                xdxj_cw: data.xdxj_cw,
+                xdxj_xm: data.xdxj_xm,
+                xdxj_zzmm: data.xdxj_zzmm,
+                xdxj_gzdw: data.xdxj_gzdw,
+                xdxj_zw: data.xdxj_zw,
+                xdxj_sjhm: data.xdxj_sjhm,
+            }
+
+        },
+    })
+
+export const jtcy_detail = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk_jtcy/detail',
+        data: {
+            xdxj_id: data.xdxj_id,
+
+        },
+    })
+
+export const jtcy_del = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk_jtcy/delete',
+        data: {
+            xdxj_id: data.xdxj_id
+        },
+    })
+
+export const jtcy_export = (data = {}) =>
+    request({
+        url: '/xddy/dygl_xsxjk_jtcy/index',
+        api: "xls",
+        data: {
+            page: data.page,
+            limit: data.limit
+        },
+    })
+export const team_search = (data = {}) =>
+    request({
+        url: '/jcxx/team/index',
+        data: {
+            page: data.page,
+            limit: data.limit,
+            keyword: data.keyword,
+            team_id: data.team_id,
+        }
+    })

+ 823 - 0
src/views/pkxk/bjgl/index.vue

@@ -0,0 +1,823 @@
+ <template>
+  <div>
+    <el-form :inline="true">
+      <!-- <el-form-item class="mr10" prop="keyword" label="学生姓名:">
+        <el-input
+          placeholder="输入学生姓名"
+          v-model="keyword"
+          clearable
+          @clear="getListData"
+        ></el-input>
+      </el-form-item>
+      <el-form-item class="mr10" prop="xdx_xsxh" label="学生学号:">
+        <el-input
+          v-model="xdx_xsxh"
+          placeholder="输入学生学号"
+          clearable
+          @clear="getListData"
+        ></el-input>
+      </el-form-item>
+      <el-form-item class="mr10" prop="xdx_lxfs" label="手机号码:">
+        <el-input
+          v-model="xdx_lxfs"
+          clearable
+          @clear="getListData"
+          placeholder="输入手机号码"
+        ></el-input>
+      </el-form-item>
+      <el-form-item class="mr10" prop="class_name" label="班级:">
+        <el-input
+          v-model="class_name"
+          clearable
+          @clear="getListData"
+          placeholder="输入班级"
+        ></el-input>
+      </el-form-item> -->
+      <el-form-item label="学年学期:" style="margin-bottom: 10px">
+        <el-select
+          v-model="firstForm.team"
+          placeholder="请选择学年学期"
+          clearable
+          @change="getListData"
+          style="width: 300px"
+        >
+          <el-option
+            v-for="item in teamList"
+            :label="item.team_name"
+            :value="item.team_id"
+            :key="item.team_id"
+          ></el-option>
+        </el-select>
+      </el-form-item>
+      <el-button type="primary" class="ml5" @click="getListData"
+        >搜索</el-button
+      >
+      <el-button type="primary" class="ml5" @click="clearData">清空</el-button>
+    </el-form>
+    <div>
+      <el-button type="primary" @click="exportAll">导出打印</el-button>
+      <!-- <el-button type="primary" @click="addData">添加</el-button>
+      <el-button
+        type="danger"
+        @click="delData"
+        :disabled="multipleSelection.length == 0"
+        >删除</el-button
+      > -->
+    </div>
+    <el-table
+      :data="tableData"
+      tooltip-effect="dark"
+      v-loading="loading"
+      ref="multipleTable"
+      @selection-change="handleSelectionChange"
+      class="mt20"
+      style="width: 100%"
+    >
+      <el-table-column type="selection" align="center" width="55">
+      </el-table-column>
+
+      <el-table-column label="学生姓名" prop="xdx_xsxm" width="100">
+      </el-table-column>
+      <el-table-column
+        label="学生学号"
+        prop="xdx_xsxh"
+        align="center"
+        width="150"
+      >
+      </el-table-column>
+      <el-table-column label="性别" prop="xdx_xb" width="80"> </el-table-column>
+      <el-table-column label="年龄" prop="xdx_nl" align="center" width="80">
+      </el-table-column>
+      <el-table-column
+        label="联系方式"
+        prop="xdx_lxfs"
+        align="center"
+        width="150"
+      >
+      </el-table-column>
+      <el-table-column label="备注" prop="xdx_yddqzt" width="100">
+        <template slot-scope="scope">
+          <span class="text-red">{{ scope.row.xdx_yddqzt }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="班级" prop="class_name" width="150">
+      </el-table-column>
+      <el-table-column label="学籍卡">
+        <template slot-scope="scope">
+          <el-button type="text" @click="detailData(scope.row)"
+            >查看
+          </el-button>
+        </template>
+      </el-table-column>
+      <el-table-column label="操作">
+        <template slot-scope="scope">
+          <el-button type="text" @click="editData(scope.row)">编辑 </el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <footer
+      class="flex-item-none"
+      style="display: flex; justify-content: flex-end; margin-top: 30px"
+    >
+      <el-pagination
+        background
+        layout="total,prev, pager, next"
+        :page-size="limit"
+        :total="total"
+        :current-page.sync="cur_page"
+        @current-change="handleCurrentChange"
+      ></el-pagination>
+    </footer>
+
+    <el-dialog :title="title" :visible.sync="dialogFormVisible" width="700px">
+      <el-form :inline="true" :model="dialogForm" label-width="100px">
+        <h4 class="mb20 ml20 font-size-15 color-2">基本信息</h4>
+        <el-form-item class="mr75" label="学生姓名" prop="xsxm">
+          <el-input v-model="dialogForm.xsxm"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="学生学号" prop="xsxh">
+          <el-input v-model="dialogForm.xsxh"></el-input>
+        </el-form-item>
+        <el-form-item class="mr75" label="年龄" prop="nl">
+          <el-input v-model="dialogForm.nl"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="班级" prop="bj">
+          <el-input v-model="dialogForm.bj"></el-input>
+        </el-form-item>
+        <el-form-item class="mr75" label="证件类型" prop="zjlx">
+          <el-input v-model="dialogForm.zjlx"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="身份号码" prop="zjhm">
+          <el-input v-model="dialogForm.zjhm"></el-input> </el-form-item
+        ><el-form-item class="mr75" label="籍贯" prop="jg">
+          <el-input v-model="dialogForm.jg"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="出生年月" prop="csrq">
+          <el-date-picker
+            style="width: 191px"
+            v-model="dialogForm.csrq"
+            type="date"
+          >
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item class="mr75" label="曾用名" prop="cym">
+          <el-input v-model="dialogForm.cym"></el-input>
+        </el-form-item>
+        <el-form-item class="mr75" label="性别" prop="xb">
+          <el-radio-group v-model="dialogForm.xb">
+            <el-radio :label="1">男</el-radio>
+            <el-radio :label="2">女</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item class="mr75" label="民族" prop="mz">
+          <el-input v-model="dialogForm.mz"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="政治面貌" prop="zzmm">
+          <el-input v-model="dialogForm.zzmm"></el-input>
+        </el-form-item>
+        <el-form-item class="mr75" label="文化程度" prop="whcd">
+          <el-input v-model="dialogForm.whcd"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="入党时间" prop="rdsj">
+          <el-date-picker
+            style="width: 191px"
+            v-model="dialogForm.rdsj"
+            type="date"
+          >
+          </el-date-picker> </el-form-item
+        ><el-form-item class="mr75" label="所在支部" prop="szzb">
+          <el-input v-model="dialogForm.szzb"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="所在党小组" prop="szdxz">
+          <el-input v-model="dialogForm.szdxz"></el-input>
+        </el-form-item>
+        <el-form-item class="mr75" label="家庭住址" prop="jtzz">
+          <el-input v-model="dialogForm.jtzz"></el-input>
+        </el-form-item>
+        <el-form-item class="mr75" label="详细地址" prop="xxdz">
+          <el-input v-model="dialogForm.xxdz"></el-input>
+        </el-form-item>
+        <el-form-item label="上传照片" prop="sczp">
+          <el-upload
+            v-model="dialogForm.sczp"
+            action="https://jsonplaceholder.typicode.com/posts/"
+            list-type="picture-card"
+          >
+            <i class="el-icon-plus"></i>
+          </el-upload>
+          <el-dialog :visible.sync="dialogVisible">
+            <img width="100%" :src="dialogImageUrl" alt="" />
+          </el-dialog>
+        </el-form-item>
+        <el-form-item class="mr75 ml40" label="联系方式" prop="lxfs">
+          <el-input v-model="dialogForm.lxfs"></el-input>
+        </el-form-item>
+        <el-form-item label="爱好特长:" prop="ahtc">
+          <el-input
+            type="textarea"
+            style="width: 500px"
+            v-model="dialogForm.ahtc"
+          ></el-input>
+        </el-form-item>
+        <el-form-item label="备注:" prop="bz">
+          <el-input
+            type="textarea"
+            style="width: 500px"
+            v-model="dialogForm.bz"
+          ></el-input>
+        </el-form-item>
+        <h4 class="mb20 ml20 font-size-15 color-2">家庭主要</h4>
+        <el-form-item class="mr75" label="称谓" prop="jcw">
+          <el-input v-model="dialogForm.jcw"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="姓名" prop="jxm">
+          <el-input v-model="dialogForm.jxm"></el-input>
+        </el-form-item>
+        <el-form-item class="mr75" label="政治面貌" prop="jzzmm">
+          <el-input v-model="dialogForm.jzzmm"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="工作单位" prop="jgzdw">
+          <el-input v-model="dialogForm.jgzdw"></el-input> </el-form-item
+        ><el-form-item class="mr75" label="职务" prop="zw">
+          <el-input v-model="dialogForm.zw"></el-input>
+        </el-form-item>
+        <el-form-item class="mr10" label="手机号码" prop="jsjhm">
+          <el-input v-model="dialogForm.jsjhm"></el-input>
+        </el-form-item>
+        <h4 class="mb20 ml20 font-size-15 color-2">获奖荣誉</h4>
+
+        <el-form-item label="是否获奖" prop="sfhj" class="w100">
+          <el-radio-group v-model="dialogForm.sfhj">
+            <el-radio :label="1">是</el-radio>
+            <el-radio :label="2">否</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item class="w100" label=" ">
+          <el-tag
+            class="mr20"
+            :key="tag"
+            v-for="tag in dynamicTags"
+            closable
+            :disable-transitions="false"
+            @close="handleClose(tag)"
+          >
+            {{ tag }}
+          </el-tag>
+          <el-input
+            class="input-new-tag w25"
+            v-if="inputVisible"
+            v-model="inputValue"
+            ref="saveTagInput"
+            size="small"
+            @keyup.enter.native="handleInputConfirm"
+            @blur="handleInputConfirm"
+          >
+          </el-input>
+        </el-form-item>
+        <el-form-item label=" " class="w100">
+          <el-button
+            class="button-new-tag"
+            type="primary"
+            size="small"
+            @click="showInput"
+            >添加荣誉</el-button
+          >
+        </el-form-item>
+
+        <h4 class="mb20 ml20 font-size-15 color-2">异动管理</h4>
+        <el-form-item class="mr75" label="当前状态" prop="yddqzt">
+          <el-radio-group v-model="dialogForm.yddqzt">
+            <el-radio :label="1">休学</el-radio>
+            <el-radio :label="2">转班</el-radio>
+            <el-radio :label="3">休学</el-radio>
+            <el-radio :label="4">复学</el-radio>
+            <el-radio :label="5">开除</el-radio>
+            <el-radio :label="6">其他</el-radio>
+          </el-radio-group>
+        </el-form-item>
+        <el-form-item label="备注:" prop="ydbz">
+          <el-input
+            type="textarea"
+            style="width: 500px"
+            v-model="dialogForm.ydbz"
+          ></el-input>
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="text-center">
+        <el-button @click="formCancel">取 消</el-button>
+        <el-button type="primary" @click="formSubmit">确 定</el-button>
+      </div>
+    </el-dialog>
+    <el-dialog :visible.sync="detailDialogFormVisible" width="700px">
+      <h3 class="text-center mb45">XXX学校高等教育学生学籍卡</h3>
+      <el-form ref="form" :model="dialogForm" label-width="0px">
+        <table class="form-table" cellpadding="0" cellspacing="0">
+          <tr>
+            <td>
+              <h3 class="font-size-14">学生姓名</h3>
+            </td>
+            <td>
+              <div class="font-size-14">
+                {{ detailInfo.xdx_xsxm }}
+              </div>
+            </td>
+            <td>
+              <h3 class="font-size-14">性别</h3>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdx_xb_option_n }}</div>
+            </td>
+
+            <td rowspan="5"></td>
+          </tr>
+          <tr>
+            <td>
+              <h3 class="font-size-14">民族</h3>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdx_mz }}</div>
+            </td>
+            <td>
+              <h3 class="font-size-14">出生年月</h3>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdx_csrq }}</div>
+            </td>
+          </tr>
+          <tr>
+            <td>
+              <h3 class="font-size-14">身份证号</h3>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdx_zjhm }}</div>
+            </td>
+            <td>
+              <h3 class="font-size-14">政治面貌</h3>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdx_zzmm }}</div>
+            </td>
+          </tr>
+          <tr>
+            <td>
+              <h3 class="font-size-14">籍贯</h3>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdx_jg }}</div>
+            </td>
+            <td>
+              <h3 class="font-size-14">家庭住址</h3>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdx_jtzz }}</div>
+            </td>
+          </tr>
+          <tr>
+            <td>
+              <h3 class="font-size-14" style="height: 53px">爱好</h3>
+            </td>
+            <td colspan="3">
+              <div class="font-size-14" style="height: 53px">
+                {{ detailInfo.xdx_ahtc }}
+              </div>
+            </td>
+          </tr>
+        </table>
+        <table class="form-table-two" cellpadding="0" cellspacing="0">
+          <tr>
+            <td rowspan="3" class="w20">
+              <h3 class="font-size-14">家庭主要</h3>
+            </td>
+            <td class="w10">
+              <h3 class="font-size-14">称谓</h3>
+            </td>
+            <td class="w10">
+              <h3 class="font-size-14">姓名</h3>
+            </td>
+            <td class="w10">
+              <h3 class="font-size-14">政治面貌</h3>
+            </td>
+            <td class="w20">
+              <h3 class="font-size-14">工作单位</h3>
+            </td>
+            <td class="w10">
+              <h3 class="font-size-14">职务</h3>
+            </td>
+            <td class="w20">
+              <h3 class="font-size-14">手机号码</h3>
+            </td>
+          </tr>
+
+          <tr>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdxj_cw }}</div>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdxj_xm }}</div>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdxj_zzmm }}</div>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdxj_gzdw }}</div>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdxj_zw }}</div>
+            </td>
+            <td>
+              <div class="font-size-14">{{ detailInfo.xdxj_sjhm }}</div>
+            </td>
+          </tr>
+          <tr>
+            <td>
+              <div class="font-size-14"></div>
+            </td>
+            <td>
+              <div class="font-size-14"></div>
+            </td>
+            <td>
+              <div class="font-size-14"></div>
+            </td>
+            <td>
+              <div class="font-size-14"></div>
+            </td>
+            <td>
+              <div class="font-size-14"></div>
+            </td>
+            <td>
+              <div class="font-size-14"></div>
+            </td>
+          </tr>
+        </table>
+      </el-form>
+      <div slot="footer" class="text-center">
+        <el-button @click="formCancel">取 消</el-button>
+        <el-button type="primary" @click="formSubmit">打印</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  ydlb_list,
+  ydlb_add,
+  ydlb_edit,
+  ydlb_del,
+  ydlb_detail,
+  team_search,
+  ydlb_export,
+  jtcy_list,
+  jtcy_add,
+  jtcy_edit,
+  jtcy_detail,
+  jtcy_del,
+  jtcy_export,
+} from "./api";
+
+import { useUserStore } from "@/stores/user";
+const { token } = useUserStore();
+export default {
+  name: "index",
+  data() {
+    return {
+      keyword: "",
+      xdx_xsxh: "",
+      xdx_lxfs: "",
+      class_name: "",
+      limit: 10,
+      total: 12,
+      cur_page: 1,
+      teamList: [],
+      dialogForm: {
+        xsxm: "",
+        xsxh: "",
+        xb: "",
+        nl: "",
+        lxfs: "",
+        bz: "",
+        bj: "",
+        yybz: "",
+        yddqzt: "",
+        jg: "",
+        zzmm: "",
+        jtzz: "",
+        zjhm: "",
+        mz: "",
+        jcw: "",
+        jxm: "",
+        jzzmm: "",
+        jzw: "",
+        jgzdw: "",
+        jsjhm: "",
+      },
+      firstForm: {
+        team: "",
+      },
+      tableData: [],
+      termList: [],
+      gradeList: [],
+      detailInfo: {},
+      dynamicTags: ["全国先进工作者", "优秀党务工作者"],
+      inputVisible: false,
+      inputValue: "",
+      title: "",
+      multipleSelection: [],
+      id: "",
+      loading: false,
+      isEdit: false,
+      dialogImageUrl: "",
+      dialogVisible: false,
+      dialogFormVisible: false,
+      detailDialogFormVisible: false,
+    };
+  },
+  methods: {
+    handleCurrentChange(val) {
+      this.cur_page = val;
+      this.getListData();
+    },
+    getListData() {
+      this.loading = true;
+      let data = {
+        page: this.cur_page,
+        limit: this.limit,
+        keyword: this.keyword,
+        xdx_xsxh: this.xdx_xsxh,
+        xdx_lxfs: this.xdx_lxfs,
+        class_name: this.class_name,
+      };
+
+      ydlb_list(data).then((res) => {
+        this.loading = false;
+        this.tableData = res.data.page_data;
+        this.cur_page = Number(res.data.page_now);
+        this.total = Number(res.data.total_rows);
+      });
+    },
+    addData() {
+      this.title = "添加/申请";
+      this.dialogForm = {
+        xsxm: "",
+        xsxh: "",
+        xb: "",
+        nl: "",
+        lxfs: "",
+        ydbz: "",
+        //bz: "",
+        // /zjlx: "",
+        // zjhm: "",
+        // jg: "",
+        // csrq: "",
+        // // cym: "",
+        // mz: "",
+        // zzmm: "",
+        // // whcd: "",
+        // // rdsj: "",
+        // // szzb: "",
+        // // szdxz: "",
+        // jtzz: "",
+        // // xxdz: "",
+        // // sczp: "",
+
+        // ahtc: "",
+        // // sfhj: "",
+        // // zt: "",
+        // // bz: "",
+      };
+      this.isEdit = false;
+      this.dialogFormVisible = true;
+    },
+    delData() {
+      this.$confirm("确认删除这些信息?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          let data = {
+            xdx_id: this.multipleSelection,
+          };
+
+          ydlb_del(data).then((res) => {
+            if (res.code == 1) {
+              this.$message({
+                message: "信息删除成功!",
+                type: "success",
+              });
+              this.getListData();
+            } else {
+              this.$message({
+                message: res.msg,
+                type: "error",
+              });
+            }
+          });
+        })
+        .catch(() => {});
+    },
+
+    handleSelectionChange(val) {
+      this.multipleSelection = [];
+      for (let i in val) {
+        this.multipleSelection.push(val[i].xdx_id);
+      }
+    },
+    editData(item) {
+      this.title = "编辑信息";
+      this.isEdit = true;
+      this.dialogFormVisible = true;
+      this.id = item.xdx_id;
+      this.dialogForm.xsxm = item.xdx_xsxm;
+      this.dialogForm.xsxh = item.xdx_xsxh;
+      this.dialogForm.xb = item.xdx_xb_option_k;
+      this.dialogForm.nl = item.xdx_nl;
+      this.dialogForm.lxfs = item.xdx_lxfs;
+      this.dialogForm.yddqzt = item.xdx_yddqzt_option_k;
+      this.dialogForm.bj = item.class_name;
+      this.dialogForm.csrq = item.xdx_csrq;
+      this.dialogForm.zzmm = item.xdx_zzmm;
+      this.dialogForm.mz = item.xdx_mz;
+      this.dialogForm.jtzz = item.xdx_jtzz;
+      this.dialogForm.jg = item.xdx_jg;
+      this.dialogForm.ahtc = item.xdx_ahtc;
+      this.dialogForm.zjhm = item.xdx_zjhm;
+      this.dialogForm.jcw = item.xdxj_cw;
+      this.dialogForm.jxm = item.xdxj_xm;
+      this.dialogForm.jzzmm = item.xdxj_zzmm;
+      this.dialogForm.jgzdw = item.xdxj_gzdw;
+      this.dialogForm.jzw = item.xdxj_zw;
+      this.dialogForm.jsjhm = item.xdxj_sjhm;
+    },
+
+    detailData(item) {
+      this.title = "信息详情";
+      this.detailDialogFormVisible = true;
+      let data = {
+        xdx_id: item.xdx_id,
+      };
+      ydlb_detail(data).then((res) => {
+        if (res.code == 1) {
+          this.detailInfo = res.data.one_info;
+        }
+      });
+    },
+    formSubmit() {
+      let data = {
+        xdx_xsxm: this.dialogForm.xsxm,
+        xdx_xsxh: this.dialogForm.xsxh,
+        xdx_xb: this.dialogForm.xb,
+        xdx_nl: this.dialogForm.nl,
+        xdx_lxfs: this.dialogForm.lxfs,
+        xdx_yddqzt: this.dialogForm.yddqzt,
+        class_name: this.dialogForm.bj,
+        xdx_csrq: this.dialogForm.csrq,
+        xdx_zzmm: this.dialogForm.zzmm,
+        xdx_mz: this.dialogForm.mz,
+        xdx_jtzz: this.dialogForm.jtzz,
+        xdx_jg: this.dialogForm.jg,
+        xdx_zjhm: this.dialogForm.zjhm,
+        xdx_ahtc: this.dialogForm.ahtc,
+        xdxj_cw: this.dialogForm.jcw,
+        xdxj_xm: this.dialogForm.jxm,
+        xdxj_zzmm: this.dialogForm.jzzmm,
+        xdxj_gzdw: this.dialogForm.jgzdw,
+        xdxj_zw: this.dialogForm.jzw,
+        xdxj_sjhm: this.dialogForm.jsjhm,
+      };
+      if (!this.isEdit) {
+        ydlb_add(data).then((res) => {
+          if (res.code == 1) {
+            this.$message({
+              message: "报表添加成功!",
+              type: "success",
+            });
+            this.dialogFormVisible = false;
+            this.getListData();
+          } else {
+            this.$message({
+              message: res.msg,
+              type: "error",
+            });
+          }
+        });
+      } else {
+        data.xdx_id = this.id;
+        ydlb_edit(data).then((res) => {
+          if (res.code == 1) {
+            this.$message({
+              message: "信息编辑成功!",
+              type: "success",
+            });
+
+            this.dialogFormVisible = false;
+            this.getListData();
+          } else {
+            this.$message({
+              message: res.msg,
+              type: "error",
+            });
+          }
+        });
+      }
+    },
+
+    teamListData() {
+      let data = {
+        page: 1,
+        limit: 9999,
+      };
+      team_search(data).then((res) => {
+        if (res.code == 1) {
+          this.teamList = res.data.page_data;
+          let obj = {
+            team_id: "",
+            team_name: "全部",
+          };
+          this.teamList.unshift(obj);
+        }
+      });
+    },
+    formCancel() {
+      this.dialogFormVisible = false;
+      this.detailDialogFormVisible = false;
+    },
+
+    handleClose(tag) {
+      this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
+    },
+
+    showInput() {
+      this.inputVisible = true;
+      this.$nextTick((_) => {
+        this.$refs.saveTagInput.$refs.input.focus();
+      });
+    },
+    handleInputConfirm() {
+      let inputValue = this.inputValue;
+      if (inputValue) {
+        this.dynamicTags.push(inputValue);
+      }
+      this.inputVisible = false;
+      this.inputValue = "";
+    },
+
+    exportAll() {
+      let link =
+        window.globalVariables.api +
+        "/xddy/dygl_xsxjk/index?api=xls&page=1&limit=10000&token=" +
+        token;
+      window.open(link, "_blank");
+    },
+    clearData() {
+      this.keyword = "";
+      this.xdx_xsxh = "";
+      this.xdx_lxfs = "";
+      this.class_name = "";
+    },
+  },
+  mounted() {
+    this.getListData();
+    this.teamListData();
+  },
+};
+</script>
+
+
+<style lang="scss" scoped>
+.form-table {
+  width: 100%;
+  border-collapse: collapse;
+  padding: auto;
+  td {
+    width: 20%;
+    height: 30px;
+    line-height: 30px;
+    padding: 4px 4px 5px 5px;
+    border: 1px solid #dbdbdb;
+  }
+  td:nth-child(odd) {
+    background-color: #f0f3f8;
+  }
+  td:nth-child(5) {
+    background-color: #fff;
+  }
+}
+.form-table-two {
+  width: 100%;
+  border-collapse: collapse;
+  padding: auto;
+  td {
+    height: 30px;
+    line-height: 30px;
+    padding: 4px 4px 5px 5px;
+    border: 1px solid #dbdbdb;
+    border-top: none;
+  }
+  tr:first-child {
+    background-color: #f0f3f8;
+  }
+}
+</style>
+

+ 28 - 0
src/views/pkxk/kcb/index.vue

@@ -0,0 +1,28 @@
+<template>
+  <div>课程表</div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  data() {
+    return{
+
+    }
+  },
+  methods:{
+    openLink() {
+      window.open('http://ycszxy.bozedu.net/page/school_service/school_schedule.html','_blank');
+
+      this.$router.back();
+    }
+  },
+  mounted() {
+    this.openLink();
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 28 - 0
src/views/pkxk/kcgl/index.vue

@@ -0,0 +1,28 @@
+<template>
+  <div>课程管理</div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  data() {
+    return{
+
+    }
+  },
+  methods:{
+    openLink() {
+      window.open('http://ycszxy.bozedu.net/app/xdjx/#/stxkgl/kcxkgl','_blank');
+
+      this.$router.back();
+    }
+  },
+  mounted() {
+    this.openLink();
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 28 - 0
src/views/pkxk/xkgl/index.vue

@@ -0,0 +1,28 @@
+<template>
+  <div>选课管理</div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  data() {
+    return{
+
+    }
+  },
+  methods:{
+    openLink() {
+      window.open('http://ycszxy.bozedu.net/app/xdjx/#/stxkgl/xktj/xkqk','_blank');
+
+      this.$router.back();
+    }
+  },
+  mounted() {
+    this.openLink();
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 52 - 0
src/views/pkxk/xqgl/api.js

@@ -0,0 +1,52 @@
+import request from '@/utils/request';
+export const xqgl_list = (data = {}) =>
+    request({
+        url: '/jcxx/team/index',
+        data: {
+            page: data.page,
+            limit: data.limit,
+            keyword: data.keyword,
+            team_id: data.team_id,
+
+
+
+        }
+    })
+export const xqgl_add = (data = {}) =>
+    request({
+        url: '/jcxx/team/add',
+        data: {
+            issubmit: '1',
+            jcxx_team: {
+                team_name: data.team_name,
+                team_start_date: data.team_start_date,
+                team_end_date: data.team_end_date,
+                team_id: data.team_id,
+
+            }
+        }
+    })
+export const xqgl_edit = (data = {}) =>
+    request({
+        url: '/jcxx/team/edit',
+        data: {
+            issubmit: '1',
+            id: data.id,
+            jcxx_team: {
+                team_name: data.team_name,
+                team_start_date: data.team_start_date,
+                team_end_date: data.team_end_date,
+                team_id: data.team_id,
+
+
+            }
+        }
+    })
+export const xqgl_del = (data = {}) =>
+    request({
+        url: '/jcxx/team/delete ',
+        data: {
+            issubmit: '1',
+            id: data.id
+        }
+    })

+ 295 - 0
src/views/pkxk/xqgl/index.vue

@@ -0,0 +1,295 @@
+<template>
+  <div>
+    <div class="d-flex flex-between">
+      <div>
+        <el-button type="primary" size="medium" @click="addData">
+          <span class="d-in-block v-mid el-icon-plus font-size-16"></span>
+          <span class="d-in-block v-mid font-size-16">添加</span>
+        </el-button>
+      </div>
+      <el-form label-width="100px" :inline="true">
+        <el-form-item prop="keyword">
+          <el-input
+            placeholder="请输入搜索关键字"
+            v-model="keyword"
+            clearable
+            @clear="getListData"
+          ></el-input>
+        </el-form-item>
+        <el-button type="primary" class="ml5" @click="getListData"
+          >搜索</el-button
+        >
+      </el-form>
+    </div>
+    <el-table
+      :data="tableData"
+      tooltip-effect="dark"
+      v-loading="loading"
+      style="width: 100%"
+    >
+      <el-table-column
+        type="selection"
+        align="center"
+        width="55"
+      ></el-table-column>
+      <el-table-column
+        label="序号"
+        align="center"
+        type="index"
+        width="80"
+      ></el-table-column>
+      <el-table-column
+        label="学期名称"
+        show-overflow-tooltip
+        prop="team_name"
+        width="auto"
+      ></el-table-column>
+      <el-table-column
+        label="学期开始时间"
+        align="center"
+        prop="team_start_date"
+        width="180"
+      >
+      </el-table-column>
+
+      <el-table-column
+        label="学期结束时间"
+        align="center"
+        width="180"
+        prop="team_end_date"
+      ></el-table-column>
+      <el-table-column
+        label="编号"
+        align="center"
+        prop="team_id"
+        width="150"
+      ></el-table-column>
+
+      <el-table-column label="操作" width="150">
+        <template slot-scope="scope">
+          <el-button type="text" @click="editData(scope.row)">编辑</el-button>
+          <el-button type="text" @click="delData(scope.row.id)">删除</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    <footer
+      class="flex-item-none"
+      style="display: flex; justify-content: flex-end; margin-top: 30px"
+    >
+      <el-pagination
+        background
+        layout="total,prev, pager, next"
+        :page-size="limit"
+        :total="total"
+        :current-page="cur_page"
+        @current-change="handleCurrentChange"
+      ></el-pagination>
+    </footer>
+    <el-dialog :title="title" :visible.sync="dialogFormVisible" width="580px">
+      <el-form
+        :model="dialogForm"
+        ref="dialogForm"
+        :rules="rules"
+        label-width="120px"
+      >
+        <el-form-item label="学期名称" prop="xqmc">
+          <el-input
+            v-model="dialogForm.xqmc"
+            placeholder="请输入学期名称"
+          ></el-input>
+        </el-form-item>
+
+        <el-form-item label="学期开始时间" prop="xqkssj">
+          <el-date-picker
+            v-model="dialogForm.xqkssj"
+            type="date"
+            placeholder="选择日期"
+            value-format="yyyy-MM-dd"
+          >
+          </el-date-picker>
+        </el-form-item>
+
+        <el-form-item label="学期结束时间" prop="xqjssj">
+          <el-date-picker
+            v-model="dialogForm.xqjssj"
+            type="date"
+            placeholder="选择日期"
+            value-format="yyyy-MM-dd"
+          >
+          </el-date-picker>
+        </el-form-item>
+        <el-form-item label="编号" prop="bh">
+          <el-input v-model="dialogForm.bh" placeholder="请输入编号"></el-input>
+        </el-form-item>
+      </el-form>
+      <div slot="footer">
+        <el-button @click="formCancel">取 消</el-button>
+        <el-button type="primary" @click="formSubmit('dialogForm')"
+          >确 定</el-button
+        >
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import { xqgl_list, xqgl_add, xqgl_edit, xqgl_del } from "./api";
+export default {
+  name: "index",
+  data() {
+    return {
+      keyword: "",
+      tableData: [],
+      team_id: "",
+      team_name: "",
+      limit: 10,
+      total: 0,
+      cur_page: 1,
+      dialogFormVisible: false,
+
+      dialogForm: {
+        xqmc: "",
+        xqkssj: "",
+        xqjssj: "",
+        bh: "",
+      },
+      rules: {
+        xqmc: [{ required: true, message: "请输入学期名称", trigger: "blur" }],
+        xqkssj: [{ required: true, message: "请选择日期", trigger: "blur" }],
+        xqjssj: [{ required: true, message: "请选择日期", trigger: "blur" }],
+        bh: [{ required: true, message: "请输入编号", trigger: "blur" }],
+      },
+      title: "",
+      isEdit: false,
+      id: "",
+      loading: false,
+    };
+  },
+  methods: {
+    getListData() {
+      this.loading = true;
+      let data = {
+        page: this.cur_page,
+        limit: this.limit,
+        keyword: this.keyword,
+      };
+
+      xqgl_list(data).then((res) => {
+        this.loading = false;
+        this.tableData = res.data.page_data;
+        this.cur_page = Number(res.data.page_now);
+        this.total = Number(res.data.total_rows);
+      });
+    },
+    handleCurrentChange(val) {
+      this.cur_page = val;
+      this.getListData();
+    },
+    addData() {
+      this.title = "新建";
+      this.dialogForm = {
+        xqmc: "",
+        xqkssj: "",
+        xqjssj: "",
+        bh: "",
+      };
+      this.isEdit = false;
+      this.dialogFormVisible = true;
+    },
+    editData(item) {
+      this.title = "编辑";
+      this.isEdit = true;
+      this.dialogFormVisible = true;
+      this.id = item.id;
+      this.dialogForm.xqmc = item.team_name;
+      this.dialogForm.xqkssj = item.team_start_date;
+      this.dialogForm.xqjssj = item.team_end_date;
+      this.dialogForm.bh = item.team_id;
+    },
+    formSubmit(formName) {
+      this.$refs[formName].validate((valid) => {
+        if (valid) {
+          let data = {
+            team_name: this.dialogForm.xqmc,
+            team_start_date: this.dialogForm.xqkssj,
+            team_end_date: this.dialogForm.xqjssj,
+            team_id: this.dialogForm.bh,
+          };
+          if (!this.isEdit) {
+            xqgl_add(data).then((res) => {
+              if (res.code == 1) {
+                this.$message({
+                  message: "信息添加成功!",
+                  type: "success",
+                });
+
+                this.dialogFormVisible = false;
+                this.getListData();
+              } else {
+                this.$message({
+                  message: res.msg,
+                  type: "error",
+                });
+              }
+            });
+          } else {
+            data.id = this.id;
+            xqgl_edit(data).then((res) => {
+              if (res.code == 1) {
+                this.$message({
+                  message: "信息编辑成功!",
+                  type: "success",
+                });
+
+                this.dialogFormVisible = false;
+                this.getListData();
+              } else {
+                this.$message({
+                  message: res.msg,
+                  type: "error",
+                });
+              }
+            });
+          }
+        }
+      });
+    },
+    formCancel() {
+      this.dialogFormVisible = false;
+    },
+    delData(id) {
+      let data = {
+        id: id,
+      };
+      this.$confirm("确认删除该信息?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      })
+        .then(() => {
+          xqgl_del(data).then((res) => {
+            if (res.code == 1) {
+              this.$message({
+                message: "信息删除成功!",
+                type: "success",
+              });
+              this.getListData();
+            } else {
+              this.$message({
+                message: res.msg,
+                type: "error",
+              });
+            }
+          });
+        })
+        .catch(() => {});
+    },
+  },
+  mounted() {
+    this.getListData();
+  },
+};
+</script>
+
+<style scoped>
+</style>

+ 28 - 0
src/views/zhkt/index.vue

@@ -0,0 +1,28 @@
+<template>
+<div>智慧课堂</div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  data() {
+    return{
+
+    }
+  },
+  methods:{
+    openLink() {
+      window.open('http://zhkt.bozedu.net/desadmin.php','_blank');
+
+      this.$router.back();
+    }
+  },
+  mounted() {
+    this.openLink();
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 28 - 0
src/views/zrhd/index.vue

@@ -0,0 +1,28 @@
+<template>
+  <div>值日护导</div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  data() {
+    return{
+
+    }
+  },
+  methods:{
+    openLink() {
+      window.open('https://ycszxym.bozedu.net/app/jg/zhiri.html','_blank');
+
+      this.$router.back();
+    }
+  },
+  mounted() {
+    this.openLink();
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 254 - 44
src/views/zxxx/index.vue

@@ -1,27 +1,54 @@
 <template>
   <div class="content">
-    <!-- 聊天标题 -->
-    <div class="title">盐城中学全体</div>
 
-    <!-- 聊天窗口 -->
-    <div class="chat">
-      <!-- 聊天信息 -->
-      <div class="chat-content">
-        <div :class="item.isSlef?'right':'left'" v-for="(item,index) in chatData" :key="index">
-          <img class="left-img" v-if="!item.isSlef" src="@/assets/images/a-3.png" alt="">
-          <img class="left-img" v-if="item.isSlef" src="@/assets/images/a-4.png" alt="">
-          <!-- 动态类 -->
-          <div :class="item.isSlef?'right-chat':'left-chat '">{{item.chatContent}}</div>
+    <div class="chat-box">
+      <div class="chat-left">
+        <div class="flex-row">
+          <input type="text" class="search-input" placeholder="搜索">
+          <button type="button" class="add-icon"></button>
         </div>
+        <ul class="chat-list">
+          <li v-for="(item,index) in chatData" @click="switchMes(item,index)">
+            <div class="shot" :class="item.shot"></div>
+            <div class="s-right">
+              <div class="d-flex flex-between">
+                <h3 class="font-size-16 text-white">{{item.target}}</h3>
+                <div>
+                  <span class="dot-num d-in-block mr10" v-if="item.num > 0">{{item.num}}</span>
+                  <span class="d-in-block s-time">{{item.time}}</span>
+                </div>
+              </div>
+              <h4 class="mt10 s-text text-overflow">{{item.messageList[item.messageList.length-1].message}}</h4>
+            </div>
+          </li>
+        </ul>
       </div>
-      <!-- 提交信息 -->
-      <div class="submit">
-        <!-- 输入框 -->
-        <el-input v-model="input" placeholder="发送些内容..."></el-input>
-        <img class="submit-img" src="@/assets/images/submit.png" alt="" @click="add()">
+      <!-- 聊天窗口 -->
+      <div class="chat">
+        <!-- 聊天标题 -->
+        <div class="title">{{curData.target}}</div>
+        <!-- 聊天信息 -->
+        <div class="chat-content">
+          <div :class="item.myMs?'right':'left'" v-for="item in curData.messageList">
+            <img class="left-img" :src="item.user" alt="">
+            <!-- 动态类 -->
+            <div :class="item.isSlef?'right-chat':'left-chat '">{{item.message}}</div>
+          </div>
+        </div>
+        <!-- 提交信息 -->
+        <div class="submit">
+          <!-- 输入框 -->
+          <div style="flex: 1">
+            <el-input v-model="input" @keyup.enter.native="add" placeholder="发送些内容..." style="flex: 1;"></el-input>
+          </div>
+          <button type="button" class="submit-img" @click="add"></button>
+
+        </div>
       </div>
     </div>
 
+
+
   </div>
 
 </template>
@@ -36,40 +63,138 @@ export default {
 
       chatData: [
         {
-          chatContent: "早",
-          isSlef: true
+          shot:'c-1',
+          target:'盐城中学全体',
+          num:'8',
+          time:'13:45',
+          messageList:[{
+            user:'/images/a-3.png',
+            message:'明天全校要做核酸',
+            myMs: false,
+          },{
+            user:'/images/a-4.png',
+            message:'几点呢?',
+            myMs: true,
+          },{
+            user:'/images/7.jpg',
+            message:'在哪里做?',
+            myMs: false,
+          },{
+            user:'/images/8.jpg',
+            message:'什么时候结束',
+            myMs: false,
+          }]
         },
         {
-          chatContent: "早",
-          isSlef: false
+          shot:'c-2',
+          target:'盐城市教育者全体',
+          num:'6',
+          time:'12:52',
+          messageList:[{
+            user:'/images/a-3.png',
+            message:'周五下午三点在盐城市教育局开会',
+            myMs: false,
+          },{
+            user:'/images/a-4.png',
+            message:'会议主题是什么',
+            myMs: true,
+          },{
+            user:'/images/7.jpg',
+            message:'具体哪个会议室啊',
+            myMs: false,
+          },{
+            user:'/images/8.jpg',
+            message:'参与人员呢',
+            myMs: false,
+          }]
         },
         {
-          chatContent: "你好",
-          isSlef: true
+          shot:'c-3',
+          target:'张玉',
+          num:'0',
+          time:'10-13',
+          messageList:[{
+            user:'/images/a-3.png',
+            message:'你好,麻烦把三年级的数学成绩表发给我一下',
+            myMs: false,
+          },{
+            user:'/images/a-4.png',
+            message:'好的',
+            myMs: true,
+          },{
+            user:'/images/a-3.png',
+            message:'谢谢',
+            myMs: false,
+          },{
+            user:'/images/a-4.png',
+            message:'发你了,注意查收',
+            myMs: true,
+          }]
         },
         {
-          chatContent: "你好",
-          isSlef: false
+          shot:'c-4',
+          target:'方瑜',
+          num:'0',
+          time:'10-12',
+          messageList:[{
+            user:'/images/8.jpg',
+            message:'你知道明天几点开会吗',
+            myMs: false,
+          },{
+            user:'/images/a-4.png',
+            message:'明天下午三点',
+            myMs: true,
+          },{
+            user:'/images/8.jpg',
+            message:'哦,在哪个会议室啊',
+            myMs: false,
+          },{
+            user:'/images/a-4.png',
+            message:'在三楼大会议室',
+            myMs: true,
+          }]
         },
-      ]
+      ],
+      curData: {
+        shot:'c-1',
+        target:'盐城中学全体',
+        num:'8',
+        time:'13:45',
+        messageList:[{
+          user:'/images/a-3.png',
+          message:'明天全校要做核酸',
+          myMs: false,
+        },{
+          user:'/images/a-4.png',
+          message:'几点呢?',
+          myMs: true,
+        },{
+          user:'/images/7.jpg',
+          message:'在哪里做?',
+          myMs: false,
+        },{
+          user:'/images/8.jpg',
+          message:'什么时候结束',
+          myMs: false,
+        }]
+      },
+      curIndex:0
     }
 
   },
-
-  watch: {
-    chatData: {
-      handler: function () {
-
-      }
-    }
-  },
   methods: {
+    switchMes(item,index) {
+      this.curData = item;
+      this.curIndex = index;
+    },
     add() {
       let msg = {
-        chatContent: this.input,
-        isSlef: true
+        user:'images/a-4.png',
+        message:this.input,
+        myMs: true,
       }
-      this.chatData.push(msg)
+      this.chatData[this.curIndex].messageList.push(msg);
+      this.curData = this.chatData[this.curIndex];
       this.input = ""
     }
   },
@@ -88,9 +213,18 @@ export default {
   border-bottom: 1px solid #e3e7e7;
   padding-left: 25px;
 }
+.chat-box{
+  display: flex;
+  height: 100%;
+}
+.chat-left{
+  width: 320px;
+  background: #363E47;
+  padding: 25px;
+}
 .chat {
-  padding: 20px;
-  height: 390px;
+  flex: 1;
+  height: 100%;
   display: flex;
   flex-direction: column;
 }
@@ -102,6 +236,7 @@ export default {
 .chat-content {
   flex: 1;
   overflow-y: scroll;
+  padding-left: 25px;
 }
 
 .left,
@@ -127,6 +262,7 @@ export default {
   border-radius: 10px;
   padding: 10px 15px;
   margin-left: 5px;
+  color: #99A8B4;
 }
 .right-chat {
   float: right;
@@ -136,21 +272,95 @@ export default {
   padding: 10px 15px;
   position: absolute;
   right: 50px;
+  color: #fff;
 }
 
 .submit {
   height: 48px;
-  position: relative;
+  display: flex;
+  align-items: center;
 }
 ::v-deep .el-input__inner {
   height: 48px;
   border: 0;
 }
 .submit-img {
-  width: 27px;
-  height: 25px;
-  position: absolute;
-  top: 11px;
-  right: 30px;
+  border: 0;
+  cursor: pointer;
+  width: 48px;
+  height: 48px;
+  background: #fff url("/images/submit.png") center no-repeat;
+  background-size: 27px 25px;
+}
+.search-input{
+  width: 225px;
+  height: 28px;
+  border: 0;
+  background: #303841 url("/images/icon-search.png") 10px no-repeat;
+  padding-left: 35px;
+  padding-right: 10px;
+  border-radius: 14px;
+  outline: none;
+  font-size: 14px;
+  color: #fff;
+}
+.add-icon{
+  width: 28px;
+  height: 28px;
+  background: url("/images/icon-add.png") center no-repeat;
+  background-size: 28px 28px;
+  border: 0;
+}
+.chat-list{
+  li{
+    width: 100%;
+    display: flex;
+    margin-top: 25px;
+    cursor: pointer;
+  }
+  .shot{
+    width: 44px;
+    height: 44px;
+    border-radius: 3px;
+    &.c-1{
+      background: url("/images/shot.jpeg") center no-repeat;
+      background-size: 44px 44px;
+    }
+    &.c-2{
+      background: url("/images/9.jpeg") center no-repeat;
+      background-size: 44px 44px;
+    }
+    &.c-3{
+      background: url("/images/7.jpg") center no-repeat;
+      background-size: 44px 44px;
+    }
+    &.c-4{
+      background: url("/images/8.jpg") center no-repeat;
+      background-size: 44px 44px;
+    }
+  }
+  .s-right{
+    flex: 1;
+    margin-left: 15px;
+    width: 0;
+  }
+  .dot-num{
+    width: 14px;
+    height: 14px;
+    background: #f36060;
+    border-radius: 50%;
+    font-size: 12px;
+    color: #fff;
+    text-align: center;
+    line-height: 14px;
+  }
+  .s-time{
+    font-size: 12px;
+    color: #A5B5C1;
+  }
+  .s-text{
+    font-size: 13px;
+    color: #6A7681;
+  }
 }
 </style>