Example #1
0
        public IActionResult Details(int id)
        {
            var report = this.Db.Reports.FirstOrDefault(r => r.Id == id);

            if (report == null)
            {
                return(this.RedirectToAction("/"));
            }

            var model = new DetailedReportViewModel
            {
                Id           = report.Id,
                Title        = report.Task.Title,
                Description  = report.Task.Description,
                DueDate      = report.Task.DueDate.ToString(Constants.DateTimeFormat),
                Level        = report.Task.AffectedSectors.Count,
                Participants = report.Task.Participants,
                ReportedOn   = report.ReportedOn.ToString(Constants.DateTimeFormat),
                Reporter     = report.Reporter.Username,
                Sectors      = string.Join(", ", report.Task.AffectedSectors.Select(s => s.Sector.ToString())),
                Status       = report.Status.ToString()
            };

            this.Model["Report"] = model;

            return(this.RenderView());
        }
Example #2
0
        public ActionResult Detailed(DetailedReportViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }
            var newmodel = GetModelForDetailed(model.DateReport);

            return(View(newmodel));
        }
Example #3
0
        private DetailedReportViewModel GetModelForDetailed(DateTime date)
        {
            var firstDayOfMonth = new DateTime(date.Year, date.Month, 1);
            var lastDayOfMonth  = firstDayOfMonth.AddMonths(1).AddDays(-1);
            var finanses        = _unitOfWork.FinanceRepository.GetOverview(x => x.TimeEvent >= firstDayOfMonth && x.TimeEvent <= lastDayOfMonth).ToList();
            var model           = new DetailedReportViewModel()
            {
                DateReport       = date,
                AnyCashOperation = false,
                Categories       = _unitOfWork.CategoryRepository.GetOverview().ToList()
            };

            if (finanses.Any())
            {
                model.Revenues         = Mapper.Map <List <RevenueViewModel> >(finanses.Where(x => !x.Category.IsExpense).ToList());
                model.Expenses         = Mapper.Map <List <RevenueViewModel> >(finanses.Where(x => x.Category.IsExpense).ToList());
                model.AnyCashOperation = true;
            }
            ModelState.Clear();
            ModelState.Remove("DateReport");
            return(model);
        }
    //By   : Anup Kumar Gupta
    //Date : 21/12/2015
    //Refer: BasicReportViewModel
    public List<DetailedReportViewModel> GetDataForDetailedReport(DateTime date)
    {
        List<DetailedReportViewModel> lstDetailedReportViewModel = new List<DetailedReportViewModel>();
        DataTable dt, dtShifts, dtPunchRecords;
        DBDataHelper.ConnectionString = ConfigurationManager.ConnectionStrings["CSBiometricAttendance"].ConnectionString;
        List<SqlParameter> list_params = new List<SqlParameter>() { new SqlParameter("@date", date) };

        try
        {
            using (DBDataHelper helper = new DBDataHelper())
            {
                dt = helper.GetDataTable("spGetEmployeesForDetailedReport", SQLTextType.Stored_Proc, list_params);
                dtShifts = helper.GetDataTable("spGetActiveShift", SQLTextType.Stored_Proc);

                foreach (DataRow row in dt.Rows)
                {
                    DetailedReportViewModel model = new DetailedReportViewModel();
                    model.EmployeeCode = Int32.Parse(row[1].ToString());
                    model.Name = row[0].ToString();

                    if (row[2] != DBNull.Value)
                    {
                        model.InTime = row[2].ToString();
                        model.OutTime = row[3] == DBNull.Value ? dtShifts.Rows[0]["SecondHalfEnd"].ToString() : row[3].ToString();
                        if (row[3] != DBNull.Value)
                            model.Status = "Present";
                        else
                            model.Status = "PresentWithNoOutPunch";
                    }
                    else
                    {
                        model.InTime = "00:00:00.0000000";
                        model.OutTime = "00:00:00.0000000";

                        ManageLeaves objManageLeaves = new ManageLeaves();
                        string TypeOfLeave;
                        if (objManageLeaves.IsEmployeeOnLeave(model.EmployeeCode, date, out TypeOfLeave))
                            model.Status = TypeOfLeave;
                        else
                            model.Status = "Absent";
                    }

                    model.TotalDuration = model.Duration.ToString();
                    model.FirstHalfStartTime = dtShifts.Rows[0]["FirstHalfStart"].ToString();
                    model.FirstHalfEndTime = dtShifts.Rows[0]["FirstHalfEnd"].ToString();
                    model.SecondHalfStartTime = dtShifts.Rows[0]["SecondHalfStart"].ToString();
                    model.SecondHalfEndTime = dtShifts.Rows[0]["SecondHalfEnd"].ToString();
                    model.Date = date.Date;
                    List<SqlParameter> list_paramsForPunchRecords = new List<SqlParameter>();
                    list_paramsForPunchRecords.Add(new SqlParameter("@date", date));
                    list_paramsForPunchRecords.Add(new SqlParameter("@employeeId", model.EmployeeCode));
                    dtPunchRecords = helper.GetDataTable("spGetPunchRecordsOfEmployeeDateWise", SQLTextType.Stored_Proc, list_paramsForPunchRecords);
                    foreach (DataRow rowPunchRecords in dtPunchRecords.Rows)
                    {
                        model.PunchRecords += rowPunchRecords[0].ToString() + " in(AKGEC), " + rowPunchRecords[1].ToString() + " out(AKGEC). ";
                    }

                    lstDetailedReportViewModel.Add(model);
                }
            }
        }
        catch (Exception)
        {
            //
        }
        return lstDetailedReportViewModel;
    }