public static BenefitViewModel ToViewModel(Benefit model)
        {
            if (model == null)
            {
                throw new ArgumentNullException(nameof(model), "Cannot map null Benefit");
            }

            var viewModel = new BenefitViewModel
            {
                Id         = model.Id.ToString(),
                Text       = model.Text,
                Categories = model.Categories,
                Order      = model.Order,
                Type       = model.Type,
                Active     = model.IsActive
            };

            return(viewModel);
        }
        public void Benefit_Returns_ValidViewModel()
        {
            var models = MongoBenefit.EfficiencyBenefits;

            var viewModel = models.Select(Benefit.ToViewModel).First();

            var expectedViewModel = new BenefitViewModel
            {
                Id         = "5a8417f68317338c8e080a62",
                Text       = "Benefit E1",
                Categories = new List <string> {
                    "Efficiency"
                },
                Order  = 1,
                Type   = "Test",
                Active = true
            };

            Assert.Equal(expectedViewModel, viewModel, Comparers.ModelComparer <BenefitViewModel>());
        }
        public BenefitViewModel tab_ot_search(employeeModel value)
        {
            var data = new BenefitViewModel();

            data.message = new messageModel();

            try
            {
                using (var context = new StandardCanEntities())
                {
                    if (String.IsNullOrEmpty(value.user_id))
                    {
                        throw new Exception("Unauthorized Access");
                    }
                    var userId = JwtHelper.GetUserIdFromToken(value.user_id);
                    if (String.IsNullOrEmpty(userId))
                    {
                        throw new Exception("Unauthorized Access");
                    }

                    var spData_hours = context.sp_mb_emp_ot_hours(userId, value.start_date, value.stop_date, "").ToList();
                    var spData_quota = context.sp_mb_emp_ot_quota(userId, value.start_date, value.stop_date, "").ToList();

                    data.quota_list = new List <Benefitline>();
                    data.hours_list = new List <Benefitline>();

                    double sumH = 0;
                    foreach (var item in spData_quota)
                    {
                        Benefitline news = new Benefitline();
                        news.line1 = item.ot_text;
                        news.hours = item.ot_hours;
                        data.quota_list.Add(news);
                        sumH += item.total_minute == null ? 0 : Convert.ToInt32(item.total_minute);
                    }
                    var HH      = sumH / 60;
                    var MM      = sumH % 60;
                    var totalQ  = HH.ToString().Split('.');
                    var totalQM = MM.ToString().Split('.');
                    data.quota = totalQ[0] + ":" + totalQM[0];

                    HH   = 0;
                    MM   = 0;
                    sumH = 0;
                    foreach (var item in spData_hours)
                    {
                        Benefitline news = new Benefitline();
                        news.line1 = item.ot_text;
                        news.hours = item.ot_hours;
                        data.hours_list.Add(news);
                        sumH += item.total_minute == null ? 0 : Convert.ToInt32(item.total_minute);
                    }
                    HH = sumH / 60;
                    MM = sumH % 60;
                    var totalH  = HH.ToString().Split('.');
                    var totalHM = MM.ToString().Split('.');
                    data.hours = totalH[0] + ":" + totalHM[0];

                    data.message.status  = "1";
                    data.message.message = "Success";
                }
            }
            catch (Exception ex)
            {
                //result.status = "E";
                //result.message = ex.Message.ToString();
                throw new Exception(ex.Message);
            }

            return(data);
        }
        public async Task <BenefitViewModel> GetOTSummaryAsync(string language, DateTime?start_date, DateTime?stop_date)
        {
            var data = new BenefitViewModel();

            data.message = new messageModel();
            try
            {
                var userId = JwtHelper.GetUserIdFromToken(HttpContext);
                if (String.IsNullOrEmpty(userId))
                {
                    throw new Exception("Unauthorized Access");
                }
                using (var context = new StandardcanContext())
                {
                    var jsonData = JsonConvert.SerializeObject(new
                    {
                        emp_id       = userId,
                        lang         = language,
                        s_start_date = start_date,
                        s_stop_date  = stop_date
                    });
                    SystemLog systemLog = new SystemLog()
                    {
                        module   = "api/Benefit/GetOTSummary",
                        data_log = jsonData
                    };
                    await _systemLogService.InsertSystemLogAsync(systemLog);

                    SqlParameter emp_id       = new SqlParameter("emp_id", userId ?? "");
                    SqlParameter s_start_date = new SqlParameter("s_start_date", start_date != null ? start_date.Value.ToString("dd/MM/yyyy") : "");
                    SqlParameter s_stop_date  = new SqlParameter("s_stop_date", stop_date != null ? stop_date.Value.ToString("dd/MM/yyyy") : "");
                    SqlParameter lang         = new SqlParameter("lang", language ?? "");

                    var spData_hours = context.SpMbEmpOTHoursResult.FromSqlRaw("sp_mb_emp_ot_hours @emp_id, @s_start_date, @s_stop_date, @lang", emp_id, s_start_date, s_stop_date, lang).ToList();
                    var spData_quota = context.SpMbEmpOTQuotaResult.FromSqlRaw("sp_mb_emp_ot_quota @emp_id, @s_start_date, @s_stop_date, @lang", emp_id, s_start_date, s_stop_date, lang).ToList();

                    data.quota_list = new List <Benefitline>();
                    data.hours_list = new List <Benefitline>();


                    double sumH = 0;
                    foreach (var item in spData_quota)
                    {
                        Benefitline news = new Benefitline();
                        news.line1 = item.ot_text;
                        news.hours = item.ot_hours;
                        data.quota_list.Add(news);
                        sumH += item.total_minute;
                    }
                    var HH      = sumH / 60;
                    var MM      = sumH % 60;
                    var totalQ  = HH.ToString().Split('.');
                    var totalQM = MM.ToString().Split('.');
                    data.quota = totalQ[0] + ":" + totalQM[0];

                    HH   = 0;
                    MM   = 0;
                    sumH = 0;
                    foreach (var item in spData_hours)
                    {
                        Benefitline news = new Benefitline();
                        news.line1 = item.ot_text;
                        news.hours = item.ot_hours;
                        data.hours_list.Add(news);
                        sumH += item.total_minute;
                    }
                    HH = sumH / 60;
                    MM = sumH % 60;
                    var totalH  = HH.ToString().Split('.');
                    var totalHM = MM.ToString().Split('.');
                    data.hours = totalH[0] + ":" + totalHM[0];

                    data.message.status = "1";
                    data.message.msg    = "Success";
                }
            }
            catch (Exception ex)
            {
                data.message.status = "2";
                data.message.msg    = ex.Message;
            }
            return(data);
        }
