wxy vor 4 Jahren
Ursprung
Commit
e12f911e9a
4 geänderte Dateien mit 136 neuen und 75 gelöschten Zeilen
  1. 5 5
      src/components/common/Sidebar.vue
  2. 48 9
      src/views/company/index.vue
  3. 0 42
      src/views/repair/index.vue
  4. 83 19
      src/views/user/index.vue

+ 5 - 5
src/components/common/Sidebar.vue

@@ -52,11 +52,11 @@ export default {
           index: 'homeIndex',
           title: '系统首页',
         },
-        {
-          icon: 'el-icon-s-home',
-          index: 'company',
-          title: '企业信息',
-        },
+        // {
+        //   icon: 'el-icon-s-home',
+        //   index: 'company',
+        //   title: '企业信息',
+        // },
         {
           icon: 'el-icon-s-home',
           index: 'user',

+ 48 - 9
src/views/company/index.vue

@@ -4,39 +4,41 @@
       <el-col :span="24" class="main">
         <breadcrumb :breadcrumbTitle="this.$route.meta.title"></breadcrumb>
         <el-col :span="24" class="container">
+          <el-col :span="24" class="top">
+            <el-button type="primary" size="mini" @click="back()">返回</el-button>
+          </el-col>
           <el-form ref="form" :model="form" label-width="120px" :inline="true">
             <el-form-item label="顾客姓名">
               <el-input v-model="form.name"></el-input>
             </el-form-item>
             <el-form-item label="车牌号">
-              <el-input v-model="form.number"></el-input>
+              <el-input v-model="form.license"></el-input>
             </el-form-item>
             <el-form-item label="车型">
-              <el-input v-model="form.type"></el-input>
+              <el-input v-model="form.model"></el-input>
             </el-form-item>
             <el-form-item label="车辆颜色">
-              <el-input v-model="form.color"></el-input>
+              <el-input v-model="form.carcolor"></el-input>
             </el-form-item>
             <el-form-item label="顾客电话">
-              <el-input v-model="form.phone"></el-input>
+              <el-input v-model="form.mobile"></el-input>
             </el-form-item>
             <el-form-item label="行驶里程">
-              <el-input v-model="form.length"></el-input>
+              <el-input v-model="form.mileage"></el-input>
             </el-form-item>
             <el-form-item label="VIN号">
               <el-input v-model="form.vin"></el-input>
             </el-form-item>
             <el-form-item label="保险日期">
-              <el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 100%;"></el-date-picker>
+              <el-date-picker type="date" placeholder="选择日期" v-model="form.insurance" style="width: 100%;"></el-date-picker>
             </el-form-item>
             <el-form-item label="驾驶证日期">
-              <el-date-picker type="date" placeholder="选择日期" v-model="form.date2" style="width: 100%;"></el-date-picker>
+              <el-date-picker type="date" placeholder="选择日期" v-model="form.drive" style="width: 100%;"></el-date-picker>
             </el-form-item>
             <el-form-item label="行驶证日期">
-              <el-date-picker type="date" placeholder="选择日期" v-model="form.date3" style="width: 100%;"></el-date-picker>
+              <el-date-picker type="date" placeholder="选择日期" v-model="form.travel" style="width: 100%;"></el-date-picker>
             </el-form-item>
             <!-- <el-form-item class="btn">
-              <el-button type="primary" size="medium" @click="addData">添加</el-button>
               <el-button type="primary" size="medium">保存</el-button>
             </el-form-item> -->
             <el-divider></el-divider>
@@ -94,6 +96,7 @@
 <script>
 import breadcrumb from '@c/common/breadcrumb.vue';
 import { mapState, createNamespacedHelpers } from 'vuex';
+const { mapActions: car } = createNamespacedHelpers('car');
 export default {
   name: 'index',
   props: {},
@@ -110,6 +113,21 @@ export default {
   },
   created() {},
   methods: {
+    ...car({ newquery: 'query', newfetch: 'fetch', newdelete: 'delete', newcreate: 'create', newupdate: 'update' }),
+    //查询信息
+    async search1() {
+      if (this.id) {
+        const res = await this.newfetch(this.id);
+        if (this.$checkRes(res)) {
+          this.$set(this, `form`, res.data);
+        } else {
+          this.$message({
+            message: res.errmsg,
+            type: 'error',
+          });
+        }
+      }
+    },
     //添加
     addData() {
       this.formData.tableData.push({
@@ -140,13 +158,30 @@ export default {
         }
       });
     },
+    back() {
+      // this.$set(this, `form`, {});
+      this.$router.push({ path: '/user' });
+      this.search1();
+    },
   },
   computed: {
     ...mapState(['user']),
+    id() {
+      return this.$route.query.id;
+    },
   },
   metaInfo() {
     return { title: this.$route.meta.title };
   },
+  watch: {
+    id: {
+      deep: true,
+      immediate: true,
+      handler(val) {
+        this.search1();
+      },
+    },
+  },
 };
 </script>
 
@@ -172,4 +207,8 @@ export default {
 // .tab1 {
 //   text-align: center;
 // }
+.top {
+  text-align: right;
+  margin: 15px 0;
+}
 </style>

+ 0 - 42
src/views/repair/index.vue

@@ -1,42 +0,0 @@
-<template>
-  <div id="Dashboard">
-    <el-row>
-      <el-col :span="24" class="main">
-        <breadcrumb :breadcrumbTitle="this.$route.meta.title"></breadcrumb>
-        <el-col :span="24" class="container">
-          维修
-        </el-col>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-
-<script>
-import breadcrumb from '@c/common/breadcrumb.vue';
-
-import { mapState, createNamespacedHelpers } from 'vuex';
-
-import bus from '@/components/common/bus';
-export default {
-  metaInfo() {
-    return { title: this.$route.meta.title };
-  },
-  name: 'index',
-  props: {},
-  components: {
-    breadcrumb,
-  },
-  data: function() {
-    return {
-      breadcrumbTitle: '',
-    };
-  },
-  created() {},
-  methods: {},
-  computed: {
-    ...mapState(['user']),
-  },
-};
-</script>
-
-<style lang="less" scoped></style>

+ 83 - 19
src/views/user/index.vue

@@ -8,14 +8,15 @@
             用户列表
           </el-col>
           <el-col :span="18" class="btn">
-            <el-button type="primary" size="mini" @click="addnews()">添加</el-button>
+            <el-button type="primary" size="mini" @click="coldialog = true">添加</el-button>
           </el-col>
-          <dataTable :fields="newfields" :data="newdata" :opera="newopera" :total="total" @query="searchUser"> </dataTable>
+          <dataTable :fields="newfields" :data="newdata" :opera="newopera" :total="total" @query="search" @edit="edit" @delete="coltoDelete" @repair="to1">
+          </dataTable>
         </el-col>
       </el-col>
     </el-row>
-    <el-dialog :visible.sync="coldialog" title="客户信息" @close="coltoClose" width="30%">
-      <data-form :data="form1" :fields="colFields" :rules="{}">
+    <el-dialog :visible.sync="coldialog" title="客户信息" @close="coltoClose">
+      <data-form :data="form1" :fields="colFields" :rules="{}" @save="save">
         <template #options="{item}">
           <template v-if="item.model === 'site'">
             <el-option label="政策卡片" value="zckp"></el-option>
@@ -166,14 +167,17 @@ export default {
         {
           label: '保险日期',
           model: 'insurance',
+          type: 'date',
         },
         {
           label: '驾驶证日期',
           model: 'drive',
+          type: 'date',
         },
         {
           label: '行驶证日期',
           model: 'travel',
+          type: 'date',
         },
       ],
     };
@@ -186,26 +190,86 @@ export default {
     // 查询列表
     async search({ skip = 0, limit = 10, ...info } = {}) {
       const res = await this.newquery({ skip, limit, ...info });
-      console.log(res);
-      // if (this.$checkRes(res)) {
-      //   this.$set(this, `newdata`, res.data);
-      //   this.$set(this, `total`, res.total);
-      // } else {
-      //   this.$message({
-      //     message: res.errmsg,
-      //     type: 'error',
-      //   });
-      // }
-    },
-    searchUser() {
-      console.log('我被触发');
+      if (this.$checkRes(res)) {
+        this.$set(this, `newdata`, res.data);
+        this.$set(this, `total`, res.total);
+      } else {
+        this.$message({
+          message: res.errmsg,
+          type: 'error',
+        });
+      }
     },
+    // searchUser() {
+    //   console.log('我被触发');
+    // },
+    //关闭
     coltoClose() {
-      console.log('取消');
+      this.form1 = {};
       this.coldialog = false;
+      this.search();
     },
-    edit() {
+    //修改
+    edit({ data }) {
+      console.log(data);
       this.coldialog = true;
+      this.$set(this, `form1`, data);
+    },
+    //添加
+    async save({ data }) {
+      console.log(data);
+      if (data.id) {
+        const res = await this.newupdate(data);
+        if (this.$checkRes(res)) {
+          this.$message({
+            message: '修改成功',
+            type: 'success',
+          });
+          this.coltoClose();
+        } else {
+          this.$message({
+            message: '修改失败',
+            type: 'error',
+          });
+        }
+      } else {
+        const res = await this.newcreate(data);
+        if (this.$checkRes(res)) {
+          this.$message({
+            message: '添加成功',
+            type: 'success',
+          });
+          this.coltoClose();
+        } else {
+          this.$message({
+            message: '添加失败',
+            type: 'error',
+          });
+        }
+      }
+      this.coldialog = false;
+      this.search();
+    },
+    //删除
+    async coltoDelete({ data }) {
+      const res = await this.newdelete(data.id);
+      console.log(res);
+      if (this.$checkRes(res)) {
+        this.$message({
+          message: '刪除成功',
+          type: 'success',
+        });
+        this.coltoClose();
+      } else {
+        this.$message({
+          message: '删除失败',
+          type: 'error',
+        });
+      }
+      this.search();
+    },
+    to1({ data }) {
+      this.$router.push({ path: '/company', query: { id: data.id } });
     },
   },
   computed: {