import { ContentConfig } from "/@/components/PageContent";
import { httpNewList, httpDelete } from "/@/api/InvoiceSales/capitalClaim";

import { h } from "vue";
import { ElTag } from "element-plus"
import { tradeTypeOptions, capital_status } from "./configs";
import { renderIconLabelLeft } from "/@/utils/columnRenderHelper";

const columns = [
  {
    label: "资金编码",
    prop: "tradNo",
    fixed: "left",
    width: 150
  },
  {
    label: '批次号',
    width: 100,
    prop: 'pcCode'
  },
  {
    label: "总金额",
    prop: "total_fee",
    width: 120
  },
  {
    label: "状态",
    prop: "status",
    width: 100,
    cellRenderer: ({ row, props }) =>
      h(
        ElTag,
        { size: props.size },
        {
          default: () => {
            return (
              capital_status.find(s => String(row.status) === String(s.value))?.label ||
              "--"
            );
          }
        }
      )
  },
  {
    label: "未认领金额",
    prop: "balance",
    width: 120
  },
  {
    label: "已认领金额",
    prop: "used_fee",
    width: 120
  },
  {
    label: '回款类型',
    width: 120,
    cellRenderer({ row }){
      return h(ElTag, { size: 'small' }, {
        default: () => tradeTypeOptions.find(({ value }) => value == row.trade_type)?.label || '--'
      })
    }
  },
  {
    label: '业务公司',
    width: 160,
    ...renderIconLabelLeft('companyNo', 'companyName', '收款方公司编码:')
  },
  {
    label: '收款方公司',
    width: 160,
    ...renderIconLabelLeft('trade_in_code', 'trade_in', '收款方公司编码:')
  },
  {
    label: '收款方账户',
    width: 120,
    prop: 'trade_in_account'
  },
  {
    label: '交易时间',
    width: 120,
    prop: 'trade_time'
  },
  {
    label: '客户机构名称',
    width: 160,
    prop: 'customerName'
  },
  {
    label: '客户付款银行户名',
    width: 120,
    prop: 'trade_out'
  },
  {
    label: '客户付款行名',
    width: 120,
    prop: 'trade_bank'
  },
  {
    label: '客户付款银行账号',
    width: 120,
    prop: 'trade_account'
  },
  {
    label: '客户PO',
    width: 120,
    prop: 'poCode'
  },
  {
    label: '客户DN',
    width: 120,
    prop: 'NdCode'
  },
  {
    label: '平台采购PO',
    width: 120,
    prop: 'palt_po'
  },
  {
    label: '泰e购SKU',
    width: 120,
    prop: 'skuCode'
  },
  {
    label: '平台物料名称',
    width: 120,
    prop: 'goodName'
  },
  {
    label: '产品数量',
    width: 120,
    prop: 'goodNum'
  },
  {
    label: '平台公司收入单价',
    width: 120,
    prop: 'platPrice'
  },
  {
    label: '平台公司收入总价',
    width: 120,
    prop: 'plat_total'
  },
  {
    label: '业务公司收入单价',
    width: 120,
    prop: 'comPrice'
  },
  {
    label: '业务公司收入总价',
    width: 120,
    // prop: 'comPrice',
    cellRenderer({ row }){
      return row.trade_type == '0' ? row.total_fee : row.com_total
    }
  },
  {
    label: '交易用途',
    width: 120,
    prop: 'trade_used'
  },
  {
    label: '创建人',
    width: 120,
    prop: 'apply_name'
  },
  {
    label: '创建时间',
    width: 120,
    prop: 'addtime'
  },
  // {
    // label: '平台订单编号',
  //   prop: 'poCode',
  //   width: 150
  // },
  // {
  //   label: "状态",
  //   prop: "status",
  //   width: 100,
  //   cellRenderer: ({ row, props }) =>
  //     h(
  //       ElTag,
  //       {
  //         size: props.size
  //       },
  //       {
  //         default: () => {
  //           const status = row.logNo ? CAPITAL_STATUS : capital_status;
  //           return (
  //             status.find(s => String(row.status) === String(s.value))?.label ||
  //             "--"
  //           );
  //         }
  //       }
  //     )
  // },
  // {
  //   label: "交易用途",
  //   prop: "trade_used",
  //   width: 120
  // },
  // {
  //   label: "交易时间",
  //   prop: "trade_time",
  //   width: 140
  // },
  // {
  //   label: "付款单位名称",
  //   prop: "trade_out",
  //   width: 160
  // },
  // {
  //   label: "付款单位账号",
  //   prop: "trade_account",
  //   width: 160
  // },
  // {
  //   label: "收款公司账户",
  //   prop: "trade_in_account",
  //   width: 145
  // },
  // {
  //   label: "交易行名",
  //   prop: "trade_bank",
  //   width: 160
  // },
  // {
  //   label: "收款公司编码",
  //   prop: "companyNo",
  //   width: 150
  // },
  // {
  //   label: "收款公司名称",
  //   prop: "trade_in",
  //   width: 145
  // },
  // {
  //   label: "资金导入时间",
  //   prop: "addtime",
  //   width: 140
  // },
  {
    label: "操作",
    fixed: "right",
    width: 60,
    slot: "operation"
  }
];

const contentConfig: ContentConfig = {
  title: "资金认领管理",
  columns,
  isTree: true,
  showDelete({ status } ={}, isSuperUser ) { return status == '1' && !isSuperUser },
  apis: {
    httpList: httpNewList,
    httpDelete
  }
};

export default contentConfig;
