コード例 #1
0
        public ActionResult EditTestMasterProfile(Test_Master test_Master, HttpPostedFileBase ProfileImage)
        {
            TestMasterManager tm = new TestMasterManager();

            if (ModelState.IsValid)
            {
                if (ProfileImage != null &&
                    (ProfileImage.ContentType == "image/jpeg" ||
                     ProfileImage.ContentType == "image/jpg" ||
                     ProfileImage.ContentType == "image/png"))
                {
                    string filename = $"user_{test_Master.UserId}.{ProfileImage.ContentType.Split('/')[1]}";

                    ProfileImage.SaveAs(Server.MapPath($"~/Images/User_Images/{filename}"));
                    test_Master.user_picturepath = filename;
                }
                BusinessLayerResult <Test_Master> res = tm.UpdateProfile(test_Master);
                if (res.Errors.Count > 0)
                {
                    ErrorViewModel Errmsgs = new ErrorViewModel()
                    {
                        Items          = res.Errors,
                        Title          = "Profil Güncellenemedi",
                        RedirectingUrl = "/Home/EditTestMasterProfile"
                    };
                    return(View("Error", Errmsgs));
                }
                Session["login"] = res.Result;
                return(RedirectToAction("ShowTestMasterProfile"));
            }
            return(View(tm.GetTestMasterById(test_Master.UserId).Result));
        }
コード例 #2
0
        public ActionResult MyApplicants()
        {
            if (Session["login"] is Test_Master)
            {
                Test_Master    applierTM       = Session["login"] as Test_Master;
                List <Job_Adv> myapplicantlist = new List <Job_Adv>();
                foreach (var item in jobAppManager.List(x => x.Test_Master.UserId == applierTM.UserId))
                {
                    myapplicantlist.Add(item.Job_Adv);
                }
                if (myapplicantlist == null)
                {
                    ErrorViewModel ErrnotifyObj = new ErrorViewModel()
                    {
                        Title              = "Başvurduğunuz İlan Bulunmamaktadır",
                        RedirectingUrl     = "/Job_Adv/Index/",
                        RedirectingTimeout = 1500
                    };
                    return(View("Error", ErrnotifyObj));
                }
                return(View(myapplicantlist));
            }

            else
            {
                return(new HttpStatusCodeResult(HttpStatusCode.Forbidden, "Başvuru Yetkiniz Bulunmamaktadır"));
            }
        }
コード例 #3
0
        public ActionResult MyMissions()
        {
            if (Session["login"] is Test_Master)
            {
                Test_Master    authorizedTM  = Session["login"] as Test_Master;
                List <Job_Adv> mymissionlist = new List <Job_Adv>();
                foreach (var item in jobAdvManager.List(x => x.SelectedTestMaster.UserId == authorizedTM.UserId))
                {
                    mymissionlist.Add(item);
                }
                if (mymissionlist == null)
                {
                    ErrorViewModel ErrnotifyObj = new ErrorViewModel()
                    {
                        Title              = "Görevli olduğunuz iş bulunmamaktadır",
                        RedirectingUrl     = "/Job_Adv/Index/",
                        RedirectingTimeout = 1500
                    };
                    return(View("Error", ErrnotifyObj));
                }
                return(View(mymissionlist));
            }

            else
            {
                return(new HttpStatusCodeResult(HttpStatusCode.Forbidden, "Başvuru Yetkiniz Bulunmamaktadır"));
            }
        }
コード例 #4
0
        public ActionResult TestMasterPayments()
        {
            Test_Master    t = Session["login"] as Test_Master;
            List <Payment> testmasterPayments = new List <Payment>();

            foreach (var item in paymentManager.List())
            {
                if (item.Job_Adv.SelectedTestMaster == t && item.Job_Adv.confirmation == true && item.pay_user is Test_Master)
                {
                    testmasterPayments.Add(item);
                }
            }
            return(View(testmasterPayments));
        }
コード例 #5
0
        public ActionResult EditTestMasterProfile()
        {
            Test_Master       currentTestMaster = Session["login"] as Test_Master;
            TestMasterManager cm = new TestMasterManager();
            BusinessLayerResult <Test_Master> res = cm.GetTestMasterById(currentTestMaster.UserId);

            if (res.Errors.Count > 0)
            {
                ErrorViewModel ErrnotifyObj = new ErrorViewModel()
                {
                    Title = "Hata Oluştu",
                    Items = res.Errors
                };
                return(View("Error", ErrnotifyObj));
            }
            return(View(res.Result));
        }
