Forráskód Böngészése

Merge branch 'master' of http://git.cc-lotus.info/count/webnew-count

wuhongyu 5 éve
szülő
commit
34e0e83ae0

+ 1 - 1
src/layout/common/top.vue

@@ -11,7 +11,7 @@
             <el-button size="mini" @click="$router.push({ path: '/register' })">注册</el-button>
           </span>
           <span v-else>
-            <span style="padding:0 15px 0 0;">{{ user.name }}</span>
+            <!-- <span style="padding:0 15px 0 0;">{{ user.name }}</span> -->
             <el-button @click="$router.push({ path: '/pcenter/index' })">个人中心</el-button>
           </span>
         </el-col>

+ 19 - 0
src/views/pcenter/comment.vue

@@ -0,0 +1,19 @@
+<template>
+  <div id="comment">
+    <p>comment</p>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'comment',
+  props: {},
+  components: {},
+  data: () => ({}),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="less" scoped></style>

+ 13 - 11
src/views/pcenter/index.vue

@@ -13,11 +13,6 @@
                 <span>个人中心</span>
               </el-col>
               <el-col :span="24" class="menus">
-                <!-- <el-col class="menuList" :span="24" v-for="(item, index) in menuList" :key="index">
-                  <p @click="changeMenu(item.name, index)" :style="`color:${menuIndex == index ? menuColor : ''}`">
-                    {{ item.name }}
-                  </p>
-                </el-col> -->
                 <el-menu :default-active="num" @select="selectMenu" text-color="black" active-text-color="#044b79">
                   <el-menu-item index="1">
                     <template slot="title">
@@ -34,6 +29,11 @@
                       <span>信息管理</span>
                     </template>
                   </el-menu-item>
+                  <el-menu-item index="9">
+                    <template slot="title">
+                      <span>评论管理</span>
+                    </template>
+                  </el-menu-item>
                   <el-menu-item index="4" v-if="user.type === '0'">
                     <template slot="title">
                       <span>人员管理</span>
@@ -95,6 +95,10 @@
                 <el-col :span="24" class="infoTop"> <span>|</span><span>修改密码</span> </el-col>
                 <uppasswd></uppasswd>
               </span>
+              <span v-else-if="columnName == '评论管理'">
+                <el-col :span="24" class="infoTop"> <span>|</span><span>评论管理</span> </el-col>
+                <comment></comment>
+              </span>
             </el-col>
           </div>
         </el-col>
@@ -118,6 +122,7 @@ import pinfo from '@/views/pcenter/pinfo.vue';
 import uppasswd from '@/views/pcenter/uppasswd.vue';
 import department from '@/views/pcenter/department.vue';
 import level from '@/views/pcenter/level.vue';
