Ejemplo n.º 1
0
        public ActionResult jobs()
        {
            List <job>       job  = db.jobs.ToList();
            List <job_model> jobs = new List <job_model>();

            foreach (var item in job)
            {
                job_model jobmodel = new job_model();
                jobmodel.category    = item.category.ToString();
                jobmodel.city        = item.city;
                jobmodel.created_at  = item.created_at;
                jobmodel.description = item.description;
                jobmodel.district    = item.district;
                employer_info name = db.employer_info
                                     .Where(c => c.emp_id == item.employer)
                                     .SingleOrDefault();
                jobmodel.image           = name.logo;
                jobmodel.salaryfrom      = item.salaryfrom;
                jobmodel.salaryto        = item.salaryto;
                jobmodel.job_level       = item.job_level;
                jobmodel.status          = Convert.ToInt32(item.status);
                jobmodel.submission_date = item.submission_date;
                jobmodel.employer        = name.company_name;
                jobmodel.full_address    = item.full_address;
                jobmodel.state           = item.state;
                jobmodel.district        = item.district;
                jobmodel.job_id          = item.job_id;
                jobmodel.title           = item.title;
                jobmodel.job_type        = item.job_type;
                jobmodel.emp_id          = item.employer.HasValue ? Convert.ToInt32(item.employer) : 0;
                jobmodel.category        = db.job_categories.Find(Convert.ToInt32(item.category)).category_name.ToString();
                jobs.Add(jobmodel);
            }
            return(View(jobs));
        }
Ejemplo n.º 2
0
        public ActionResult employer_profile(int?emp_id)
        {
            if (emp_id.HasValue)
            {
                int emp_id_ = Convert.ToInt32(emp_id);
                var b       = (from p in db.employer_info
                               join q in db.company_type on p.company_type equals q.id
                               where p.emp_id == emp_id_
                               select new { p, q.category_name }).FirstOrDefault();
                employerList e = new employerList();
                e.Address       = b.p.address;
                e.category_name = b.category_name;
                e.company_name  = b.p.company_name;
                e.created_at    = DateTime.Parse(b.p.created_at.ToString());
                e.description   = b.p.description;
                e.email         = b.p.email;
                e.contact       = b.p.contact;
                e.logo          = b.p.logo;
                e.emp_id        = b.p.emp_id;

                List <job> job = new List <Models.job>();
                job = db.jobs.Where(a => a.status == 1 && a.employer == emp_id_).Take(5).ToList();
                ViewBag.postedjobs = db.jobs.Where(a => a.status == 1 && a.employer == emp_id_).Count();
                List <job_model> jobs = new List <job_model>();
                foreach (var item in job)
                {
                    job_model jobmodel = new job_model();
                    jobmodel.category    = item.category.ToString();
                    jobmodel.city        = item.city;
                    jobmodel.created_at  = item.created_at;
                    jobmodel.description = item.description;
                    jobmodel.district    = item.district;
                    var name = db.employer_info
                               .Where(c => c.emp_id == item.employer)
                               .Select(cc => cc.company_name)
                               .SingleOrDefault();
                    jobmodel.employer     = name.ToString();
                    jobmodel.full_address = item.full_address;
                    jobmodel.state        = item.state;
                    jobmodel.district     = item.district;
                    jobmodel.job_id       = item.job_id;
                    jobmodel.title        = item.title;
                    jobmodel.job_type     = item.job_type;
                    var image = db.employer_info
                                .Where(c => c.emp_id == item.employer)
                                .Select(cc => cc.logo)
                                .SingleOrDefault();
                    jobmodel.image    = image;
                    jobmodel.category = db.job_categories.Find(Convert.ToInt32(item.category)).category_name.ToString();
                    jobs.Add(jobmodel);
                }
                ViewBag.jobs = jobs;
                return(View(e));
            }
            else
            {
                return(Json("Restricted Access", JsonRequestBehavior.AllowGet));
            }
        }
