public async Task <ResultObject> DeleteMaterialType(M_MaterialType matType) { var resultObj = new ResultObject { RowAffected = -1, ObjectValue = matType }; using (var context = new MasterDbContext(contextOptions)) { using (var transaction = context.Database.BeginTransaction()) { try { MySqlParameter[] sqlParams = new MySqlParameter[] { new MySqlParameter("strId", matType.Id), new MySqlParameter("strDelete_By", matType.Updated_By) }; //Output Parameter no need to define. @`strId` resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_materialtype_delete( ?, ?)", parameters : sqlParams); transaction.Commit(); return(resultObj); } catch (Exception ex) { transaction.Rollback(); throw ex; } } } }
public async Task <IActionResult> Edit([Bind("MatTypeCode,MatTypeName,MatTypeDesc,CompanyCode,Id,Is_Active,Created_Date,Created_By,Updated_Date,Updated_By")] M_MaterialType m_MaterialType) { if (ModelState.IsValid) { m_MaterialType.Updated_By = await base.CurrentUserId(); ResultObject resultObj; try { using (var matTypeBll = new MaterialTypeBLL()) { resultObj = await matTypeBll.UpdateMaterialType(m_MaterialType); _cache.Remove("CACHE_MASTER_MATERIALTYPE"); } return(Json(new { success = true, data = (M_MaterialType)resultObj.ObjectValue, message = "Material Type Update." })); } catch (Exception ex) { return(Json(new { success = false, data = m_MaterialType, 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_MaterialType, message = "Update Failed" })); }
public async Task <ResultObject> UpdateMaterialType(M_MaterialType matType) { var resultObj = new ResultObject { RowAffected = -1, ObjectValue = matType }; using (var context = new MasterDbContext(contextOptions)) { using (var transaction = context.Database.BeginTransaction()) { try { context.Entry(matType).State = EntityState.Modified; MySqlParameter[] sqlParams = new MySqlParameter[] { new MySqlParameter("strId", matType.Id), new MySqlParameter("strMatTypeCode", matType.MatTypeCode), new MySqlParameter("strMatTypeName", matType.MatTypeName), new MySqlParameter("strMatTypeDesc", matType.MatTypeDesc), new MySqlParameter("strCompanyCode", matType.CompanyCode), new MySqlParameter("strIs_Active", matType.Is_Active), new MySqlParameter("strCreated_By", matType.Updated_By) }; //Output Parameter no need to define. @`strId` resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_materialtype_update(?, ?, ?, ?, ?, ?, ?)", parameters : sqlParams); transaction.Commit(); return(resultObj); } catch (Exception ex) { transaction.Rollback(); throw ex; } } } }
public async Task <ResultObject> InsertMaterialType(M_MaterialType matType) { var resultObj = new ResultObject { RowAffected = -1, ObjectValue = matType }; using (var context = new MasterDbContext(contextOptions)) { using (var transaction = context.Database.BeginTransaction()) { try { MySqlParameter[] sqlParams = new MySqlParameter[] { new MySqlParameter("strMatTypeCode", matType.MatTypeCode), new MySqlParameter("strMatTypeName", matType.MatTypeName), new MySqlParameter("strMatTypeDesc", matType.MatTypeDesc), new MySqlParameter("strCompanyCode", matType.CompanyCode), new MySqlParameter("strIs_Active", matType.Is_Active), new MySqlParameter("strCreated_By", matType.Created_By) }; resultObj.RowAffected = await context.Database.ExecuteSqlCommandAsync("call sp_materialtype_insert(@`strId`, ?, ?, ?, ?, ?, ?)", parameters : sqlParams); //new department after insert. var newDept = context.MaterialType.FromSql("SELECT * FROM m_materialtype WHERE Id = @`strId`;").ToListAsync(); resultObj.ObjectValue = newDept.Result[0]; transaction.Commit(); return(resultObj); } catch (Exception ex) { transaction.Rollback(); throw ex; } } } }