public async Task <IActionResult> Put([FromForm] RequestViewModel model) { var date = DateTime.Now; var requestorder = _context.RequestOrders.Find(model.id); { requestorder.Subject = model.Subject; requestorder.Subjectdetail = model.Subjectdetail; requestorder.Commanded_date = model.Commanded_date; requestorder.Draft = model.Draft; requestorder.CreatedAt = date; }; _context.Entry(requestorder).State = Microsoft.EntityFrameworkCore.EntityState.Modified; _context.SaveChanges(); // <! -- ลบข้อมูลผู้รับข้อสั่งการเดิม --> var OLDrequestOrderAnswer = _context.RequestOrderAnswers .Where(m => m.RequestOrderId == requestorder.Id); _context.RequestOrderAnswers.RemoveRange(OLDrequestOrderAnswer); _context.SaveChanges(); // <! -- END ลบข้อมูลผู้รับข้อสั่งการเดิม --> // <!-- แก้ไขผู่รับข้อสั่งการ --> System.Console.WriteLine("3 : "); foreach (var item in model.Answer_by) { var data = new RequestOrderAnswer { RequestOrderId = requestorder.Id, Status = "แจ้งแล้ว", UserID = item, publics = 1, }; _context.RequestOrderAnswers.Add(data); _context.SaveChanges(); } // <!-- END แก้ไขผู้รับข้อสั่งการ --> if (!Directory.Exists(_environment.WebRootPath + "//requestfile//")) { Directory.CreateDirectory(_environment.WebRootPath + "//requestfile//"); //สร้าง Folder Upload ใน wwwroot } //var BaseUrl = url.ActionContext.HttpContext.Request.Scheme; // path ที่เก็บไฟล์ var filePath = _environment.WebRootPath + "//requestfile//"; if (model.files != null) { foreach (var formFile in model.files.Select((value, index) => new { Value = value, Index = index })) //foreach (var formFile in data.files) { var random = RandomString(10); string filePath2 = formFile.Value.FileName; string filename = Path.GetFileName(filePath2); string ext = Path.GetExtension(filename); if (formFile.Value.Length > 0) { // using (var stream = System.IO.File.Create(filePath + formFile.Value.FileName)) using (var stream = System.IO.File.Create(filePath + random + filename)) { await formFile.Value.CopyToAsync(stream); } var requestorderfile = new RequestOrderFile { RequestOrderId = model.id, Name = random + filename }; _context.RequestOrderFiles.Add(requestorderfile); _context.SaveChanges(); /* System.Console.WriteLine("Sucess");*/ } } } return(Ok(new { Id = model.id, title = model.Subject })); }
public async Task <IActionResult> Post([FromForm] RequestViewModel model) { var date = DateTime.Now; var requestordersdata = new RequestOrder { UserID = model.Commanded_by, Subject = model.Subject, Subjectdetail = model.Subjectdetail, CreatedAt = date, Commanded_date = model.Commanded_date, publics = 1, Draft = model.Draft, Accept = 0, Cancel = 0, }; System.Console.WriteLine("2 : "); _context.RequestOrders.Add(requestordersdata); _context.SaveChanges(); // <!-- เพิ่มผู่รับข้อสั่งการ --> System.Console.WriteLine("3 : "); foreach (var item in model.Answer_by) { var data = new RequestOrderAnswer { RequestOrderId = requestordersdata.Id, Status = "แจ้งแล้ว", UserID = item, publics = 1, }; _context.RequestOrderAnswers.Add(data); _context.SaveChanges(); } // <!-- END เพิ่มผู่รับข้อสั่งการ --> System.Console.WriteLine("4 : "); // <!-- อัพไฟล์ --> if (!Directory.Exists(_environment.WebRootPath + "//requestfile//")) { Directory.CreateDirectory(_environment.WebRootPath + "//requestfile//"); //สร้าง Folder Upload ใน wwwroot } var filePath = _environment.WebRootPath + "//requestfile//"; if (model.files != null) { foreach (var formFile in model.files.Select((value, index) => new { Value = value, Index = index })) { var random = RandomString(10); string filePath2 = formFile.Value.FileName; string filename = Path.GetFileName(filePath2); string ext = Path.GetExtension(filename); if (formFile.Value.Length > 0) { using (var stream = System.IO.File.Create(filePath + random + filename)) { await formFile.Value.CopyToAsync(stream); } var RequestOrderFile = new RequestOrderFile { RequestOrderId = requestordersdata.Id, Name = random + filename, }; _context.RequestOrderFiles.Add(RequestOrderFile); _context.SaveChanges(); } } } // <!--END อัพไฟล์ --> System.Console.WriteLine("5 : "); //return Ok (new { Id = executiveordersdata.Id, Answer_by = executiveordersdata.Answer_by }); //เดียวมาใช้ return(Ok(new { Id = requestordersdata.Id, title = requestordersdata.Subject })); }