aXin-0810 9 hónapja
szülő
commit
282ab3ff73
2 módosított fájl, 266 hozzáadás és 176 törlés
  1. 260 173
      src/views/setting/account/index.vue
  2. 6 3
      vue.config.js

+ 260 - 173
src/views/setting/account/index.vue

@@ -1,62 +1,121 @@
 <template>
   <zj-tab-page ref="tabPage" :defaultActives="[{ key: 'list', label: $route.meta.title + '-列表', essential: true }]">
-    <template slot-scope="{activeKey, data}">
-      <div :style="{
-        width: '100%',
-        height: activeKey == 'list' ? '100%' : '0px',
-        overflow: activeKey == 'list' ? 'auto' : 'hidden'
-      }">
+    <template slot-scope="{ activeKey, data }">
+      <div
+        :style="{
+          width: '100%',
+          height: activeKey == 'list' ? '100%' : '0px',
+          overflow: activeKey == 'list' ? 'auto' : 'hidden'
+        }"
+      >
         <div class="app-container">
           <div class="setting_title">账户管理</div>
           <el-divider></el-divider>
           <div class="mymain-container">
             <div class="btn-group clearfix">
               <div class="fl">
-                <el-button size="small" type="primary" icon="el-icon-plus" @click="addOrEdit('add')">新增账户</el-button>
+                <el-button size="small" type="primary" icon="el-icon-plus" @click="addOrEdit('add')"
+                  >新增账户</el-button
+                >
               </div>
               <div class="fr">
-                <el-select v-model="screenForm.role" placeholder="全部" size="small"
-                  style="width: 120px; margin-right: 10px;" @change="getListByScreen">
+                <el-select
+                  v-model="screenForm.role"
+                  placeholder="全部"
+                  size="small"
+                  style="width: 120px; margin-right: 10px"
+                  @change="getListByScreen"
+                >
                   <el-option label="全部角色" value=""></el-option>
-                  <el-option :label="item.name" :value="item.adminRoleId" v-for="(item, index) in roleList"
-                    :key="index"></el-option>
+                  <el-option
+                    :label="item.name"
+                    :value="item.adminRoleId"
+                    v-for="(item, index) in roleList"
+                    :key="index"
+                  ></el-option>
                 </el-select>
-                <el-select v-model="screenForm.status" placeholder="全部" size="small"
-                  style="width: 120px; margin-right: 10px;" @change="getListByScreen">
+                <el-select
+                  v-model="screenForm.status"
+                  placeholder="全部"
+                  size="small"
+                  style="width: 120px; margin-right: 10px"
+                  @change="getListByScreen"
+                >
                   <el-option label="全部状态" value=""></el-option>
-                  <el-option :label="item.label" :value="item.value" v-for="(item, index) in select_status"
-                    :key="index"></el-option>
+                  <el-option
+                    :label="item.label"
+                    :value="item.value"
+                    v-for="(item, index) in select_status"
+                    :key="index"
+                  ></el-option>
                 </el-select>
-				<el-input placeholder="商户名称" v-model="screenForm.companyWechatName" size="small" style="width: 180px;"></el-input>
-                <el-input placeholder="用户名" v-model="screenForm.keyword" size="small" style="width: 180px;">
+                <el-input
+                  placeholder="商户名称"
+                  v-model="screenForm.companyWechatName"
+                  size="small"
+                  style="width: 180px"
+                ></el-input>
+                <el-input placeholder="用户名" v-model="screenForm.keyword" size="small" style="width: 180px">
                   <el-button slot="append" icon="el-icon-search" size="small" @click="getListByScreen"></el-button>
                 </el-input>
-				<el-button size="small" @click="screenForm.companyWechatName = '';screenForm.keyword = '';screenForm.role = '';screenForm.status = '';getListByScreen()">清空</el-button>
+                <el-button
+                  size="small"
+                  @click="
+                    screenForm.companyWechatName = ''
+                    screenForm.keyword = ''
+                    screenForm.role = ''
+                    screenForm.status = ''
+                    getListByScreen()
+                  "
+                  >清空</el-button
+                >
               </div>
             </div>
             <div class="table">
