李志伟 3 年 前
コミット
f96848eae5

+ 1
- 0
package.json ファイルの表示

@@ -18,6 +18,7 @@
18 18
     "axios": "^0.18.1",
19 19
     "axios-retry": "^3.2.4",
20 20
     "core-js": "^2.6.12",
21
+    "dayjs": "^1.10.7",
21 22
     "element-ui": "2.13.2",
22 23
     "js-cookie": "2.2.0",
23 24
     "js-md5": "^0.7.3",

+ 46
- 0
src/api/course.js ファイルの表示

@@ -0,0 +1,46 @@
1
+import request from '@/utils/request'
2
+
3
+/**
4
+* 保存班级
5
+* @param {*} data
6
+* @returns
7
+*/
8
+export const saveCourse = (data) => request({
9
+  url: '/admin/course',
10
+  method: 'post',
11
+  data
12
+})
13
+
14
+/**
15
+ * 班级列表
16
+ * @param {*} params
17
+ * @returns
18
+ */
19
+export const getCourseList = (params) => request({
20
+  url: '/admin/course', params
21
+})
22
+
23
+/**
24
+ * 删除班级
25
+ * @param {*} data
26
+ * @returns
27
+ */
28
+export const deleteCourse = (id) => request({
29
+  url: `/admin/course/${id}`, method: 'delete'
30
+})
31
+/**
32
+ * 更新班级
33
+ * @param {*} data
34
+ * @returns
35
+ */
36
+export const UpdateCourse = (data, id) => request({
37
+  url: `/admin/course/${id}`, method: 'put', data
38
+})
39
+/**
40
+ * 查询班级详情
41
+ * @param {*} params
42
+ * @returns
43
+ */
44
+export const getCourseDetail = (id) => request({
45
+  url: `/admin/course/${id}`
46
+})

+ 6
- 8
src/utils/auth.js ファイルの表示

@@ -1,27 +1,25 @@
1
-import Cookies from 'js-cookie'
2
-
3 1
 const TokenKey = 'token'
4 2
 
5 3
 export function getToken() {
6
-  return Cookies.get(TokenKey)
4
+  return localStorage.getItem(TokenKey)
7 5
 }
8 6
 
9 7
 export function setToken(token) {
10
-  return Cookies.set(TokenKey, token)
8
+  return localStorage.setItem(TokenKey, token)
11 9
 }
12 10
 
13 11
 export function removeToken() {
14
-  return Cookies.remove(TokenKey)
12
+  return localStorage.removeItem(TokenKey)
15 13
 }
16 14
 
17 15
 const UserIdKey = 'user'
18 16
 
19 17
 export function setUserId(userId) {
20
-  return Cookies.set(UserIdKey, userId)
18
+  return localStorage.setItem(UserIdKey, userId)
21 19
 }
22 20
 export function getUserId() {
23
-  return Cookies.get(UserIdKey)
21
+  return localStorage.getItem(UserIdKey)
24 22
 }
25 23
 export function removeUserId() {
26
-  return Cookies.remove(UserIdKey)
24
+  return localStorage.removeItem(UserIdKey)
27 25
 }

+ 83
- 242
src/views/course/edit.vue ファイルの表示

@@ -1,271 +1,112 @@
1 1
 <template>
2 2
   <div>
