public SaleLead CreateSaleLead(int stateId, int customerId, DateTime timeStamp) { ISaleLeadRepository saleLeadRepo = new SaleLeadRepository(db); var saleLead = new SaleLead { StateId = stateId, CustomerId = customerId, Timestamp = timeStamp }; saleLeadRepo.Add(saleLead); return(saleLead); }
public IHttpActionResult Put(SaleLead saleLead) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var lead = _serviceSaleLead.UpdateLead(saleLead.Id, saleLead.SaleLeadState.Id, saleLead.SaleId, saleLead.Customer.Id, Convert.ToDateTime(saleLead.Timestamp)); saleLead.Id = lead.Id; return(CreatedAtRoute("DefaultApi", new { leadId = saleLead.Id }, saleLead)); }
public IHttpActionResult CreateSaleLead(SaleLead salelead) { //if (!ModelState.IsValid) //{ // return BadRequest(ModelState); //} var lead = _serviceSaleLead.CreateSaleLead(salelead.Customer.Id, salelead.SaleLeadState.Id, salelead.SaleId, Convert.ToDateTime(salelead.Timestamp)); salelead.Id = lead.Id; return(CreatedAtRoute("DefaultApi", new { id = salelead.Id }, salelead)); }
public SalePositionLead FindOrCreateSalePositionLead(SaleLead saleLead) { var empSaleSpec = new Specification<SalePositionLead>(s => s.SaleLead.Id == saleLead.Id); var emp = _repoSalePositionLead.Find(empSaleSpec); if (emp == null) { var empPos = _repoEmployeeInPosition.GetEmployeeInSalePosition().FirstOrDefault(s => s.Position.Name == "Sales"); emp = new SalePositionLead { FinalisedSale = false, SaleLead = saleLead, SaleLeadId = saleLead.Id, EmployeeInSalePosition = empPos, EmployeeInSalePostionId = empPos.Id }; _repoSalePositionLead.Add(emp); } return emp; }
public void DeleteLead(int leadId) { SaleLead lead = _repoSaleLead.Get(leadId); List<SalePositionLead> leadpos = lead.SalePositionLeads.ToList(); foreach (var pos in leadpos) { List<SalePositionLeadAction> leadposacts = pos.SalePositionLeadActions.ToList(); _repoSalePositionLeadAction.Delete(leadposacts); } _repoSalePositionLead.Delete(leadpos); _repoSaleLead.Delete(lead); }
public SaleLead CreateSaleLead(int customerId, int stateId, int saleId, DateTime timestamp) { if (saleId == 0) { var sale = new Sale { OrderNumber = 0, Date = DateTime.Now }; _repoSale.Add(sale); var addedSale = _repoSale.AsQueryable().Where(o => o.OrderNumber == 0).ToList(); saleId = addedSale.First().Id; } var lead = new SaleLead { CustomerId = customerId, StateId = stateId, SaleId = saleId, Timestamp = timestamp }; _repoSaleLead.Add(lead); return lead; }
public Sale FindOrCreateSaleLead(CustomerDTO cus, int orderNo, DateTime date, Boolean finalised) { SaleLead lead = null; if (cus != null) { var cusSpec = new Specification <SaleLead>(c => c.CustomerId == cus.CustomerId); var saleSpec = new Specification <SaleLead>(s => s.Sale.OrderNumber == orderNo); var cusAndSale = cusSpec.And(saleSpec); lead = _repoSaleLead.Find(cusAndSale); } if (lead == null) { var orderSpec = new Specification <Sale>(x => x.OrderNumber == orderNo); var dateSpec = new Specification <Sale>(y => y.Date == date); var orderAndDate = orderSpec.And(dateSpec); var sale = _repoSale.Find(orderAndDate); if (sale == null) { sale = new Sale { Date = date, OrderNumber = orderNo }; _repoSale.Add(sale); } var state = _repoLeadState.AsQueryable().FirstOrDefault(); if (cus != null) { var customer = _repoCustomer.Get(cus.CustomerId); var newLead = new SaleLead { SaleId = sale.Id, Sale = sale, SaleLeadState = state, StateId = state.Id, Customer = customer, CustomerId = customer.Id }; _repoSaleLead.Add(newLead); return(sale); } else { var customer = _repoCustomer.AsQueryable().FirstOrDefault(); var newLead = new SaleLead { SaleId = sale.Id, Sale = sale, SaleLeadState = state, StateId = state.Id, Customer = customer, CustomerId = customer.Id }; _repoSaleLead.Add(newLead); return(sale); } } else { var sale = _repoSale.AsQueryable().FirstOrDefault(s => s.Id == lead.Sale.Id); return(sale); } }
//DELETE: /api/SaleLeads/Destroy public IHttpActionResult Delete(SaleLead lead) { _serviceSaleLead.DeleteLead(lead.Id); return(Ok()); }