public void Publish(ProductChanges productChanges) { if (productChanges == null) { throw new ArgumentNullException(nameof(productChanges)); } using var connection = _connectionFactory.CreateConnection(); using var channel = connection.CreateModel(); try { channel.ExchangeDeclare(_exchangeName, _exchangeType); var routingKey = _routingKeyFactory.GetPublicationKey(productChanges); channel.BasicPublish( exchange: _exchangeName, routingKey: routingKey, basicProperties: null, body: _dataSerializer.ToBson(productChanges)); } finally { connection.Close(); channel.Close(); } }
public Task <bool> UpdateProduct(ProductChanges product) { try { using (var conn = _settings.GetConnection()) { if (conn.State == ConnectionState.Closed) { conn.Open(); } using (var cmd = new SqlCommand("MODIFICA_PRODUCTO", conn)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@CODE", SqlDbType.Int).Value = product.PkCode; cmd.Parameters.Add("@DESCRIPCION", SqlDbType.NVarChar).Value = product.NewDescription; cmd.Parameters.Add("@LINEA", SqlDbType.Int).Value = product.NewLineType; cmd.Parameters.Add("@CONTENIDO", SqlDbType.NVarChar).Value = product.NewContent; cmd.ExecuteNonQuery(); conn.Close(); } } return(Task.FromResult(true)); } catch (Exception) { return(Task.FromResult(false)); } }
public ProductChange GetProductChange(string plot, int yCoordenates) { //ContractNumberDue or Funding? ProductChange e = ProductChanges.FirstOrDefault(x => plot.Substring(3, 12).Trim() == x.FundingNumber); if (e != null) { e.State = "AUTORIZADO"; ehllapi.SetCursorPos(yCoordenates + ",2"); EhllapiWrapper.Wait(); ehllapi.SendStr("X"); EhllapiWrapper.Wait(); ehllapi.SendStr("@E"); EhllapiWrapper.Wait(); ehllapi.SendStr("@1"); EhllapiWrapper.Wait(); ehllapi.SendStr("@E"); EhllapiWrapper.Wait(); } e.Plot = plot; return(e); }
public ProductChangesDto ToProductChangesDto(ProductChanges productChanges) { if (productChanges == null) { throw new ArgumentNullException(nameof(productChanges)); } return(new ProductChangesDto { Qty = productChanges.Qty, State = productChanges.State, Number = productChanges.Number, PrevQty = productChanges.PrevQty, PrevState = productChanges.PrevState }); }
public string GetPublicationKey(ProductChanges productChanges) { return(FormRouteKey(productChanges.GetQtyChangeType().ToString(), productChanges.GetStateChangeType().ToString(), productChanges.Category.ToString())); }