Explorar o código

Finish Hotfix-74

chen %!s(int64=3) %!d(string=hai) anos
pai
achega
7a35277592
Modificáronse 1 ficheiros con 65 adicións e 367 borrados
  1. 65 367
      src/views/setting/account.vue

+ 65 - 367
src/views/setting/account.vue

@@ -2,40 +2,17 @@
   <div class="app-container">
     <div class="tree-container">
       <div style="padding: 10px; display: flex">
-        <el-button
-          icon="el-icon-refresh-right"
-          size="small"
-          @click="refreshDepartment()"
-          style="padding: 9px 10px; margin-right: 6px"
-        ></el-button>
-        <el-input
-          placeholder="输入关键字进行过滤"
-          size="small"
-          clearable
-          v-model="filterText"
-        >
+        <el-button icon="el-icon-refresh-right" size="small" @click="refreshDepartment()" style="padding: 9px 10px; margin-right: 6px"></el-button>
+        <el-input placeholder="输入关键字进行过滤" size="small" clearable v-model="filterText">
         </el-input>
       </div>
-      <el-tree
-        :data="departmentList"
-        :props="defaultProps"
-        default-expand-all
-        highlight-current
-        :expand-on-click-node="false"
-        :filter-node-method="filterNode"
-        @node-click="handleNodeClick"
-        node-key="id"
-        ref="listTree"
-      >
+      <el-tree :data="departmentList" :props="defaultProps" default-expand-all highlight-current :expand-on-click-node="false" :filter-node-method="filterNode" @node-click="handleNodeClick" node-key="id" ref="listTree">
         <div class="custom-tree-node" slot-scope="{ node, data }">
-          <i
-            :class="
+          <i :class="
               data.children && data.children.length > 0
                 ? 'el-icon-folder-opened'
                 : 'el-icon-document-remove'
-            "
-          ></i
-          ><span>{{ node.label }}</span>
+            "></i><span>{{ node.label }}</span>
         </div>
       </el-tree>
     </div>
@@ -44,36 +21,17 @@
         <!-- <div class="top clearfix">
           <div class="title fl">条件筛选</div>
         </div> -->
-        <el-form
-          ref="screenForm"
-          :model="screenForm"
-          label-width="70px"
-          size="mini"
-          label-position="left"
-        >
+        <el-form ref="screenForm" :model="screenForm" label-width="70px" size="mini" label-position="left">
           <el-row :gutter="20">
             <el-col :xs="24" :sm="12" :lg="6">
               <el-form-item label="账号名称" prop="name">
-                <el-input
-                  v-model="screenForm.name"
-                  placeholder="请输入账号名称"
-                ></el-input>
+                <el-input v-model="screenForm.name" placeholder="请输入账号名称"></el-input>
               </el-form-item>
             </el-col>
             <el-col :xs="24" :sm="12" :lg="6">
-              <el-form-item label="角色" prop="name">
-                <el-select
-                  class="selectStyle"
-                  v-model="screenForm.roleId"
-                  placeholder="请选择"
-                  filterable
-                >
-                  <el-option
-                    v-for="(v, i) in roleList"
-                    :key="i"
-                    :label="v.name"
-                    :value="v.adminRoleId"
-                  >
+              <el-form-item label="角色" prop="roleId">
+                <el-select class="selectStyle" v-model="screenForm.roleId" placeholder="请选择" filterable>
+                  <el-option v-for="(v, i) in roleList" :key="i" :label="v.name" :value="v.adminRoleId">
                   </el-option>
                 </el-select>
               </el-form-item>
@@ -81,9 +39,7 @@
             <el-col :xs="24" :sm="12" :lg="12" class="tr">
               <el-form-item label="">
                 <el-button size="mini" @click="resetScreenForm">清空</el-button>