コード例 #6
0
        public ActionResult ApplyCancel(int?id)
        {
            if (Session["login"] is Test_Master)
            {
                Test_Master applierTM = Session["login"] as Test_Master;
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, "Eksik Parametre"));
                }
                Job_Adv job_Adv = jobAdvManager.Find(x => x.JobAdvId == id);
                job_Adv.Applicants.Remove(applierTM.Applicants.Where(x => x.Job_Adv == job_Adv).FirstOrDefault());
                jobAppManager.Delete(applierTM.Applicants.Where(x => x.Job_Adv == job_Adv).FirstOrDefault());
                return(RedirectToAction("Index"));
            }

            else
            {
                return(new HttpStatusCodeResult(HttpStatusCode.Forbidden, "Başvuru Yetkiniz Bulunmamaktadır"));
            }
        }
コード例 #7
0
        public ActionResult Details(Job_Ans job_ans)
        {
            Test_Master currentTM = Session["login"] as Test_Master;
            Job_Ans     jobans    = jobAnsManager.Find(x => x.JobAnsId == job_ans.JobAnsId);


            if (Session["login"] is Test_Master && jobans.test_job.job_test_master.UserId == currentTM.UserId)
            {
                jobans.conf   = job_ans.conf;
                job_ans.State = "Onaylandı";
                jobAnsManager.Update(jobans);
                if (job_ans.conf)
                {
                    OkViewModel ntfobj = new OkViewModel()
                    {
                        Title              = "Onay Başarılı",
                        RedirectingUrl     = "/Job_Ans/ListAnswers/" + jobans.test_job.JobAdvId,
                        RedirectingTimeout = 1800
                    };
                    ntfobj.Items.Add(jobans.test_job.test_job_title + " " + "Görevine Tester" + jobans.tester.user_name + " " + jobans.tester.user_surname + " tarafından gönderilen " + jobans.ans_title + " başlıklı cevabın onay işlemi başarılı..");
                    return(View("Ok", ntfobj));
                }
                else
                {
                    OkViewModel ntfobj = new OkViewModel()
                    {
                        Title              = "Onay Kaldırma Başarılı",
                        RedirectingUrl     = "/Job_Ans/ListAnswers/" + jobans.test_job.JobAdvId,
                        RedirectingTimeout = 1800
                    };
                    ntfobj.Items.Add(jobans.test_job.test_job_title + " " + "Görevine Tester" + jobans.tester.user_name + " " + jobans.tester.user_surname + " tarafından gönderilen " + jobans.ans_title + " başlıklı cevabın onay kaldırma işlemi başarılı..");
                    return(View("Ok", ntfobj));
                }
            }
            else
            {
                return(RedirectToAction("Index"));
            }
        }
コード例 #8
0
        public ActionResult Apply(int?id)
        {
            if (Session["login"] is Test_Master)
            {
                Test_Master applierTM = Session["login"] as Test_Master;
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, "Eksik Parametre"));
                }
                Job_Adv job_Adv = jobAdvManager.Find(x => x.JobAdvId == id);
                job_Adv.Applicants.Add(new Applicant()
                {
                    Job_Adv = job_Adv, Test_Master = applierTM
                });
                jobAdvManager.Update(job_Adv);
                return(RedirectToAction("Index"));
            }

            else
            {
                return(new HttpStatusCodeResult(HttpStatusCode.Forbidden, "Başvuru Yetkiniz Bulunmamaktadır"));
            }
        }
コード例 #9
0
        public ActionResult Applicants(SelectAdvTestMasterViewModel tm)
        {
            if (ModelState.IsValid)
            {
                TestMasterManager tmm = new TestMasterManager();
                if (tm == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }

                Job_Adv job_Adv = jobAdvManager.Find(x => x.JobAdvId == tm.Adv_Id);
                if (job_Adv == null)
                {
                    return(HttpNotFound());
                }
                job_Adv.SelectedTestMaster = tmm.GetTestMasterById(tm.selectedTestMasterId).Result;

                if (jobAdvManager.Update(job_Adv) > 0)
                {
                    foreach (var item in jobAppManager.List(x => x.Job_Adv.JobAdvId == job_Adv.JobAdvId))
                    {
                        jobAppManager.Delete(item);
                    }
                    Test_Master selectedTM = tmm.GetTestMasterById(tm.selectedTestMasterId).Result;
                    OkViewModel OkntfyObj  = new OkViewModel()
                    {
                        Title              = "Atama Başarılı..",
                        RedirectingUrl     = "/Job_Adv/Details/" + tm.Adv_Id,
                        RedirectingTimeout = 3000
                    };
                    OkntfyObj.Items.Add("Test Master " + selectedTM.user_name + " " + selectedTM.user_surname + " Başarılı bir şekilde " + job_Adv.job_adv_title + " görevine atandı..!");
                    return(View("Ok", OkntfyObj));
                }
            }
            return(View(tm));
        }
