public HttpResponseMessage GetSummaryResult([FromUri] DateTime dateFrom, DateTime dateTo,
                                                    string deptIds, int?employeeId)
        {
            if (dateFrom != null && dateTo != null)
            {
                var param = new ProcInstATCFSummaryParam()
                {
                    MonthFrom = dateFrom.Month,
                    MonthTo   = dateTo.Month,
                    YearFrom  = dateFrom.Year,
                    YearTo    = dateTo.Year
                };


                var repository = new Repository();


                var result = repository.ExecDynamicSqlQuery(
                    string.Format(SQL_STR_SUMMARY_RPT,
                                  param.MonthTo, param.YearTo,
                                  !string.IsNullOrEmpty(deptIds) ? (" AND A.DeptId IN (" + deptIds + ")") : string.Empty,
                                  (employeeId ?? 0) > 0 ? (" AND A.EmployeeId = " + employeeId) : string.Empty
                                  )).ToList();

                return(Request.CreateResponse(HttpStatusCode.OK, new { result }));
            }
            return(Request.CreateResponse(HttpStatusCode.OK, new { }));
        }
 public HttpResponseMessage GetSummaryExcel([FromUri] DateTime dateFrom, DateTime dateTo,
                                            string deptIds, int?employeeId, string deptNames)
 {
     if (dateFrom != null && dateTo != null)
     {
         var param = new ProcInstATCFSummaryParam()
         {
             MonthFrom = dateFrom.Month,
             MonthTo   = dateTo.Month,
             YearFrom  = dateFrom.Year,
             YearTo    = dateTo.Year,
             DeptNames = deptNames,
             SqlQuery  = string.Format(SQL_STR_SUMMARY_RPT,
                                       dateTo.Month, dateTo.Year,
                                       !string.IsNullOrEmpty(deptIds) ? (" AND A.DeptId IN (" + deptIds + ")") : string.Empty,
                                       (employeeId ?? 0) > 0 ? (" AND A.EmployeeId = " + employeeId) : string.Empty
                                       )
         };
         byte[] buffer = processInst.Export(param, _summaryReportPath, Extension);
         return(ExportFile(buffer, "ATCF_SUMMARY"));
     }
     return(Request.CreateResponse(HttpStatusCode.OK, new { }));
 }