<template>
  <!-- 停用客户资料-->
  <a-modal class="commonModal warehouse-disable" title="停用客户资料" v-model:visible="visible" centered :maskClosable="false" @cancel="cancel" width="890px">
    <template #footer>
      <a-button key="submit" class="cancelBtn" :loading="loading" :disabled="loading" @click="cancel">取消 </a-button>
      <a-button key="submit" type="primary" :loading="loading" :disabled="loading" @click="submit">确认停用 </a-button>
    </template>
    <Detail :selectedRow="selectedRow" />
  </a-modal>
</template>

<script lang="ts">
import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
import { _closeModal } from '@/common/setup/modal/modal';
import { UpdateUserAccountStatus } from '@/services/go/ermcp/customInfo';
import { QueryCustomInfoType, UpdateUserAccountReq } from '@/services/go/ermcp/customInfo/interface';
import { Modal } from 'ant-design-vue';
import { defineComponent, PropType, ref } from 'vue';
import Detail from '../common-detail/index.vue';

export default defineComponent({
  name: 'custom-disable',
  emits: ['cancel', 'update'],
  components: { Detail },
  props: {
    selectedRow: {
      type: Object as PropType<QueryCustomInfoType>,
      default: {},
    },
  },
  setup(props, context) {
    const { visible, cancel } = _closeModal(context);
    const maskClosableFlag = ref<boolean>(false);
    const loading = ref<boolean>(false);

    function submit() {
      Modal.confirm({
        title: '是否确认停用客户资料',
        okText: '确认停用',
        cancelText: '取消',
        onOk() {
          let reqParams: UpdateUserAccountReq = {
            userID: props.selectedRow.userid,
            accountStatus: 6,
          };
          requestResultLoadingAndInfo(UpdateUserAccountStatus, reqParams, loading, ['停用成功', '停用失败:']).then(() => {
            cancel(true);
          });
        },
        onCancel() { },
      });
    }

    return {
      visible,
      cancel,
      submit,
      loading,
      maskClosableFlag,
    };
  },
});
</script>
