public ActionResult Update(string edit, int id) { if (edit != "") { using (DbContextTransaction transaction = db.Database.BeginTransaction()) { try { JArray list = JArray.Parse(edit); foreach (JValue item in list) { if (item.Value.ToString() == "") { continue; } CameraRepairDetail temp = db.CameraRepairDetails.Where(x => x.documentary_id == id && x.room_id == item.Value.ToString()).FirstOrDefault(); if (temp.documentary_camera_repair_status == 0) { temp.documentary_camera_repair_status = 1; Acceptance a = new Acceptance { acceptance_date = null, documentary_id = id, room_id = item.Value.ToString(), acceptance_camera_quantity = temp.broken_camera_quantity }; db.Acceptances.Add(a); } } if ((from docu in db.Documentaries join details in db.CameraRepairDetails on docu.documentary_id equals details.documentary_id where docu.documentary_type == 8 && details.documentary_id == id && details.documentary_camera_repair_status == 0 select details).Count() == 0) { Documentary docu = db.Documentaries.Find(id); docu.documentary_status = 2; } db.SaveChanges(); transaction.Commit(); return(Json(new { success = true, message = "Lưu thành công" }, JsonRequestBehavior.AllowGet)); } catch (Exception e) { e.Message.ToString(); transaction.Rollback(); return(Json(new { success = false, message = "Có lỗi xảy ra" }, JsonRequestBehavior.AllowGet)); } } } return(Json(new { success = true, message = "Lưu thành công" }, JsonRequestBehavior.AllowGet)); }
public ActionResult Edit(string room_id, int documentary_id) { QuangHanhManufacturingEntities db = new QuangHanhManufacturingEntities(); using (DbContextTransaction transaction = db.Database.BeginTransaction()) { try { Acceptance acceptance = db.Acceptances.Where(x => x.documentary_id == documentary_id && x.room_id == room_id).FirstOrDefault(); if (acceptance != null && acceptance.acceptance_date != null) { return(Json(new { success = false, message = "Thiết bị đã được nghiệm thu" })); } acceptance.acceptance_date = DateTime.Now; db.SaveChanges(); int acceptance_left = db.Acceptances.Where(x => x.documentary_id == documentary_id && x.acceptance_date != null).Count(); if (acceptance_left == 0) { Documentary documentary = db.Documentaries.Find(documentary_id); documentary.documentary_status = 3; } Room r = db.Rooms.Find(room_id); CameraRepairDetail detail = db.CameraRepairDetails.Where(x => x.documentary_id == documentary_id && x.room_id == room_id).FirstOrDefault(); r.camera_available += detail.broken_camera_quantity; db.SaveChanges(); transaction.Commit(); return(Json(new { success = true, message = "Nghiệm thu thành công" })); } catch (Exception e) { e.Message.ToString(); transaction.Rollback(); return(Json(new { success = false, message = "Nghiệm thu thất bại" })); } } }
public ActionResult Add(string out_in_come, string data, string department_id, string reason) { QuangHanhManufacturingEntities DBContext = new QuangHanhManufacturingEntities(); using (DbContextTransaction transaction = DBContext.Database.BeginTransaction()) { try { Department department = DBContext.Departments.Find(department_id); if (department == null) { return(Json(new { success = false, message = "Phòng ban không tồn tại" })); } Documentary documentary = new Documentary { documentary_type = 8, date_created = DateTime.Now, person_created = Session["Name"] + "" }; documentary.reason = reason; documentary.out_income = out_in_come; documentary.department_id_to = department_id; documentary.documentary_status = 1; DBContext.Documentaries.Add(documentary); DBContext.SaveChanges(); JArray json = JArray.Parse(data); foreach (JObject item in json) { string room_id = item["id"].ToString(); string repair_requirement = item["repair_requirement"].ToString(); CameraRepairDetail drd = new CameraRepairDetail { documentary_camera_repair_status = 0, documentary_id = documentary.documentary_id, room_id = room_id, broken_camera_quantity = (int)item["broken_camera_quantity"], repair_requirement = repair_requirement, note = (string)item["note"], department_id = (string)item["department_id"] }; DBContext.CameraRepairDetails.Add(drd); JArray vattu = (JArray)item.SelectToken("vattu"); foreach (JObject jObject in vattu) { string supply_id = (string)jObject["supply_id"]; int quantity = (int)jObject["quantity"]; RepairCamera sde = new RepairCamera { documentary_id = documentary.documentary_id, room_id = room_id, supply_id = supply_id, quantity_plan = quantity }; DBContext.RepairCameras.Add(sde); } } DBContext.SaveChanges(); transaction.Commit(); return(Json(new { success = true })); } catch (Exception) { transaction.Rollback(); return(Json(new { success = false, message = "Có lỗi xảy ra" })); } } }
public ActionResult AddSupply(string list, int documentary_id, string room_id) { using (DbContextTransaction transaction = db.Database.BeginTransaction()) { try { CameraRepairDetail detail = db.CameraRepairDetails .Where(x => x.room_id == room_id && x.documentary_id == documentary_id && x.documentary_camera_repair_status == 0).FirstOrDefault(); if (detail == null) { return(Json(new { success = false, message = "Không thể chỉnh sửa quyết định đã xử lý" })); } JObject json = JObject.Parse(list); JArray arr = (JArray)json.SelectToken("list"); List <string> supply_ids = arr.Select(x => x["supply_id"].ToString()).ToList(); if (db.Supplies.Where(x => supply_ids.Contains(x.supply_id)).Count() != supply_ids.Count) { return(Json(new { success = false, message = "Mã vật tư không tồn tại" })); } foreach (JObject item in arr) { string supply_id = (string)item["supply_id"]; RepairCamera temp = db.RepairCameras .Where(a => a.documentary_id == documentary_id && a.room_id.Equals(room_id) && a.supply_id == supply_id).FirstOrDefault(); if (temp == null) { temp = new RepairCamera { documentary_id = documentary_id, room_id = room_id, quantity_in = (int)item["quantity_in"], quantity_out = (int)item["quantity_out"], quantity_plan = (int)item["quantity_plan"], quantity_used = (int)item["quantity_used"], supply_status = (string)item["supplyStatus"], supply_id = (string)item["supply_id"] }; db.RepairCameras.Add(temp); } else { temp.quantity_in = (int)item["quantity_in"]; temp.quantity_out = item["quantity_out"] == null ? 0 : (int)item["quantity_out"]; temp.quantity_used = item["quantity_used"] == null ? 0 : (int)item["quantity_used"]; temp.supply_status = (string)item["supplyStatus"]; } db.SaveChanges(); } db.SaveChanges(); transaction.Commit(); return(Json(new { success = true, message = "Cập nhật thành công" })); } catch (Exception) { transaction.Rollback(); return(Json(new { success = false, message = "Có lỗi xảy ra" })); } } }