3
-    <el-card class="box-card" shadow="never">
4
-      <el-row :gutter="24">
5
-        <el-col :span="18">
6
-          <el-form
7
-            ref="ruleForm"
8
-            :model="ruleForm"
9
-            :rules="rules"
10
-            label-width="10vw"
11
-            class="demo-ruleForm"
12
-          >
13
-            <el-form-item label="学期" prop="appName" style="width:30vw">
14
-              <el-select v-model="ruleForm.appType" filterable placeholder="请选择">
15
-                <el-option
16
-                  v-for="item in options"
17
-                  :key="item.value"
18
-                  :label="item.label"
19
-                  :value="item.value"
20
-                />
21
-              </el-select>
22
-            </el-form-item>
23
-            <el-form-item style="width:30vw" label="课程名" prop="course">
24
-              <el-input v-model="ruleForm.course" />
25
-            </el-form-item>
26
-            <el-form-item style="width:30vw" label="签到人数" prop="signInNum">
27
-              <el-input v-model="ruleForm.signInNum" />
28
-            </el-form-item>
29
-            <el-form-item style="width:30vw" label="二维码" prop="qcode">
30
-              <el-image :src="qcode" style="width: 100px; height: 100px" />
31
-            </el-form-item>
32
-            <!-- <el-form-item label="发布状态" prop="status">
33
-              <el-select v-model="ruleForm.status" placeholder="请选择状态">
34
-                <el-option label="发布" :value="1" />
35
-                <el-option label="未发布" :value="0" />
36
-              </el-select>
37
-            </el-form-item> -->
38
-
39
-            <el-form-item>
40
-              <el-button
41
-                type="primary"
42
-                @click="submitForm('ruleForm')"
43
-              >{{ !configId?'新建照片墙':'修改照片墙' }}</el-button>
44
-              <el-button @click="resetForm('ruleForm')">重置</el-button>
45
-            </el-form-item>
46
-          </el-form>
47
-        </el-col>
48
-      </el-row>
3
+    <el-card class="box-card" style="text-align:center" shadow="never">
4
+      <h2>{{ courseId ? '修改' : '新建' }}课程</h2>
5
+      <el-form
6
+        ref="ruleForm"
7
+        :model="ruleForm"
8
+        :rules="rules"
9
+        label-width="10vw"
10
+        style="width:50%;margin:auto"
11
+        class="demo-ruleForm"
12
+      >
13
+        <el-form-item label="课程名" prop="course">
14
+          <el-input v-model="ruleForm.title" />
15
+        </el-form-item>
16
+        <el-form-item label="课程简介" prop="course">
17
+          <el-input v-model="ruleForm.subTitle" />
18
+        </el-form-item>
19
+        <el-form-item label="课程内容" prop="course">
20
+          <el-input v-model="ruleForm.content" type="textarea" :rows="3" />
21
+        </el-form-item>
22
+        <el-form-item label="开始时间" prop="course">
23
+          <el-date-picker
24
+            v-model="ruleForm.startDate"
25
+            format="yyyy-MM-dd HH:mm"
26
+            type="datetime"
27
+            placeholder="选择日期时间"
28
+            style="width:100%"
29
+          />
30
+        </el-form-item>
31
+        <el-form-item label="结束时间" prop="course">
32
+          <el-date-picker
33
+            v-model="ruleForm.endDate"
34
+            format="yyyy-MM-dd HH:mm"
35
+            type="datetime"
36
+            style="width:100%"
37
+            placeholder="选择日期时间"
38
+          />
39
+        </el-form-item>
40
+        <el-form-item label-width="0">
41
+          <el-button
42
+            type="primary"
43
+            @click="submitForm('ruleForm')"
44
+          >{{ !courseId?'新建课程':'修改课程' }}</el-button>
45
+          <el-button @click="$router.go(-1)">返回</el-button>
46
+        </el-form-item>
47
+      </el-form>
49 48
     </el-card>
50 49
   </div>
51 50
 </template>
52 51
 
53 52
 <script>
54
-// import { saveConfig, detailsConfig, ChangeConfig } from '@/api/WeChatApi'
55
-import QRCode from 'qrcodejs2'
53
+import { saveCourse, getCourseDetail, UpdateCourse } from '@/api/course'
56 54
 
