AdminUserNode.vue 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. <template>
  2. <el-container>
  3. <el-header height="220">
  4. <h3>我的节点</h3>
  5. <el-button type="text">添加节点</el-button>
  6. <el-button type="text" @click="onShowKeyDialog">凭证列表</el-button>
  7. </el-header>
  8. <el-main>
  9. <el-table
  10. :data="dataList"
  11. border
  12. height="480"
  13. style="width: 100%"
  14. >
  15. <el-table-column
  16. fixed="left"
  17. label="No"
  18. type="index"
  19. />
  20. <el-table-column
  21. prop="storeNodeAddr"
  22. label="节点地址"
  23. />
  24. <el-table-column
  25. prop="userNodeDomain"
  26. label="节点域名"
  27. />
  28. <el-table-column
  29. prop="referer"
  30. label="Referer"
  31. />
  32. <el-table-column
  33. prop="secretKey"
  34. label="SecretKey"
  35. />
  36. <el-table-column
  37. fixed="right"
  38. label="操作"
  39. width="280"
  40. >
  41. <template slot-scope="scope">
  42. <el-button
  43. size="mini"
  44. @click="handleEdit(scope.$index, scope.row)"
  45. >编辑</el-button>
  46. <el-button
  47. size="mini"
  48. @click="handleEdit(scope.$index, scope.row)"
  49. >详情</el-button>
  50. <el-button
  51. size="mini"
  52. type="danger"
  53. @click="handleDelete(scope.$index, scope.row)"
  54. >删除</el-button>
  55. </template>
  56. </el-table-column>
  57. </el-table>
  58. </el-main>
  59. <!-- 修改视频可见范围对话框 -->
  60. <el-dialog
  61. append-to-body
  62. :visible.sync="showKeyDialog"
  63. center
  64. >
  65. <el-table
  66. :data="tableList"
  67. border
  68. height="480"
  69. style="width: 100%"
  70. >
  71. <el-table-column
  72. fixed="left"
  73. label="No"
  74. type="index"
  75. />
  76. <el-table-column
  77. prop="accessKeyId"
  78. label="AccessKeyId"
  79. />
  80. <el-table-column
  81. prop="accessKeySecret"
  82. label="AccessKeySecret"
  83. />
  84. <el-table-column
  85. fixed="right"
  86. label="操作"
  87. >
  88. <template slot-scope="scope">
  89. <el-button
  90. size="mini"
  91. @click="handleEdit(scope.$index, scope.row)"
  92. >复制</el-button>
  93. <el-button
  94. size="mini"
  95. type="danger"
  96. @click="handleReset(scope.$index, scope.row)"
  97. >重置</el-button>
  98. </template>
  99. </el-table-column>
  100. </el-table>
  101. </el-dialog>
  102. </el-container>
  103. </template>
  104. <script>
  105. import { getUserKeyList, getUserNodeList, resetUserKey } from '@/api/oss'
  106. export default {
  107. name: 'AdminUserNode',
  108. data() {
  109. return {
  110. queryInfo: {
  111. path: null
  112. },
  113. // 屏幕宽度, 为了控制分页条的大小
  114. screenWidth: document.body.clientWidth,
  115. currentPage: 1,
  116. pageSize: 12,
  117. totalSize: 0,
  118. dataList: [],
  119. nextId: 0,
  120. tableList: [],
  121. // **********************************************************************
  122. showKeyDialog: false,
  123. form: {
  124. videoId: null,
  125. scope: 1
  126. }
  127. }
  128. },
  129. created() {
  130. document.title = '我的节点'
  131. this.getData()
  132. },
  133. methods: {
  134. getData() {
  135. this.dataList = []
  136. getUserNodeList().then(resp => {
  137. if (resp.code === 0) {
  138. this.dataList = resp.data
  139. } else {
  140. this.$message.error(resp.msg)
  141. }
  142. })
  143. },
  144. onRefresh() {
  145. this.getData()
  146. },
  147. handleCurrentChange(pageNumber) {
  148. this.currentPage = pageNumber
  149. this.getData()
  150. // 回到顶部
  151. scrollTo(0, 0)
  152. },
  153. handleEdit(index, row) {
  154. this.$message.info('handleEdit')
  155. },
  156. handleDelete(index, row) {
  157. this.$confirm('确定要删除 ' + row.title + '?', '提示', {
  158. confirmButtonText: '确定',
  159. cancelButtonText: '取消',
  160. type: 'warning'
  161. }).then(() => {
  162. this.$message.info('handleDelete')
  163. }).catch(() => {
  164. this.$message({
  165. type: 'info',
  166. message: '已取消'
  167. })
  168. })
  169. },
  170. handleReset(index, row) {
  171. this.$confirm('确定要重置 ' + row.accessKeyId + '?', '提示', {
  172. confirmButtonText: '确定',
  173. cancelButtonText: '取消',
  174. type: 'warning'
  175. }).then(() => {
  176. resetUserKey().then(resp => {
  177. this.$message.info(resp.msg)
  178. })
  179. }).catch(() => {
  180. this.$message({
  181. type: 'info',
  182. message: '已取消'
  183. })
  184. })
  185. },
  186. onShowKeyDialog() {
  187. this.tableList = []
  188. getUserKeyList().then(resp => {
  189. if (resp.code === 0) {
  190. this.tableList = resp.data
  191. this.showKeyDialog = true
  192. } else {
  193. this.$message.error(resp.msg)
  194. }
  195. })
  196. },
  197. handleClose() {
  198. }
  199. }
  200. }
  201. </script>
  202. <style>
  203. </style>