예제 #1
0
        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);
        }
예제 #2
0
        /// <summary>
        /// 初始化员工部门数据
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        internal int InitDepartment(ArDepartmentChangeLibModel entity)
        {
            int record = 0;

            if (!this.irep.IsExist(e => e.WorkerId == entity.WorkerId))
            {
                record = this.irep.Insert(entity);
            }
            return(record);
        }
예제 #3
0
        /// <summary>
        /// 初次修改部门信息(档案编辑入口)
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        internal int Edit(ArDepartmentChangeLibModel entity)
        {
            int record = 0;
            var posts  = this.irep.Entities.Where(e => e.WorkerId == entity.WorkerId).ToList();

            if (posts != null && posts.Count == 1)
            {
                record = this.irep.Update(e => e.WorkerId == entity.WorkerId, u => new ArDepartmentChangeLibModel
                {
                    NowDepartment = entity.NowDepartment,
                    OldDepartment = entity.OldDepartment,
                });
            }
            return(record);
        }
예제 #4
0
        /// <summary>
        /// 获取部门信息
        /// </summary>
        /// <param name="dto"></param>
        /// <param name="entity"></param>
        internal static void GetDepartmentDataFrom(ArchivesEmployeeIdentityDto dto, ArchivesEmployeeIdentityModel entity, out ArDepartmentChangeLibModel departmentEntity)
        {
            entity.Organizetion           = dto.Organizetion;
            entity.Department             = dto.Department;
            entity.DepartmentChangeRecord = 0;

            departmentEntity = new ArDepartmentChangeLibModel()
            {
                AssignDate    = DateTime.Now.ToDate(),
                WorkerId      = dto.WorkerId,
                WorkerName    = dto.Name,
                InStatus      = "In",
                NowDepartment = dto.Department,
                OldDepartment = dto.Department,
                OpPerson      = dto.OpPerson,
                OpSign        = "Init"
            };
        }
예제 #5
0
        /// <summary>
        /// 变动部门信息
        /// </summary>
        /// <param name="changeEntity"></param>
        /// <returns></returns>
        public int ChangeRecord(ArDepartmentChangeLibModel changeEntity, out int changeRecord)
        {
            changeRecord = 0;
            int record = 0;

            if (changeEntity == null)
            {
                return(record);
            }
            var departments = this.irep.Entities.Where(e => e.WorkerId == changeEntity.WorkerId).OrderByDescending(o => o.Id_Key).ToList();

            if (departments != null && departments.Count > 0)
            {
                if (changeEntity.OpSign == "edit")
                {
                    var dep = departments[0];
                    record = this.irep.Update(e => e.Id_Key == dep.Id_Key, u => new ArDepartmentChangeLibModel
                    {
                        NowDepartment = changeEntity.NowDepartment,
                        OpPerson      = changeEntity.OpPerson
                    });
                }
                else if (changeEntity.OpSign == "change")
                {
                    changeRecord = departments.Count;
                    departments.ForEach(d =>
                    {
                        record += this.irep.Update(e => e.Id_Key == d.Id_Key, u => new ArDepartmentChangeLibModel
                        {
                            InStatus = "Out"
                        });
                    });
                    changeEntity.InStatus = "In";
                    record       = this.irep.Insert(changeEntity);
                    changeRecord = changeRecord + record;
                }
            }
            return(record);
        }
예제 #6
0
        /// <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));
            }
        }
예제 #7
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);
 }