public async Task <IActionResult> Edit([Bind("ArrivalTypeCode,ArrivalTypeName,ArrivalTypeDesc,CompanyCode,Id,Is_Active,Created_Date,Created_By,Updated_Date,Updated_By")] M_ArrivalType m_ArrivalType) { try { if (ModelState.IsValid) { m_ArrivalType.Updated_By = await base.CurrentUserId(); ResultObject resultObj; try { using (var arrTypeBll = new ArrivalTypeBLL()) { resultObj = await arrTypeBll.UpdateArrivalType(m_ArrivalType); _cache.Remove("CACHE_MASTER_ARRIVALTYPE"); } return(Json(new { success = true, data = (M_ArrivalType)resultObj.ObjectValue, message = "Arrival Type Update." })); } catch (Exception ex) { return(Json(new { success = false, data = m_ArrivalType, message = ex.Message })); } } var err = ModelState.Values.SelectMany(x => x.Errors).Select(x => x.ErrorMessage).ToList(); return(Json(new { success = false, errors = err, data = m_ArrivalType, message = "Update Failed" })); } catch (Exception ex) { return(BadRequest(new { success = false, message = ex.Message })); } }
public async Task <ResultObject> DeleteArrivalType(M_ArrivalType arrType) { var resultObj = new ResultObject { RowAffected = -1, ObjectValue = arrType }; using (var context = new MasterDbContext(contextOptions)) { using (var transaction = context.Database.BeginTransaction()) { try { MySqlParameter[] sqlParams = new MySqlParameter[] { new MySqlParameter("strId", arrType.Id), new MySqlParameter("strDelete_By", arrType.Updated_By) }; //Output Parameter no need to define. @`strId` resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_arrivaltype_delete( ?, ?)", parameters : sqlParams); transaction.Commit(); return(resultObj); } catch (Exception ex) { transaction.Rollback(); throw ex; } } } }
public async Task <ResultObject> UpdateArrivalType(M_ArrivalType arrType) { var resultObj = new ResultObject { RowAffected = -1, ObjectValue = arrType }; using (var context = new MasterDbContext(contextOptions)) { using (var transaction = context.Database.BeginTransaction()) { try { context.Entry(arrType).State = EntityState.Modified; MySqlParameter[] sqlParams = new MySqlParameter[] { new MySqlParameter("strId", arrType.Id), new MySqlParameter("strArrivalTypeCode", arrType.ArrivalTypeCode), new MySqlParameter("strArrivalTypeName", arrType.ArrivalTypeName), new MySqlParameter("strArrivalTypeDesc", arrType.ArrivalTypeDesc), new MySqlParameter("strCompanyCode", arrType.CompanyCode), new MySqlParameter("strIs_Active", arrType.Is_Active), new MySqlParameter("strCreated_By", arrType.Updated_By) }; //Output Parameter no need to define. @`strId` resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_arrivaltype_update(?, ?, ?, ?, ?, ?, ?)", parameters : sqlParams); transaction.Commit(); return(resultObj); } catch (Exception ex) { transaction.Rollback(); throw ex; } } } }
public async Task <ResultObject> InsertArrivalType(M_ArrivalType arrType) { var resultObj = new ResultObject { RowAffected = -1, ObjectValue = arrType }; using (var context = new MasterDbContext(contextOptions)) { using (var transaction = context.Database.BeginTransaction()) { try { MySqlParameter[] sqlParams = new MySqlParameter[] { new MySqlParameter("strArrivalTypeCode", arrType.ArrivalTypeCode), new MySqlParameter("strArrivalTypeName", arrType.ArrivalTypeName), new MySqlParameter("strArrivalTypeDesc", arrType.ArrivalTypeDesc), new MySqlParameter("strCompanyCode", arrType.CompanyCode), new MySqlParameter("strIs_Active", arrType.Is_Active), new MySqlParameter("strCreated_By", arrType.Created_By) }; resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_arrivaltype_insert(@`strId`, ?, ?, ?, ?, ?, ?)", parameters : sqlParams); //new department after insert. var newArrType = context.ArrivalType.FromSql("SELECT * FROM m_arrivaltype WHERE Id = @`strId`;").ToListAsync(); resultObj.ObjectValue = newArrType.Result[0]; transaction.Commit(); return(resultObj); } catch (Exception ex) { transaction.Rollback(); throw ex; } } } }