57 55
 export default {
58 56
   data() {
59 57
     return {
60
-      configId: '',
61
-      gameForm: {
62
-        gameForm: undefined
63
-      },
64
-      qcode: undefined,
58
+      courseId: '',
65 59
       ruleForm: {
66
-        course: undefined,
67
-        signInNum: undefined,
68
-        appName: '',
69
-        appid: '',
70
-        appType: '',
71
-        aesKey: '',
72
-        apiUrl: '',
73
-        resource: '',
74
-        httpPoxyHost: '',
75
-        msgDataFormat: 'Json',
76
-        secret: '',
77
-        token: '',
78
-        httpProxyPort: null,
79
-        status: null
60
+        title: undefined,
61
+        subTitle: undefined,
62
+        content: undefined,
63
+        startDate: undefined,
64
+        endDate: undefined
80 65
       },
81 66
       rules: {
82
-        appName: [
83
-          { required: true, message: '请输入配置名称', trigger: 'blur' }
84
-        ],
85
-        appid: [{ required: true, message: '请输入AppID', trigger: 'blur' }],
86
-        appType: [{ required: true, message: '请选择类型', trigger: 'blur' }],
87
-        aesKey: [{ required: true, message: '请选择AesKey', trigger: 'blur' }],
88
-        apiUrl: [
89
-          { required: true, message: '请选择第三方接口地址', trigger: 'blur' }
90
-        ],
91
-        httpPoxyHost: [
92
-          { required: true, message: '请输入接口代理地址', trigger: 'blur' }
93
-        ],
94
-        httpProxyPort: [
95
-          { required: true, message: '请输入接口代理端口', trigger: 'blur' }
67
+        title: [
68
+          { required: true, message: '请输入课程名称', trigger: 'blur' }
96 69
         ],
97
-        msgDataFormat: [
98
-          { required: true, message: '请输入消息格式类型', trigger: 'blur' }
99
-        ],
100
-        secret: [{ required: true, message: '请输入Secret', trigger: 'blur' }],
101
-        token: [{ required: true, message: '请输入Token', trigger: 'blur' }],
102
-
103
-        status: [{ required: true, message: '请选择状态', trigger: 'blur' }]
104
-      },
105
-      options: [{
106
-        value: '选项1',
107
-        label: '2022年第一学期'
108
-      }, {
109
-        value: '选项2',
110
-        label: '2022年第二学期'
111
-      }, {
112
-        value: '选项3',
113
-        label: '2023年第一学期'
114
-      }, {
115
-        value: '选项4',
116
-        label: '2023年第二学期'
117
-      }, {
118
-        value: '选项5',
119
-        label: '2024年第一学期'
120
-      }]
121
-    }
122
-  },
123
-
124
-  watch: {
125
-    configId: function(val, oldVal) {
126
-      if (val) {
127
-        this.configId = val
128
-      //   detailsConfig(val)
129
-      //     .then((res) => {
130
-      //       this.ruleForm = res.data
131
-      //     })
132
-      //     .catch((e) => {
133
-      //       this.$message.error('ID有误。')
134
-      //       this.$router.go(-1)
135
-      //     })
70
+        startDate: [{ required: true, message: '请输入课程开始时间', trigger: 'blur' }],
71
+        endDate: [{ required: true, message: '请输入课程结束时间', trigger: 'blur' }]
136 72
       }
137 73
     }
138 74
   },
139 75
   mounted() {
140
-    if (this.$route?.query.configId) {
141
-      this.configId = this.$route.query.configId
142
-      // detailsConfig(this.configId)
143
-      //   .then((res) => {
144
-      //     this.ruleForm = res.data
145
-      //   })
146
-      //   .catch((e) => {
147
-      //     this.$message.error('ID有误。')
148
-      //     this.$router.go(-1)
149
-      //   })
150
-    }
151 76
     if (this.$route?.query.courseId) {
152
-      this.configId = this.$route.query.configId
153
-      // detailsConfig(this.configId)
154
-      //   .then((res) => {
155
-      //     this.ruleForm = res.data
156
-      //   })
157
-      //   .catch((e) => {
158
-      //     this.$message.error('ID有误。')
159
-      //     this.$router.go(-1)
160
-      //   })
77
+      this.courseId = this.$route.query.courseId
78
+      getCourseDetail(this.courseId)
79
+        .then((res) => {
80
+          this.ruleForm = res.data
81
+        })
82
+        .catch((e) => {})
161 83
     }
162 84
   },
163 85
   methods: {
164 86
     submitForm(formName) {
165 87
       this.$refs[formName].validate((valid) => {
166
-        console.log(this.ruleForm)
167
-        // if (valid) {
168
-        //   if (this.configId === '') {
169
-        //     saveConfig(this.ruleForm)
170
-        //       .then((e) => {
171
-        //         this.$message.success('配置保存成功')
172
-        //         this.$router.go(-1)
173
-        //         console.log('保存字段', e)
174
-        //       })
175
-        //       .catch((e) => {
176
-        //         this.$message.error('保存失败', e)
177
-        //       })
178
-        //   } else {
179
-        //     ChangeConfig(this.ruleForm, this.configId)
180
-        //       .then((res) => {
181
-        //         this.$message.success('配置修改成功')
182
-        //         this.$router.go(-1)
183
-        //       })
184
-        //       .catch((e) => {
185
-        //         console.log(e)
186
-        //       })
187
-        //   }
188
-        // } else {
189
-        //   return false
190
-        // }
191
-      })
192
-    },
193
-    resetForm(formName) {
194
-      this.$refs[formName].resetFields()
195
-    },
196
-    handleChange(val) {
197
-      this.gameForm.gameImage = val
198
-    },
199
-    handleDeleteIcon() {
200
-      this.gameForm.gameImage = ''
201
-    },
202
-    // 生成二维码
203
-    qrcode(val) {
204
-      // eslint-disable-next-line no-unused-vars
205
-      const qrcode = new QRCode('qrcode', {
206
-        width: 200,
207
-        height: 200, // 高度
208
-        text: 'http://192.168.89.76:8080/?gameId=' + val.gameId
209
-      })
210
-    },
211
-    // 下载二维码
212
-    downloadQrcode(val) {
213
-      document.getElementById('qrcode').innerHTML = ''
214
-      this.qrcode(val) // 下载之前首先要有二维码
215
-      // 先找到canvas节点下的二维码图片
216
-      const myCanvas = document.getElementById('qrcode').getElementsByTagName('canvas')
217
-      const img = document.getElementById('qrcode').getElementsByTagName('img')
218
-      // 创建一个a节点
219
-      const a = document.createElement('a')
220
-      // 设置a的href属性将canvas变成png格式
221
-      const imgURL = myCanvas[0].toDataURL('image/jpg')
222
-      const ua = navigator.userAgent
223
-      if (ua.indexOf('Trident') !== -1 && ua.indexOf('Windows') !== -1) { // IE内核 并且  windows系统 情况下 才执行;
224
-        var bstr = atob(imgURL.split(',')[1])
225
-        var n = bstr.length
226
-        var u8arr = new Uint8Array(n)
227
-        while (n--) {
228
-          u8arr[n] = bstr.charCodeAt(n)
88
+        if (valid) {
89
+          if (this.ruleForm.startDate > this.ruleForm.endDate) {
90
+            this.$message.success('结束时间不能小于开始时间')
91
+          } else if (this.courseId) {
92
+            UpdateCourse(this.ruleForm, this.courseId)
93
+              .then((res) => {
94
+                this.$message.success('修改成功')
95
+                this.$router.go(-1)
96
+              })
97
+              .catch((e) => {})
98
+          } else {
99
+            saveCourse(this.ruleForm)
100
+              .then((e) => {
101
+                this.$message.success('保存成功')
102
+                this.$router.go(-1)
103
+              })
104
+              .catch((e) => {})
105
+          }
106
+        } else {
107
+          return false
229 108
         }
230
-        var blob = new Blob([u8arr])
231
-        window.navigator.msSaveOrOpenBlob(blob, val.title + '.png')
232
-      } else if (ua.indexOf('Firefox') > -1) { // 火狐兼容下载
233
-        const blob = this.base64ToBlob(imgURL) // new Blob([content]);
234
-        const evt = document.createEvent('HTMLEvents')
235
-        evt.initEvent('click', true, true)// initEvent 不加后两个参数在FF下会报错  事件类型,是否冒泡,是否阻止浏览器的默认行为
236
-        a.download = val.title + '.png'// 下载图片名称,如果填内容识别不到,下载为未知文件,所以我这里就不填为空
237
-        a.href = URL.createObjectURL(blob)
238
-        a.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }))// 兼容火狐
239
-      } else { // 谷歌兼容下载
240
-        img.src = imgURL
241
-        a.href = img.src
242
-        // 设置下载文件的名字
243
-        a.download = val.title + '.png'
244
-        // 点击
245
-        a.click()
246
-      }
247
-    },
248
-    // 返回对应二维码图片给表格
249
-    setCodeImg(val) {
250
-      document.getElementById('qrcode').innerHTML = ''
251
-      this.qrcode(val) // 下载之前首先要有二维码
252
-      // 先找到canvas节点下的二维码图片
253
-      const myCanvas = document.getElementById('qrcode').getElementsByTagName('canvas')
254
-      // 设置a的href属性将canvas变成png格式
255
-      const imgURL = myCanvas[myCanvas.length - 1].toDataURL('image/jpg')
256
-      return imgURL
257
-    },
258
-    // base64转blob
259
-    base64ToBlob(code) {
260
-      const parts = code.split(';base64,')
261
-      const contentType = parts[0].split(':')[1]
262
-      const raw = window.atob(parts[1])
263
-      const rawLength = raw.length
264
-      const uInt8Array = new Uint8Array(rawLength)
265
-      for (let i = 0; i < rawLength; ++i) {
266
-        uInt8Array[i] = raw.charCodeAt(i)
267
-      }
268
-      return new Blob([uInt8Array], { type: contentType })
109
+      })
269 110
     }
