示例#1
0
        public ActionResult GetReportRecieveObjectByTime([DataSourceRequest] DataSourceRequest request, Hre_ReportRecieveObjectByTimeModel Model)
        {
            #region Validate
            string message = string.Empty;
            var checkValidate = ValidatorService.OnValidateData<Hre_ReportRecieveObjectByTimeModel>(Model, "Hre_ReportRecieveObjectByTime", ref message);
            if (!checkValidate)
            {
                return Json(message, JsonRequestBehavior.AllowGet);
            }
            #endregion
            HeaderInfo headerInfo1 = new HeaderInfo() { Name = "DateFrom", Value = Model.DateFrom == null ? DateTime.Now : Model.DateFrom };
            HeaderInfo headerInfo2 = new HeaderInfo() { Name = "DateTo", Value = Model.DateTo == null ? DateTime.Now : Model.DateTo };
            List<HeaderInfo> listHeaderInfo = new List<HeaderInfo>() { headerInfo1, headerInfo2 };
            if (Model.DateFrom == DateTime.MinValue)
            {
                Model.DateFrom = DateTime.Now;
            }
            if (Model.DateTo == DateTime.MaxValue)
            {
                Model.DateTo = DateTime.Now;
            }
            var ReportServices = new Hre_ReportServices();
            var result = ReportServices.GetReportRecieveObjectByTime(Model.OrgStructureID, Model.DateFrom, Model.DateTo, Model.IsCreateTemplate, UserLogin);
            object obj = new DataTable();
            bool isDataTable = false;
            if (Model.IsCreateTemplateForDynamicGrid)
            {
                obj = result;
                isDataTable = true;
            }
            if (Model != null && Model.IsCreateTemplate)
            {
                var path = Common.GetPath("Templates");
                ExportService exportService = new ExportService();
                ConfigExport cfgExport = new ConfigExport()
                {
                    Object = obj,
                    FileName = "Hre_ReportRecieveObjectByTime",
                    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));
        }