-                <el-button size="mini" type="primary" @click="submitScreenForm"
-                  >搜索</el-button
-                >
+                <el-button size="mini" type="primary" @click="submitScreenForm">搜索</el-button>
               </el-form-item>
             </el-col>
           </el-row>
@@ -91,31 +47,13 @@
       </div>
       <div class="btn-group clearfix" style="margin-top: 20px">
         <div class="fl">
-          <el-button size="mini" type="primary" @click="openAccountForm('add')"
-            >添加账号</el-button
-          >
+          <el-button size="mini" type="primary" @click="openAccountForm('add')">添加账号</el-button>
         </div>
         <div class="fr">
-          <el-button
-            size="mini"
-            @click="handleDownload"
-            v-if="checkBtnRole('download')"
-            >下载导入模板</el-button
-          >
-          <ExportButton
-            class="import-btn"
-            :exUrl="'/admin/user/user/listExport'"
-            :exParams="exParams"
-          />
+          <el-button size="mini" @click="handleDownload" v-if="checkBtnRole('download')">下载导入模板</el-button>
+          <ExportButton class="import-btn" :exUrl="'/admin/user/user/listExport'" :exParams="exParams" />
 
-          <el-upload
-            class="import-btn"
-            v-if="checkBtnRole('import')"
-            action=""
-            :http-request="handleImport"
-            :file-list="importFileList"
-            :show-file-list="false"
-          >
+          <el-upload class="import-btn" v-if="checkBtnRole('import')" action="" :http-request="handleImport" :file-list="importFileList" :show-file-list="false">
             <!-- v-if="checkBtnRole('import')" -->
             <el-button size="mini" type="primary" :loading="importLoading">{{
               importLoading ? "导入中..." : "导入"
@@ -131,98 +69,31 @@
       </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" type="selection" width="55" fixed></el-table-column> -->
-          <el-table-column
-            show-overflow-tooltip
-            align="center"
-            label="账号"
-            prop="userName"
-            min-width="120"
-          ></el-table-column>
-          <el-table-column
-            show-overflow-tooltip
-            align="center"
-            label="用户名"
-            prop="nickName"
-            min-width="160"
-          ></el-table-column>
-          <el-table-column
-            show-overflow-tooltip
-            align="center"
-            label="角色"
-            prop="roleName"
-            min-width="100"
-          ></el-table-column>
-          <el-table-column
-            show-overflow-tooltip
-            align="center"
-            label="创建时间"
-            prop="createTime"
-            min-width="160"
-          ></el-table-column>
-          <el-table-column
-            show-overflow-tooltip
-            align="center"
-            label="最后登录时间"
-            prop="lastLoginTime"
-            min-width="160"
-          ></el-table-column>
-          <el-table-column
-            show-overflow-tooltip
-            align="center"
-            label="状态"
-            class-name="status-col"
-          >
+          <el-table-column show-overflow-tooltip align="center" label="账号" prop="userName" min-width="120"></el-table-column>
+          <el-table-column show-overflow-tooltip align="center" label="用户名" prop="nickName" min-width="160"></el-table-column>
+          <el-table-column show-overflow-tooltip align="center" label="角色" prop="roleName" min-width="100"></el-table-column>
+          <el-table-column show-overflow-tooltip align="center" label="创建时间" prop="createTime" min-width="160"></el-table-column>
+          <el-table-column show-overflow-tooltip align="center" label="最后登录时间" prop="lastLoginTime" min-width="160"></el-table-column>
+          <el-table-column show-overflow-tooltip align="center" label="状态" class-name="status-col">
             <template slot-scope="scope">
-              <el-tag
-                size="mini"
-                :type="scope.row.status ? 'success' : 'danger'"
-                >{{ scope.row.status ? "正常" : "冻结" }}</el-tag
-              >
+              <el-tag size="mini" :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">
               <template v-if="checkBtnRole('status')">
-                <el-popconfirm
-                  v-if="scope.row.status"
-                  style="margin-right: 10px"
-                  title="确定冻结吗?"
-                  @onConfirm="changeStatus(scope.row.adminUserId, 0)"
-                >
+                <el-popconfirm v-if="scope.row.status" style="margin-right: 10px" title="确定冻结吗?" @onConfirm="changeStatus(scope.row.adminUserId, 0)">
                   <el-button slot="reference" type="text">冻结</el-button>
                 </el-popconfirm>
-                <el-popconfirm
-                  v-else
-                  style="margin-right: 10px"
-                  title="确定恢复吗?"
-                  @onConfirm="changeStatus(scope.row.adminUserId, 1)"
-                >
+                <el-popconfirm v-else style="margin-right: 10px" title="确定恢复吗?" @onConfirm="changeStatus(scope.row.adminUserId, 1)">
                   <el-button slot="reference" type="text">恢复</el-button>
                 </el-popconfirm>
               </template>
 
-              <el-button
-                type="text"
-                @click="openAccountForm('edit', scope.row.adminUserId)"
-                v-if="checkBtnRole('edit')"
-                >编辑</el-button
-              >
-              <el-button
-                type="text"
-                @click="handleReset(scope.row.adminUserId)"
-                v-if="checkBtnRole('reset')"
-                >重置密码</el-button
-              >
+              <el-button type="text" @click="openAccountForm('edit', scope.row.adminUserId)" v-if="checkBtnRole('edit')">编辑</el-button>
+              <el-button type="text" @click="handleReset(scope.row.adminUserId)" v-if="checkBtnRole('reset')">重置密码</el-button>
 
               <!-- <el-popconfirm style="margin-left: 10px;" title="确定删除吗?" @onConfirm="deleteAccount(scope.row.id)" v-if="checkBtnRole('del')">
                 <el-button slot="reference" type="text">删除</el-button>
@@ -234,228 +105,82 @@
 
       <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>
 
     <!-- 添加编辑账号 -->
-    <el-dialog
-      :title="AccountFormType == 'add' ? '添加账号' : '编辑账号'"
-      :visible.sync="AccountFormVisible"
-      :show-close="false"
-      width="40%"
-      :close-on-click-modal="false"
-    >
-      <el-form
-        ref="AccountForm"
-        :model="AccountForm"
-        :rules="AccountFormRules"
-        label-position="left"
-        label-width="80px"
-      >
+    <el-dialog :title="AccountFormType == 'add' ? '添加账号' : '编辑账号'" :visible.sync="AccountFormVisible" :show-close="false" width="40%" :close-on-click-modal="false">
+      <el-form ref="AccountForm" :model="AccountForm" :rules="AccountFormRules" label-position="left" label-width="80px">
         <el-form-item label="账号" prop="account">
-          <el-input
-            v-model="AccountForm.account"
-            autocomplete="off"
-            placeholder="请输入账号"
-          ></el-input>
+          <el-input v-model="AccountForm.account" autocomplete="off" placeholder="请输入账号"></el-input>
         </el-form-item>
         <el-form-item label="用户名" prop="nickName">
-          <el-input
-            v-model="AccountForm.nickName"
-            autocomplete="off"
-            placeholder="请输入用户名"
-          ></el-input>
+          <el-input v-model="AccountForm.nickName" autocomplete="off" placeholder="请输入用户名"></el-input>
         </el-form-item>
 
         <el-form-item label="角色组" prop="role">
-          <el-select
-            v-model="AccountForm.role"
-            placeholder="请选择角色组"
-            style="width: 100%"
-            filterable
-          >
-            <el-option
-              :label="item.name"
-              :value="item.adminRoleId"
-              v-for="(item, index) in roleList"
-              :key="index"
-            ></el-option>
+          <el-select v-model="AccountForm.role" placeholder="请选择角色组" style="width: 100%" filterable>
+            <el-option :label="item.name" :value="item.adminRoleId" v-for="(item, index) in roleList" :key="index"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item
-          label="部门"
-          prop="department"
-          v-show="roleObj.type === 0"
-        >
-          <el-tree
-            :data="departmentList"
-            show-checkbox
-            :check-strictly="true"
-            node-key="adminWebsitId"
-            ref="tree"
-            highlight-current
-            :props="props"
-          >
+        <el-form-item label="部门" prop="department" v-show="roleObj.type === 0">
+          <el-tree :data="departmentList" show-checkbox :check-strictly="true" node-key="adminWebsitId" ref="tree" highlight-current :props="props">
           </el-tree>
         </el-form-item>
-        <el-form-item
-          label="经销商"
-          prop="dealer"
-          v-show="roleObj.type === 0 && roleObj.name === '经销商'"
-        >
-          <el-select
-            v-model="AccountForm.dealer"
-            placeholder="请选择经销商"
-            style="width: 100%"
-            filterable
-          >
-            <el-option
-              :label="item.name"
-              :value="item.id"
-              v-for="(item, index) in dealerList"
-              :key="index"
-            ></el-option>
+        <el-form-item label="经销商" prop="dealer" v-show="roleObj.type === 0 && roleObj.name === '经销商'">
+          <el-select v-model="AccountForm.dealer" placeholder="请选择经销商" style="width: 100%" filterable>
+            <el-option :label="item.name" :value="item.id" v-for="(item, index) in dealerList" :key="index"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item
-          label="商户"
-          prop="merchant"
-          v-show="roleObj.type === 1 || roleObj.type === 2"
-        >
-          <el-select
-            v-model="AccountForm.merchant"
-            placeholder="请选择商户"
-            style="width: 100%"
-            filterable
-          >
-            <el-option
-              :label="item.adminCompanyName"
-              :value="item.adminCompanyId"
-              v-for="(item, index) in merchantList"
-              :key="index"
-            ></el-option>
+        <el-form-item label="商户" prop="merchant" v-show="roleObj.type === 1 || roleObj.type === 2">
+          <el-select v-model="AccountForm.merchant" placeholder="请选择商户" style="width: 100%" filterable>
+            <el-option :label="item.adminCompanyName" :value="item.adminCompanyId" v-for="(item, index) in merchantList" :key="index"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item
-          label="集团公司"
-          prop="isGroup"
-          v-show="roleObj.type === 0 && roleObj.name === '经销商'"
-        >
+        <el-form-item label="集团公司" prop="isGroup" v-show="roleObj.type === 0 && roleObj.name === '经销商'">
           <el-radio-group v-model="AccountForm.isGroup">
             <el-radio :label="true">是</el-radio>
             <el-radio :label="false">否</el-radio>
           </el-radio-group>
         </el-form-item>
-        <el-form-item
-          label="所属集团"
-          prop="company"
-          v-show="
+        <el-form-item label="所属集团" prop="company" v-show="
             roleObj.type === 0 &&
             roleObj.name === '经销商' &&
             !AccountForm.isGroup
-          "
-        >
-          <el-select
-            v-model="AccountForm.company"
-            placeholder="请选择所属集团"
-            style="width: 100%"
-            filterable
-          >
-            <el-option
-              :label="item.name"
-              :value="item.id"
-              v-for="(item, index) in dealerList"
-              :key="index"
-            ></el-option>
+          ">
+          <el-select v-model="AccountForm.company" placeholder="请选择所属集团" style="width: 100%" filterable>
+            <el-option :label="item.name" :value="item.id" v-for="(item, index) in dealerList" :key="index"></el-option>
           </el-select>
         </el-form-item>
-        <el-form-item
-          label="是否折让"
-          prop="isDiscount"
-          v-show="roleObj.type === 0 && roleObj.name === '经销商'"
-        >
+        <el-form-item label="是否折让" prop="isDiscount" v-show="roleObj.type === 0 && roleObj.name === '经销商'">
           <el-radio-group v-model="AccountForm.isDiscount">
             <el-radio :label="true">是</el-radio>
             <el-radio :label="false">否</el-radio>
           </el-radio-group>
         </el-form-item>
-        <el-form-item
-          label="密码"
-          prop="newPassword"
-          v-if="AccountFormType == 'add'"
-        >
-          <el-input
-            v-model="AccountForm.newPassword"
-            ref="password1"
-            autocomplete="off"
-            placeholder="请输入密码"
-            :type="passwordType1"
-          ></el-input>
+        <el-form-item label="密码" prop="newPassword" v-if="AccountFormType == 'add'">
+          <el-input v-model="AccountForm.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'"
-            />
+            <svg-icon :icon-class="passwordType1 === 'password' ? 'eye' : 'eye-open'" />
           </span>
         </el-form-item>
-        <el-form-item
-          label="确认密码"
-          prop="confirmPassword"
-          v-if="AccountFormType == 'add'"
-        >
-          <el-input
-            v-model="AccountForm.confirmPassword"
-            ref="password2"
-            autocomplete="off"
-            placeholder="请再次输入密码"
-            :type="passwordType2"
-          ></el-input>
+        <el-form-item label="确认密码" prop="confirmPassword" v-if="AccountFormType == 'add'">
+          <el-input v-model="AccountForm.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'"
-            />
+            <svg-icon :icon-class="passwordType2 === 'password' ? 'eye' : 'eye-open'" />
           </span>
         </el-form-item>
         <el-form-item label="可用仓库" prop="correspondIds">
-          <el-select
-            multiple
-            v-model="AccountForm.correspondIds"
-            placeholder="请选择可用仓库"
-            style="width: 100%"
-            filterable
-          >
-            <el-option
-              :label="item.name"
-              :value="item.id"
-              v-for="(item, index) in stockList"
-              :key="index"
-            ></el-option>
+          <el-select multiple v-model="AccountForm.correspondIds" placeholder="请选择可用仓库" style="width: 100%" filterable>
+            <el-option :label="item.name" :value="item.id" v-for="(item, index) in stockList" :key="index"></el-option>
           </el-select>
         </el-form-item>
         <el-form-item label="物料分类" prop="k3CategoryIds">
-          <el-select
-            multiple
-            v-model="AccountForm.k3CategoryIds"
-            placeholder="请选择物料分类"
-            style="width: 100%"
-            filterable
-          >
-            <el-option
-              :label="item.name"
-              :value="item.id"
-              v-for="(item, index) in categoryList"
-              :key="index"
-            ></el-option>
+          <el-select multiple v-model="AccountForm.k3CategoryIds" placeholder="请选择物料分类" style="width: 100%" filterable>
+            <el-option :label="item.name" :value="item.id" v-for="(item, index) in categoryList" :key="index"></el-option>
           </el-select>
         </el-form-item>
       </el-form>
@@ -466,46 +191,18 @@
     </el-dialog>
 
     <!-- 重置密码 -->
-    <el-dialog
-      title="重置密码"
-      :visible.sync="resetFormVisible"
-      :show-close="false"
-      width="40%"
-      :close-on-click-modal="false"
-    >
-      <el-form
-        ref="resetForm"
-        :model="resetForm"
-        :rules="resetFormRules"
-        label-position="left"
-        label-width="100px"
-      >
+    <el-dialog title="重置密码" :visible.sync="resetFormVisible" :show-close="false" width="40%" :close-on-click-modal="false">
+      <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'"
-            />
+            <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'"
-            />
+            <svg-icon :icon-class="passwordType2 === 'password' ? 'eye' : 'eye-open'" />
           </span>
         </el-form-item>
       </el-form>
@@ -676,6 +373,7 @@ export default {
     exParams() {
       return {
         userName: this.screenForm.name,
+        roleId: this.screenForm.roleId,
       };
     },
   },