/// <summary> /// </summary> /// <param name="id"></param> /// <returns></returns> public Tra_CourseModel GetById(Guid id) { string status = string.Empty; var model = new Tra_CourseModel(); ActionService service = new ActionService(UserLogin); var entity = service.GetByIdUseStore<Tra_CourseEntity>(id, ConstantSql.hrm_tra_sp_get_CourseById, ref status); if (entity!=null) { //lay ten phong ban cho tab giao vien if (entity.OrgListTrainerCode != null) { var lstOrgStructureName = service.GetData<Cat_OrgStructureEntity>(entity.OrgListTrainerCode, ConstantSql.hrm_cat_sp_get_OrgByOrderNumbers, ref status); if (lstOrgStructureName != null) { foreach (var item in lstOrgStructureName) { entity.OrgStructureTrainerName +=item.OrgStructureName+","; } } } if (entity.OrgStructureTrainerName != null) { entity.OrgStructureTrainerName = entity.OrgStructureTrainerName.Substring(0, entity.OrgStructureTrainerName.Length - 1); } //lay ten phong ban cho tab hoc vien if(entity.OrgListCode1 !=null ) { var lstOrgStructureNameStandards = service.GetData<Cat_OrgStructureEntity>(entity.OrgListCode1, ConstantSql.hrm_cat_sp_get_OrgByOrderNumbers, ref status); if (lstOrgStructureNameStandards != null) { foreach (var item in lstOrgStructureNameStandards) { entity.OrgStructureName += item.OrgStructureName + ","; } } } if(entity.OrgStructureName != null) { entity.OrgStructureName = entity.OrgStructureName.Substring(0, entity.OrgStructureName.Length - 1); } model = entity.CopyData<Tra_CourseModel>(); if (model.IsComplex == false) { model.IsNormal = true; } if(model.TypeHandleFomular == EnumDropDown.FormulaType.E_TYPEHANDLEFORMULA_AVERAGE.ToString()) { model.IsTypeHandleFomularAuto = true; } if(model.TypeHandleFomular == EnumDropDown.FormulaType.E_TYPEHANDLEFORMULA_NORMAL.ToString()) { model.IsTypeHandleFomular = true; } } model.ActionStatus = status; return model; }
public ActionResult ExportCourseListByTemplate([DataSourceRequest] DataSourceRequest request, Tra_CourseSearchModel model) { string status = string.Empty; var isDataTable = false; object obj = new Tra_CourseModel(); var result = GetListData<Tra_CourseModel, Tra_CourseEntity, Tra_CourseSearchModel>(request, model, ConstantSql.hrm_tra_sp_get_Course, ref status); if (model != null && model.IsCreateTemplate) { var path = Common.GetPath("Templates"); ExportService exportService = new ExportService(); ConfigExport cfgExport = new ConfigExport() { Object = new Tra_CourseModel(), FileName = "Tra_Course", OutPutPath = path, DownloadPath = Hrm_Main_Web + "Templates", IsDataTable = isDataTable }; var str = exportService.CreateTemplate(cfgExport); return Json(str); } var courseServices = new ActionService(UserLogin); var objCourse = new List<object>(); objCourse.AddRange(new object[11]); objCourse[9] = 1; objCourse[10] = int.MaxValue - 1; var lstCourse = courseServices.GetData<Tra_CourseEntity>(objCourse, ConstantSql.hrm_tra_sp_get_Course, ref status).ToList(); var orgServices = new ActionService(UserLogin); var objOrg = new List<object>(); objOrg.AddRange(new object[5]); objOrg[3] = 1; objOrg[4] = int.MaxValue - 1; var lstOrg = orgServices.GetData<Cat_OrgStructureEntity>(objOrg, ConstantSql.hrm_cat_sp_get_OrgStructure, ref status).ToList(); var jobTitleServices = new ActionService(UserLogin); var objJobtitle = new List<object>(); objJobtitle.AddRange(new object[5]); objJobtitle[3] = 1; objJobtitle[4] = int.MaxValue - 1; var lstJobTitle = jobTitleServices.GetData<Cat_JobTitleEntity>(objJobtitle, ConstantSql.hrm_cat_sp_get_JobTitle, ref status).ToList(); var lstResult = new List<Tra_CourseModel>(); foreach (var item in result) { int[] orgForTrainee = new int[1]; int[] orgForTrainer = new int[1]; string[] jobTitleForTrainee = new string[1]; string[] jobTitleForTrainer = new string[1]; string[] courseForTrainee = new string[1]; string[] courseForTrainer = new string[1]; if (!string.IsNullOrEmpty(item.OrgListCode1)) { if (item.OrgListCode1.IndexOf(',') != -1) { orgForTrainee = item.OrgListCode1.Split(',').Select(s => int.Parse(s)).ToArray(); } else { orgForTrainee[0] = int.Parse(item.OrgListCode1); } } var lstOrgForTrainee = lstOrg.Where(s => orgForTrainee.Contains(s.OrderNumber)).ToList(); item.OrgStructureNameForTrainee = string.Join(",", lstOrgForTrainee.Select(s => s.OrgStructureName)); item.OrgStructureCodeForTrainee = string.Join(",", lstOrgForTrainee.Select(s => s.Code)); if (!string.IsNullOrEmpty(item.JobTitleListCode1)) { if (item.JobTitleListCode1.IndexOf(',') != -1) { jobTitleForTrainee = item.JobTitleListCode1.Split(',').ToArray(); } else { jobTitleForTrainee[0] = item.JobTitleListCode1; } } var lstJobTitleForTrainee = lstJobTitle.Where(s => jobTitleForTrainee.Contains(s.Code)).ToList(); item.JobTileNameForTrainee = string.Join(",", lstJobTitleForTrainee.Select(s => s.JobTitleName)); if (!string.IsNullOrEmpty(item.CourseListID)) { if (item.CourseListID.IndexOf(',') != -1) { courseForTrainee = item.CourseListID.Split(',').ToArray(); } else { courseForTrainee[0] = item.CourseListID; } } var lstCourseForTrainee = lstCourse.Where(s => courseForTrainee.Contains(s.Code)).ToList(); item.CourseNameForTrainee = string.Join(",", lstCourseForTrainee.Select(s => s.CourseName)); if (!string.IsNullOrEmpty(item.OrgListTrainerCode)) { if (item.OrgListTrainerCode.IndexOf(',') != -1) { orgForTrainer = item.OrgListTrainerCode.Split(',').Select(s => int.Parse(s)).ToArray(); } else { orgForTrainer[0] = int.Parse(item.OrgListTrainerCode); } } var lstOrgForTrainer = lstOrg.Where(s => orgForTrainer.Contains(s.OrderNumber)).ToList(); item.OrgStructureNameForTrainer = string.Join(",", lstOrgForTrainer.Select(s => s.OrgStructureName)); item.OrgStructureCodeForTrainer = string.Join(",", lstOrgForTrainer.Select(s => s.Code)); if (!string.IsNullOrEmpty(item.JobTitleListTrainerCode)) { if (item.JobTitleListTrainerCode.IndexOf(',') != -1) { jobTitleForTrainer = item.JobTitleListTrainerCode.Split(',').ToArray(); } else { jobTitleForTrainer[0] = item.JobTitleListTrainerCode; } } var lstJobTitleForTrainer = lstJobTitle.Where(s => jobTitleForTrainer.Contains(s.Code)).ToList(); item.JobTileNameForTrainer = string.Join(",", lstJobTitleForTrainer.Select(s => s.JobTitleName)); if (!string.IsNullOrEmpty(item.CourseListTrainerID)) { if (item.CourseListTrainerID.IndexOf(',') != -1) { courseForTrainer = item.CourseListTrainerID.Split(',').ToArray(); } else { courseForTrainer[0] = item.CourseListTrainerID; } } var lstCourseForTrainer = lstCourse.Where(s => courseForTrainer.Contains(s.Code)).ToList(); item.CourseNameForTrainer = string.Join(",", lstCourseForTrainer.Select(s => s.CourseName)); lstResult.Add(item); } if (model.ExportId != Guid.Empty) { var fullPath = ExportService.Export(model.ExportId, lstResult, null, model.ExportType); return Json(fullPath); } return Json(result.ToDataSourceResult(request)); }