-              <el-table v-loading="listLoading" :data="dataList" element-loading-text="Loading" border fit
-                highlight-current-row stripe>
+              <el-table
+                v-loading="listLoading"
+                :data="dataList"
+                element-loading-text="Loading"
+                border
+                fit
+                highlight-current-row
+                stripe
+              >
                 <el-table-column align="center" label="序号" type="index" width="50"></el-table-column>
-				<el-table-column align="center" label="商户" prop="companyName" min-width="160"></el-table-column>
+                <el-table-column align="center" label="商户" prop="companyName" min-width="160"></el-table-column>
                 <el-table-column align="center" label="账号" prop="userName" min-width="120"></el-table-column>
                 <el-table-column align="center" label="用户名" prop="nickName" min-width="160"></el-table-column>
                 <el-table-column align="center" label="角色" prop="roleName" min-width="100"></el-table-column>
                 <el-table-column align="center" label="创建时间" prop="createTime" min-width="160"></el-table-column>
-                <el-table-column align="center" label="最后登录时间" prop="lastLoginTime" min-width="160"></el-table-column>
+                <el-table-column
+                  align="center"
+                  label="最后登录时间"
+                  prop="lastLoginTime"
+                  min-width="160"
+                ></el-table-column>
                 <el-table-column align="center" label="状态" class-name="status-col">
                   <template slot-scope="scope">
-                    <el-tag :type="scope.row.status ? 'success' : 'danger'">{{ scope.row.status ? '正常' : '冻结' }}</el-tag>
+                    <el-tag :type="scope.row.status ? 'success' : 'danger'">{{
+                      scope.row.status ? '正常' : '冻结'
+                    }}</el-tag>
                   </template>
                 </el-table-column>
                 <el-table-column align="center" label="操作" min-width="160">
                   <template slot-scope="scope">
-                    <el-popconfirm v-if="scope.row.status" style="margin-right: 10px;" title="确定冻结吗?"
-                      @confirm="changeStatus(scope.row.adminUserId, 0)">
+                    <el-popconfirm
+                      v-if="scope.row.status"
+                      style="margin-right: 10px"
+                      title="确定冻结吗?"
+                      @confirm="changeStatus(scope.row.adminUserId, 0)"
+                    >
                       <el-button slot="reference" type="text">冻结</el-button>
                     </el-popconfirm>
-                    <el-popconfirm v-else style="margin-right: 10px;" title="确定恢复吗?"
-                      @confirm="changeStatus(scope.row.adminUserId, 1)">
+                    <el-popconfirm
+                      v-else
+                      style="margin-right: 10px"
+                      title="确定恢复吗?"
+                      @confirm="changeStatus(scope.row.adminUserId, 1)"
+                    >
                       <el-button slot="reference" type="text">恢复</el-button>
                     </el-popconfirm>
                     <el-button type="text" @click="addOrEdit('edit', scope.row.adminUserId)">编辑</el-button>
@@ -68,16 +127,22 @@
             </div>
             <div class="pagination clearfix">
               <div class="fr">
-                <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
-                  :current-page="currentPage" :page-sizes="[10, 20, 30, 50]" :page-size="10"
-                  layout="total, sizes, prev, pager, next, jumper" :total="listTotal">
+                <el-pagination
+                  @size-change="handleSizeChange"
+                  @current-change="handleCurrentChange"
+                  :current-page="currentPage"
+                  :page-sizes="[10, 20, 30, 50]"
+                  :page-size="10"
+                  layout="total, sizes, prev, pager, next, jumper"
+                  :total="listTotal"
+                >
                 </el-pagination>
               </div>
             </div>
           </div>
         </div>
       </div>
-      <div v-if="~['add', 'edit'].indexOf(activeKey)" style="box-sizing: border-box;padding: 16px;">
+      <div v-if="~['add', 'edit'].indexOf(activeKey)" style="box-sizing: border-box; padding: 16px">
         <el-form ref="addForm" :model="addForm" :rules="addFormRules" label-position="left" label-width="80px">
           <el-row :gutter="20">
             <el-col :md="6">
