lrf402788946 5 سال پیش
والد
کامیت
f21bcb2b68

+ 2 - 0
src/views/bedroom/detail.vue

@@ -32,12 +32,14 @@ export default {
     fields: [
     fields: [
       { label: '寝室号', required: true, model: 'no' },
       { label: '寝室号', required: true, model: 'no' },
       { label: '人数', required: true, model: 'num' },
       { label: '人数', required: true, model: 'num' },
+      { label: '批次', required: true, model: 'batch' },
       { label: '男女限制', required: true, model: 'gender', type: 'radio' },
       { label: '男女限制', required: true, model: 'gender', type: 'radio' },
       { label: '楼层', required: true, model: 'floor', type: 'radio' },
       { label: '楼层', required: true, model: 'floor', type: 'radio' },
     ],
     ],
     rules: {
     rules: {
       no: [{ required: true, message: '请输入寝室号' }],
       no: [{ required: true, message: '请输入寝室号' }],
       num: [{ required: true, message: '请输入人数' }],
       num: [{ required: true, message: '请输入人数' }],
+      batch: [{ required: true, message: '请输入批次' }],
       gender: [{ required: true, message: '请选择男女限制' }],
       gender: [{ required: true, message: '请选择男女限制' }],
       floor: [{ required: true, message: '请选择楼层' }],
       floor: [{ required: true, message: '请选择楼层' }],
     },
     },

+ 8 - 3
src/views/bedroom/index.vue

@@ -1,7 +1,7 @@
 <template>
 <template>
   <div id="index">
   <div id="index">
     <list-frame title="寝室管理" @query="search" :needFilter="false" @add="$router.push({ path: '/bedroom/detail' })">
     <list-frame title="寝室管理" @query="search" :needFilter="false" @add="$router.push({ path: '/bedroom/detail' })">
-      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit"></data-table>
+      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit" @deltet="toDelete"></data-table>
     </list-frame>
     </list-frame>
   </div>
   </div>
 </template>
 </template>
@@ -33,6 +33,7 @@ export default {
     fields: [
     fields: [
       { label: '寝室号', prop: 'no' },
       { label: '寝室号', prop: 'no' },
       { label: '人数', prop: 'num' },
       { label: '人数', prop: 'num' },
+      { label: '批次', prop: 'batch' },
       {
       {
         label: '男女限制',
         label: '男女限制',
         prop: 'gender',
         prop: 'gender',
@@ -43,8 +44,8 @@ export default {
       { label: '楼层', prop: 'floor' },
       { label: '楼层', prop: 'floor' },
     ],
     ],
     list: [
     list: [
-      { id: 1, no: '501', num: 6, gender: '1', floor: '5楼' },
-      { id: 2, no: '502', num: 4, gender: '0', floor: '1楼' },
+      { id: 1, no: '501', batch: '1', num: 6, gender: '1', floor: '5楼' },
+      { id: 2, no: '502', batch: '2', num: 4, gender: '0', floor: '1楼' },
     ],
     ],
   }),
   }),
   created() {},
   created() {},
@@ -58,6 +59,10 @@ export default {
       console.log(data);
       console.log(data);
       this.$router.push({ path: '/place/detail', query: { id: data.id } });
       this.$router.push({ path: '/place/detail', query: { id: data.id } });
     },
     },
+    toDelete(data) {
+      console.log(`in toDelete`);
+      console.log(data);
+    },
   },
   },
 };
 };
 </script>
 </script>

+ 62 - 0
src/views/classes/detail.vue