コード例 #10
0
        public ActionResult ShowReport(ReportViewModel model)
        {
            model.Report  = RM.Find(x => x.ReportID == model.ReportID);
            model.Job_Adv = jobAdvManager.Find(x => x.JobAdvId == model.Job_AdvID);

            Report r = RM.Find(x => x.ReportID == model.ReportID);

            r.Test_Job.Job_Adv.confirmation = model.confirmation;
            r.Test_Job.Job_Adv.finishDate   = DateTime.Now;
            foreach (var item in r.Test_Job.job_testers)
            {
                Tester t = testerManager.Find(x => x.UserId == item.UserId);
                t.score  += r.Test_Job.Job_Adv.awardScoreValue;
                t.isReady = true;
                if (t.score >= 0 && t.score < 250)
                {
                    t.rank.rank = "Çaylak";
                }
                if (t.score >= 250 && t.score < 500)
                {
                    t.rank.rank = "Tecrübeli";
                }
                if (t.score >= 500)
                {
                    t.rank.rank = "Uzman";
                }
                Payment p = new Payment()
                {
                    JobAdvId = r.Test_Job.JobAdvId, Job_Adv = r.Test_Job.Job_Adv, payment = r.Test_Job.price, payDate = DateTime.Now, pay_user = item
                };
                paymentManager.Insert(p);
                t.notifications.Add(new Notification()
                {
                    link = "#", notification = r.Test_Job.test_job_title + " Görevinizden +" + r.Test_Job.Job_Adv.awardScoreValue + " kazandınız. Rütbe durumu: " + t.rank.rank, User = t
                });
                testerManager.Update(t);
            }
            Test_Master testmaster = tm.Find(x => x.UserId == r.Test_Job.job_test_master.UserId);

            testmaster.score += r.Test_Job.Job_Adv.awardScoreValue;
            tm.Update(testmaster);
            Payment p2 = new Payment()
            {
                JobAdvId = r.Test_Job.JobAdvId, Job_Adv = r.Test_Job.Job_Adv, payment = r.Test_Job.Job_Adv.price, payDate = DateTime.Now, pay_user = testmaster
            };

            paymentManager.Insert(p2);
            int resultUpdate = RM.Update(r);

            if (resultUpdate >= 0)
            {
                string msj1 = "";
                string msj2 = "";
                if (r.Test_Job.Job_Adv.confirmation)
                {
                    msj1 = "Onay işlemi başarılı";
                    msj2 = r.Test_Job.Job_Adv.job_adv_title + " - " + r.report_title + " isimli rapor başarılı bir şekilde onaylandı..";
                    Notification n = new Notification()
                    {
                        notification = msj2, link = "/Job_Adv/ShowReport/" + r.TestJobID, User = r.Test_Job.job_test_master
                    };
                    notificationManager.Insert(n);
                }
                else
                {
                    msj1 = "Onay kaldırma işlemi başarılı";
                    msj2 = r.Test_Job.Job_Adv.job_adv_title + " - " + r.report_title + " isimli rapor onayı kaldırıldı..";
                    Notification n = new Notification()
                    {
                        notification = msj2, link = "/Job_Adv/ShowReport/" + r.TestJobID, User = r.Test_Job.job_test_master
                    };
                    notificationManager.Insert(n);
                }
                OkViewModel ntfobj = new OkViewModel()
                {
                    Title              = msj1,
                    RedirectingUrl     = "/Job_Adv/ShowReport/" + r.TestJobID,
                    RedirectingTimeout = 1200
                };
                ntfobj.Items.Add(msj2);
                return(View("Ok", ntfobj));
            }
            else
            {
                return(View("Error", new ErrorViewModel()
                {
                    Title = "Rapor onay işlemi hatalı.."
                }));
            }
        }