فهرست منبع

Merge branch 'develop_yh43' of http://git.chelingzhu.com/jianguan-web/jg-ocs-html into develop_yh43

lilei 11 ماه پیش
والد
کامیت
ae08d00c92
3فایلهای تغییر یافته به همراه67 افزوده شده و 45 حذف شده
  1. 12 11
      src/views/power/role/menuModal.vue
  2. 34 16
      src/views/power/user/userList.vue
  3. 21 18
      src/views/power/user/userModal.vue

+ 12 - 11
src/views/power/role/menuModal.vue

@@ -21,12 +21,13 @@
           <div style="display:flex;justify-content: flex-end;align-items: center;" v-if="authType==0">
             <div style="width:270px;text-align: right;flex:1;">快捷全选:</div>
             <div style="padding:0 10px;">
-              <a-checkbox-group :value="authAllPrice" :options="priceOptions" @change="onPriceChange" />
+              <a-checkbox-group id="roleMenuEdit-chooseAll" :value="authAllPrice" :options="priceOptions" @change="onPriceChange" />
             </div>
           </div>
           <div style="height: 500px;overflow-y: auto;">
             <a-tree
               checkable
+              id="roleMenuEdit-tree"
               :selectable="false"
               @check="onCheck"
               @expand="onExpand"
@@ -50,14 +51,14 @@
 
 <script>
 import { commonMixin } from '@/utils/mixin'
+// 组件
 import { STable, VSelect } from '@/components'