Ejemplo n.º 3
0
 public ActionResult editDetails(job_model model)
 {
     ViewBag.category  = new SelectList(db.job_categories.ToList(), "jobcat_id", "category_name");
     ViewBag.districts = new SelectList(db.nepal_district.ToList(), "district_name", "district_name");
     if (ModelState.IsValid)
     {
         try
         {
             job job = new job();
             job                 = db.jobs.Find(model.job_id);
             job.title           = model.title;
             job.submission_date = Convert.ToDateTime(model.submission_date);
             job.description     = model.description;
             job.category        = Convert.ToInt16(model.category);
             job.job_type        = model.job_type;
             job.job_level       = model.job_level;
             job.gender          = model.gender;
             job.salaryfrom      = model.salaryfrom;
             job.salaryto        = model.salaryto;
             job.experience      = Convert.ToInt32(model.experience);
             job.state           = model.state;
             job.district        = model.district;
             job.city            = model.city;
             job.postalcode      = model.postalcode;
             job.full_address    = model.full_address;
             job.created_at      = DateTime.Now;
             job.openings        = model.openings;
             job.status          = 1;
             job.skills          = model.skills;
             if (db.SaveChanges() > 0)
             {
                 ViewBag.message = "<div class='alert alert-success'><center>Sucessfully Inserted!</center></div>";
                 ModelState.Clear();
                 return(RedirectToAction("jobDetails", new RouteValueDictionary(
                                             new { controller = "employer", action = "jobDetails", id = job.job_id })));
             }
             else
             {
                 ViewBag.message = "<div class='alert alert-danger'>Something went wrong!</div>";
                 return(View());
             }
         }
         catch (Exception ex)
         {
             ViewBag.error = ex.ToString();
             return(View());
         }
     }
     else
     {
         return(View());
     }
 }
Ejemplo n.º 4
0
        public ActionResult postJob(job_model model)
        {
            ViewBag.category  = new SelectList(db.company_type.ToList(), "id", "category_name");
            ViewBag.districts = new SelectList(db.nepal_district.ToList(), "district_name", "district_name");
            if (ModelState.IsValid)
            {
                try
                {
                    int sessionid = Convert.ToInt32(Session["userid"].ToString());
                    job job       = new job();
                    job.title           = model.title;
                    job.submission_date = Convert.ToDateTime(model.submission_date);
                    job.description     = model.description;
                    job.category        = Convert.ToInt16(model.category);
                    job.job_type        = model.job_type;
                    job.job_level       = model.job_level;
                    job.gender          = model.gender;
                    job.salaryfrom      = model.salaryfrom;
                    job.salaryto        = model.salaryto;
                    job.experience      = Convert.ToInt32(model.experience);
                    job.state           = model.state;
                    job.district        = model.district;
                    job.city            = model.city;
                    job.postalcode      = model.postalcode;
                    job.full_address    = model.full_address;
                    job.created_at      = DateTime.Now;
                    job.openings        = model.openings;
                    job.status          = 1;
                    job.skills          = model.skills;
                    job.employer        = (from a in db.employer_info where a.login_info == sessionid select a.emp_id).FirstOrDefault();
                    db.jobs.Add(job);
                    if (db.SaveChanges() > 0)
                    {
                        ViewBag.message = "<div class='alert alert-success'><center>Sucessfully Inserted!</center></div>";
                        ModelState.Clear();
                    }
                    else
                    {
                        ViewBag.message = "<div class='alert alert-danger'>Something went wrong!</div>";
                    }
                }
                catch (Exception ex)
                {
                    return(null);
                }
            }

            return(View("postJob"));
        }
