public JsonResult AddEditSave(string screenMode, PakAnas.Models.Approval data) { AjaxResult ajaxResult = new AjaxResult(); RepoResult repoResult = null; IDBContext db = databaseManager.GetContext(); try { db.BeginTransaction(); ajaxResult = Validation(data); //Validasi Controller if (AjaxResult.VALUE_SUCCESS.Equals(ajaxResult.Result)) { if (CommonConstant.SCREEN_MODE_ADD.Equals(screenMode)) { repoResult = approvalRepo.Insert(GetLoginUserId(), data); } else if (CommonConstant.SCREEN_MODE_EDIT.Equals(screenMode)) { repoResult = approvalRepo.Update(GetLoginUserId(), data); } CopyPropertiesRepoToAjaxResult(repoResult, ajaxResult); if (AjaxResult.VALUE_ERROR.Equals(ajaxResult.Result)) { db.AbortTransaction(); } else { db.CommitTransaction(); } } } catch (Exception ex) { db.AbortTransaction(); ajaxResult.Result = AjaxResult.VALUE_ERROR; ajaxResult.ErrMesgs = new string[] { string.Format("{0} = {1}", ex.GetType().FullName, ex.Message) }; } finally { db.Close(); } return(Json(ajaxResult)); }
public JsonResult GetByKey(long approvalId) { AjaxResult ajaxResult = new AjaxResult(); PakAnas.Models.Approval result = null; try { result = approvalRepo.GetByKeyWithDtl(approvalId); if (result == null) { ajaxResult.Result = AjaxResult.VALUE_ERROR; ajaxResult.ErrMesgs = new string[] { string.Format("No Data with the selected key found," + "please refresh the screen first") }; return(Json(ajaxResult)); } ajaxResult.Result = AjaxResult.VALUE_SUCCESS; ajaxResult.Params = new object[] { result }; } catch (Exception ex) { ajaxResult.Result = AjaxResult.VALUE_ERROR; ajaxResult.ErrMesgs = new string[] { string.Format("{0} = {1}", ex.GetType().FullName, ex.Message) }; } return(Json(ajaxResult)); }