/// <summary> /// 删除 /// </summary> /// <returns></returns> public async Task DeleteAsync(UserInfo user, HumanInfoBlack humanInfoBlack, CancellationToken cancellationToken = default(CancellationToken)) { if (user == null) { throw new ArgumentNullException(nameof(user)); } if (humanInfoBlack == null) { throw new ArgumentNullException(nameof(humanInfoBlack)); } humanInfoBlack.DeleteTime = DateTime.Now; humanInfoBlack.DeleteUser = user.Id; humanInfoBlack.IsDeleted = true; Context.Attach(humanInfoBlack); var entry = Context.Entry(humanInfoBlack); entry.Property(x => x.IsDeleted).IsModified = true; entry.Property(x => x.DeleteUser).IsModified = true; entry.Property(x => x.DeleteTime).IsModified = true; try { await Context.SaveChangesAsync(cancellationToken); } catch (DbUpdateException) { throw; } }
/// <summary> /// 更新人事黑名单审核状态 /// </summary> /// <param name="id"></param> /// <param name="status"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task UpdateExamineStatus(string id, ExamineStatusEnum status, CancellationToken cancellationToken = default(CancellationToken)) { HumanInfoBlack humanInfoBlack = new HumanInfoBlack() { Id = id, UpdateTime = DateTime.Now, ExamineStatus = status }; Context.Attach(humanInfoBlack); var entry = Context.Entry(humanInfoBlack); entry.Property(x => x.ExamineStatus).IsModified = true; entry.Property(x => x.UpdateTime).IsModified = true; try { await Context.SaveChangesAsync(cancellationToken); } catch (DbUpdateException) { throw; } }
/// <summary> /// 新增,存在则更新 /// </summary> /// <returns></returns> public async Task <HumanInfoBlack> SaveAsync(UserInfo user, HumanInfoBlack humanInfoBlack, CancellationToken cancellationToken = default(CancellationToken)) { if (humanInfoBlack == null) { throw new ArgumentNullException(nameof(humanInfoBlack)); } if (string.IsNullOrEmpty(humanInfoBlack.Id)) { humanInfoBlack.Id = Guid.NewGuid().ToString(); humanInfoBlack.CreateTime = DateTime.Now; humanInfoBlack.CreateUser = user.Id; humanInfoBlack.IsDeleted = false; humanInfoBlack.ExamineStatus = ExamineStatusEnum.Auditing; Context.Add(humanInfoBlack); } else if (!HumanInfoBlacks.Any(a => a.Id == humanInfoBlack.Id)) { humanInfoBlack.CreateTime = DateTime.Now; humanInfoBlack.CreateUser = user.Id; humanInfoBlack.IsDeleted = false; Context.Add(humanInfoBlack); } else { var old = HumanInfoBlacks.FirstOrDefault(a => a.Id == humanInfoBlack.Id); old.IDCard = humanInfoBlack.IDCard; old.Name = humanInfoBlack.Name; old.Phone = humanInfoBlack.Phone; old.Reason = humanInfoBlack.Reason; old.Sex = humanInfoBlack.Sex; old.UserId = humanInfoBlack.UserId; old.Email = humanInfoBlack.Email; Context.Update(old); } try { await Context.SaveChangesAsync(cancellationToken); } catch (DbUpdateException) { throw; } return(humanInfoBlack); }