public static void SaveDepartment(this IEntityRepository <Department> departmentRepository, Department dept) { departmentRepository.AddOrEdit(dept); var typeCollection = departmentRepository.GetAllRelevance <DepartmentTypeInDepartment>().Where(x => x.Department.ID == dept.ID).OrderBy(s => s.SortCode); foreach (var item in typeCollection) { departmentRepository.DeleteRelevance <DepartmentTypeInDepartment>(item); } var jobLeveClollection = departmentRepository.GetAllRelevance <JobLevelInDepartment>().Where(x => x.Department.ID == dept.ID).OrderBy(s => s.SortCode); foreach (var item in jobLeveClollection) { departmentRepository.DeleteRelevance <JobLevelInDepartment>(item); } var jobTitleCollection = departmentRepository.GetAllRelevance <JobTitleInDepartment>().Where(x => x.Department.ID == dept.ID).OrderBy(s => s.SortCode); foreach (var item in jobTitleCollection) { departmentRepository.DeleteRelevance <JobTitleInDepartment>(item); } foreach (var item in dept.Types) { var tItem = new DepartmentTypeInDepartment() { Name = "", Department = dept, DepartmentType = item }; departmentRepository.AddRelevance <DepartmentTypeInDepartment>(tItem); } foreach (var item in dept.JobLevels) { var tItem = new JobLevelInDepartment() { Name = "", Department = dept, JobLevel = item }; departmentRepository.AddRelevance <JobLevelInDepartment>(tItem); } foreach (var item in dept.JobTitles) { var tItem = new JobTitleInDepartment() { Name = "", Department = dept, JobTitle = item }; departmentRepository.AddRelevance <JobTitleInDepartment>(tItem); } departmentRepository.Save(); }
public ActionResult Save(SystemWorkPlaceVM boVM) { if (ModelState.IsValid) { var bo = _Service.GetSingle(boVM.ID); if (bo == null) { bo = new SystemWorkPlace(); bo.ID = boVM.ID; } var appID = Assembly.GetExecutingAssembly().ManifestModule.ModuleVersionId; var appInfo = _Service.GetSingleRelevance <ApplicationInformation>(appID); if (appInfo == null) { appInfo = new ApplicationInformation(); appInfo.ID = appID; appInfo.AppID = appID; appInfo.Name = ""; appInfo.Description = ""; appInfo.SortCode = "001"; _Service.AddRelevance <ApplicationInformation>(appInfo); _Service.Save(); } boVM.MapToBo(bo, appInfo); _Service.AddOrEditAndSave(bo); return(Json(PageComponentRepository <SystemWorkPlaceVM> .SaveOK(true, "1", ""))); } else { var vItems = new List <ValidatorResult>(); foreach (var item in ModelState) { if (item.Value.Errors != null) { foreach (var vItem in item.Value.Errors) { var errItem = new ValidatorResult(); errItem.Name = item.Key; errItem.ErrorMessage = vItem.ErrorMessage; vItems.Add(errItem); } } } var editor = PageComponentRepository <SystemWorkPlaceVM> .UpdateCreateOrEditDialog(boVM, false, vItems).InnerHtmlContent; return(Json(editor)); } }
/// <summary> /// 为部门批量添加人员 /// </summary> /// <param name="departmentRepository"></param> /// <param name="deptID"></param> /// <param name="personIDs"></param> public static void AddPersons(this IEntityRepository <Department> departmentRepository, Guid deptID, List <Guid> personIDs) { var dept = departmentRepository.GetSingle(deptID); foreach (var item in personIDs) { var person = departmentRepository.GetSingleRelevance <Person>(item); var tempRelevance = departmentRepository.GetSingleRelevanceBy <PersonsInDepartment>(x => x.Person.ID == item && x.Department.ID == deptID); if (tempRelevance == null) { tempRelevance = new PersonsInDepartment() { Department = dept, Person = person }; departmentRepository.AddRelevance <PersonsInDepartment>(tempRelevance); } } departmentRepository.Save(); }