+// 接口
 import { addMenuPower } from '@/api/power-role.js'
 export default {
   name: 'RoleModal',
   mixins: [commonMixin],
-  components: {
-    STable, VSelect
-  },
+  components: { STable, VSelect },
   props: {
     visible: {
       type: Boolean,
@@ -73,9 +74,9 @@ export default {
   data () {
     return {
       spinning: false,
-      treeData: [],
+      treeData: [], //
       priceOptions: [],
-      titleText: '',
+      titleText: '', // 弹窗标题
       expandedKeys: [],
       autoExpandParent: true,
       checkedKeys: [],
@@ -89,11 +90,11 @@ export default {
       },
       authAllPrice: [],
       leafNode: [],
-      checkLeafNode: [],
-      priceCheckNode: [],
-      form: {},
-      rules: {},
-      authType: '1',
+      checkLeafNode: [], // 选中节点集合
+      priceCheckNode: [], // 已选价格集合
+      form: {}, // 提交参数
+      rules: {}, // 表单验证规则
+      authType: '1', // 权限类型 1功能权限设置 0 价格权限设置
       id: '' // 角色id
     }
   },

+ 34 - 16
src/views/power/user/userList.vue

@@ -1,27 +1,28 @@
 <template>
   <div>
     <a-card size="small" :bordered="false" class="searchBoxNormal">
+      <!-- 搜索条件 -->
       <div ref="tableSearch" class="table-page-search-wrapper">
-        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+        <a-form layout="inline" id="userList-form" @keyup.enter.native="$refs.table.refresh(true)">
           <a-row :gutter="15">
             <a-col :md="6" :sm="24">
               <a-form-item label="用户名称">
-                <a-input allowClear v-model.trim="queryParam.name" placeholder="请输入用户名称"/>
+                <a-input allowClear id="userList-name" v-model.trim="queryParam.name" placeholder="请输入用户名称"/>
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
               <a-form-item label="手机号码">
-                <a-input allowClear v-model.trim="queryParam.phone" placeholder="请输入手机号码"/>
+                <a-input allowClear id="userList-phone" v-model.trim="queryParam.phone" placeholder="请输入手机号码"/>
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
               <a-form-item label="状态">
-                <v-select code="ENABLE_FLAG" v-model="queryParam.loginFlag" allowClear placeholder="请选择状态"></v-select>
+                <v-select code="ENABLE_FLAG" id="userList-loginFlag" v-model="queryParam.loginFlag" allowClear placeholder="请选择状态"></v-select>
               </a-form-item>
             </a-col>
             <a-col :md="4" :sm="24">
-              <a-button type="primary" @click="$refs.table.refresh(true)" style="margin-right: 10px;">查询</a-button>
-              <a-button type="" @click="reset" id="roleList-reset">重置</a-button>
+              <a-button type="primary" id="userList-refresh" @click="$refs.table.refresh(true)" style="margin-right: 10px;">查询</a-button>
+              <a-button type="" @click="reset" id="userList-reset">重置</a-button>
             </a-col>
           </a-row>
         </a-form>
@@ -29,9 +30,11 @@
     </a-card>
     <a-card size="small" :bordered="false">
       <a-spin :spinning="spinning" tip="Loading...">
+        <!-- 操作按钮 -->
         <div class="table-operator">
-          <a-button type="primary" v-if="$hasPermissions('B_power_user_add')" @click="openModal">新增</a-button>
+          <a-button type="primary" id="userList-add" v-if="$hasPermissions('B_power_user_add')" @click="openModal">新增</a-button>
         </div>
+        <!-- 列表 -->
         <s-table
           class="sTable fixPagination"
           ref="table"
@@ -47,13 +50,20 @@
         >
           <span slot="status" slot-scope="text, record">
             <!-- 超级管理员不可删除不可编辑不可启禁用 -->
-            <a-switch v-if="record.superAdmin!=1 && $hasPermissions('B_power_user_enable')" checkedChildren="启用" unCheckedChildren="禁用" v-model="record.loginFlag" @change="changeFlagHandle(text, record)"/>
+            <a-switch
+              :id="'userList-loginFlag-btn-'+record.id"
+              v-if="record.superAdmin!=1 && $hasPermissions('B_power_user_enable')"
+              checkedChildren="启用"
+              unCheckedChildren="禁用"
+              v-model="record.loginFlag"
+              @change="changeFlagHandle(text, record)"/>
             <span v-else>{{ record.loginFlag==1?'已启用':'已禁用' }}</span>
           </span>
           <span slot="action" slot-scope="text, record">
             <a-button
               size="small"
               type="link"
+              :id="'userList-edit-btn-'+record.id"
               class="button-info"
               v-if="record.superAdmin!=1 &&$hasPermissions('B_power_user_edit')"
               @click="handleEdit(record)"
@@ -64,6 +74,7 @@
               size="small"
               type="link"
               class="button-info"
+              :id="'userList-resetPsd-btn-'+record.id"
               v-if="record.loginFlag==1 && record.superAdmin!=1 &&$hasPermissions('B_power_user_resetPsd')"
               @click="resetPassword(record)"
             >
@@ -74,6 +85,7 @@
               size="small"
               type="link"
               class="button-error"
+              :id="'userList-del-btn-'+record.id"
               v-if="record.loginFlag==0 && record.superAdmin!=1 &&$hasPermissions('B_power_user_del')"
               @click="delect(record)"
             >
@@ -89,8 +101,10 @@
 
 <script>
 import { commonMixin } from '@/utils/mixin'
+// 组件
 import { STable, VSelect } from '@/components'
 import userModal from './userModal.vue'
+// 接口
 import { resetPSD, updateEnableStatus, getPowerUserList, delectUserPower } from '@/api/power-user.js'
 export default {
   name: 'PowerUserList',
@@ -101,15 +115,14 @@ export default {
   data () {
     return {
       spinning: false,
-      tableHeight: 0,
+      tableHeight: 0, // 表格高度
       // 查询参数
       queryParam: {
-        name: '',
-        phone: '',
-        loginFlag: undefined
+        name: '', // 用户名称
+        phone: '', // 手机号码
+        loginFlag: undefined// 状态
       },
-      showModal: false,
-      openUdModal: false,
+      showModal: false, // 新增用户弹窗
       itemData: null, // 编辑行数据
       // 表头
       columns: [
@@ -126,10 +139,12 @@ export default {
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
         this.spinning = true
+        // 获取用户数据  有分页
         return getPowerUserList(Object.assign(parameter, this.queryParam)).then(res => {
           let data
           if (res.status == 200) {
             data = res.data
+            // 计算表格序号
             const no = (data.pageNo - 1) * data.pageSize
             for (let i = 0; i < data.list.length; i++) {
               const _item = data.list[i]
@@ -140,8 +155,7 @@ export default {
           this.spinning = false
           return data
         })
-      },
-      optionAlertShow: false
+      }
     }
   },
   methods: {
@@ -150,6 +164,7 @@ export default {
       this.showModal = true
       this.itemData = null
     },
+    // 关闭新增用户弹窗
     closeModal () {
       this.showModal = false
       this.itemData = null
@@ -208,6 +223,7 @@ export default {
         }
       })
     },
+    // 编辑
     handleEdit (row) {
       this.showModal = true
       this.itemData = row
@@ -230,12 +246,14 @@ export default {
         }
       })
     },
+    // 初始化
     pageInit () {
       const _this = this
       this.$nextTick(() => { // 页面渲染完成后的回调
         _this.setTableH()
       })
     },
+    // 计算列表高度
     setTableH () {
       const tableSearchH = this.$refs.tableSearch.offsetHeight
       this.tableHeight = window.innerHeight - tableSearchH - 240

+ 21 - 18
src/views/power/user/userModal.vue

@@ -70,9 +70,9 @@
             <!-- 状态 -->
             <a-col :span="12">
               <a-form-model-item label="状态" prop="loginFlag">
-                <a-radio-group name="radioGroup" v-model="form.loginFlag" placeholder="请选择状态">
-                  <a-radio :value="1">是</a-radio>
-                  <a-radio :value="0">否</a-radio>
+                <a-radio-group id="userEdit-loginFlag" name="radioGroup" v-model="form.loginFlag" placeholder="请选择状态">
+                  <a-radio :value="1" id="userEdit-loginFlag1">是</a-radio>
+                  <a-radio :value="0" id="userEdit-loginFlag0">否</a-radio>
                 </a-radio-group>
               </a-form-model-item>
             </a-col>
@@ -101,8 +101,8 @@
             </a-col>
           </a-row>
           <a-form-model-item :label-col="{span: 0}" :wrapper-col="{span: 24}" style="text-align: center;">
-            <a-button :style="{ marginRight: '10px' }" @click="isshow=false">取消</a-button>
-            <a-button type="primary" @click="handleSubmit()">保存</a-button>
+            <a-button id="userEdit-cancel" :style="{ marginRight: '10px' }" @click="isshow=false">取消</a-button>
+            <a-button id="userEdit-save" type="primary" @click="handleSubmit()">保存</a-button>
           </a-form-model-item>
         </a-form-model>
       </a-spin>
@@ -112,14 +112,14 @@
 
 <script>
 import { commonMixin } from '@/utils/mixin'
+// 组件
 import { STable, VSelect } from '@/components'
+// 接口
 import { getRoleList, saveUserPower } from '@/api/power-user.js'
 export default {
   name: 'UserModal',
   mixins: [commonMixin],
-  components: {
-    STable, VSelect
-  },
+  components: { STable, VSelect },
   props: {
     visible: {
       type: Boolean,
@@ -134,24 +134,27 @@ export default {
   },
   data () {
     return {
-      titleText: '新增用户',
+      titleText: '新增用户', // 弹出标题
       spinning: false,
-      isshow: this.visible,
-      roleList: [],
+      isshow: this.visible, // 打开关闭弹窗
+      roleList: [], // 角色列表数据
+      // form表单label布局
       formItemLayout: {
         labelCol: { span: 6 },
         wrapperCol: { span: 16 }
       },
+      // 提交参数
       form: {
-        name: '',
-        phone: '',
-        loginName: '',
-        password: '',
-        sex: undefined,
+        name: '', // 用户名称
+        phone: '', // 手机号码
+        loginName: '', // 用户账号
+        password: '', // 用户密码
+        sex: undefined, // 性别
         loginFlag: '', // 状态
         roleNames: [], // 角色
-        remarks: ''
+        remarks: ''// 备注
       },
+      // 表单验证规则
       rules: {
         name: [ { required: true, message: '请输入用户名称', trigger: 'blur' }, { pattern: '^[^<|>]{1,30}$', message: '请输入不含<或>的字符,最多30个字符' } ],
         phone: [ { required: true, message: '请输入手机号码', trigger: 'blur' }, { pattern: /^[1][0-9]{10}$/, message: '请输入正确的手机号码!' } ],
@@ -239,7 +242,7 @@ export default {
         this.getRoleList()
       }
     },
-    nowData: {
+    nowData: {// 编辑回显数据
       handler (newValue, oldValue) {
         if (this.isshow && newValue) {
           if (this.nowData.id) { //  编辑