270 111
   }
271 112
 }

+ 95
- 71
src/views/course/index.vue ファイルの表示

@@ -1,77 +1,89 @@
1 1
 <template>
2 2
   <div class="body">
3 3
     <el-card class="box-card" shadow="never">
4
-      <div slot="header" class="clearfix">
5
-        <el-button type="primary" style="float: right" icon="el-icon-plus" @click="handleAdd">新建照片墙</el-button>
6
-      </div>
7
-      <div class="text item">
8
-        <el-table stripe :data="tableData" border style="width: 100%">
9
-          <el-table-column prop="appName" label="学期" />
10
-          <el-table-column prop="course" label="课程名" />
11
-          <el-table-column prop="signInNum" label="签到人数" />
12
-          <el-table-column prop="createDate" label="状态" align="center" width="200">
13
-            <template slot-scope="scope">
14
-              <el-tag
15
-                :type="scope.row.status==1?'success':'danger'"
16
-                size="small "
17
-                effect="dark"
18
-              >{{ scope.row.status==1?'发布':'未发布' }}</el-tag>
19
-            </template>
20
-          </el-table-column>
21
-          <el-table-column align="center" label="操作" min-width="100" width="280">
22
-            <template slot-scope="scope">
23
-              <el-link :underline="false" style="margin-right:1em" type="primary">
24
-                <router-link
25
-                  :to="{path:'photoWall/Edit',query: { configId: scope.row.configId }}"
26
-                >编辑</router-link>
27
-              </el-link>
28
-              <el-popconfirm
29
-                icon="el-icon-info"
30
-                icon-color="red"
31
-                title="确定要删除该照片墙吗?"
32
-                @onConfirm="handleDelete(scope.row)"
33
-              >
34
-                <el-link slot="reference" :underline="false" type="danger">删除</el-link>
35
-              </el-popconfirm>
36
-            </template>
37
-          </el-table-column>
38
-        </el-table>
39
-        <el-pagination
40
-          v-show="WxTotal!==0"
41
-          style="float:right; margin:20px 0"
42
-          :total="WxTotal"
43
-          :current-page="currentPage"
44
-          :page-size="pageSize"
45
-          :page-sizes="[pageSize, 20, 35,40,50,80,100]"
46
-          layout="total, prev, pager, next, sizes"
47
-          @size-change="handleSizeChange"
48
-          @current-change="handleCurrentChange"
49
-        />
4
+      课程名称:
5
+      <el-input v-model="title" style="width: 200px; margin-right: 20px" />
6
+      开课时间:<el-date-picker
7
+        v-model="daterange"
8
+        type="daterange"
9
+        range-separator="至"
10
+        start-placeholder="开始日期"
11
+        end-placeholder="结束日期"
12
+        value-format="yyyy-MM-dd"
13
+        style="margin-right: 20px"
14
+        @change="dateChange"
15
+      />
16
+      <div style="float:right">
17
+        <el-button type="primary" @click="onSearch">查询</el-button>
18
+        <el-button @click="onReset">重置</el-button>
19
+        <el-button type="primary" icon="el-icon-plus" @click="handleAdd">新建课程</el-button>
50 20
       </div>
