public async Task <IActionResult> PartiallyUpdate( [FromRoute] string id, [FromBody] JsonPatchDocument <MenstruationDescriptionUpdateResource> patchDoc) { MenstruationDescription mDescription = await _mdescriptionRepository .FindByIdAsync( id, q => q.Include(x => x.MenstruationLog).ThenInclude(x => x.LoverCloudUser)); if (mDescription == null) { return(null); } if (mDescription.MenstruationLog?.LoverCloudUser?.Sex == Sex.Male || // 禁止男性用户 mDescription.MenstruationLog?.LoverCloudUser?.Id != this.GetUserId()) { return(Forbid()); } MenstruationDescriptionUpdateResource updateResource = _mapper.Map <MenstruationDescriptionUpdateResource>(mDescription); patchDoc.ApplyTo(updateResource); _mapper.Map(updateResource, mDescription); if (!await _unitOfWork.SaveChangesAsync()) { throw new Exception("Failed to update resource"); } return(NoContent()); }
public async Task <IActionResult> Delete([FromRoute] string id) { MenstruationDescription mDescription = await _mdescriptionRepository .FindByIdAsync( id, q => q.Include(x => x.MenstruationLog).ThenInclude(x => x.LoverCloudUser)); if (mDescription == null) { return(null); } if (mDescription.MenstruationLog?.LoverCloudUser?.Sex == Sex.Male || // 禁止男性用户 mDescription.MenstruationLog?.LoverCloudUser?.Id != this.GetUserId()) { return(Forbid()); } _mdescriptionRepository.Delete(mDescription); if (!await _unitOfWork.SaveChangesAsync()) { throw new Exception("Failed to delete resource"); } return(NoContent()); }
public async Task <IActionResult> Add( [FromRoute] string menstruationLogId, [FromBody] MenstruationDescriptionAddResource addResource) { if (!ModelState.IsValid) { return(UnprocessableEntity(ModelState)); } MenstruationLog mlog = await _mlogRepository.FindByIdAsync( menstruationLogId, c => c.Include(x => x.LoverCloudUser)); if (mlog == null) { return(NotFound()); } if (mlog.LoverCloudUser?.Sex == Sex.Male || // 禁止男性用户 mlog.LoverCloudUser?.Id != this.GetUserId()) { return(Forbid()); } MenstruationDescription mDescription = _mapper.Map <MenstruationDescription>(addResource); mDescription.Date = DateTime.Now; mDescription.MenstruationLog = mlog; _mdescriptionRepository.Add(mDescription); if (!await _unitOfWork.SaveChangesAsync()) { throw new Exception("Failed to add resource"); } MenstruationDescriptionResource mDescriptionResource = _mapper.Map <MenstruationDescriptionResource>(mDescription); var result = mDescriptionResource.ToDynamicObject() .AddLinks( this, null, "menstruation_description", null, "DeleteMenstruationDescription", "PartiallyUpdateMenstruationDescription"); return(CreatedAtRoute("AddMenstruationDescription", result)); }
public void Update(MenstruationDescription entity) { _dbContext.MenstruationDescriptions.Update(entity); }
public void Delete(MenstruationDescription entity) { _dbContext.MenstruationDescriptions.Remove(entity); }
public void Add(MenstruationDescription entity) { _dbContext.MenstruationDescriptions.Add(entity); }