/// <summary> /// 修改学习信息 /// </summary> /// <param name="entity"></param> /// <param name="changeEntity"></param> /// <returns></returns> internal int ChangeStudy(ArStudyModel entity) { int record = 0; if (entity == null) { return(record); } //1.若是添加,则直接添加 if (entity.OpSign.Trim().ToLower() == "add") { entity.WorkingStatus = "在职"; record = Insert(entity); } else if (entity.OpSign.Trim().ToLower() == "edit") //2.若是修改,则先查询是否存在, { var mdl = this.irep.Entities.FirstOrDefault(e => e.Id_Key == entity.Id_Key); if (mdl != null) { //若存在,则直接修改 record = irep.Update(u => u.Id_Key == entity.Id_Key, entity); } else { entity.WorkingStatus = "在职"; //否则,直接添加 record = Insert(entity); } } return(record); }
private int EditEmployee(ArchivesEmployeeIdentityDto dto, int record, ArchivesEmployeeIdentityModel empIdentityMdl, ArStudyModel studyMdl, ArTelModel telMdl) { ArStudyModel oldStudyMdl = null; ArTelModel oldTelMdl = null; ArDepartmentChangeLibModel departmentMdl = null; ArPostChangeLibModel postMdl = null; ArchivesEmployeeIdentityModel oldEmpIdentityMdl = new ArchivesEmployeeIdentityModel(); ArchiveEntityMapper.GetStudyDataFrom(dto, oldEmpIdentityMdl, out oldStudyMdl); ArchiveEntityMapper.GetTelDataFrom(dto, oldEmpIdentityMdl, out oldTelMdl); ArchiveEntityMapper.GetDepartmentDataFrom(dto, oldEmpIdentityMdl, out departmentMdl); ArchiveEntityMapper.GetPostDataFrom(dto, oldEmpIdentityMdl, out postMdl); ////添加修改逻辑 record = this.irep.Update(u => u.Id_Key == dto.Id_Key, empIdentityMdl); ////处理外部逻辑 ////1.修改学习信息存储 record += StudyManager.Edit(studyMdl, oldStudyMdl); ////2.修改联系方式信息存储 record += TelManager.Edit(telMdl, oldTelMdl); ////3.修改部门信息存储 record += this.DepartmentMananger.Edit(departmentMdl); ////4.修改岗位信息存储 record += this.PostManager.Edit(postMdl); return(record); }
/// <summary> /// 修改信息 /// </summary> /// <param name="oldEntity"></param> /// <param name="entity"></param> /// <returns></returns> internal int Edit(ArStudyModel oldEntity, ArStudyModel entity) { var mdl = this.irep.Entities.FirstOrDefault(e => e.WorkerId == oldEntity.WorkerId && e.SchoolName == oldEntity.SchoolName); if (mdl != null) { entity.Id_Key = mdl.Id_Key; } return(irep.Update(u => u.WorkerId == oldEntity.WorkerId && u.SchoolName == oldEntity.SchoolName, mdl)); }
/// <summary> /// 插入数据 /// </summary> /// <param name="entity"></param> /// <returns></returns> internal int Insert(ArStudyModel entity) { int record = 0; if (!irep.IsExist(e => e.WorkerId == entity.WorkerId && e.SchoolName == entity.SchoolName)) { record = irep.Insert(entity); } return(record); }
/// <summary> /// 获取学习信息 /// </summary> /// <param name="dto"></param> /// <param name="entity"></param> internal static void GetStudyDataFrom(ArchivesEmployeeIdentityDto dto, ArchivesEmployeeIdentityModel entity, out ArStudyModel studyEntity) { entity.SchoolName = dto.SchoolName; entity.MajorName = dto.MajorName; entity.Education = dto.Education; studyEntity = new ArStudyModel() { WorkerId = dto.WorkerId, WorkerName = dto.Name, SchoolName = dto.SchoolName, StudyDateFrom = dto.StudyDateFrom, StudyDateTo = dto.StudyDateTo, MajorName = dto.MajorName, Qulification = dto.Education, WorkingStatus = "在职", OpDate = DateTime.Now.ToDate(), OpPerson = dto.OpPerson }; }
/// <summary> /// 存储员工档案信息 /// </summary> /// <param name="dto">新的数据传输对象</param> /// <param name="opSign">操作标志</param> /// <returns></returns> public OpResult Store(ArchivesEmployeeIdentityDto dto, string opSign) { int record = 0; try { dto.RegistedDate = dto.RegistedDate.AddDays(1).ToDate(); ArchivesEmployeeIdentityModel empIdentityMdl = new ArchivesEmployeeIdentityModel(); ArStudyModel studyMdl = null; ArTelModel telMdl = null; ArPostChangeLibModel postMdl = null; ArDepartmentChangeLibModel departmentMdl = null; //得到身份证的信息 if (!ArchiveEntityMapper.GetIdentityDataFrom(dto.IdentityID, empIdentityMdl, this.identityManager)) { return(OpResult.SetSuccessResult("没有找到此身份证号的信息!", true)); } ArchiveEntityMapper.GetEmployeeDataFrom(dto, empIdentityMdl); ArchiveEntityMapper.GetDepartmentDataFrom(dto, empIdentityMdl, out departmentMdl); ArchiveEntityMapper.GetPostDataFrom(dto, empIdentityMdl, out postMdl); ArchiveEntityMapper.GetStudyDataFrom(dto, empIdentityMdl, out studyMdl); ArchiveEntityMapper.GetTelDataFrom(dto, empIdentityMdl, out telMdl); if (opSign == "add") { record = AddEmployee(record, empIdentityMdl, studyMdl, telMdl, postMdl, departmentMdl); } else if (opSign == "edit") { record = EditEmployee(dto, record, empIdentityMdl, studyMdl, telMdl); } return(OpResult.SetSuccessResult("保存档案数据成功!", record > 0, empIdentityMdl.Id_Key)); } catch (Exception ex) { return(OpResult.SetErrorResult(ex)); } }
/// <summary> /// 变更学习信息 /// </summary> /// <param name="entities"></param> /// <returns></returns> public OpResult ChangeStudy(List <ArStudyModel> entities) { int record = 0; if (entities == null || entities.Count == 0) { return(OpResult.SetSuccessResult("entities can't be null", false)); } //修改学习信息 entities.ForEach(entity => { if (entity.SchoolName != null) { record += this.StudyManager.ChangeStudy(entity); } }); //将每个人最新的学习信息更新到汇总表中 entities.Select(e => e.WorkerId).Distinct().ToList <string>().ForEach(workerId => { var datas = entities.Where(e => e.WorkerId == workerId).OrderByDescending(o => o.Id_Key).ToList(); if (datas != null && datas.Count > 0) { //取批量中最后一条更新的记录来更新总表中的数据 ArStudyModel changeEntity = datas[0]; if (changeEntity.OpSign.Trim().ToLower() != "init") { record += this.irep.Update(e => e.WorkerId == changeEntity.WorkerId, u => new ArchivesEmployeeIdentityModel { SchoolName = changeEntity.SchoolName, MajorName = changeEntity.MajorName, Education = changeEntity.Qulification }); } } }); return(OpResult.SetSuccessResult("变更学习信息成功!", record > 0)); }
private int AddEmployee(int record, ArchivesEmployeeIdentityModel empIdentityMdl, ArStudyModel studyMdl, ArTelModel telMdl, ArPostChangeLibModel postMdl, ArDepartmentChangeLibModel departmentMdl) { record = this.UpdataEMployee(empIdentityMdl); ////处理外部逻辑 ////1.处理学习信息存储 StudyManager.Insert(studyMdl); ////2.处理联系方式信息 TelManager.Insert(telMdl); //3.初始化岗位信息 PostManager.InitPost(postMdl); //4.初始化部门信息 this.DepartmentMananger.InitDepartment(departmentMdl); //5.初始化班别信息 AttendanceService.ClassTypeSetter.InitClassType(CreateClassTypeModel(empIdentityMdl)); return(record); }