@@ -97,24 +162,37 @@
             </el-col>
             <el-col :md="6">
               <el-form-item label="角色组" prop="role">
-                <el-select v-model="addForm.role" placeholder="请选择角色组" style="width: 100%;">
-                  <el-option :label="item.name" :value="item.adminRoleId" v-for="(item, index) in roleList"
-                    :key="index"></el-option>
+                <el-select v-model="addForm.role" placeholder="请选择角色组" style="width: 100%">
+                  <el-option
+                    :label="item.name"
+                    :value="item.adminRoleId"
+                    v-for="(item, index) in roleList"
+                    :key="index"
+                  ></el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :md="6">
               <el-form-item label="网点" prop="adminWebsitId">
-                <el-cascader style="width: 100%" :options="departmentList"
-                  :props="{ checkStrictly: true, value: 'websitId', label: 'name' }" v-model="addForm.adminWebsitId"
-                  clearable>
+                <el-cascader
+                  style="width: 100%"
+                  :options="departmentList"
+                  :props="{ checkStrictly: true, value: 'websitId', label: 'name' }"
+                  v-model="addForm.adminWebsitId"
+                  clearable
+                >
                 </el-cascader>
               </el-form-item>
             </el-col>
             <el-col :md="6">
               <el-form-item label="密码" prop="newPassword">
-                <el-input v-model="addForm.newPassword" ref="password1" autocomplete="off" placeholder="请输入密码"
-                  :type="passwordType1"></el-input>
+                <el-input
+                  v-model="addForm.newPassword"
+                  ref="password1"
+                  autocomplete="off"
+                  placeholder="请输入密码"
+                  :type="passwordType1"
+                ></el-input>
                 <span class="show-pwd" @click="showPwd(1)">
                   <svg-icon :icon-class="passwordType1 === 'password' ? 'eye' : 'eye-open'" />
                 </span>
@@ -122,8 +200,13 @@
             </el-col>
             <el-col :md="6">
               <el-form-item label="确认密码" prop="confirmPassword">
-                <el-input v-model="addForm.confirmPassword" ref="password2" autocomplete="off" placeholder="请再次输入密码"
-                  :type="passwordType2"></el-input>
+                <el-input
+                  v-model="addForm.confirmPassword"
+                  ref="password2"
+                  autocomplete="off"
+                  placeholder="请再次输入密码"
+                  :type="passwordType2"
+                ></el-input>
                 <span class="show-pwd" @click="showPwd(2)">
                   <svg-icon :icon-class="passwordType2 === 'password' ? 'eye' : 'eye-open'" />
                 </span>
@@ -131,8 +214,7 @@
             </el-col>
             <el-col :md="6">
               <el-form-item label="是否公众号通知" prop="pubNotice" label-width="120px">
-                <el-switch v-model="addForm.pubNotice" active-color="#13ce66" inactive-color="#ff4949">
-                </el-switch>
+                <el-switch v-model="addForm.pubNotice" active-color="#13ce66" inactive-color="#ff4949"> </el-switch>
               </el-form-item>
             </el-col>
           </el-row>
@@ -142,18 +224,28 @@
           <el-button type="primary" @click="submitAddForm(data.removeTab)">确 定</el-button>
         </div>
       </div>
-      <div v-if="~['resetpassword'].indexOf(activeKey)" style="box-sizing: border-box;padding: 16px;">
+      <div v-if="~['resetpassword'].indexOf(activeKey)" style="box-sizing: border-box; padding: 16px">
         <el-form ref="resetForm" :model="resetForm" :rules="resetFormRules" label-position="left" label-width="100px">
           <el-form-item label="输入新密码" prop="newPassword">
