public void InsertFieldForce() { FieldForceAddress address = new FieldForceAddress() { AddressLine1 = "7101 Richmond Hwy", AddressLine2 = "Apt 2", State = "VA", Zip = "22306", City = "Alexandria", CreatedBy = "Unit Test" }; FieldForce fieldForce = new FieldForce() { Address = address, Code = "F1", Email = "*****@*****.**", Name = "Faisal AHmed", Phone = "(571)-409-8511", CreatedBy = "Unit Test" }; UnitOfWork.FieldForces.Add(fieldForce); UnitOfWork.Complete(); FieldForce dbFieldForce = UnitOfWork.FieldForces.Get(fieldForce.Id); Assert.IsNotNull(dbFieldForce); Assert.AreEqual(dbFieldForce.Name, fieldForce.Name); Assert.AreEqual(dbFieldForce.Code, fieldForce.Code); Assert.AreEqual(dbFieldForce.Email, fieldForce.Email); Assert.AreEqual(dbFieldForce.Phone, fieldForce.Phone); Assert.IsNotNull(dbFieldForce.Address); }
public async Task DeleteFieldForceAsync() { FieldForceAddress address = new FieldForceAddress() { AddressLine1 = "7101 Richmond Hwy", AddressLine2 = "Apt 2", State = "VA", Zip = "22306", City = "Alexandria", CreatedBy = "Unit Test" }; FieldForce fieldForce = new FieldForce() { Address = address, Code = "F1", Email = "*****@*****.**", Name = "Faisal AHmed", Phone = "(571)-409-8511", CreatedBy = "Unit Test" }; UnitOfWork.FieldForces.Add(fieldForce); await UnitOfWork.CompleteAsync(); FieldForce dbFieldForce = await UnitOfWork.FieldForces.GetAsync(fieldForce.Id); Assert.IsNotNull(dbFieldForce); UnitOfWork.FieldForces.Remove(dbFieldForce); await UnitOfWork.CompleteAsync(); dbFieldForce = await UnitOfWork.FieldForces.GetAsync(fieldForce.Id); Assert.IsNull(dbFieldForce); }
public async Task <IHttpActionResult> SaveFieldForceAsync(FieldForceDto record) { FieldForce fieldforce = null; MarketHierarchy market = null; FieldForceAddress address = null; List <Distributor> distributors = new List <Distributor>(); if (ModelState.IsValid) { try { if (record == null) { return(BadRequest()); } if (record.MarketHierarchyId.HasValue) { market = await _unitOfWork.MarketHierarchies.GetAsync(record.MarketHierarchyId.Value); if (market == null) { return(BadRequest("Invalid market id")); } } foreach (int id in record.DistributorIds) { Distributor distributor = _unitOfWork.Distributors.Get(id); if (distributor == null) { return(BadRequest("Invalid fistributor id")); } distributors.Add(distributor); } if (record.Id != null) { fieldforce = _unitOfWork.FieldForces.Get(record.Id.Value); if (fieldforce == null) { return(NotFound()); } fieldforce.UpdatedBy = "web:api"; fieldforce.UpdatedDate = DateTime.Now; } else { fieldforce = new FieldForce(); _unitOfWork.FieldForces.Add(fieldforce); fieldforce.CreatedBy = "web:api"; } fieldforce.Distributors.Clear(); fieldforce.Distributors = distributors; fieldforce.MarketHierarchy = market; fieldforce.Code = record.Code; fieldforce.Name = record.Name; fieldforce.Email = record.Email; fieldforce.Phone = record.Phone; address = new FieldForceAddress(); address.AddressLine1 = record.AddressLine1; address.AddressLine2 = record.AddressLine2; address.City = record.City; address.State = record.State; address.Zip = record.Zip; await _unitOfWork.CompleteAsync(); return(Ok(new { status = "success" })); } catch (Exception ex) { if (_logger.IsDebugEnabled) { _logger.Debug(ex); return(InternalServerError(ex)); } return(InternalServerError()); } } else { return(BadRequest(ModelState)); } }
public void InsertFieldForceWithDistributorAndMarketHierarchy() { MarketHierarchy nation = new MarketHierarchy() { Code = "M1", CreatedBy = "Unit Test", Name = "US", Type = MarketHierarchyType.Nation }; MarketHierarchy region = new MarketHierarchy() { Code = "M2", CreatedBy = "Unit Test", Name = "Virginia", Type = MarketHierarchyType.Region, Parent = nation }; MarketHierarchy territory = new MarketHierarchy() { Code = "M3", CreatedBy = "Unit Test", Name = "Alexandria", Type = MarketHierarchyType.Territory, Parent = region }; MarketHierarchy route = new MarketHierarchy() { Code = "M4", CreatedBy = "Unit Test", Name = "Richmond Hwy", Type = MarketHierarchyType.Route, Parent = territory }; Distributor distributor = new Distributor() { Address = "9420 Key West Avenue", CreatedBy = "Unit Test", Code = "D1", Name = "DrFirst" }; FieldForceAddress address = new FieldForceAddress() { AddressLine1 = "7101 Richmond Hwy", AddressLine2 = "Apt 2", State = "VA", Zip = "22306", City = "Alexandria", CreatedBy = "Unit Test" }; FieldForce fieldForce = new FieldForce() { Address = address, Code = "F1", Email = "*****@*****.**", Name = "Faisal AHmed", Phone = "(571)-409-8511", CreatedBy = "Unit Test" }; fieldForce.MarketHierarchy = route; fieldForce.Distributors.Add(distributor); UnitOfWork.MarketHierarchies.Add(route); UnitOfWork.MarketHierarchies.Add(territory); UnitOfWork.MarketHierarchies.Add(region); UnitOfWork.MarketHierarchies.Add(nation); UnitOfWork.Distributors.Add(distributor); UnitOfWork.FieldForces.Add(fieldForce); UnitOfWork.Complete(); FieldForce dbFieldForce = UnitOfWork.FieldForces.Get(fieldForce.Id); Assert.IsNotNull(dbFieldForce); Assert.AreEqual(dbFieldForce.Name, fieldForce.Name); Assert.AreEqual(dbFieldForce.Code, fieldForce.Code); Assert.AreEqual(dbFieldForce.Email, fieldForce.Email); Assert.AreEqual(dbFieldForce.Phone, fieldForce.Phone); Assert.IsNotNull(dbFieldForce.MarketHierarchy); Assert.AreEqual(dbFieldForce.MarketHierarchy.Id, route.Id); Assert.AreEqual(dbFieldForce.MarketHierarchy.Code, route.Code); Assert.AreEqual(dbFieldForce.MarketHierarchy.Name, route.Name); Assert.AreEqual(1, dbFieldForce.Distributors.Count); Assert.IsNotNull(dbFieldForce.Distributors[0]); Assert.AreEqual(dbFieldForce.Distributors[0].Id, distributor.Id); Assert.AreEqual(dbFieldForce.Distributors[0].Name, distributor.Name); Assert.AreEqual(dbFieldForce.Distributors[0].Name, distributor.Name); }
public async Task <int> SaveAsync(FieldForceViewModel record) { FieldForce fieldForce = null; FieldForceAddress address = null; if (record.Id != null) { fieldForce = await _unitOfWork.FieldForces.GetAsync(record.Id.Value); if (fieldForce == null) { throw new Exception("Invalid Fieldforce Id"); } fieldForce.UpdatedBy = System.Web.HttpContext.Current.User.Identity.Name; fieldForce.UpdatedDate = DateTime.Now; address = fieldForce.Address; } else { fieldForce = new FieldForce(); fieldForce.CreatedBy = System.Web.HttpContext.Current.User.Identity.Name; } if (address == null) { address = new FieldForceAddress(); address.CreatedBy = System.Web.HttpContext.Current.User.Identity.Name; } else { address.UpdatedBy = System.Web.HttpContext.Current.User.Identity.Name; address.UpdatedDate = DateTime.Today; } fieldForce.Code = record.Code; fieldForce.Name = record.Name; fieldForce.Email = record.Email; fieldForce.Phone = record.Phone; address.AddressLine1 = record.AddressLine1; address.AddressLine2 = record.AddressLine2; address.City = record.City; address.State = record.State; address.Zip = record.ZipCode; fieldForce.Address = address; fieldForce.MarketHierarchyId = record.MarketHierarchyId; if (fieldForce.Distributors != null) { fieldForce.Distributors.Clear(); } else { fieldForce.Distributors = new List <Distributor>(); } if (record.DistributorIds != null && record.DistributorIds.Count > 0) { foreach (int id in record.DistributorIds) { Distributor distributor = _unitOfWork.Distributors.Get(id); if (distributor != null) { fieldForce.Distributors.Add(distributor); } } } if (fieldForce.Id <= 0) { _unitOfWork.FieldForces.Add(fieldForce); } return(await _unitOfWork.CompleteAsync()); }