public async Task <IHttpActionResult> DeleteCompanionAnimal(int id) { // 삭제 권한 처리 필요 PetterResultType <CompanionAnimal> petterResultType = new PetterResultType <CompanionAnimal>(); List <CompanionAnimal> companionAnimals = new List <CompanionAnimal>(); CompanionAnimal companionAnimal = await db.CompanionAnimals.FindAsync(id); if (companionAnimal == null) { return(NotFound()); } companionAnimal.StateFlag = StateFlags.Delete; companionAnimal.DateDeleted = DateTime.Now; db.Entry(companionAnimal).State = EntityState.Modified; await db.SaveChangesAsync(); companionAnimals.Add(companionAnimal); petterResultType.IsSuccessful = true; petterResultType.JsonDataSet = companionAnimals; return(Ok(petterResultType)); }
public async Task <IHttpActionResult> GetCompanionAnimals([FromUri] CompanionAnimal companionAnimal) { PetterResultType <CompanionAnimal> petterResultType = new PetterResultType <CompanionAnimal>(); var list = await db.CompanionAnimals.Where(p => p.MemberID == companionAnimal.MemberID).ToListAsync(); if (list == null) { return(NotFound()); } petterResultType.IsSuccessful = true; petterResultType.JsonDataSet = list; return(Ok(petterResultType)); }
public async Task <IHttpActionResult> PutCompanionAnimal(int id) { PetterResultType <CompanionAnimal> petterResultType = new PetterResultType <CompanionAnimal>(); List <CompanionAnimal> companionAnimals = new List <CompanionAnimal>(); if (!Request.Content.IsMimeMultipartContent()) { throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType); } CompanionAnimal companionAnimal = await db.CompanionAnimals.FindAsync(id); if (companionAnimal == null) { return(NotFound()); } if (Request.Content.IsMimeMultipartContent()) { string folder = HostingEnvironment.MapPath(UploadPath.CompanionAnimalPath); Utilities.CreateDirectory(folder); var provider = await Request.Content.ReadAsMultipartAsync(); foreach (var content in provider.Contents) { string fieldName = content.Headers.ContentDisposition.Name.Trim('"'); if (!string.IsNullOrEmpty(content.Headers.ContentDisposition.FileName)) { var file = await content.ReadAsByteArrayAsync(); string oldFileName = HttpUtility.UrlDecode(content.Headers.ContentDisposition.FileName.Trim('"')); string fileName = Utilities.additionFileName(oldFileName); if (!FileExtension.CompanionAnimalExtensions.Any(x => x.Equals(Path.GetExtension(fileName.ToLower()), StringComparison.OrdinalIgnoreCase))) { petterResultType.IsSuccessful = false; petterResultType.JsonDataSet = null; petterResultType.ErrorMessage = ResultErrorMessage.FileTypeError; return(Ok(petterResultType)); } string fullPath = Path.Combine(folder, fileName); File.WriteAllBytes(fullPath, file); string thumbnamil = Path.GetFileNameWithoutExtension(fileName) + "_thumbnail" + Path.GetExtension(fileName); Utilities.ResizeImage(fullPath, thumbnamil, FileSize.StoreWidth, FileSize.StoreHeight, ImageFormat.Png); companionAnimal.FileName = fileName; companionAnimal.FilePath = UploadPath.CompanionAnimalPath.Replace("~", ""); } else { string str = await content.ReadAsStringAsync(); string item = HttpUtility.UrlDecode(str); #region switch case switch (fieldName) { //case "CompanionAnimalNo": // companionAnimal.CompanionAnimalNo = int.Parse(item); // break; //case "MemberID": // companionAnimal.MemberID = item; // break; case "CodeID": companionAnimal.CodeID = item; break; case "Name": companionAnimal.Name = item; break; case "Age": companionAnimal.Age = byte.Parse(item); break; case "Weight": companionAnimal.Weight = byte.Parse(item); break; case "Gender": companionAnimal.Gender = item; break; case "Neutralization": companionAnimal.Neutralization = item; break; case "Marking": companionAnimal.Marking = item; break; case "Medication": companionAnimal.Medication = item; break; case "Feature": companionAnimal.Feature = item; break; default: break; } #endregion switch case } } companionAnimal.StateFlag = StateFlags.Use; companionAnimal.DateModified = DateTime.Now; db.Entry(companionAnimal).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { throw; } companionAnimals.Add(companionAnimal); petterResultType.AffectedRow = companionAnimals.Count(); petterResultType.IsSuccessful = true; petterResultType.JsonDataSet = companionAnimals; } else { petterResultType.IsSuccessful = false; petterResultType.JsonDataSet = null; } return(Ok(petterResultType)); }