//Delete public static ResponseResult Delete(TestViewModel entity) { ResponseResult result = new ResponseResult(); try { using (var db = new XBC_Context()) { t_test ts = db.t_test.Where(o => o.id == entity.id).FirstOrDefault(); if (ts != null) { var Serial = new JavaScriptSerializer(); object dataBefore = new //Mengambil Data Before for Log { ts.name, ts.is_bootcamp_test, ts.notes, ts.is_delete }; ts.deleted_by = entity.UserId; ts.deleted_on = DateTime.Now; ts.is_delete = true; db.SaveChanges(); // Audit Log Modify object dataAfter = new { ts.name, ts.is_bootcamp_test, ts.notes, ts.is_delete }; t_audit_log log = new t_audit_log(); log.type = "MODIFY"; log.json_before = Serial.Serialize(dataBefore); log.json_after = Serial.Serialize(dataAfter); log.created_by = entity.UserId; log.created_on = DateTime.Now; db.t_audit_log.Add(log); db.SaveChanges(); result.Entity = entity; } else { result.Success = false; result.ErrorMessage = "Test Not Found"; } } } catch (Exception ex) { result.Success = false; result.ErrorMessage = ex.Message; } return(result); }
// Update (Edit & Create) public static ResponseResult Update(BatchViewModel entity) { ResponseResult result = new ResponseResult(); try { using (var db = new XBC_Context()) { if (entity.id == 0) // Create { t_batch bt = new t_batch(); bt.name = entity.name; bt.technology_id = entity.technologyId; bt.period_to = entity.periodTo; bt.bootcamp_type_id = entity.bootcampTypeId; bt.room_id = entity.roomId; bt.trainer_id = entity.trainerId; bt.period_from = entity.periodFrom; bt.notes = entity.notes; bt.created_by = entity.UserId; bt.created_on = DateTime.Now; bt.is_delete = false; db.t_batch.Add(bt); db.SaveChanges(); // Audit Log Insert var json = new JavaScriptSerializer().Serialize(bt); t_audit_log log = new t_audit_log(); log.type = "INSERT"; log.json_insert = json; log.created_by = entity.UserId; log.created_on = DateTime.Now; db.t_audit_log.Add(log); db.SaveChanges(); entity.id = bt.id; result.Entity = entity; } else // Edit { t_batch bt = db.t_batch.Where(o => o.id == entity.id).FirstOrDefault(); if (bt != null) { var Serial = new JavaScriptSerializer(); object dataBefore = new //Mengambil Data Before for Log { bt.name, bt.technology_id, bt.period_to, bt.bootcamp_type_id, bt.room_id, bt.trainer_id, bt.period_from, bt.notes }; bt.name = entity.name; bt.technology_id = entity.technologyId; bt.period_to = entity.periodTo; bt.bootcamp_type_id = entity.bootcampTypeId; bt.room_id = entity.roomId; bt.trainer_id = entity.trainerId; bt.period_from = entity.periodFrom; bt.notes = entity.notes; bt.modified_by = entity.UserId; bt.modified_on = DateTime.Now; db.SaveChanges(); // Audit Log Modify object dataAfter = new { bt.name, bt.technology_id, bt.period_to, bt.bootcamp_type_id, bt.room_id, bt.trainer_id, bt.period_from, bt.notes }; t_audit_log log = new t_audit_log(); log.type = "MODIFY"; log.json_before = Serial.Serialize(dataBefore); log.json_after = Serial.Serialize(dataAfter); log.created_by = entity.UserId; log.created_on = DateTime.Now; db.t_audit_log.Add(log); db.SaveChanges(); result.Entity = entity; } else { result.Success = false; result.ErrorMessage = "Betch Not Found"; } } } } catch (Exception ex) { result.Success = false; result.ErrorMessage = ex.Message; } return(result); }
//Delete public static ResponseResult Delete(QuestionViewModel entity) { ResponseResult result = new ResponseResult(); try { using (var db = new XBC_Context()) { t_question qs = db.t_question.Where(o => o.id == entity.id).FirstOrDefault(); if (qs != null) { var Serial = new JavaScriptSerializer(); object dataBefore = new //Mengambil Data Before for Log { qs.option_a, qs.option_b, qs.option_c, qs.option_d, qs.option_e, qs.image_a, qs.image_b, qs.image_c, qs.image_d, qs.image_e, qs.is_deleted }; qs.deleted_by = entity.UserId; qs.deleted_on = DateTime.Now; qs.is_deleted = true; db.SaveChanges(); // Audit Log Modify object dataAfter = new { qs.option_a, qs.option_b, qs.option_c, qs.option_d, qs.option_e, qs.image_a, qs.image_b, qs.image_c, qs.image_d, qs.image_e, qs.is_deleted }; t_audit_log log = new t_audit_log(); log.type = "MODIFY"; log.json_before = Serial.Serialize(dataBefore); log.json_after = Serial.Serialize(dataAfter); log.created_by = entity.UserId; log.created_on = DateTime.Now; db.t_audit_log.Add(log); db.SaveChanges(); result.Entity = entity; } else { result.Success = false; result.ErrorMessage = "Question Not Found"; } } } catch (Exception ex) { result.Success = false; result.ErrorMessage = ex.Message; } return(result); }