Exemple #5
0
        public IActionResult Edit(int id)
        {
            Job viewJob = context.Job.Find(id);

            List <RequirementViewModel> Requirements = new List <RequirementViewModel>();
            List <BenefitViewModel>     Benefits     = new List <BenefitViewModel>();
            List <TagViewModel>         Tags         = new List <TagViewModel>();

            List <Requirement> RequirementList = context.Requirements.Where(r => r.JobId == id).ToList();

            foreach (var item in RequirementList)
            {
                RequirementViewModel currentRequirementItem = new RequirementViewModel
                {
                    RequirementName = item.RequirementName,
                    JobId           = item.JobId,
                    Id = item.Id
                };
                Requirements.Add(currentRequirementItem);
            }
            ;

            List <Benefit> BenefitList = context.Benefits.Where(b => b.JobId == id).ToList();

            foreach (var item in BenefitList)
            {
                BenefitViewModel currentBenefitItems = new BenefitViewModel
                {
                    BenefitName = item.BenefitName,
                    JobId       = item.JobId,
                    Id          = item.Id
                };
                Benefits.Add(currentBenefitItems);
            }
            ;

            List <Tag> currentTags = context.Tag.Where(j => j.JobId == id).ToList();

            foreach (var item in currentTags)
            {
                TagViewModel CurrentTags = new TagViewModel
                {
                    TagName = item.TagName,
                    JobId   = item.JobId,
                    Id      = item.Id
                };
                Tags.Add(CurrentTags);
            }
            ;

            AddJobViewModel currentJob = new AddJobViewModel
            {
                Name          = viewJob.Name,
                DatePosted    = viewJob.DatePosted,
                Location      = viewJob.Location,
                PositionType  = viewJob.PositionType,
                PositionLevel = viewJob.PositionLevel,
                Description   = viewJob.Description,
                IsOpened      = viewJob.IsOpened,
                Requirements  = Requirements,
                Benefits      = Benefits,
                Tags          = Tags
            };

            return(View(currentJob));
        }
Exemple #6
0
        public IActionResult ViewJob(int id)
        {
            Job viewJob = context.Job.Find(id);

            List <Requirement> RequirementList = context.Requirements.Where(r => r.JobId == id).ToList();

            List <RequirementViewModel> Requirements = new List <RequirementViewModel>();
            List <BenefitViewModel>     Benefits     = new List <BenefitViewModel>();
            List <TagViewModel>         Tags         = new List <TagViewModel>();
            List <ApplicantViewModel>   Applicants   = new List <ApplicantViewModel>();

            foreach (var item in RequirementList)
            {
                RequirementViewModel currentRequirementItem = new RequirementViewModel
                {
                    RequirementName = item.RequirementName,
                    JobId           = item.JobId,
                    Id = item.Id
                };
                Requirements.Add(currentRequirementItem);
            }
            ;

            List <Benefit> BenefitList = context.Benefits.Where(b => b.JobId == id).ToList();

            foreach (var item in BenefitList)
            {
                BenefitViewModel currentBenefitItems = new BenefitViewModel
                {
                    BenefitName = item.BenefitName,
                    JobId       = item.JobId,
                    Id          = item.Id
                };
                Benefits.Add(currentBenefitItems);
            }
            ;

            List <Tag> currentTags = context.Tag.Where(j => j.JobId == id).ToList();

            foreach (var item in currentTags)
            {
                TagViewModel CurrentTags = new TagViewModel
                {
                    TagName = item.TagName,
                    JobId   = item.JobId,
                    Id      = item.Id
                };
                Tags.Add(CurrentTags);
            }
            ;

            List <Applicant> currentApplicants = context.Applicants.Where(a => a.JobId == id).ToList();

            foreach (var item in currentApplicants)
            {
                var matchedApplicants = context.Applicants.FirstOrDefault(a => a.Id == item.Id);
                ApplicantViewModel CurrentApplicants = new ApplicantViewModel
                {
                    UserId = matchedApplicants.UserId,
                    JobId  = item.JobId,
                    Name   = matchedApplicants.Name
                };
                Applicants.Add(CurrentApplicants);
            }

            AddJobViewModel currentJobViewModel = new AddJobViewModel
            {
                Name          = viewJob.Name,
                DatePosted    = viewJob.DatePosted,
                Location      = viewJob.Location,
                PositionType  = viewJob.PositionType,
                PositionLevel = viewJob.PositionLevel,
                Description   = viewJob.Description,
                Employer      = viewJob.Employer,
                Requirements  = Requirements,
                Benefits      = Benefits,
                Tags          = Tags,
                Applicants    = Applicants,
                JobId         = viewJob.JobId
            };

            return(View(currentJobViewModel));
        }