51 21
     </el-card>
22
+    <el-table stripe :data="tableData" border style="width: 100%">
23
+      <el-table-column prop="title" label="课程名" />
24
+      <el-table-column prop="subTitle" label="课程简介" />
25
+      <el-table-column prop="startDate" label="开始时间">
26
+        <template slot-scope="scope">{{ formate(scope.row.startDate) }}</template>
27
+      </el-table-column>
28
+      <el-table-column prop="endDate" label="结束时间">
29
+        <template slot-scope="scope">{{ formate(scope.row.endDate) }}</template>
30
+      </el-table-column>
31
+      <el-table-column align="center" label="操作" min-width="100" width="280">
32
+        <template slot-scope="scope">
33
+          <el-link :underline="false" style="margin-right:1em" type="primary">
34
+            <router-link
35
+              :to="{path:'course/edit',query: { courseId: scope.row.courseId }}"
36
+            >编辑</router-link>
37
+          </el-link>
38
+          <el-popconfirm
39
+            icon="el-icon-info"
40
+            icon-color="red"
41
+            title="确定要删除该课程吗?"
42
+            @onConfirm="handleDelete(scope.row)"
43
+          >
44
+            <el-link slot="reference" :underline="false" type="danger">删除</el-link>
45
+          </el-popconfirm>
46
+        </template>
47
+      </el-table-column>
48
+    </el-table>
49
+    <el-pagination
50
+      v-show="Total!==0"
51
+      style="float:right; margin:20px 0"
52
+      :total="Total"
53
+      :current-page="currentPage"
54
+      :page-size="pageSize"
55
+      :page-sizes="[pageSize, 20, 35,40,50,80,100]"
56
+      layout="total, prev, pager, next, sizes"
57
+      @size-change="handleSizeChange"
58
+      @current-change="handleCurrentChange"
59
+    />
52 60
   </div>
