Пример #1
0
        public ActionResult GetReportProfileHDTInMonth([DataSourceRequest] DataSourceRequest request, Hre_ReportProfileHDTInMonthModel Model)
        {
            #region Validate
            string message = string.Empty;
            var checkValidate = ValidatorService.OnValidateData<Hre_ReportProfileHDTInMonthModel>(Model, "Hre_ReportProfileHDTInMonth", ref message);
            if (!checkValidate)
            {
                return Json(message);
            }

            if (Model.Month == null)
            {
                Model.Month = DateTime.Now;
            }
            #endregion

            var ReportServices = new Hre_ReportServices();
            List<string> lstUnit = new List<string>();
            List<string> lstDept = new List<string>();
            List<string> lstPart = new List<string>();
            if (Model.Part != null)
            {
                lstPart = Model.Part.Split(',').ToList();
            }
            if (Model.Unit != null)
            {
                lstUnit = Model.Unit.Split(',').ToList();
            }
            if (Model.Dept != null)
            {
                lstDept = Model.Dept.Split(',').ToList();
            }

            var result = ReportServices.GetReportProfileHDTInMonth(Model.Month.Value, Model.OrgStructureIDs, lstUnit, lstDept, lstPart, Model.IsCreateTemplate, UserLogin);
            object obj = new DataTable();
            bool isDataTable = false;
            if (Model.IsCreateTemplateForDynamicGrid)
            {
                obj = result;
                isDataTable = true;
            }
            HeaderInfo headerInfo = new HeaderInfo() { Name = "Month", Value = Model.Month };
            List<HeaderInfo> listHeaderInfo = new List<HeaderInfo>() { headerInfo };

            if (Model != null && Model.IsCreateTemplate)
            {
                var path = Common.GetPath("Templates");
                ExportService exportService = new ExportService();
                ConfigExport cfgExport = new ConfigExport()
                {
                    Object = obj,
                    FileName = "Hre_ReportProfileHDTInMonth",
                    OutPutPath = path,
                    HeaderInfo = listHeaderInfo,
                    DownloadPath = Hrm_Main_Web + "Templates",
                    IsDataTable = isDataTable
                };
                var str = exportService.CreateTemplate(cfgExport);
                return Json(str);
            }



            if (Model.ExportID != Guid.Empty)
            {
                var fullPath = ExportService.Export(Model.ExportID, result, listHeaderInfo, Model.ExportType);

                return Json(fullPath);
            }
            return Json(result.ToDataSourceResult(request));
        }