Пример #1
0
        public ActionResult Index()
        {
            var model  = new RptKpiMonitoringModel();
            var filter = new KpiMonitoringGetByParamInput();

            model.MainMenu     = _mainMenu;
            model.CurrentLogin = CurrentUser;

            var FormTypeList = new Dictionary <string, string> {
                { "CSF", "CSF" }, { "CTF", "CTF" }, { "CRF", "CRF" }
            };
            var VehicleUsageList = _settingBLL.GetSetting().Where(x => x.SettingGroup == "VEHICLE_USAGE_BENEFIT").ToList();
            var BasetownList     = _employeeBLL.GetEmployee().Where(x => x.IS_ACTIVE).Select(x => new { BASETOWN = x.BASETOWN }).Distinct().OrderBy(x => x.BASETOWN).ToList();

            model.SearchView.FormDate = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1);
            model.SearchView.ToDate   = DateTime.Today;

            model.SearchView.FormTypeList     = new SelectList(FormTypeList, "Key", "Value");
            model.SearchView.VehicleUsageList = new SelectList(VehicleUsageList, "SettingName", "SettingName");
            model.SearchView.LocationList     = new SelectList(BasetownList, "BASETOWN", "BASETOWN");

            filter.FromDate = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1);
            filter.ToDate   = DateTime.Today;

            try
            {
                var ListTransactionDto = _kpiMonitoringBLL.GetTransaction(filter);
                var ListTransaction    = Mapper.Map <List <KpiMonitoringItem> >(ListTransactionDto);
                var UserLogin          = GetUserLogin();

                foreach (var item in ListTransaction)
                {
                    var data = GetDateworkflow(item, UserLogin);
                    model.ListTransaction.Add(data);
                }
            }
            catch (Exception exp)
            {
                model.ErrorMessage = exp.Message;
            }

            return(View(model));
        }
Пример #2
0
        public PartialViewResult ListTransaction(RptKpiMonitoringModel model)
        {
            try
            {
                var ListTransaction = GetTransaction(model.SearchView);
                var UserLogin       = GetUserLogin();
                foreach (var item in ListTransaction)
                {
                    var data = GetDateworkflow(item, UserLogin);
                    model.ListTransaction.Add(data);
                }
            }
            catch (Exception exp)
            {
                model.ErrorMessage = exp.Message;
            }

            return(PartialView("_ListTransaction", model));
        }
Пример #3
0
        public void ExportKpiMonitoring(RptKpiMonitoringModel model)
        {
            string pathFile = "";

            pathFile = CreateXlsKpiMonitoring(model);

            var newFile = new FileInfo(pathFile);

            var fileName = Path.GetFileName(pathFile);

            string attachment = string.Format("attachment; filename={0}", fileName);

            Response.Clear();
            Response.AddHeader("content-disposition", attachment);
            Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
            Response.WriteFile(newFile.FullName);
            Response.Flush();
            newFile.Delete();
            Response.End();
        }
Пример #4
0
        private string CreateXlsKpiMonitoring(RptKpiMonitoringModel model)
        {
            var ListTransaction = GetTransaction(model.SearchView);
            var UserLogin       = GetUserLogin();

            foreach (var item in ListTransaction)
            {
                var data = GetDateworkflow(item, UserLogin);
                model.ListTransaction.Add(data);
            }

            var slDocument = new SLDocument();

            //title
            slDocument.SetCellValue(1, 1, "KPI MONITORING");
            slDocument.MergeWorksheetCells(1, 1, 1, 19);
            //create style
            SLStyle valueStyle = slDocument.CreateStyle();

            valueStyle.SetHorizontalAlignment(HorizontalAlignmentValues.Center);
            valueStyle.Font.Bold     = true;
            valueStyle.Font.FontSize = 18;
            slDocument.SetCellStyle(1, 1, valueStyle);

            //create header
            slDocument = CreateHeaderExcelKpiMonitoring(slDocument);

            //create data
            slDocument = CreateDataExcelKpiMonitoring(slDocument, model.ListTransaction);

            var fileName = "Kpi_Monitoring" + DateTime.Now.ToString(" yyyyMMddHHmmss") + ".xlsx";
            var path     = Path.Combine(Server.MapPath(Constans.UploadPath), fileName);

            slDocument.SaveAs(path);

            return(path);
        }