53 61
 </template>
54 62
 <script>
55
-// import { getConfigList, DeleteConfig } from '@/api/WeChatApi'
56
-
63
+import { getCourseList, deleteCourse } from '@/api/course'
64
+import dayjs from 'dayjs'
57 65
 export default {
58 66
   data() {
59 67
     return {
68
+      title: undefined,
60 69
       appName: undefined,
61
-      daterange: '',
70
+      daterange: undefined,
62 71
       tableData: [],
63 72
       endDate: undefined,
64 73
       startDate: undefined,
65 74
       //
66 75
       pageSize: 10,
67 76
       currentPage: 1,
68
-      WxTotal: 0 // 条目总数
77
+      Total: 0 // 条目总数
69 78
     }
70 79
   },
71 80
   mounted() {
72 81
     this.onSearch()
73 82
   },
74 83
   methods: {
84
+    formate(val) {
85
+      return dayjs(val).add(8, 'hour').format('YYYY-MM-DD HH:mm')
86
+    },
75 87
     // 改变每页显示条数
76 88
     handleSizeChange(val) {
77 89
       this.pageSize = val
@@ -84,15 +96,15 @@ export default {
84 96
     },
85 97
     // 改变分页组件重新查询数据
86 98
     changePagination() {
87
-      // getConfigList({
88
-      //   // title: this.title,
89
-      //   // startDate: this.startDate,
90
-      //   // endDate: this.endDate,
91
-      //   pageNum: this.currentPage,
92
-      //   pageSize: this.pageSize
93
-      // }).then((res) => {
94
-      //   this.tableData = res.data.records
95
-      // })
99
+      getCourseList({
100
+        title: this.title,
101
+        startDate: this.startDate,
102
+        endDate: this.endDate,
103
+        pageNum: this.currentPage,
104
+        pageSize: this.pageSize
105
+      }).then((res) => {
106
+        this.tableData = res.data.records
107
+      })
96 108
     },
97 109
 
98 110
     handleAdd() {
@@ -100,22 +112,34 @@ export default {
100 112
     },
101 113
 
102 114
     handleDelete(row) {
103
-      // DeleteConfig(row.configId).then(() => {
104
-      //   this.onSearch()
105
-      // })
115
+      deleteCourse(row.courseId).then(() => {
116
+        this.onSearch()
117
+      })
118
+    },
119
+    dateChange(val) {
120
+      this.startDate = this.daterange[0]
121
+      this.endDate = this.daterange[1]
106 122
     },
107 123
     onSearch() {
108
-      // getConfigList({
109
-      //   pageNum: this.currentPage,
110
-      //   pageSize: this.pageSize
111
-      // }).then((res) => {
112
-      //   this.tableData = res.data.records
113
-      //   this.WxTotal = res.data.total
114
-      // })
124
+      getCourseList({
125
+        title: this.title,
126
+        startDate: this.startDate,
127
+        endDate: this.endDate,
128
+        pageNum: this.currentPage,
129
+        pageSize: this.pageSize
130
+      }).then((res) => {
131
+        this.tableData = res.data.records
132
+        this.pageSize = res.data.size
133
+        this.Total = res.data.total
134
+      })
115 135
     },
116 136
     onReset() {
117
-      this.appName = ''
118
-
137
+      this.title = undefined
138
+      this.daterange = undefined
139
+      this.startDate = undefined
140
+      this.endDate = undefined
141
+      this.currentPage = 1
142
+      this.pageSize = 10
119 143
       this.onSearch()
120 144
     }
121 145
   }

+ 4
- 4
src/views/photoWall/index.vue ファイルの表示

@@ -51,9 +51,9 @@
51 51
           </el-table-column>
52 52
         </el-table>
53 53
         <el-pagination
54
-          v-show="WxTotal!==0"
54
+          v-show="Total!==0"
55 55
           style="float:right; margin:20px 0"
56
-          :total="WxTotal"
56
+          :total="Total"
57 57
           :current-page="currentPage"
58 58
           :page-size="pageSize"
59 59
           :page-sizes="[pageSize, 20, 35,40,50,80,100]"
@@ -79,7 +79,7 @@ export default {
79 79
       //
80 80
       pageSize: 10,
81 81
       currentPage: 1,
82
-      WxTotal: 0 // 条目总数
82
+      Total: 0 // 条目总数
83 83
     }
84 84
   },
85 85
   mounted() {
@@ -124,7 +124,7 @@ export default {
124 124
       //   pageSize: this.pageSize
125 125
       // }).then((res) => {
126 126
       //   this.tableData = res.data.records
127
-      //   this.WxTotal = res.data.total
127
+      //   this.Total = res.data.total
128 128
       // })
129 129
     },
130 130
     onReset() {

+ 3
- 2
src/views/students/schoolClass/edit.vue ファイルの表示

@@ -1,13 +1,14 @@
1 1
 <template>
2 2
   <div>
3 3
     <el-card class="box-card" style="text-align:center" shadow="never">
4
-      <h2>{{ termId ? '修改' : '新建' }}班级</h2>
4
+      <h2>{{ classId ? '修改' : '新建' }}班级</h2>
5 5
       <el-form
6 6
         ref="ruleForm"
7 7
         :model="ruleForm"
8 8
         :rules="rules"
9 9
         label-width="10vw"
10 10
         class="demo-ruleForm"
11
+        style="width:50%;margin:auto"
11 12
       >
12 13
         <el-form-item label="学期" prop="termId">
13 14
           <el-select v-model="ruleForm.termId" style="width:100%" filterable placeholder="请选择">
@@ -24,7 +25,7 @@
24 25
         </el-form-item>
25 26
         <el-form-item label-width="0">
26 27
           <el-button type="primary" @click="submitForm('ruleForm')">{{
27
-            !termId ? "新建班级" : "修改班级"
28
+            !classId ? "新建班级" : "修改班级"
28 29
           }}</el-button>
29 30
           <el-button @click="$router.go(-1)">返回</el-button>
30 31
         </el-form-item>

+ 1
- 1
src/views/students/schoolClass/list.vue ファイルの表示

@@ -19,7 +19,7 @@
19 19
       </div>
20 20
     </el-card>
21 21
     <el-table stripe :data="tableData" border style="width: 100%">
22
-      <el-table-column prop="term" label="学期" />
22
+      <el-table-column prop="termName" label="学期" />
23 23
       <el-table-column prop="name" label="班级" />
24 24
       <el-table-column align="center" label="操作" min-width="100" width="280">
25 25
         <template slot-scope="scope">

+ 1
- 0
src/views/students/schoolTerm/edit.vue ファイルの表示

@@ -7,6 +7,7 @@
7 7
         :model="ruleForm"
8 8
         :rules="rules"
9 9
         label-width="10vw"
10
+        style="width:50%;margin:auto"
10 11
         class="demo-ruleForm"
11 12
       >
12 13
         <el-form-item label="学期名称" prop="name">

+ 4
- 4
src/views/students/studentsList.vue ファイルの表示

@@ -30,9 +30,9 @@
30 30
           </el-table-column>
31 31
         </el-table>
32 32
         <el-pagination
33
-          v-show="WxTotal!==0"
33
+          v-show="Total!==0"
34 34
           style="float:right; margin:20px 0"
35
-          :total="WxTotal"
35
+          :total="Total"
36 36
           :current-page="currentPage"
37 37
           :page-size="pageSize"
38 38
           :page-sizes="[pageSize, 20, 35,40,50,80,100]"
@@ -58,7 +58,7 @@ export default {
58 58
       //
59 59
       pageSize: 10,
60 60
       currentPage: 1,
61
-      WxTotal: 0 // 条目总数
61
+      Total: 0 // 条目总数
62 62
     }
63 63
   },
64 64
   mounted() {
@@ -103,7 +103,7 @@ export default {
103 103
       //   pageSize: this.pageSize
104 104
       // }).then((res) => {
105 105
       //   this.tableData = res.data.records
106
-      //   this.WxTotal = res.data.total
106
+      //   this.Total = res.data.total
107 107
       // })
108 108
     },
109 109
     onReset() {

+ 11726
- 0
yarn.lock
ファイル差分が大きすぎるため省略します
ファイルの表示