コード例 #1
0
        public ActionResult Edit([DataSourceRequest] DataSourceRequest request, Rec_CandidateModel user)
        {

            var service = new RestServiceClient<Rec_CandidateModel>(UserLogin);
            service.SetCookies(this.Request.Cookies, _Hrm_Hre_Service);
            var result = service.Put(_Hrm_Hre_Service, "api/Rec_Candidate/", user);
            return Json(result);
        }
コード例 #2
0
 public ActionResult Create(Rec_CandidateModel model)
 {
   
     if (ModelState.IsValid)
     {
         var service = new RestServiceClient<Rec_CandidateModel>(UserLogin);
         service.SetCookies(this.Request.Cookies, _Hrm_Hre_Service);
         var result = service.Put(_Hrm_Hre_Service, "api/Rec_Candidate/", model);
         ViewBag.MsgInsert = ConstantDisplay.HRM_Rec_Candidate_InsertSuccess.TranslateString();
     }
     return View();
 }
コード例 #3
0
 public ActionResult Edit([DataSourceRequest] DataSourceRequest request, Rec_CandidateModel Rec_Candidate)
 {
     if (ModelState.IsValid)
     {
         var service = new RestServiceClient<Rec_CandidateModel>(UserLogin);
         service.SetCookies(this.Request.Cookies, _Hrm_Hre_Service);
         var result = service.Put(_Hrm_Hre_Service, "api/Rec_Candidate/", Rec_Candidate);
         //return Json(result);
         ViewBag.MsgUpdate = ConstantDisplay.HRM_Rec_Candidate_UpdateSuccess.TranslateString();
     }
     return View();
 }
コード例 #4
0
ファイル: Rec_CandidateController.cs プロジェクト: dtafe/vnr
 public Rec_CandidateModel GetById(Guid id)
 {
     string status = string.Empty;
     var model = new Rec_CandidateModel();
     var service = new ActionService(UserLogin);
     var entity = service.GetByIdUseStore<Rec_CandidateEntity>(id, ConstantSql.hrm_rec_sp_get_CandidateById, ref status);
     if (entity != null)
     {
         model = entity.CopyData<Rec_CandidateModel>();
     }
     if (!string.IsNullOrEmpty(model.Status))
         model.Status = model.Status.TranslateString();
     model.ActionStatus = status;
     return model;
 }
コード例 #5
0
 public ActionResult SetStatusSelected(List<Guid> selectedIds, string status, string userApproved)
 {
    
     var Candidate = new Rec_CandidateModel();
     if (selectedIds != null || selectedIds.Count > 0)
     {
         var service = new RestServiceClient<Rec_CandidateModel>(UserLogin);
         service.SetCookies(this.Request.Cookies, _Hrm_Hre_Service);
         Candidate.ProfileIds = String.Join(",", selectedIds);
         Candidate.Status = status;
         Guid Approved = Guid.Empty;
         Guid.TryParse(userApproved, out Approved);
         if (Approved == Guid.Empty)
         {
             Candidate.ActionStatus = "NoPermission";
             return Json(Candidate);
         }
         Candidate.UserApproveID = Approved;
         Candidate.UserApproveID2 = Approved;
         Candidate = service.Put(_Hrm_Hre_Service, "api/Rec_Candidate/", Candidate);
     }
     return Json(Candidate);
 }