Ejemplo n.º 5
0
        // GET: Home

        public ActionResult Index()
        {
            ViewBag.category = new SelectList(db.job_categories.ToList(), "jobcat_id", "category_name");
            HomeViewModel hm = new HomeViewModel();

            hm.activeEmployers  = db.employer_info.Where(a => a.status == "ACTIVE").Count();
            hm.activeJObseekers = db.jobseeker_info.Where(a => a.status == "ACTIVE").Count();
            hm.activeJobs       = db.jobs.Count();
            List <job_model> temp = new List <job_model>();
            var job = db.jobs.Where(a => a.status == 1).OrderByDescending(c => Guid.NewGuid()).Take(6).ToList();

            foreach (var item in job)
            {
                job_model jobmodel = new job_model();
                jobmodel.category    = item.category.ToString();
                jobmodel.city        = item.city;
                jobmodel.created_at  = item.created_at;
                jobmodel.description = item.description;
                jobmodel.district    = item.district;
                var name = db.employer_info
                           .Where(c => c.emp_id == item.employer)
                           .Select(cc => cc.company_name)
                           .SingleOrDefault();
                jobmodel.employer        = name.ToString();
                jobmodel.full_address    = item.full_address;
                jobmodel.state           = item.state;
                jobmodel.district        = item.district;
                jobmodel.job_id          = item.job_id;
                jobmodel.title           = item.title;
                jobmodel.job_type        = item.job_type;
                jobmodel.emp_id          = item.employer.HasValue ? Convert.ToInt32(item.employer) : 0;
                jobmodel.category        = db.job_categories.Find(Convert.ToInt32(item.category)).category_name.ToString();
                jobmodel.image           = (from m in db.employer_info where m.emp_id == item.employer select m.logo).Single().ToString();
                jobmodel.submission_date = item.submission_date;
                temp.Add(jobmodel);
            }
            hm.jobs = temp;
            return(View(hm));
        }
Ejemplo n.º 6
0
        public ActionResult jobdetail(int?id)
        {
            if (Session["js_id"] != null)
            {
                string         sessid      = Session["sessid"].ToString();
                itemset        itemset     = db.itemsets.Find(sessid);
                Recommendation rm          = new Recommendation();
                List <job>     recommended = new List <job>();
                if (itemset != null)
                {
                    string temp = itemset.items;
                    if (string.IsNullOrEmpty(temp))
                    {
                        temp += id.ToString();
                    }
                    else
                    {
                        int status = 0;
                        var strarr = temp.Split(',').ToList();
                        foreach (var ichek in strarr)
                        {
                            int icheck_ = Convert.ToInt32(ichek);
                            if (icheck_ == id)
                            {
                                status = 1;
                                break;
                            }
                        }
                        if (status == 0)
                        {
                            temp         += "," + id.ToString();
                            itemset.items = temp;
                        }
                    }
                    db.SaveChanges();
                }
                else
                {
                    itemset itemsetnew = new itemset();
                    itemsetnew.session_id = Session["sessid"].ToString();
                    itemsetnew.items      = id.ToString();
                    db.itemsets.Add(itemsetnew);
                    db.SaveChanges();
                }
                List <string> jobids = rm.recommendedjobs(Session["sessid"].ToString());
                if (jobids != null)
                {
                    foreach (var tempIds in jobids)
                    {
                        int intjob = Convert.ToInt16(tempIds);
                        var next   = db.jobs.Where(a => a.job_id == intjob && a.status == 1).FirstOrDefault();
                        if (next != null)
                        {
                            recommended.Add(next);
                        }
                    }
                    recommended = recommended.Distinct().ToList();

                    List <job_model> jobsfinal = new List <job_model>();
                    foreach (var item in recommended)
                    {
                        job_model jobmodel = new job_model();
                        jobmodel.category = item.category.ToString();
                        employer_info name = db.employer_info
                                             .Where(c => c.emp_id == item.employer)
                                             .SingleOrDefault();
                        jobmodel.image           = name.logo;
                        jobmodel.submission_date = item.submission_date;
                        jobmodel.employer        = name.company_name;
                        jobmodel.full_address    = item.full_address;
                        jobmodel.job_id          = item.job_id;
                        jobmodel.title           = item.title;
                        jobmodel.job_type        = item.job_type;
                        jobmodel.emp_id          = item.employer.HasValue ? Convert.ToInt32(item.employer) : 0;
                        jobmodel.category        = db.job_categories.Find(Convert.ToInt32(item.category)).category_name.ToString();
                        jobsfinal.Add(jobmodel);
                    }
                    ViewBag.recommended = jobsfinal;
                    ViewBag.recognize   = jobids;
                }
            }
            if (id != null)
            {
                jobdetails job_det = new jobdetails();
                var        data    = (from p in db.jobs
                                      join q in db.employer_info on p.employer equals q.emp_id
                                      join r in db.job_categories on p.category equals r.jobcat_id
                                      where p.job_id == id select new { p, q.company_name, q.logo, q.emp_id, r.category_name }).FirstOrDefault();
                List <job> jobs = new List <Models.job>();
                if (data != null)
                {
                    job_det.emp_id          = data.emp_id;
                    job_det.category_name   = data.category_name;
                    job_det.city            = data.p.city;
                    job_det.created_at      = data.p.created_at;
                    job_det.description     = data.p.description;
                    job_det.district        = data.p.district;
                    job_det.employer        = data.company_name;
                    job_det.experience      = data.p.experience;
                    job_det.full_address    = data.p.full_address;
                    job_det.gender          = data.p.gender;
                    job_det.job_id          = data.p.job_id;
                    job_det.job_level       = data.p.job_level;
                    job_det.job_type        = data.p.job_type;
                    job_det.openings        = data.p.openings;
                    job_det.postalcode      = data.p.postalcode;
                    job_det.salaryfrom      = data.p.salaryfrom;
                    job_det.salaryto        = data.p.salaryto;
                    job_det.state           = data.p.state;
                    job_det.status          = data.p.status;
                    job_det.skills          = data.p.skills;
                    job_det.submission_date = data.p.submission_date;
                    job_det.title           = data.p.title;
                    jobs = db.jobs.ToList();
                }
                ViewBag.logo = data.logo;
                int appcount = 0;
                jobs = jobs.Where(c => c.employer == data.p.employer && c.job_id != id).Take(5).ToList();
                if (Session["role"] != null && Session["role"].ToString() == "jobseeker")
                {
                    int userid = Convert.ToInt32(Session["userid"].ToString());
                    userid = (from r in db.jobseeker_info where r.login_info == userid select r.js_id).FirstOrDefault();
                    int count = (from p in db.applications
                                 where p.job_id == id
                                 where p.jobseeker_id == userid
                                 where p.status == 1
                                 select p.job_id
                                 ).Count();
                    ViewBag.count = count;
                    int shortlist = (from exa in db.interests where exa.job_id == id where exa.jobseeker_id == userid where exa.status == 1 select exa.int_id).Count();
                    ViewBag.interested = shortlist;
                }
                appcount         = (from f in db.interests where f.status == 1 where f.job_id == id select f.int_id).Count();
                ViewBag.appcount = appcount;
                ViewBag.data     = jobs.ToList();

                return(View(job_det));
            }
            else
            {
                return(RedirectToAction("index", "login"));
            }
        }