@@ -0,0 +1,62 @@
+<template>
+  <div id="detail">
+    <detail-frame title="寝室信息" returns="/bedroom/index">
+      <data-form :data="info" :fields="fields" :rules="rules" @save="handleSave" :isNew="isNew">
+        <template #radios="{item}">
+          <template v-if="item.model === 'gender'">
+            <el-radio label="1">男</el-radio>
+            <el-radio label="0">女</el-radio>
+          </template>
+          <template v-if="item.model === 'floor'">
+            <el-radio v-for="i in 5" :key="i" :label="`${i}楼`">{{ `${i}楼` }}</el-radio>
+          </template>
+        </template>
+      </data-form>
+    </detail-frame>
+  </div>
+</template>
+
+<script>
+import detailFrame from '@frame/layout/admin/detail-frame';
+import dataForm from '@frame/components/form';
+export default {
+  metaInfo: { title: '寝室信息' },
+  name: 'detail',
+  props: {},
+  components: {
+    detailFrame,
+    dataForm,
+  },
+  data: () => ({
+    info: {},
+    fields: [
+      { label: '寝室号', required: true, model: 'no' },
+      { label: '人数', required: true, model: 'num' },
+      { label: '批次', required: true, model: 'batch' },
+      { label: '男女限制', required: true, model: 'gender', type: 'radio' },
+      { label: '楼层', required: true, model: 'floor', type: 'radio' },
+    ],
+    rules: {
+      no: [{ required: true, message: '请输入寝室号' }],
+      num: [{ required: true, message: '请输入人数' }],
+      batch: [{ required: true, message: '请输入批次' }],
+      gender: [{ required: true, message: '请选择男女限制' }],
+      floor: [{ required: true, message: '请选择楼层' }],
+    },
+  }),
+  created() {},
+  computed: {
+    isNew() {
+      return this.$route.query.id ? false : true;
+    },
+  },
+  methods: {
+    async handleSave({ isNew, data }) {
+      console.log(isNew);
+      console.log(data);
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>

+ 62 - 0
src/views/classes/index.vue

@@ -0,0 +1,62 @@
+<template>
+  <div id="index">
+    <list-frame title="班级管理" @query="search" :needFilter="false" @add="$router.push({ path: '/classes/detail' })">
+      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit" @deltet="toDelete"></data-table>
+    </list-frame>
+  </div>
+</template>
+
+<script>
+import listFrame from '@frame/layout/admin/list-frame';
+import dataTable from '@frame/layout/admin/data-table';
+export default {
+  metaInfo: { title: '班级管理' },
+  name: 'index',
+  props: {},
+  components: {
+    listFrame,
+    dataTable,
+  },
+  data: () => ({
+    opera: [
+      {
+        label: '编辑',
+        icon: 'el-icon-edit',
+        method: 'edit',
+      },
+      {
+        label: '删除',
+        icon: 'el-icon-delete',
+        method: 'delete',
+      },
+    ],
+    fields: [
+      { label: '班级名称', prop: 'name' },
+      { label: '人数', prop: 'num' },
+      { label: '批次', prop: 'batch' },
+    ],
+    list: [
+      { id: 1, name: '501', batch: '1', num: 6 },
+      { id: 2, name: '502', batch: '2', num: 4 },
+    ],
+  }),
+  created() {},
+  computed: {},
+  methods: {
+    search({ skip = 0, limit = 15, ...info } = {}) {
+      console.log(`in search`);
+    },
+    toEdit(data) {
+      console.log(`in toEdit`);
+      console.log(data);
+      this.$router.push({ path: '/place/detail', query: { id: data.id } });
+    },
+    toDelete(data) {
+      console.log(`in toDelete`);
+      console.log(data);
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>

+ 5 - 1
src/views/dept/index.vue

@@ -1,7 +1,7 @@
 <template>
 <template>
   <div id="index">
   <div id="index">
     <list-frame title="部门管理" @query="search" :needFilter="false" @add="$router.push({ path: '/dept/detail' })">
     <list-frame title="部门管理" @query="search" :needFilter="false" @add="$router.push({ path: '/dept/detail' })">
-      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit"></data-table>
+      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit" @deltet="toDelete"></data-table>
     </list-frame>
     </list-frame>
   </div>
   </div>
 </template>
 </template>
@@ -47,6 +47,10 @@ export default {
       console.log(data);
       console.log(data);
       this.$router.push({ path: '/dept/detail', query: { id: data.id } });
       this.$router.push({ path: '/dept/detail', query: { id: data.id } });
     },
     },
+    toDelete(data) {
+      console.log(`in toDelete`);
+      console.log(data);
+    },
   },
   },
 };
 };
 </script>
 </script>

+ 5 - 1
src/views/director/index.vue

@@ -7,7 +7,7 @@
           <el-option label="办公室" value="0"></el-option>
           <el-option label="办公室" value="0"></el-option>
         </template>
         </template>
       </template>
       </template>
-      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit"></data-table>
+      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit" @deltet="toDelete"></data-table>
     </list-frame>
     </list-frame>
   </div>
   </div>
 </template>
 </template>
@@ -80,6 +80,10 @@ export default {
       console.log(data);
       console.log(data);
       this.$router.push({ path: '/director/detail', query: { id: data.id } });
       this.$router.push({ path: '/director/detail', query: { id: data.id } });
     },
     },
+    toDelete(data) {
+      console.log(`in toDelete`);
+      console.log(data);
+    },
   },
   },
 };
 };
 </script>
 </script>

+ 5 - 1
src/views/place/index.vue

@@ -1,7 +1,7 @@
 <template>
 <template>
   <div id="index">
   <div id="index">
     <list-frame title="地点管理" @query="search" :needFilter="false" @add="$router.push({ path: '/place/detail' })">
     <list-frame title="地点管理" @query="search" :needFilter="false" @add="$router.push({ path: '/place/detail' })">
-      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit"></data-table>
+      <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit" @deltet="toDelete"></data-table>
     </list-frame>
     </list-frame>
   </div>
   </div>
 </template>
 </template>
@@ -47,6 +47,10 @@ export default {
       console.log(data);
       console.log(data);
       this.$router.push({ path: '/place/detail', query: { id: data.id } });
       this.$router.push({ path: '/place/detail', query: { id: data.id } });
     },
     },
+    toDelete(data) {
+      console.log(`in toDelete`);
+      console.log(data);
+    },
   },
   },
 };
 };
 </script>
 </script>

+ 7 - 4
src/views/test/list.vue

@@ -1,6 +1,9 @@
 <template>
 <template>
   <div id="list">
   <div id="list">
     <list-frame title="测试列表页" @query="search" :filter="filFields">
     <list-frame title="测试列表页" @query="search" :filter="filFields">
+      <template #options>
+        <el-option v-for="(item, index) in lists" :key="index" :label="item.label" :value="item.value"></el-option>
+      </template>
       <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit"></data-table>
       <data-table :fields="fields" :data="list" :opera="opera" @edit="toEdit"></data-table>
     </list-frame>
     </list-frame>
   </div>
   </div>
@@ -18,6 +21,10 @@ export default {
     dataTable,
     dataTable,
   },
   },
   data: () => ({
   data: () => ({
+    lists: [
+      { label: '男', value: 1 },
+      { label: '女', value: 0 },
+    ],
     opera: [
     opera: [
       {
       {
         label: '编辑',
         label: '编辑',
@@ -59,10 +66,6 @@ export default {
         label: '性别',
         label: '性别',
         model: 'gender',
         model: 'gender',
         type: 'select',
         type: 'select',
-        list: [
-          { label: '男', value: 1 },
-          { label: '女', value: 0 },
-        ],
       },
       },
     ],
     ],
   }),
   }),