コード例 #6
0
ファイル: Rec_GetDataController.cs プロジェクト: dtafe/vnr
        public ActionResult GetWaitingInterviewList([DataSourceRequest] DataSourceRequest request, Rec_WaitingInterviewSearchModel model)
        {
            string status = string.Empty;
            var baseService = new BaseService();
            ActionService service = new ActionService(UserLogin);
            List<object> objs = new List<object>();
            List<Rec_CandidateModel> resultCandidate = new List<Rec_CandidateModel>();
            Rec_CandidateModel ObjCandidate = null;
            var InterviewServices = new Rec_InterviewServices();
            ListQueryModel lstModel = new ListQueryModel
            {
                PageSize = int.MaxValue - 1,
                PageIndex = 1,
                Filters = ExtractFilterAttributes(request),
                Sorts = ExtractSortAttributes(request),
                AdvanceFilters = ExtractAdvanceFilterAttributes(model)
            };
            var result = baseService.GetData<Rec_CandidateModel>(lstModel, ConstantSql.hrm_rec_sp_get_WaitingInterviewList, UserLogin, ref status);
            #region Kết quả là rớt hoặc vỏng phỏng vấn = cuối thì KHÔNG load vào danh sách chờ phỏng vấn

            result = result.Where(s => s.Status != HRM.Infrastructure.Utilities.Interview.E_FAIL.ToString()).ToList();
            foreach (var item in result)
            {
                ObjCandidate = new Rec_CandidateModel();
                objs = new List<object>();
                objs.Add(item.ID);
                objs.Add(1);
                objs.Add(10000);
                //var resultInterview = baseService.GetData<Rec_InterviewModel>(objs, ConstantSql.hrm_rec_sp_get_InterviewByCandidateID, ref status);
                //Danh sach ke hoach cua ung vien
                var resultCampaignDetail = baseService.GetData<Rec_InterviewCampaignDetailModel>(objs, ConstantSql.hrm_rec_sp_get_InCamDetailByCddId, UserLogin, ref status).ToList();
                if (item.JobVacancyID.HasValue)
                {
                    var entityJobVacancy = service.GetByIdUseStore<Rec_JobVacancyEntity>(item.JobVacancyID.Value, ConstantSql.hrm_rec_sp_get_JobVacancyId, ref status);
                    if (item.LevelInterview == null)
                        item.LevelInterview = 0;
                    if (item.LevelInterview != entityJobVacancy.NoLevelInterview && item.LevelInterview == resultCampaignDetail.Count)
                    {
                        ObjCandidate = item;
                        resultCandidate.Add(ObjCandidate);
                    }
                }
            }
            #endregion
            return Json(resultCandidate.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
        }
コード例 #7
0
ファイル: Rec_GetDataController.cs プロジェクト: dtafe/vnr
        public ActionResult ExportCandidateListByTemplate([DataSourceRequest] DataSourceRequest request, Rec_CandidateSearchModel model)
        {
            string status = string.Empty;
            var isDataTable = false;
            object obj = new Rec_CandidateModel();
            var baseService = new BaseService();
            request.PageSize = int.MaxValue - 1;
            var result = GetListData<Rec_CandidateModel, Rec_CandidateEntity, Rec_CandidateSearchModel>(request, model, ConstantSql.hrm_rec_sp_get_Candidate, ref status);
            HeaderInfo headerInfo1 = new HeaderInfo() { Name = "DateExamFrom", Value = model.DateExamFrom == null ? DateTime.Now : model.DateExamFrom };
            HeaderInfo headerInfo2 = new HeaderInfo() { Name = "DateExamTo", Value = model.DateExamTo == null ? DateTime.Now : model.DateExamTo };
            List<HeaderInfo> listHeaderInfo = new List<HeaderInfo>() { headerInfo1, headerInfo2 };
            if (model.IsCreateTemplateForDynamicGrid)
            {
                obj = result;
                isDataTable = false;
            }
            if (model != null && model.IsCreateTemplate)
            {

                var path = Common.GetPath("Templates");
                ExportService exportService = new ExportService();

                ConfigExport cfgExport = new ConfigExport()
                {
                    Object = obj,
                    FileName = "Rec_CandidateModel",
                    OutPutPath = path,
                    HeaderInfo = listHeaderInfo,
                    DownloadPath = Hrm_Main_Web + "Templates",
                    IsDataTable = isDataTable
                };
                var str = exportService.CreateTemplate(cfgExport);
                return Json(str);
            }

            var objInterview = new List<object>();
            objInterview.AddRange(new object[2]);
            objInterview[0] = 1;
            objInterview[1] = int.MaxValue - 1;
            var lstInterView = baseService.GetData<Rec_InterviewModel>(objInterview, ConstantSql.hrm_rec_sp_get_InterviewDataReport,UserLogin, ref status).ToList();

            foreach (var item in result)
            {
                if (lstInterView.Count > 0)
                {
                    var dataLevel1 = lstInterView.Where(s => s.CandidateID == item.ID && s.LevelInterview == 1).OrderByDescending(s => s.DateUpdate).FirstOrDefault();
                    var dataLevel2 = lstInterView.Where(s => s.CandidateID == item.ID && s.LevelInterview == 2).OrderByDescending(s => s.DateUpdate).FirstOrDefault();
                    var dataLevel3 = lstInterView.Where(s => s.CandidateID == item.ID && s.LevelInterview == 3).OrderByDescending(s => s.DateUpdate).FirstOrDefault();
                    var dataLevel4 = lstInterView.Where(s => s.CandidateID == item.ID && s.LevelInterview == 4).OrderByDescending(s => s.DateUpdate).FirstOrDefault();
                    var dataLevel5 = lstInterView.Where(s => s.CandidateID == item.ID && s.LevelInterview == 5).OrderByDescending(s => s.DateUpdate).FirstOrDefault();
                    if (dataLevel1 != null)
                    {
                        item.Score1_1 = dataLevel1.Score1;
                        item.Score1_2 = dataLevel1.Score2;
                        item.Score1_3 = dataLevel1.Score3;
                        item.KQ1 = dataLevel1.ResultInterviewView;
                        item.LanguageCode1 = dataLevel1.LanguageCode;
                        item.DateInterview1 = dataLevel1.DateInterview;
                    }
                    if (dataLevel2 != null)
                    {
                        item.Score2_1 = dataLevel2.Score1;
                        item.Score2_2 = dataLevel2.Score2;
                        item.Score2_3 = dataLevel2.Score3;
                        item.KQ2 = dataLevel2.ResultInterviewView;
                        item.LanguageCode2 = dataLevel2.LanguageCode;
                        item.DateInterview2 = dataLevel2.DateInterview;
                    }
                    if (dataLevel3 != null)
                    {
                        item.Score3_1 = dataLevel3.Score1;
                        item.Score3_2 = dataLevel3.Score2;
                        item.Score3_3 = dataLevel3.Score3;
                        item.KQ3 = dataLevel3.ResultInterviewView;
                        item.LanguageCode3 = dataLevel3.LanguageCode;
                        item.DateInterview3 = dataLevel3.DateInterview;
                    }
                    if (dataLevel4 != null)
                    {
                        item.Score4_1 = dataLevel4.Score1;
                        item.Score4_2 = dataLevel4.Score2;
                        item.Score4_3 = dataLevel4.Score3;
                        item.KQ4 = dataLevel4.ResultInterviewView;
                        item.LanguageCode4 = dataLevel4.LanguageCode;
                        item.DateInterview4 = dataLevel4.DateInterview;
                    }
                    if (dataLevel5 != null)
                    {
                        item.Score5_1 = dataLevel5.Score1;
                        item.Score5_2 = dataLevel5.Score2;
                        item.Score5_3 = dataLevel5.Score3;
                        item.KQ5 = dataLevel5.ResultInterviewView;
                        item.LanguageCode5 = dataLevel5.LanguageCode;
                        item.DateInterview5 = dataLevel5.DateInterview;
                    }
                }
            }

            if (model.ExportId != Guid.Empty)
            {

                var fullPath = ExportService.Export(model.ExportId, result, listHeaderInfo, model.ExportType);
                return Json(fullPath);
            }

            return Json(result.ToDataSourceResult(request));
        }
コード例 #8
0
ファイル: Rec_GetDataController.cs プロジェクト: dtafe/vnr
        public ActionResult ExportCandidateByTemplate(List<Guid> selectedIds, string valueFields)
        {
            DateTime DateStart = DateTime.Now;
            string messages = string.Empty;
            string dirpath = Common.GetPath(Common.DownloadURL); ;
            if (!Directory.Exists(dirpath))
                Directory.CreateDirectory(dirpath);

            string status = string.Empty;
            var contractServices = new Rec_CandidateModel();
            var baseService = new BaseService();
            string strIDs = string.Empty;
            foreach (var item in selectedIds)
            {
                strIDs += Common.DotNetToOracle(item.ToString()) + ",";
            }
            if (strIDs.IndexOf(",") > 0)
            {
                strIDs = strIDs.Substring(0, strIDs.Length - 1);
            }
            var lstCandidate = baseService.GetData<Rec_CandidateEntity>(strIDs, ConstantSql.hrm_rec_sp_get_CandidateByIds, UserLogin, ref status);
            if (lstCandidate == null)
                return null;
            int i = 0;
            var lstCandidateID = lstCandidate.Select(s => s.ID).Distinct().ToList();
            String suffix = DateStart.ToString("_ddMMyyyyHHmmss");
            string folferPath = string.Empty;
            string folderName = "ExportHre_Contract" + suffix;
            if (lstCandidateID.Count > 1)
            {
                folferPath = dirpath + "/" + folderName;
                Directory.CreateDirectory(folferPath);
            }
            else
            {
                folferPath = dirpath;
            }
            var fileDoc = string.Empty;
            foreach (var candidate in lstCandidate)
            {
                ActionService service = new ActionService(UserLogin);
                var exportService = new Cat_ExportServices();
                Cat_ExportEntity template = null;
                string outputPath = string.Empty;
                List<object> lstObjExport = new List<object>();
                lstObjExport.Add(null);
                lstObjExport.Add(null);
                lstObjExport.Add(null);
                lstObjExport.Add(null);
                lstObjExport.Add(1);
                lstObjExport.Add(10000000);
                //template = exportService.GetData<Cat_ExportEntity>(lstObjExport, ConstantSql.hrm_cat_sp_get_ExportWord, ref status).Where(s => s.ScreenName == valueFields).FirstOrDefault();

                if (!string.IsNullOrEmpty(valueFields))
                {
                    template = exportService.GetData<Cat_ExportEntity>(Guid.Parse(valueFields), ConstantSql.hrm_cat_sp_get_ExportById, UserLogin,ref status).FirstOrDefault();
                }


                if (template == null)
                {
                    messages = "Error";
                    return Json(messages, JsonRequestBehavior.AllowGet);
                }

                string templatepath = Common.GetPath(Common.TemplateURL + template.TemplateFile);

                if (!System.IO.File.Exists(templatepath))
                {
                    messages = "NotTemplate";
                    return Json(messages, JsonRequestBehavior.AllowGet);
                }
                outputPath = folferPath + "/" + Common.ChuyenTVKhongDau(candidate.CandidateName) + suffix + i.ToString() + "_" + template.TemplateFile;
                fileDoc = NotificationType.Success.ToString() + "," + Common.DownloadURL + "/" + Common.ChuyenTVKhongDau(candidate.CandidateName) + suffix + i.ToString() + "_" + template.TemplateFile;
                if (!System.IO.File.Exists(templatepath))
                {
                    messages = "NotTemplate";
                    return Json(messages, JsonRequestBehavior.AllowGet);
                }
                var lstcontract = new List<Rec_CandidateEntity>();
                lstcontract.Add(candidate);
                ExportService.ExportWord(outputPath, templatepath, lstcontract);
            }
            if (lstCandidateID.Count > 1)
            {
                var fileZip = Common.MultiExport("", true, folderName);
                return Json(fileZip);
            }
            return Json(fileDoc);
        }
コード例 #9
0
ファイル: Rec_GetDataController.cs プロジェクト: dtafe/vnr
        public ActionResult ExportFailCandidatesListByTemplate([DataSourceRequest] DataSourceRequest request, Rec_FailCandidateSearchModel model)
        {
            //return GetListDataAndReturn<Rec_CandidateModel, Rec_CandidateEntity, Rec_EnrolledCandidateSearchModel>(request, model, ConstantSql.hrm_rec_sp_get_FailCandidates);

            string status = string.Empty;
            var isDataTable = false;
            object obj = new Rec_CandidateModel();
            var services = new BaseService();
            var result = GetListData<Rec_CandidateModel, Rec_CandidateEntity, Rec_FailCandidateSearchModel>(request, model, ConstantSql.hrm_rec_sp_get_FailCandidates, ref status);

            if (model.IsCreateTemplateForDynamicGrid)
            {
                obj = result;
                isDataTable = false;
            }
            if (model != null && model.IsCreateTemplate)
            {

                var path = Common.GetPath("Templates");
                ExportService exportService = new ExportService();

                ConfigExport cfgExport = new ConfigExport()
                {
                    Object = obj,
                    FileName = "Rec_CandidateModel",
                    OutPutPath = path,
                    DownloadPath = Hrm_Main_Web + "Templates",
                    IsDataTable = false
                };
                var str = exportService.CreateTemplate(cfgExport);
                return Json(str);
            }
            if (model.ExportId != Guid.Empty)
            {

                var fullPath = ExportService.Export(model.ExportId, result, null, model.ExportType);
                return Json(fullPath);
            }
            return Json(result.ToDataSourceResult(request));
        }