using CLIP.eForm.Consent.Entity;
using CLIP.eForm.Server.Data;
using IBatisNet.DataMapper;
using System;
using System.Collections;
using System.Collections.Generic;

namespace CLIP.eForm.Consent.Dac {
  //class FormCategoryDac
  public class PatListDac : DacBase {
    public IList<PatListVO> GetPatList(ISqlMapper mapper, Hashtable param) {
      IList<PatListVO> result = null;
      String flag = (String)param["selectFlag"];

      if(flag.Equals("I"))//입원환자 리스트
      {
        return mapper.QueryForList<PatListVO>("getInPatList", param);
      }
      else if(flag.Equals("O"))//외래환자 리스트
      {
        return mapper.QueryForList<PatListVO>("getOutPatList", param);
      }
      else if(flag.Equals("OP"))//수술환자 리스트
      {
        return mapper.QueryForList<PatListVO>("getOpPatList", param);
      }
      else if(flag.Equals("E"))//응급실환자 리스트
      {
        return mapper.QueryForList<PatListVO>("getErPatList", param);
      }
      else {
        return result;
      }
    }

    public IList<PatInfoListVO> GetSrchPatInfo(ISqlMapper mapper, Hashtable param) {
      return mapper.QueryForList<PatInfoListVO>("getSrchPatInfo", param);
    }

    public IList<DeptListVO> GetDeptList(ISqlMapper mapper, Hashtable param) {
      return mapper.QueryForList<DeptListVO>("getDeptList", param);
    }

    public IList<DeptListVO> GetWardList(ISqlMapper mapper, Hashtable param) {
      return mapper.QueryForList<DeptListVO>("getWardList", param);
    }

    public IList<DocListVO> GetDocList(ISqlMapper mapper, Hashtable param) {
      return mapper.QueryForList<DocListVO>("getDocList", param);
    }
  }
}