-            <el-input v-model="resetForm.newPassword" ref="password1" autocomplete="off" placeholder="请输入新密码"
-              :type="passwordType1"></el-input>
+            <el-input
+              v-model="resetForm.newPassword"
+              ref="password1"
+              autocomplete="off"
+              placeholder="请输入新密码"
+              :type="passwordType1"
+            ></el-input>
             <span class="show-pwd" @click="showPwd(1)">
               <svg-icon :icon-class="passwordType1 === 'password' ? 'eye' : 'eye-open'" />
             </span>
           </el-form-item>
           <el-form-item label="确认密码" prop="confirmPassword">
-            <el-input v-model="resetForm.confirmPassword" ref="password2" autocomplete="off" placeholder="请再次输入新密码"
-              :type="passwordType2"></el-input>
+            <el-input
+              v-model="resetForm.confirmPassword"
+              ref="password2"
+              autocomplete="off"
+              placeholder="请再次输入新密码"
+              :type="passwordType2"
+            ></el-input>
             <span class="show-pwd" @click="showPwd(2)">
               <svg-icon :icon-class="passwordType2 === 'password' ? 'eye' : 'eye-open'" />
             </span>
@@ -169,62 +261,74 @@
 </template>
 
 <script>
-import { getAccountList, getRoleList, changeAccountStatus, resetPassword, addAccount, editAccount, getUserInfo, getDepartmentList, getMerchantList } from '@/api/setting'
+import {
+  getAccountList,
+  getRoleList,
+  changeAccountStatus,
+  resetPassword,
+  addAccount,
+  editAccount,
+  getUserInfo,
+  getDepartmentList,
+  getMerchantList
+} from '@/api/setting'
 export default {
   data() {
     var validatePass = (rule, value, callback) => {
       if (value === '') {
-        callback(new Error('请输入新密码'));
+        callback(new Error('请输入新密码'))
       } else if (value && value.length < 6) {
-        callback(new Error('密码长度至少6位'));
+        callback(new Error('密码长度至少6位'))
       } else {
         if (this.resetForm.confirmPassword !== '') {
-          this.$refs.resetForm.validateField('confirmPassword');
+          this.$refs.resetForm.validateField('confirmPassword')
         }
-        callback();
+        callback()
       }
-    };
+    }
     var validatePass2 = (rule, value, callback) => {
       if (value === '') {
-        callback(new Error('请再次输入密码'));
+        callback(new Error('请再次输入密码'))
       } else if (value !== this.resetForm.newPassword) {
-        callback(new Error('两次输入密码不一致'));
+        callback(new Error('两次输入密码不一致'))
       } else {
-        callback();
+        callback()
       }
-    };
+    }
     var validatePass3 = (rule, value, callback) => {
       if (value === '') {
-        callback(new Error('请输入新密码'));
+        callback(new Error('请输入新密码'))
       } else if (value && value.length < 6) {
-        callback(new Error('密码长度至少6位'));
+        callback(new Error('密码长度至少6位'))
       } else {
         if (this.addForm.confirmPassword !== '') {
-          this.$refs.addForm.validateField('confirmPassword');
+          this.$refs.addForm.validateField('confirmPassword')
         }
-        callback();
+        callback()
       }
-    };
+    }
     var validatePass4 = (rule, value, callback) => {
       if (value === '') {
-        callback(new Error('请再次输入密码'));
+        callback(new Error('请再次输入密码'))
       } else if (value !== this.addForm.newPassword) {
-        callback(new Error('两次输入密码不一致'));
+        callback(new Error('两次输入密码不一致'))
       } else {
-        callback();
+        callback()
       }
-    };
+    }
     return {
-      userName: JSON.parse(localStorage.getItem("greemall_user")).userName,
+      userName: JSON.parse(localStorage.getItem('greemall_user')).userName,
       dataList: null, // 列表数据
       listLoading: true, // 列表加载loading
-      screenForm: { // 筛选表单数据
+      screenForm: {
+        // 筛选表单数据
         role: '', // 角色
         status: '', // 状态
         keyword: '', // 关键词
-		companyWechatName: ''//商户名
+        companyWechatName: '' //商户名
       },
-      select_status: [ // 筛选字段 - 状态
+      select_status: [
+        // 筛选字段 - 状态
         { label: '正常', value: true },
         { label: '冻结', value: false }
       ],
@@ -237,21 +341,17 @@ export default {
         multiple: true,
         value: 'id',
         label: 'name',
-        children: 'children',
+        children: 'children'
       },
       merchantList: [], // 商户列表
       resetId: null,
       resetForm: {
         newPassword: '', // 新密码
-        confirmPassword: '', // 确认密码
+        confirmPassword: '' // 确认密码
       },
       resetFormRules: {
-        newPassword: [
-          { required: true, validator: validatePass, trigger: 'blur' }
-        ],
-        confirmPassword: [
-          { required: true, validator: validatePass2, trigger: 'blur' }
-        ],
+        newPassword: [{ required: true, validator: validatePass, trigger: 'blur' }],
+        confirmPassword: [{ required: true, validator: validatePass2, trigger: 'blur' }]
       },
       editId: null,
       addFormType: 'add',
@@ -263,59 +363,45 @@ export default {
         newPassword: '', // 新密码
         confirmPassword: '', // 确认密码
         pubNotice: true,
-        linkPhone: "",
+        linkPhone: ''
       },
       addFormRules: {
-        account: [
-          { required: true, message: '请输入账号', trigger: 'blur' }
-        ],
-        nickName: [
-          { required: true, message: '请输入用户名', trigger: 'blur' }
-        ],
-        linkPhone: [
-          { required: true, message: '请输入手机号', trigger: 'blur' }
-        ],
-        role: [
-          { required: true, message: '请选择角色组', trigger: 'change' }
-        ],
-        adminWebsitId: [
-          { required: true, message: '请选择网点', trigger: 'change' }
-        ],
-        newPassword: [
-          { required: true, validator: validatePass3, trigger: 'blur' }
-        ],
-        confirmPassword: [
-          { required: true, validator: validatePass4, trigger: 'blur' }
-        ],
+        account: [{ required: true, message: '请输入账号', trigger: 'blur' }],
+        nickName: [{ required: true, message: '请输入用户名', trigger: 'blur' }],
+        linkPhone: [{ required: true, message: '请输入手机号', trigger: 'blur' }],
+        role: [{ required: true, message: '请选择角色组', trigger: 'change' }],
+        adminWebsitId: [{ required: true, message: '请选择网点', trigger: 'change' }],
+        newPassword: [{ required: true, validator: validatePass3, trigger: 'blur' }],
+        confirmPassword: [{ required: true, validator: validatePass4, trigger: 'blur' }]
       },
       passwordType1: 'password',
-      passwordType2: 'password',
+      passwordType2: 'password'
     }
   },
   async created() {
-    await this.getRoleList();
+    await this.getRoleList()
     if (this.$route.query.type) {
-      let index = this.$findElem(this.roleList, 'name', '企业负责人');
-      this.screenForm.role = this.roleList[index].adminRoleId;
+      let index = this.$findElem(this.roleList, 'name', '企业负责人')
+      this.screenForm.role = this.roleList[index].adminRoleId
     }
-    this.getList();
+    this.getList()
   },
   watch: {
     'addForm.role'() {
       if (this.addForm.role) {
-        let index = this.$findElem(this.roleList, 'adminRoleId', this.addForm.role);
+        let index = this.$findElem(this.roleList, 'adminRoleId', this.addForm.role)
       }
     }
   },
   methods: {
     getList() {
-      this.listLoading = true;
+      this.listLoading = true
 
       let params = {
         roleId: this.screenForm.role,
         status: this.screenForm.status,
         userName: this.screenForm.keyword,
-		companyWechatName: this.screenForm.companyWechatName,
+        companyWechatName: this.screenForm.companyWechatName,
         pageNum: this.currentPage,
         pageSize: this.pageSize,
         ...(() => {
@@ -325,66 +411,70 @@ export default {
             }
           }
           return {}
-        })(),
-      };
+        })()
+      }
 
       getAccountList(params).then(res => {
-        this.dataList = res.data.records;
-        this.listTotal = res.data.total;
-        this.listLoading = false;
+        this.dataList = res.data.records
+        this.listTotal = res.data.total
+        this.listLoading = false
       })
     },
 
     // 筛选后重新获取列表
     getListByScreen() {
-      this.currentPage = 1;
-      this.getList();
+      this.currentPage = 1
+      this.getList()
     },
 
     // 获取角色列表
     async getRoleList() {
       const result = await new Promise((resolve, reject) => {
-        getRoleList({ pageNum: 1, pageSize: 1000 }).then(res => {
-          this.roleList = res.data.records;
-          resolve(res.data);
-        }).catch(res => {
-          resolve([]);
-        })
+        getRoleList({ pageNum: 1, pageSize: 1000 })
+          .then(res => {
+            this.roleList = res.data.records
+            resolve(res.data)
+          })
+          .catch(res => {
+            resolve([])
+          })
       })
-      return result;
+      return result
     },
 
     // 获取部门列表
     async getDepartmentList() {
       const result = await new Promise((resolve, reject) => {
-        getDepartmentList().then(res => {
-          resolve(res.data);
-        }).catch(res => {
-          resolve([]);
-        })
+        getDepartmentList()
+          .then(res => {
+            resolve(res.data)
+          })
+          .catch(res => {
+            resolve([])
+          })
       })
-      return result;
+      return result
     },
 
     // 更改每页数量
     handleSizeChange(val) {
-      this.pageSize = val;
-      this.currentPage = 1;
-      this.getList();
+      this.pageSize = val
+      this.currentPage = 1
+      this.getList()
     },
 
     // 更改当前页
     handleCurrentChange(val) {
-      this.currentPage = val;
-      this.getList();
+      this.currentPage = val
+      this.getList()
     },
 
     // 操作 - 更改状态(type: 禁用0,启用1)
     changeStatus(id, type) {
       type = type ? true : false
       changeAccountStatus({ adminUserId: id, status: type }).then(res => {
-        this.getList();
-        this.$successMsg();
+        this.getList()
+        this.$successMsg()
       })
     },
 