+import comment from '@/views/pcenter/comment.vue';
 import { mapState, createNamespacedHelpers } from 'vuex';
 const { mapActions: login } = createNamespacedHelpers('login');
 export default {
@@ -133,6 +138,7 @@ export default {
     demand,
     department,
     level,
+    comment,
   },
   data: function() {
     return {
@@ -163,14 +169,10 @@ export default {
         this.columnName = '修改密码';
       } else if (key == 8) {
         this.columnName = '退出登录';
+      } else if (key == 9) {
+        this.columnName = '评论管理';
       }
     },
-    // 点击选择菜单
-    changeMenu(name, index) {
-      this.menuIndex = index;
-      this.columnName = name;
-      this.menuColor = 'rgb(5,73,130)';
-    },
     // 退出登录
     logoutBtn() {
       this.logout();

+ 58 - 16
src/views/pcenter/parts/personnelAdmin.vue

@@ -9,9 +9,11 @@
           <el-col :span="24" class="list">
             <el-table :data="list" stripe style="width: 100%" border>
               <el-table-column prop="name" label="姓名" align="center"> </el-table-column>
+              <el-table-column prop="phone" label="手机号" align="center"> </el-table-column>
+              <el-table-column prop="birthday" label="出生日期" align="center"> </el-table-column>
               <el-table-column label="操作" align="center" width="220">
                 <template slot-scope="scope">
-                  <el-button size="mini" type="primary" v-if="scope.row.status == '0'" @click="editBtn(scope.row.id)">编辑</el-button>
+                  <el-button size="mini" type="primary" @click="editBtn(scope.row.id)">编辑</el-button>
                   <el-button size="mini" type="danger" @click="deleteBtn(scope.row.id)">删除</el-button>
                 </template>
               </el-table-column>
@@ -49,14 +51,20 @@
               <el-form-item label="身份证号" prop="id_number">
                 <el-input v-model="form.id_number" placeholder="请输入身份证号"></el-input>
               </el-form-item>
+              <el-form-item label="用户类别" prop="type">
+                <el-radio-group v-model="form.type">
+                  <el-radio label="0">超级管理员</el-radio>
+                  <el-radio label="1">管理员</el-radio>
+                </el-radio-group>
+              </el-form-item>
               <el-form-item label="部门" prop="dept_id">
                 <el-select v-model="form.dept_id" filterable placeholder="请选择部门" @change="selectChild">
-                  <el-option v-for="(item, index) in deptList" :key="index" :label="item.name" :value="item._id"></el-option>
+                  <el-option v-for="(item, index) in deptList" :key="index" :label="item.name" :value="item.id"></el-option>
                 </el-select>
               </el-form-item>
               <el-form-item label="职务" prop="level_id">
                 <el-select v-model="form.level_id" filterable placeholder="请选择职务">
-                  <el-option v-for="(item, index) in levelList" :key="index" :label="item.name" :value="item._id"></el-option>
+                  <el-option v-for="(item, index) in levelList" :key="index" :label="item.name" :value="item.id"></el-option>
                 </el-select>
               </el-form-item>
               <el-col :span="24" style="text-align:center;">
@@ -103,6 +111,7 @@ export default {
         id_number: [{ required: false, message: '请输入身份证号', trigger: 'blur' }],
         dept_id: [{ required: true, message: '请输入部门', trigger: 'blur' }],
         level_id: [{ required: true, message: '请输入职务', trigger: 'blur' }],
+        type: [{ required: true, message: '请选择用户类型', trigger: 'blur' }],
       },
       // 部门
       deptList: [],
@@ -117,17 +126,25 @@ export default {
     ...department({ departmentQuery: 'query', departmentFetch: 'fetch' }),
     ...level({ levelQuery: 'query', levelFetch: 'fetch' }),
     ...registers(['create']),
-    async searchInfo() {
-      let res = await this.departmentQuery();
+    ...staff({ staffQuery: 'query', staffUpdate: 'update', staffDelete: 'delete', staffFetch: 'fetch' }),
+    async searchInfo({ skip = 0, limit = 10, ...info } = {}) {
+      let res = await this.staffQuery({ skip, limit, ...info });
+      if (this.$checkRes(res)) {
+        this.$set(this, `list`, res.data);
+        this.$set(this, `total`, res.total);
+      }
+      // 部門
+      let arr = await this.departmentQuery();
       if (this.$checkRes(res)) {
-        this.$set(this, `deptList`, res.data);
+        this.$set(this, `deptList`, arr.data);
       }
+      this.selectChild(res.data.dept_id);
     },
     // 职务
     async selectChild(dept_id) {
+      this.$set(this.form, `level_id`, undefined);
       let res = await this.levelQuery({ dept_id });
       if (this.$checkRes(res)) {
-        console.log(res.data);
         this.$set(this, `levelList`, res.data);
       }
     },
@@ -140,23 +157,48 @@ export default {
       this.display = 'list';
     },
     // 编辑
-    editBtn(id) {
+    async editBtn(id) {
+      let res = await this.staffFetch(id);
+      if (this.$checkRes(res)) {
+        this.$set(this, `form`, res.data);
+      }
       this.display = 'detail';
     },
     // 删除
-    deleteBtn(id) {
-      console.log('删除');
+    async deleteBtn(id) {
+      let res = await this.staffDelete(id);
+      if (this.$checkRes(res)) {
+        this.$message({
+          message: '删除信息成功',
+          type: 'success',
+        });
+        this.searchInfo();
+      }
     },
     // 保存
     submitForm(formName) {
       this.$refs[formName].validate(async valid => {
         if (valid) {
-          let res = await this.create(this.form);
-          if (this.$checkRes(res)) {
-            this.$message({
-              message: '恭喜你,注册成功',
-              type: 'success',
-            });
+          if (this.form.id) {
+            let res = await this.staffUpdate(this.form);
+            if (this.$checkRes(res)) {
+              this.$message({
+                message: '修改信息成功',
+                type: 'success',
+              });
+              this.display = 'list';
+              this.searchInfo();
+            }
+          } else {
+            let res = await this.create(this.form);
+            if (this.$checkRes(res)) {
+              this.$message({
+                message: '恭喜你,注册成功',
+                type: 'success',
+              });
+              this.display = 'list';
+              this.searchInfo();
+            }
           }
         } else {
           console.log('error submit!!');

+ 3 - 3
src/views/pcenter/pinfo.vue

@@ -30,12 +30,12 @@
           </el-form-item>
           <el-form-item v-if="this.user.type === '0' || this.user.type === '1'" label="部门">
             <el-select v-model="form.dept_id" filterable placeholder="请选择部门" @change="selectChild">
-              <el-option v-for="(item, index) in deptList" :key="index" :label="item.name" :value="item._id"></el-option>
+              <el-option v-for="(item, index) in deptList" :key="index" :label="item.name" :value="item.id"></el-option>
             </el-select>
           </el-form-item>
           <el-form-item v-if="this.user.type === '0' || this.user.type === '1'" label="职务">
             <el-select v-model="form.level_id" filterable placeholder="请选择职务">
-              <el-option v-for="(item, index) in levelList" :key="index" :label="item.name" :value="item._id"></el-option>
+              <el-option v-for="(item, index) in levelList" :key="index" :label="item.name" :value="item.id"></el-option>
             </el-select>
           </el-form-item>
           <el-form-item v-if="this.user.type === '2'" label="邮箱" prop="email">
@@ -160,7 +160,7 @@ export default {
     },
     // 职务
     async selectChild(dept_id) {
-      console.log(dept_id);
+      this.$set(this.form, `level_id`, undefined);
       let res = await this.levelQuery({ dept_id });
       if (this.$checkRes(res)) {
         this.$set(this, `levelList`, res.data);

+ 2 - 1
src/views/register.vue

@@ -222,7 +222,8 @@ export default {
     },
     // 职务
     async selectChild(dept_id) {
-      let res = await this.levelQuery(dept_id);
+      this.$set(this.form, `level_id`, undefined);
+      let res = await this.levelQuery({ dept_id });
       if (this.$checkRes(res)) {
         this.$set(this, `levelList`, res.data);
       }