P104.html 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta name="renderer" content="webkit">
  5. <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
  6. <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
  7. <meta http-equiv="pragma" content="no-cache">
  8. <meta http-equiv="Cache" content="no-cache">
  9. <meta http-equiv="cache-control" content="no-cache, must-revalidate">
  10. <meta http-equiv="expires" content="0">
  11. <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
  12. <title>部门管理</title>
  13. <link rel="stylesheet" href="../css/index.css">
  14. <link rel="stylesheet" href="../css/style.css">
  15. <link rel="stylesheet" href="../css/iconfont.css">
  16. <link rel="stylesheet" href="../css/element.css">
  17. <link rel="stylesheet" href="../css/tablema.css">
  18. <script src="../js/vue.min.js"></script>
  19. <script src="../js/index.js"></script>
  20. <script src="../js/jquery.min.js"></script>
  21. <script type="text/javascript">
  22. document.write('<script src="../assets/init.js?id='+(new Date().getTime())+'" type="text/javascript" charset="utf-8"><\/script>');
  23. </script>
  24. </head>
  25. <body>
  26. <div id="app" class="padding-sm" v-cloak>
  27. <div>
  28. <div class="flex align-center margin-bottom-sm">
  29. <div>
  30. <el-input placeholder="请输入关键词" v-model="inpKey" @input="Search">
  31. <i slot="prefix" class="el-input__icon el-icon-search"></i>
  32. </el-input>
  33. </div>
  34. <div class="tableTool">
  35. <el-button type="primary" size="small" class="margin-left-sm">查询</el-button>
  36. <el-button type="success" size="small" @click="newAdd">新增</el-button>
  37. </div>
  38. </div>
  39. <el-table
  40. :data="tableData"
  41. :header-cell-style="{background:'#082041',color:'#fff'}"
  42. class="elTable"
  43. row-key="menuId"
  44. border
  45. lazy
  46. load="load"
  47. :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
  48. <el-table-column align="center" prop="menuName" label="菜单名称"> </el-table-column>
  49. <el-table-column align="center" prop="icon" label="图标">
  50. <template slot-scope="scope">
  51. <i :class="'iconfont '+scope.row.icon"></i>
  52. </template>
  53. </el-table-column>
  54. <el-table-column align="center" prop="perms" label="权限标识"> </el-table-column>
  55. <el-table-column align="center" prop="orderNum" label="排序"> </el-table-column>
  56. <el-table-column align="center" prop="path" label="页面路径"> </el-table-column>
  57. <el-table-column align="center" prop="status" label="状态">
  58. <template slot-scope="scope">
  59. <el-switch
  60. :value="scope.row.status == 0"
  61. disabled
  62. active-color="#13ce66"
  63. inactive-color="#ff4949">
  64. </el-switch>
  65. </template>
  66. </el-table-column>
  67. <el-table-column align="center" prop="createTime" width='180' label="创建时间"> </el-table-column>
  68. <el-table-column
  69. align="center"
  70. width="200"
  71. label="操作">
  72. <template slot-scope="scope">
  73. <el-button type="text" size="small" @click="newAdd(scope.row)" class="text-sray">
  74. <i class="el-icon-plus"></i>新增
  75. </el-button>
  76. <el-button type="text" size="small" @click="Edit(scope.row)" class="text-green">
  77. <i class="el-icon-edit"></i>编辑
  78. </el-button>
  79. <el-button type="text" size="small" @click="Delete(scope.row)" class="text-red">
  80. <i class="el-icon-delete"></i>删除
  81. </el-button>
  82. </template>
  83. </el-table-column>
  84. </el-table>
  85. </div>
  86. <el-dialog title="部门信息" :visible.sync="dialogVisible" width="60%">
  87. <div class="br" style="text-align: center;">
  88. <div class="_Form">
  89. <div class="flex align-center">
  90. <div class="formTxt" style="border-left: none;">上级菜单</div>
  91. <div class="formInp">
  92. <el-select :placeholder="parentName.menuName" ref="conSelect" style="width: 100%;">
  93. <el-option>
  94. <el-tree
  95. ref="tree"
  96. node-key="id"
  97. :data="TreeData"
  98. :props="defaultProps"
  99. @node-click="nodeClick"
  100. />
  101. </el-option>
  102. </el-select>
  103. </div>
  104. </div>
  105. <div class="flex align-center">
  106. <div class="formTxt" style="border-left: none;">菜单类型</div>
  107. <div class="formInp text-left">
  108. <el-radio v-model="nowForm.menuType" label="M">目录</el-radio>
  109. <el-radio v-model="nowForm.menuType" label="C">菜单</el-radio>
  110. </div>
  111. </div>
  112. <div class="flex align-center">
  113. <div class="formTxt" style="border-left: none;">菜单图标</div>
  114. <div class="formInp"><el-input v-model="nowForm.icon" placeholder="菜单图标"></el-input></div>
  115. </div>
  116. <div class="flex align-center">
  117. <div class="flex-sub flex align-center">
  118. <div class="formTxt" style="border-left: none;"><span class="text-red">*</span>菜单名称:</div>
  119. <div class="formInp"><el-input v-model="nowForm.menuName" placeholder="菜单名称"></el-input></div>
  120. </div>
  121. <div class="flex-sub flex align-center">
  122. <div class="formTxt">权限标识:</div>
  123. <div class="formInp"><el-input v-model="nowForm.perms" placeholder="权限标识"></el-input></div>
  124. </div>
  125. </div>
  126. <div class="flex align-center">
  127. <div class="flex-sub flex align-center">
  128. <div class="formTxt" style="border-left: none;"><span class="text-red">*</span>页面路径:</div>
  129. <div class="formInp"><el-input v-model="nowForm.path" placeholder="页面路径"></el-input></div>
  130. </div>
  131. <div class="flex-sub flex align-center">
  132. <div class="formTxt"><span class="text-red">*</span>显示顺序:</div>
  133. <div class="formInp"><el-input type="number" min="0" v-model="nowForm.orderNum" placeholder="角色顺序"></el-input></div>
  134. </div>
  135. </div>
  136. <div class="flex align-center" style="border: none;">
  137. <div class="flex-sub flex align-center">
  138. <div class="formTxt" style="border-left: none;">显示状态:</div>
  139. <div class="text-left formInp">
  140. <el-radio v-model="nowForm.visible" label="0">显示</el-radio>
  141. <el-radio v-model="nowForm.visible" label="1">隐藏</el-radio>
  142. </div>
  143. </div>
  144. <div class="flex-sub flex align-center">
  145. <div class="formTxt">状态:</div>
  146. <div class="text-left formInp">
  147. <el-radio v-model="nowForm.status" label="0">正常</el-radio>
  148. <el-radio v-model="nowForm.status" label="1">停用</el-radio>
  149. </div>
  150. </div>
  151. </div>
  152. </div>
  153. </div>
  154. <div class="padding-sm text-center">
  155. <el-button size="small" @click="dialogVisible = false;">取消</el-button>
  156. <el-button size="small" type="success" @click="conFirm">提交</el-button>
  157. </div>
  158. </el-dialog>
  159. </div>
  160. <script type="text/javascript">
  161. document.write('<script src="../assets/menuManege.js?id='+(new Date().getTime())+'" type="text/javascript" charset="utf-8"><\/script>');
  162. </script>
  163. </body>
  164. </html>