Ejemplo n.º 7
0
        public ActionResult jobListingajax(int?page, string keyword = "", string city = "", string level = "", string time = "", string cat = "", string type = "")
        {
            DateTime today = DateTime.Now;
            int      span;

            int pageSize  = 10;
            int pageIndex = 1;

            pageIndex = page.HasValue ? Convert.ToInt16(page) : 1;
            var        predicate1 = PredicateBuilder.New <job>(true);
            var        predicate2 = PredicateBuilder.New <job>(true);
            List <job> job        = new List <Models.job>();

            if (!string.IsNullOrEmpty(keyword))
            {
                predicate1.And(p => p.title.Contains(keyword));
            }
            if (!string.IsNullOrEmpty(city))
            {
                predicate1.And(p => p.city.Contains(city));
            }
            if (!string.IsNullOrEmpty(level))
            {
                predicate1.And(p => p.job_level.Equals(level));
            }
            predicate1.And(a => a.status == 1);

            if (string.IsNullOrEmpty(keyword) && string.IsNullOrEmpty(level) && string.IsNullOrEmpty(city) && string.IsNullOrEmpty(time) && string.IsNullOrEmpty(cat) && string.IsNullOrEmpty(type))
            {
                if (Session["js_id"] != null)
                {
                    int    ssid   = Convert.ToInt16(Session["js_id"].ToString());
                    string skills = db.jobseeker_info.Where(a => a.js_id == ssid).Select(a => a.skills).First();
                    predicate2.And(a => a.status == 1);
                    if (skills != null)
                    {
                        foreach (var d in skills.Split(',').ToList())
                        {
                            job.AddRange(db.jobs.Where(a => a.status == 1 && a.skills.Contains(d)).ToList());
                        }
                    }
                    job.AddRange(db.jobs.Where(a => a.status == 1));
                    job = job.GroupBy(g => g.job_id).OrderByDescending(g => g.Count()).SelectMany(g => g).ToList();
                    job = job.Distinct().ToList();
                }
                else
                {
                    job = db.jobs.Where(predicate1).OrderByDescending(c => Guid.NewGuid()).ToList();
                }
            }
            else
            {
                job = db.jobs.Where(predicate1).OrderByDescending(c => Guid.NewGuid()).ToList();
            }
            // predicate1.And(a => a.submission_date > DateTime.Now);
            List <job_model> jobs      = new List <job_model>();
            List <job_model> temp      = new List <job_model>();
            List <job_model> jobsfinal = new List <job_model>();
            List <job_model> temptype  = new List <job_model>();

            foreach (var item in job)
            {
                job_model jobmodel = new job_model();
                jobmodel.category    = item.category.ToString();
                jobmodel.city        = item.city;
                jobmodel.created_at  = item.created_at;
                jobmodel.description = item.description;
                jobmodel.district    = item.district;
                jobmodel.job_level   = item.job_level;
                jobmodel.gender      = item.gender;
                jobmodel.salaryfrom  = item.salaryfrom;
                jobmodel.salaryto    = item.salaryto;
                jobmodel.experience  = item.experience;
                employer_info name = db.employer_info
                                     .Where(c => c.emp_id == item.employer)
                                     .SingleOrDefault();
                jobmodel.image           = name.logo;
                jobmodel.submission_date = item.submission_date;
                jobmodel.employer        = name.company_name;
                jobmodel.full_address    = item.full_address;
                jobmodel.state           = item.state;
                jobmodel.district        = item.district;
                jobmodel.job_id          = item.job_id;
                jobmodel.title           = item.title;
                jobmodel.job_type        = item.job_type;
                jobmodel.emp_id          = item.employer.HasValue ? Convert.ToInt32(item.employer) : 0;
                jobmodel.category        = db.job_categories.Find(Convert.ToInt32(item.category)).category_name.ToString();
                jobs.Add(jobmodel);
            }
            jobsfinal = jobs;
            var predicate = PredicateBuilder.New <job_model>(true);

            if (!string.IsNullOrEmpty(cat))
            {
                string[] cat_ = cat.Split(',');
                foreach (string item in cat_)
                {
                    int    item__ = Convert.ToInt16(item);
                    string name   = db.job_categories
                                    .Where(c => c.jobcat_id == item__)
                                    .Select(cc => cc.category_name)
                                    .SingleOrDefault().ToString();
                    predicate.Or(p => p.category.Equals(name));
                }
            }

            if (!string.IsNullOrEmpty(type))
            {
                string[] type_ = type.Split(',');
                foreach (var text in type_)
                {
                    predicate.Or(p => p.job_type.Contains(text));
                }
            }
            jobsfinal = jobsfinal.Where(predicate).ToList();

            if (!string.IsNullOrEmpty(time))
            {
                if (time == "all")
                {
                    span = 2500000;
                }
                else
                {
                    span = Convert.ToInt32(time);
                }
                foreach (var variable in jobsfinal.ToList())
                {
                    TimeSpan t    = (today - Convert.ToDateTime(variable.created_at));
                    double   days = t.TotalHours;
                    if (!(days <= span))
                    {
                        jobsfinal.Remove(variable);
                    }
                }
            }

            if (!string.IsNullOrEmpty(type) || !string.IsNullOrEmpty(cat) || !string.IsNullOrEmpty(time))
            {
                return(PartialView(jobsfinal.ToPagedList(pageIndex, pageSize)));
            }
            else
            {
                return(PartialView(jobsfinal.ToPagedList(pageIndex, pageSize)));
            }
        }