@@ -415,13 +505,13 @@ export default {
     // 重置密码
     handleReset(id) {
       this.$refs.tabPage.addTab({
-        activeKey: "resetpassword",
-        key: "resetpassword",
-        label: "重置密码",
+        activeKey: 'resetpassword',
+        key: 'resetpassword',
+        label: '重置密码',
         triggerEvent: () => {
           this.cancelResetForm()
           this.$nextTick(() => {
-            this.resetId = id;
+            this.resetId = id
           })
         },
         closeEvent: () => {
@@ -432,23 +522,23 @@ export default {
 
     // 取消重置密码
     cancelResetForm() {
-      this.passwordType1 = 'password';
-      this.passwordType2 = 'password';
-      this.$refs?.resetForm?.resetFields();
+      this.passwordType1 = 'password'
+      this.passwordType2 = 'password'
+      this.$refs?.resetForm?.resetFields()
     },
 
     // 提交重置密码
     submitResetForm(removeTab) {
-      this.$refs.resetForm.validate((valid) => {
+      this.$refs.resetForm.validate(valid => {
         if (valid) {
           let params = {
             password: this.resetForm.newPassword,
             adminUserId: this.resetId
           }
           resetPassword(params).then(res => {
-            removeTab('list');
-            this.getList();
-            this.$successMsg();
+            removeTab('list')
+            this.getList()
+            this.$successMsg()
           })
         }
       })
@@ -459,13 +549,13 @@ export default {
       this.$refs.tabPage.addTab({
         activeKey: type,
         key: type,
-        label: ({ add: "新增", edit: "编辑" })[type],
+        label: { add: '新增', edit: '编辑' }[type],
         triggerEvent: async () => {
           this.cancelAddForm()
-          this.addFormType = type;
-          this.departmentList = await this.getDepartmentList();
+          this.addFormType = type
+          this.departmentList = await this.getDepartmentList()
           if (type == 'edit') {
-            this.editId = id;
+            this.editId = id
             getUserInfo({ adminUserId: id }).then(res => {
               this.addForm = {
                 account: res.data.userName,
@@ -478,23 +568,21 @@ export default {
             })
           }
         },
-        closeEvent: () => {
-
-        }
+        closeEvent: () => {}
       })
     },
 
     // 取消 新增编辑账户
     cancelAddForm() {
-      this.passwordType1 = 'password';
-      this.passwordType2 = 'password';
-      this.$refs?.addForm?.resetFields();
+      this.passwordType1 = 'password'
+      this.passwordType2 = 'password'
+      this.$refs?.addForm?.resetFields()
       this.$data.addForm = this.$options.data().addForm
     },
 
     // 提交 新增编辑账户
     submitAddForm(removeTab) {
-      this.$refs.addForm.validate((valid) => {
+      this.$refs.addForm.validate(valid => {
         if (valid) {
           let adminWebsitId = null
           if (this.addForm.adminWebsitId instanceof Array) {
@@ -509,20 +597,20 @@ export default {
             adminWebsitId: adminWebsitId,
             password: this.addForm.newPassword,
             pubNotice: this.addForm.pubNotice,
-            linkPhone: this.addForm.linkPhone,
+            linkPhone: this.addForm.linkPhone
           }
           if (this.addFormType == 'edit') {
-            params.adminUserId = this.editId;
+            params.adminUserId = this.editId
             editAccount(params).then(res => {
-              removeTab('list');
-              this.getList();
-              this.$successMsg('编辑成功');
+              removeTab('list')
+              this.getList()
+              this.$successMsg('编辑成功')
             })
           } else {
             addAccount(params).then(res => {
-              removeTab('list');
-              this.getList();
-              this.$successMsg('新增成功');
+              removeTab('list')
+              this.getList()
+              this.$successMsg('新增成功')
             })
           }
         }
@@ -535,18 +623,17 @@ export default {
         text: 'Loading',
         spinner: 'el-icon-loading',
         background: 'rgba(0, 0, 0, 0.7)'
-      });
+      })
       this.$store
         .dispatch('user/login', { username: row.userName })
         .then(() => {
           setTimeout(() => {
-            loading.close();
-            window.location.href = process.env.NODE_ENV === 'staging' ? '/zfmanager' : '/'
-          }, 1000);
+            loading.close()
+            window.location.href = process.env.NODE_ENV === 'staging' ? '/jsm-manager' : '/'
+          }, 1000)
         })
-        .catch(() => { })
+        .catch(() => {})
     }
-
   }
 }
 </script>
@@ -560,4 +647,4 @@ export default {
   cursor: pointer;
   user-select: none;
 }
-</style>
+</style>

+ 6 - 3
vue.config.js

@@ -42,7 +42,7 @@ module.exports = {
    * In most cases please use '/' !!!
    * Detail: https://cli.vuejs.org/config/#publicpath
    */
-  publicPath: process.env.NODE_ENV === 'staging' ? '/zfmanager' : '/',
+  publicPath: process.env.NODE_ENV === 'staging' ? '/jsm-manager' : '/',
   outputDir: 'dist',
   assetsDir: './static',
   // lintOnSave: process.env.NODE_ENV === 'development',
@@ -59,7 +59,7 @@ module.exports = {
     proxy: {
       // 配置跨域
       '/api': {
-        target: 'https://jiasm.zfire.top/zfapi/', // 测试服接口地址
+        target: 'https://jiasm.zfire.top/zfdapi/', // 测试服接口地址
         ws: true,
         changeOrigin: true,
         pathRewrite: {
@@ -73,7 +73,10 @@ module.exports = {
     // provide the app's title in webpack's name field, so that
     // it can be accessed in index.html to inject the correct title.
     name: name,
-    plugins: process.env.NODE_ENV === 'development' ? [new webpack.ProvidePlugin({}), chunkCount] : [new webpack.ProvidePlugin({}), compress, chunkCount],
+    plugins:
+      process.env.NODE_ENV === 'development'
+        ? [new webpack.ProvidePlugin({}), chunkCount]
+        : [new webpack.ProvidePlugin({}), compress, chunkCount],
     resolve: {
       alias: {
         '@': resolve('src'),