/*
 * @Author: code4eat awesomedema@gmail.com
 * @Date: 2023-03-03 16:31:27
 * @LastEditors: code4eat awesomedema@gmail.com
 * @LastEditTime: 2023-04-07 12:03:02
 * @FilePath: /KC-MiddlePlatform/src/pages/platform/setting/pubDicTypeMana/service.ts
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
 */



import { request } from 'umi';

//获取table列表数据

export type ReportListTableDataType = {
  id:number,
  hospId:number,
  code:number,
  name:string,
  headerText:string,
  dataSource:number,
  columnType:string,
  columnTypeName:string,
  sql:string,
  indicatorCode:string,
  indicatorCodeName:string
}


export const getReportListTableData = (params?:any) => {
  return request<{
       current:number;
       list:ReportListTableDataType[];
       pageSize:number;
       totalCount:number;
       totalPage:number;
  }>('/performance/report/getColumnList', {
    method: 'GET',
    params:{...params}
  });
};


//新增报表
export type AddTableDataType = {
  name:string,
  headerText:string,
  dataSource:number,
  columnType:string,
  sql?:string,
  indicatorCode?:string,
  indicatorCodeName?:string
}

export const addData = (data:any) => {
  return request('/performance/report/addColumn', {
    method: 'POST',
    data
  });
};



//获取报表列类型

export const getReportListType = () => {
  return request('/performance/dict/getDictDataList?current=1&pageSize=10&typeCode=9', {
    method: 'GET',
  });
};

//获取管理指标

export const getManaIndic = () => {
  return request('/performance/report/getIndicatorList', {
    method: 'GET',
  });
};


//编辑表格数据

export type ManaIndicItemTableRowEditType = {
  id:number;
}&AddTableDataType

export const editData = (data:any) => {
  return request('/performance/report/editColumn', {
    method: 'POST',
    data
  });
};

//删除表格操作
export const delData = (id:string) => {
  return request('/performance/report/deleteColumn', {
    method: 'POST',
    params:{id}
  });
};


//添加报表列
export const addReportTableList = (data:any) => {
  return request('/performance/report/addReportColumn', {
    method: 'POST',
    data
  });
};









