SetAuth.vue 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <template>
  2. <base-dialog @cancel="cancelDialog">
  3. <div slot="header">{{$t('cloudenv.setup_ssh_authentication')}}</div>
  4. <div slot="body">
  5. <dialog-selected-tips :name="$t('res.cloudaccount')" :count="params.data.length" :action="$t('cloudenv.setup_ssh_authentication')" />
  6. <dialog-table :data="params.data" :columns="params.columns.slice(0, 3)" />
  7. <a-form-model
  8. ref="form"
  9. :model="fd"
  10. :rules="rules"
  11. v-bind="formItemLayout">
  12. <a-form-model-item :label="$t('cloudenv.ssh_authentication')" prop="saml_auth">
  13. <a-radio-group v-model="fd.saml_auth">
  14. <a-radio :value="true">{{$t('cloudenv.turn_on')}}</a-radio>
  15. <a-radio :value="false">{{$t('cloudenv.turn_off')}}</a-radio>
  16. </a-radio-group>
  17. </a-form-model-item>
  18. </a-form-model>
  19. </div>
  20. <div slot="footer">
  21. <a-button type="primary" @click="handleConfirm" :loading="loading">{{ $t('dialog.ok') }}</a-button>
  22. <a-button @click="cancelDialog">{{ $t('dialog.cancel') }}</a-button>
  23. </div>
  24. </base-dialog>
  25. </template>
  26. <script>
  27. import DialogMixin from '@/mixins/dialog'
  28. import WindowsMixin from '@/mixins/windows'
  29. export default {
  30. name: 'CloudaccountSetSamlAuthDialog',
  31. mixins: [DialogMixin, WindowsMixin],
  32. data () {
  33. return {
  34. loading: false,
  35. fd: {
  36. saml_auth: this.params.data[0].saml_auth || false,
  37. },
  38. formItemLayout: {
  39. wrapperCol: {
  40. span: 21,
  41. },
  42. labelCol: {
  43. span: 3,
  44. },
  45. },
  46. }
  47. },
  48. created () {
  49. },
  50. methods: {
  51. async handleConfirm () {
  52. this.loading = true
  53. try {
  54. await this.$refs.form.validate()
  55. await this.params.onManager('update', {
  56. id: this.params.data[0].id,
  57. managerArgs: {
  58. data: {
  59. saml_auth: this.fd.saml_auth,
  60. },
  61. },
  62. })
  63. this.cancelDialog()
  64. this.params.refresh()
  65. } finally {
  66. this.loading = false
  67. }
  68. },
  69. },
  70. }
  71. </script>