public static string InsertCostSql(NewOffer offer, FormLog stat) { if (offer.Costs == null) { return(""); } var costs = offer.Costs.Where(c => c.Value > 0).ToArray(); if (costs.Length == 0) { return(""); } stat.InsertCostCount += costs.Length; var command = new StringBuilder() .AppendFormat("insert into farm.CoreCosts (Core_ID, PC_CostCode, {0}) values ", Mapping.CostMapping.Select(m => m.Name).Implode()) .Append(costs.Select(c => String.Format("(@LastCoreID, {0}, {1})", c.Description.Id, Mapping.CostMapping.Select(m => ToSql(m.GetValue(c))).Implode())) .Implode()) .AppendLine(";"); return(command.ToString()); }
private void CheckForReceivedOfferChanges(List <Offer> offers) { if (offers != null) { foreach (var newOffer in offers) { var isOld = false; foreach (var oldsOffer in LastReceivedOffersData) { if (newOffer.TradeOfferId == oldsOffer.TradeOfferId) { isOld = true; break; } } if (!isOld) { if (AutoAccepting) { NewOffer?.Invoke(this, newOffer); AcceptOffer(newOffer); } } } LastReceivedOffersData = new List <Offer>(offers); } }
public async Task <ActionResult> NewOffer([FromBody] NewOffer newOffer) { if (ModelState.IsValid) { await _dataRepo.AddAsync(newOffer); //_service.AddNewOfferAsync(newOffer); } return(Created($"api/offers/{newOffer.Title}", null)); //location header , don't return the model }
public async Task AddAsync(NewOffer element) //create new { if (element == null) { throw new Exception("Blad danych!"); } var new_offer = _mapper.Map <Offer>(element); await _dbContext.Offer.AddAsync(new_offer); await _dbContext.SaveChangesAsync(); }
public async Task AddNewOfferAsync(NewOffer offer) { if (offer == null) { throw new Exception("Blad danych!"); } var new_offer = _mapper.Map <NewOffer, Offer>(offer); await _dbContext.Offer.AddAsync(new_offer); await _dbContext.SaveChangesAsync(); }
public static string UpdateOfferSql(NewOffer offer, FormLog stat) { var fields = BuildSetSql(offer, offer.ExistsOffer, Mapping.OfferMapping); if (fields.Length == 0) { return(""); } stat.UpdateCoreCount++; return(String.Format("update farm.Core0 set {0} where Id = {1};\r\n", fields, offer.ExistsOffer.Id)); }
public static string InsertOfferSql(PriceFormalizationInfo info, NewOffer offer) { var command = new StringBuilder(); command.Append("insert into farm.Core0(PriceCode,") .Append(Mapping.OfferMapping.Select(m => m.Name).Implode()) .Append(") values (") .Append(info.PriceCode + ",") .Append(Mapping.OfferMapping.Select(m => ToSql(m.GetValue(offer))).Implode()) .Append(");") .Append("set @LastCoreID = last_insert_id();"); return(command.ToString()); }
public static string UpdateCostsCommand(NewOffer offer, FormLog stat) { var command = new StringBuilder(); var costs = (offer.Costs ?? new Cost[0]).Where(c => c.Value > 0).ToArray(); foreach (var cost in costs) { Cost existsCost = null; if (offer.ExistsOffer.Costs != null) { existsCost = offer.ExistsOffer.Costs.FirstOrDefault(c => c.Description.Id == cost.Description.Id); } if (existsCost == null) { stat.InsertCostCount++; command.AppendFormat("insert into farm.CoreCosts (Core_ID, PC_CostCode, ") .Append(Mapping.CostMapping.Select(m => m.Name).Implode()) .Append(") values (") .AppendFormat("{0}, {1},", offer.ExistsOffer.Id, cost.Description.Id) .Append(Mapping.CostMapping.Select(m => ToSql(m.GetValue(cost))).Implode()) .Append(");"); } else { var cmd = UpdateCostSql(offer.ExistsOffer, cost, existsCost); if (!String.IsNullOrEmpty(cmd)) { stat.UpdateCostCount++; command.Append(cmd); } } } if (offer.ExistsOffer.Costs != null) { var costsToDelete = offer.ExistsOffer.Costs .Where(c => costs.All(nc => nc.Description.Id != c.Description.Id)) .Select(c => c.Description.Id.ToString()).ToArray(); if (costsToDelete.Length > 0) { stat.DeleteCostCount += costsToDelete.Length; command.AppendFormat("delete from farm.CoreCosts where Core_Id = {0} and PC_CostCode in ({1});", offer.ExistsOffer.Id, String.Join(", ", costsToDelete)); } } return(command.ToString()); }
private async Task NewOfferClick() => await NewOffer.InvokeAsync();
public Task AddAsync(NewOffer element) { throw new System.NotImplementedException(); }