import Api from '~/service/Api';
import commonFunctions from '~/mixin/commonFunctions.js';
import Utils from "~/utils";
import moment from 'moment'
export default {
  mixins: [commonFunctions],
  methods: {
    // 机构列表
    async getBranchList() {
      const loading = this.loading();
      let res = await Api.post('/public/quesel/getActBranchList');
      if (res.respCode == SUCCESS) {
        this.bchtypList = res.data.list;
      }
      loading.close();
    },
    // 经办柜员列表
    async getUserList() {
      const loading = this.loading();
      let param = {};
      if (this.model.bchcon) {
        param.bchcon = this.model.bchcon
      }
      let res = await Api.post("/public/quesel/getActUserList", param);
      if (res.respCode == SUCCESS) {
        this.userList = res.data.list;
      }
      loading.close();
    },
    async getAutoflowStaList() {
      const loading = this.loading();
      let res = await Api.post('/public/autsel/getAutoflowStaList');
      if (res.respCode == SUCCESS) {
        this.staList = res.data;
      }
      loading.close();
    },
    // 查询列表
    async handleSearch() {
      let inidatfro = this.model.inidatfro;
      let inidattil = this.model.inidattil;
      if (!inidattil) {
        this.$notify.error({
          title: '错误',
          message: '查询结束日期必输!'
        });
        return;
      }
      let params = {
        roletypeId: JSON.parse(window.sessionStorage.curRole).id,
        roletypeName: JSON.parse(window.sessionStorage.curRole).name,
        ownref: this.model.ownref,
        inidatfro: inidatfro ? moment(inidatfro).format('YYYY-MM-DD') + ' 00:00:00' : "",
        inidattil: moment(inidattil).format('YYYY-MM-DD') + ' 23:59:59',
        //paytyp: this.model.paytyp,
        //cptrou: this.model.cptrou,
        staLs: this.model.staLs,
        usrcon: this.model.usrcon,
        bchcon: this.model.bchcon,
        pageNum: this.pagination.pageNum,
        pageSize: this.pagination.pageSize,
      };
      const loading = this.loading();
      const res = await Api.post('/public/autsel/list', params);
      if (res.respCode === SUCCESS) {
        this.tableData = res.data.list;
        this.model.total = res.data.total;
        this.model.pageNum = res.data.pageNumber;
        this.model.pageSize = res.data.pageSize;
      }
      loading.close();
    },
    // 转人工处理
    async trnManHandle(row) {
      const loading = this.loading();
      let param = {
        queinr: row.queinr,
        inr: row.inr,
      };
      let res = await Api.post("/public/autsel/trnManHandle", param);
      loading.close();
      if (res.respCode == SUCCESS) {
        this.$notify.success("已转人工队列");
        this.handleSearch();
      }
    },
    async exportExcel() {
      let inidatfro = this.model.inidatfro;
      let inidattil = this.model.inidattil;
      if (!inidattil) {
        this.$notify.error({
          title: '错误',
          message: '查询结束日期必输!'
        });
        return;
      }
      let params = {
        roletypeId: JSON.parse(window.sessionStorage.curRole).id,
        roletypeName: JSON.parse(window.sessionStorage.curRole).name,
        ownref: this.model.ownref,
        inidatfro: inidatfro ? moment(inidatfro).format('YYYY-MM-DD') + ' 00:00:00' : "",
        inidattil: moment(inidattil).format('YYYY-MM-DD') + ' 23:59:59',
        staLs: this.model.staLs,
        usrcon: this.model.usrcon,
        bchcon: this.model.bchcon,
      };
      let res = await Api.post('/public/autsel/exportExcel', params);
      if (res.respCode === SUCCESS) {
          let name = moment(new Date()).format('yyyy-MM-DD HH:mm:ss');
          let typnam = "自动化队列";
          Utils.exportToExcel(res.data, typnam + "_" + name + ".xlsx", typnam);
      }
  },
  }
}