batch-setlevel-user.vue 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <!--
  2. 批量设置用户名单级别
  3. @Author: linqian
  4. @Date: 2021-07-08 11:31
  5. -->
  6. <template>
  7. <div>
  8. <el-form inline>
  9. <el-form-item label="白名单级别:">
  10. <dg-select v-model="level" enum="ListLevelEnum"></dg-select>
  11. </el-form-item>
  12. </el-form>
  13. <p style="margin-bottom: 5px">选中的人员列表:</p>
  14. <dg-table :data="selectedData" border row-key="id" paging-type="client" :pagination-total="selectedData.length">
  15. <dg-table-column type="index" label="序号" width="75" align="center" />
  16. <dg-table-column label="姓名" prop="user" align="center">
  17. <template slot-scope="{ row }">
  18. {{ row.name || row.userName }}
  19. </template>
  20. </dg-table-column>
  21. <template v-for="item in tableHeader">
  22. <dg-table-column :key="item.id" v-bind="item" align="center"> </dg-table-column>
  23. </template>
  24. </dg-table>
  25. <div v-footer>
  26. <dg-button @click="handleCancel">取消</dg-button>
  27. <dg-button type="primary" @click="handleSubmit">确定</dg-button>
  28. </div>
  29. </div>
  30. </template>
  31. <script>
  32. import { saveWhiteList, updateWhiteListLevel } from '@/api/list-manage';
  33. export default {
  34. components: {},
  35. props: {
  36. selectedData: Array,
  37. operate: {
  38. type: String
  39. }
  40. },
  41. data() {
  42. return {
  43. tableHeader: [
  44. {
  45. label: '身份证号码',
  46. prop: 'idcard'
  47. },
  48. {
  49. label: '单位名称',
  50. prop: 'orgName'
  51. }
  52. ],
  53. level: '1' // 默认为低级别
  54. };
  55. },
  56. computed: {},
  57. methods: {
  58. handleCancel() {
  59. this.$emit('close');
  60. },
  61. // 保存
  62. save() {
  63. const params = {
  64. level: this.level,
  65. subIds: this.selectedData.map((item) => item.id)
  66. };
  67. return new Promise((resolve) => {
  68. saveWhiteList(params).then((res) => {
  69. resolve(res.data);
  70. this.$message.success('保存成功!');
  71. });
  72. });
  73. },
  74. // 设置级别
  75. setLevel() {
  76. const params = {
  77. level: this.level,
  78. listIds: this.selectedData.map((item) => item.listId)
  79. };
  80. return new Promise((resolve) => {
  81. updateWhiteListLevel(params).then((res) => {
  82. resolve(res.data);
  83. this.$message.success('设置成功!');
  84. });
  85. });
  86. },
  87. async handleSubmit() {
  88. // 添加白名单
  89. if (this.operate == 'add') {
  90. await this.save();
  91. } else {
  92. // 设置白名单
  93. await this.setLevel();
  94. }
  95. this.$emit('success');
  96. }
  97. },
  98. created() {},
  99. mounted() {}
  100. };
  101. </script>
  102. <style lang='scss'>
  103. </style>