public void CanEditContact()
        {
            DistributorRepository dRepos = new DistributorRepository(Config.GrundfosFactoryConfigPath);
            DistributorController dc     = new DistributorController(dRepos);

            Contact c = dc.EditContact(2, 3, "emi Repo", "gali repo", "emirepo@hot");

            Assert.AreEqual(c.Name, "emi Repo");
        }
Example #2
0
        public UnitOfWork(PSDContext context)
        {
            isDisposed = false;
            _context   = context;

            AppConfigurations = new AppConfigurationRepository(_context);

            //catalogs
            UserRoles    = new CatUserRoleRepository(_context);
            UserStatuses = new CatUserStatusRepository(_context);
            Zones        = new CatZoneRepository(_context);
            DistributorBranchContactAreas = new CatDistributorBranchContactAreaRepository(_context);
            DistributorContactAreas       = new CatDistributorContactAreaRepository(_context);
            SubdistributorContactAreas    = new CatSubdistributorContactAreaRepository(_context);
            CropCategories = new CatCropCategoryRepository(_context);
            Crops          = new CatCropRepository(_context);
            ContractDistributorStatuses = new CatContractDistributorStatusRepository(_context);

            RolesXUser = new RolesXUserRepository(_context);
            Users      = new UserRepository(_context);
            Persons    = new PersonRepository(_context);

            Addresses             = new AddressRepository(_context);
            AddressColonies       = new AddressColonyRepository(_context);
            AddressPostalCodes    = new AddressPostalCodeRepository(_context);
            AddressMunicipalities = new AddressMunicipalityRepository(_context);
            AddressStates         = new AddressStateRepository(_context);

            BayerEmployees          = new BayerEmployeeRepository(_context);
            MunicipalitiesXEmployee = new MunicipalitiesXEmployeeRepository(_context);

            DistributorBranchContacts = new DistributorBranchContactRepository(_context);
            DistributorBranches       = new DistributorBranchRepository(_context);
            DistributorContacts       = new DistributorContactRepository(_context);
            Distributors                  = new DistributorRepository(_context);
            DistributorEmployees          = new DistributorEmployeeRepository(_context);
            DistributorCropsXMunicipality = new DistributorCropsXMunicipalityRepository(_context);

            Subdistributors                  = new SubdistributorRepository(_context);
            SubdistributorEmployees          = new SubdistributorEmployeeRepository(_context);
            SubdistributorCropsXMunicipality = new SubdistributorCropsXMunicipalityRepository(_context);
            SubdistributorContacts           = new SubdistributorContactRepository(_context);
            SubdistributorCommercialNames    = new SubdistributorCommercialNameRepository(_context);
            AddressesXSubdistributor         = new AddressesXSubdistributorRepository(_context);
            SubdistributorDiscountCoupons    = new SubdistributorDiscountCouponRepository(_context);
            SubdistributorPromotionCoupons   = new SubdistributorPromotionCouponRepository(_context);

            ContractsDistributor    = new ContractDistributorRepository(_context);
            ContractsSubdistributor = new ContractSubdistributorRepository(_context);
            DistributorPurchasesXContractSubdistributors = new DistributorPurchasesXContractSubdistributorRepository(_context);

            //Content
            ContentLinks = new ContentLinkRepository(_context);
            News         = new NewsRepository(_context);
            NewsSection  = new NewsSectionRepository(_context);
            ContentData  = new ContentDatarepository(_context);
        }
        public void CanGetByCode()
        {
            DistributorRepository dRepos = new DistributorRepository(Config.GrundfosFactoryConfigPath);

            DistributorController dc = new DistributorController(dRepos);
            Distributor           d  = dc.GetByCode("000001");

            Assert.AreEqual(d.Code, "000001");
        }
Example #4
0
        public UnitOfWork(ApplicationDbContext dbContext)
        {
            _context = dbContext;

            FieldForces       = new FieldForceRepository(dbContext);
            Brands            = new BrandRepository(dbContext);
            Products          = new ProductRepository(dbContext);
            MarketHierarchies = new MarketHierarchyRepository(dbContext);
            Distributors      = new DistributorRepository(dbContext);
        }
        public void CanEditContactWithSameEmail()
        {
            DistributorRepository dRepos = new DistributorRepository(Config.GrundfosFactoryConfigPath);
            DistributorController dc     = new DistributorController(dRepos);

            Contact c = dc.EditContact(2, 4, "emi Repo", "gali repo", "emirepeat@hot");

            c = dc.EditContact(2, 3, "emi Repeat", "gali repeat", "cambioelmail@hot");
            c = dc.EditContact(2, 3, "emi Repeat", "gali repeat", "emirepeat@hot");
        }
        public void ctor_DbDoesNotContainsRecords_CreatesEmptyDistributorCollection()
        {
            var options = GetOptions();

            using var dbContext = new TestDbContext(options);

            DistributorRepository.SetTestDbContext(dbContext);
            var mvm = new MainViewModel();

            Assert.NotNull(mvm.DistributorVmCollection);
        }
        public void CanGetActives()
        {
            DistributorRepository dRepos = new DistributorRepository(Config.GrundfosFactoryConfigPath);

            DistributorController dc = new DistributorController(dRepos);

            IList <Contact> lst = dc.GetById(2).GetActiveContacs();

            foreach (Contact c in lst)
            {
                Assert.AreEqual(c.Status, ContactStatus.Active);
            }
        }
        public void CanChangeContactStatus()
        {
            DistributorRepository dRepos = new DistributorRepository(Config.GrundfosFactoryConfigPath);

            DistributorController dc = new DistributorController(dRepos);

            Contact       c          = dc.FindContactInDistributor(2, 3);
            ContactStatus previousCs = c.Status;

            c = dc.ChangeStatus(2, 3);

            Assert.AreNotEqual(c.Status, previousCs);
        }
        public void CanAddContactToDistributor()
        {
            DistributorRepository dRepos = new DistributorRepository(Config.GrundfosFactoryConfigPath);

            DistributorController dc = new DistributorController(dRepos);
            Distributor           d  = dc.GetById(2);

            int     initialCount = d.Contacts.Count;
            string  email        = string.Format("emi{0}@emi.com", new Random().Next());
            Contact c            = dc.AddContact(d.ID, "emi2", "emi2", email);

            d = dc.GetById(2);

            Assert.AreEqual(d.Contacts.Count, initialCount + 1);
        }
Example #10
0
        private DistributorRepository ReadDistributors(XElement xmlElement, XNamespace xmlNamespace)
        {
            DistributorRepository distributorRepository = new DistributorRepository();

            IEnumerable <Distributor> distributors = from distributor in xmlElement.Descendants(xmlNamespace + MusicXmlConstants.DISTRIBUTOR_NODE)
                                                     select new Distributor()
            {
                Id   = distributor.Attribute(MusicXmlConstants.DISTRIBUTOR_ID).Value,
                Name = distributor.Value
            };

            foreach (Distributor distributor in distributors)
            {
                distributorRepository.Add(distributor);
            }

            return(distributorRepository);
        }
        public void CanChangeDistributorStatus()
        {
            DistributorRepository dRepos = new DistributorRepository(Config.GrundfosFactoryConfigPath);

            DistributorController dc = new DistributorController(dRepos);
            Distributor           d  = dc.GetById(2);

            string initialStatus = d.DistributorStatus.ToString();

            dc.ActivateDeactivate(2);

            d = dc.GetById(2);

            if (initialStatus == DistributorStatus.Active.ToString())
            {
                Assert.AreEqual(d.DistributorStatus, DistributorStatus.Disable);
            }
            else
            {
                Assert.AreEqual(d.DistributorStatus, DistributorStatus.Active);
            }
        }
Example #12
0
        protected override void OnStartup(StartupEventArgs e)
        {
            var connectionString = ConfigurationManager.ConnectionStrings["TestDb"].ConnectionString;

            if (!String.IsNullOrWhiteSpace(connectionString))
            {
                var options = new DbContextOptionsBuilder <TestDbContext>( ).UseSqlServer(connectionString).Options;

                var dbContext = new TestDbContext(options);
                DistributorRepository.SetTestDbContext(dbContext);

                var mvm = new MainViewModel();

                PriceCalculatorStrategyFactory.TestDbContext = dbContext;

                var mainWindow = new MainWindow {
                    DataContext = mvm,
                };

                mainWindow.Show();
            }
        }
 public ProductService(ProductRepository repo, DistributorRepository distRepo, RestaurantRepository restRepo)
 {
     _repo     = repo;
     _distRepo = distRepo;
     _restRepo = restRepo;
 }
        /// <summary>
        /// From,To,netsales for General Rate. 
        /// </summary>
        /// <param name="From">From</param>
        /// <param name="To">To</param>
        /// <param name="netsales">netsales</param>
        /// <param name="PartyType">PartyType</param>
        /// <param name="Party">Party</param>
        /// <returns></returns>
        public decimal GetCommissionRate(DateTime From, DateTime To, decimal netsales, int PartyType, int Party)
        {
            decimal commission = 0;

            if (PartyType == 1)
            {
                //set commission from Distributor's own account
                var distributors = new DistributorRepository(new DatabaseFactory()).GetAll();
                var distributor = distributors.Where(i => i.Id == Party).FirstOrDefault();
                if (distributor != null && distributor.Id > 0 && distributor.RateOfCommission != null)
                {
                    commission = (decimal)distributor.RateOfCommission;
                }
            }
            else if (PartyType == 3)
            {
                //set commission from Dealer's own account
                var dealers = new DealerRepository(new DatabaseFactory()).GetAll();
                var dealer = dealers.Where(i => i.Id == Party).FirstOrDefault();
                if (dealer != null && dealer.Id > 0 && dealer.RateOfCommission != null)
                {
                    commission = (decimal)dealer.RateOfCommission;
                }
            }

            if (commission <= 0)
            {
                //Get recent package settings
                var list = _CommissionPackageRepository.GetAll();
                if (list != null && list.Count() > 0)
                {
                    list = list.Where(i => From.Year >= i.Year && To.Year <= i.Year &&
                        From.Month >= i.Month && To.Month <= i.Month &&
                        netsales >= i.LowerTarget && netsales <= i.UpperTarget).ToList();

                    //22-04-2015: Here if multiple package information found, latest package will be set as commission rate.
                    if(list != null && list.Count() > 0)
                    {
                        var recent = list.OrderByDescending(i => i.Year).OrderByDescending(i => i.Month).ToList().FirstOrDefault();
                        commission = recent.Commission;
                    }
                }
            }

            return commission;
        }
        public IList<SalesReturnListViewModel> Get(int companyid, DateTime StartDate, DateTime EndDate)
        {
            IList<SalesReturnListViewModel> returnList = new List<SalesReturnListViewModel>();
            IList<ERPOptima.Model.Sales.SlsSalesReturn> list = new List<ERPOptima.Model.Sales.SlsSalesReturn>();
            //DataTable dt = new DataTable();

            //SqlParameter[] paramsToStore = new SqlParameter[2];
            //paramsToStore[0] = new SqlParameter("@StartDate", StartDate);
            //paramsToStore[1] = new SqlParameter("@EndDate", EndDate);

            try
            {
                // dt = _SalesReturnRepository.GetFromStoredProcedure(SPList.Report.RptSalesReturnList, paramsToStore);
                list = _SalesReturnRepository.Get(companyid, StartDate, EndDate);
                if (list != null && list.Count > 0)
                {
                    foreach (ERPOptima.Model.Sales.SlsSalesReturn itm in list)
                    {
                        var dbfactory = new DatabaseFactory();
                        SalesReturnListViewModel tmp = new SalesReturnListViewModel();
                        tmp.Id = itm.Id;
                        tmp.RefNo = itm.RefNo;
                        tmp.CreatedDate = itm.CreatedDate;
                        switch (itm.PartyType)
                        {
                            case 1:
                                ERPOptima.Data.Sales.Repository.DistributorRepository rposDistrbutor = new DistributorRepository(dbfactory);
                                tmp.Party = rposDistrbutor.GetById((int)itm.Party).Name;
                                break;
                            case 2:
                                ERPOptima.Data.Sales.Repository.RetailerRepository rposRetailer = new RetailerRepository(dbfactory);
                                tmp.Party = rposRetailer.GetById((int)itm.Party).Name;
                                break;
                            case 3:
                                ERPOptima.Data.Sales.Repository.DealerRepository rposDealer = new DealerRepository(dbfactory);
                                tmp.Party = rposDealer.GetById((int)itm.Party).Name;
                                break;
                            case 4:
                                ERPOptima.Data.Sales.Repository.CorporateClientRepository rposCorporateClient = new CorporateClientRepository(dbfactory);
                                tmp.Party = rposCorporateClient.GetById((int)itm.Party).Name;
                                break;
                        }
                        returnList.Add(tmp);
                    }
                }

            }
            catch (Exception)
            {
            }
            //if (dt != null && dt.Rows.Count > 0)
            //{
            //    list = dt.DataTableToList<SalesReturnListViewModel>();
            //}
            return returnList;
        }
        public ActionResult BeatHierarchyAdditionCheck(string ID)
        {
            int?Id = int.Parse(ID);

            Session["CompanyID"] = Id;
            List <FileHeadersBeatHierarchy> beatHierarchyList = (List <FileHeadersBeatHierarchy>)Session["BeatHierarchy"];
            NSMRepository NSMRepo = new NSMRepository();
            List <NationalSalesManager> NSMList         = NSMRepo.GetNSM(Id);
            ZSMRepository               ZSMRepo         = new ZSMRepository();
            List <ZonalSalesManager>    ZSMList         = ZSMRepo.GetZSM(Id);
            RSMRepository               RSMRepo         = new RSMRepository();
            List <RegionalSalesManager> RSMList         = RSMRepo.GetRSM(Id);
            ASMRepository               ASMRepo         = new ASMRepository();
            List <AreaSalesManager>     ASMList         = ASMRepo.GetASM(Id);
            ESMRepository               ESMRepo         = new ESMRepository();
            List <ClientEmployee>       ESMList         = ESMRepo.GetESM(Id);
            BEATRepository              BEATRepo        = new BEATRepository();
            List <LocationBeat>         BEATList        = BEATRepo.GetBEAT(Id);
            DistributorRepository       DistributorRepo = new DistributorRepository();
            List <Distributor>          DIstributorList = DistributorRepo.GetDistributor(Id);
            List <FACompanyZone>        CompanyZone     = db.FACompanyZones.Where(x => x.CompanyId == Id).ToList();
            List <ErrorTemplates>       errorList       = new List <ErrorTemplates>();

            foreach (var item in beatHierarchyList)
            {
                if (NSMList.Exists(x => x.Name == item.NSM))
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "NSM : " + item.NSM + " already exists cannot be added";
                    errorList.Add(er);
                }

                if (ZSMList.Exists(x => x.Name == item.ZSM))
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "ZSM : " + item.ZSM + " already exists cannot be added";
                    errorList.Add(er);
                }

                if (RSMList.Exists(x => x.Name == item.RSM))
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "RSM : " + item.RSM + " already exists cannot be added";
                    errorList.Add(er);
                }

                if (ASMList.Exists(x => x.Name == item.ASM))
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "ASM : " + item.ASM + " already exists cannot be added";
                    errorList.Add(er);
                }

                if (ESMList.Exists(x => x.Name == item.ESM))
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "ESM : " + item.ESM + " already exists cannot be added";
                    errorList.Add(er);
                }

                if (BEATList.Exists(x => x.Name == item.FinalBeatName))
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "FinalBeatName : " + item.FinalBeatName + " already exists cannot be added";
                    errorList.Add(er);
                }
                if (BEATList.Exists(x => x.ErpId == item.BeatErpId) && item.BeatErpId != null)
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "BeatErpId : " + item.BeatErpId + " cannot be assigned as it already existing ";
                    errorList.Add(er);
                }

                if (DIstributorList.Exists(x => x.Name == item.DistributorName))
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "Distrbutor : " + item.DistributorName + " already exists cannot be added";
                    errorList.Add(er);
                }
                if (CompanyZone.Exists(x => x.Name == item.ESMZone))
                {
                    ErrorTemplates er = new ErrorTemplates();
                    er.ErrorComments = "ESMZone : " + item.ESMZone + " already exists cannot be added";
                    errorList.Add(er);
                }
            }

            return(View(errorList));
        }
        public void ctor__DbContainsActiveDistributors_WithActiveNotDeletedAndUsingPrices__LoadDistributorsWithPrices()
        {
            var options = GetOptions();

            var distributor = new Distributor {
                Id     = Guid.NewGuid(),
                Name   = "Test Distributor",
                Active = true,
            };

            var prices = new[] {
                new Price {
                    Id           = Guid.NewGuid(),
                    Name         = "Test Loaded Price",
                    IsActive     = true,
                    PriceRecords = new[] {
                        new PriceRecord {
                            RecordIndex = 10,
                            Used        = true,
                            Deleted     = false,
                            Links       = new[] {
                                new Link {
                                    Id      = Guid.NewGuid(),
                                    Product = new Product {
                                        Id = Guid.NewGuid()
                                    }
                                },
                            }
                        },
                        new PriceRecord {
                            RecordIndex = 11, Used = false, Deleted = false
                        },
                        new PriceRecord {
                            RecordIndex = 12, Used = true, Deleted = true
                        },
                        new PriceRecord {
                            RecordIndex = 13, Used = false, Deleted = true
                        },
                    },
                    DistributorId = distributor.Id
                },
                new Price {
                    Id           = Guid.NewGuid(),
                    Name         = "Test Not Loaded Price 1",
                    IsActive     = false,
                    PriceRecords = new[] {
                        new PriceRecord {
                            RecordIndex = 14, Used = true, Deleted = false
                        },
                        new PriceRecord {
                            RecordIndex = 15, Used = false, Deleted = false
                        },
                        new PriceRecord {
                            RecordIndex = 16, Used = true, Deleted = true
                        },
                        new PriceRecord {
                            RecordIndex = 17, Used = false, Deleted = true
                        },
                    },
                    DistributorId = distributor.Id
                },
                new Price {
                    Id           = Guid.NewGuid(),
                    Name         = "Test Not Loaded Price 2",
                    IsActive     = true,
                    PriceRecords = new[] {
                        new PriceRecord {
                            RecordIndex = 26, Used = false, Deleted = false
                        },
                        new PriceRecord {
                            RecordIndex = 27, Used = true, Deleted = true
                        },
                        new PriceRecord {
                            RecordIndex = 28, Used = false, Deleted = true
                        },
                    },
                    DistributorId = distributor.Id
                }
            };

            distributor.Prices = prices;

            using (var dbContext = new TestDbContext(options)) {
                dbContext.Distributors.Add(distributor);
                dbContext.SaveChanges();
            }

            using (var dbContext = new TestDbContext(options)) {
                DistributorRepository.SetTestDbContext(dbContext);
                var mvm = new MainViewModel();

                Assert.That(mvm.DistributorVmCollection.Count, Is.EqualTo(1));

                var distributorVm = mvm.DistributorVmCollection.First();
                Assert.That(distributorVm.PriceVmCollection.Count(), Is.EqualTo(1));

                var priceVm = distributorVm.PriceVmCollection.First();

                Assert.That(priceVm.Id, Is.EqualTo(prices[0].Id));
            }
        }
        public void ctor_DbContainsActiveDistributors_LoadActiveDistributors()
        {
            var options = GetOptions();

            var dId = Guid.NewGuid();

            var inDbDistributors = new[] {
                new Distributor {
                    Id     = Guid.NewGuid(),
                    Name   = "Distributor 1", Active = true,
                    Prices = new[] {
                        new Price {
                            Id           = Guid.NewGuid(),
                            Name         = "Test Price",
                            IsActive     = true,
                            PriceRecords = new[] {
                                new PriceRecord {
                                    RecordIndex = 1,
                                    Used        = true,
                                    Deleted     = false,
                                    Links       = new[] {
                                        new Link {
                                            Id      = Guid.NewGuid(),
                                            Product = new Product {
                                                Id = Guid.NewGuid()
                                            }
                                        },
                                    }
                                },
                            }
                        },
                    }
                },
                new Distributor {
                    Id = Guid.NewGuid(), Name = "Distributor 2", Active = true
                },
                new Distributor {
                    Id     = Guid.NewGuid(), Name = "Distributor 3",
                    Prices = new[] { new Price {
                                         Id = Guid.NewGuid(), Name = "Test Price", IsActive = true
                                     }, }
                }
            };

            using (var dbContext = new TestDbContext(options)) {
                dbContext.Distributors.AddRange(inDbDistributors);
                dbContext.SaveChanges();
            }

            using (var dbContext = new TestDbContext(options)) {
                DistributorRepository.SetTestDbContext(dbContext);
                var mvm = new MainViewModel();

                var actual = mvm.DistributorVmCollection.ToArray();

                Assert.That(actual.Length, Is.EqualTo(1));

                Assert.That(
                    mvm.DistributorVmCollection.First().Id,
                    Is.EqualTo(inDbDistributors[0].Id));

                Assert.That(
                    mvm.DistributorVmCollection.First().Name,
                    Is.EqualTo(inDbDistributors[0].Name));
            }
        }
        public ActionResult BeatHierarchyAddition()
        {
            List <FileHeadersBeatHierarchy> list = (List <FileHeadersBeatHierarchy>)Session["BeatHierarchy"];
            int?id    = (int?)Session["CompanyID"];
            int newId = id ?? default(int);
            var list1 = list.GroupBy(x => x.NSM);


            foreach (var keyitem in list1)
            {
                foreach (var item in keyitem)
                {
                    NationalSalesManager NSM = new NationalSalesManager
                    {
                        Name             = keyitem.Key,
                        EmailId          = item.NSMEmailId,
                        SecondaryEmailId = item.NSMSecondaryEmailId,
                        Zone             = item.NSMZone,
                        CompanyId        = newId
                    };
                    NSMRepository NSMRepo = new NSMRepository();
                    List <NationalSalesManager> NSMList = NSMRepo.GetNSM(newId);

                    if (!NSMList.Exists(x => x.Name == NSM.Name))
                    {
                        NSMRepo.AddNSM(NSM);
                    }
                    //Insert Regions
                    long NSMPk = db.NationalSalesManagers.Where(x => x.Name == item.NSM).Select(x => x.Id).FirstOrDefault();

                    ZonalSalesManager ZSM = new ZonalSalesManager();
                    ZSM.Name                   = item.ZSM;
                    ZSM.EmailId                = item.ZSMEmailId;
                    ZSM.SecondaryEmailId       = item.ZSMSecondaryEmailId;
                    ZSM.Zone                   = item.ZSMZone;
                    ZSM.NationalSalesManagerId = NSMPk;
                    ZSM.CompanyId              = newId;


                    ZSMRepository            ZSMRepo = new ZSMRepository();
                    List <ZonalSalesManager> ZSMList = ZSMRepo.GetZSM(newId);
                    if (!ZSMList.Exists(x => x.Name == ZSM.Name))
                    {
                        ZSMRepo.AddZSM(ZSM);
                    }

                    long ZSMPk = db.ZonalSalesManagers.Where(x => x.Name == item.ZSM).Select(x => x.Id).FirstOrDefault();

                    RegionalSalesManager RSM = new RegionalSalesManager();
                    RSM.Name                = item.RSM;
                    RSM.EmailId             = item.RSMEmailId;
                    RSM.SecondaryEmailId    = item.RSMSecondaryEmailId;
                    RSM.Zone                = item.RSMZone;
                    RSM.ZonalSalesManagerId = ZSMPk;
                    RSM.CompanyId           = newId;

                    RSMRepository RSMRepo = new RSMRepository();
                    List <RegionalSalesManager> RSMList = RSMRepo.GetRSM(newId);
                    if (!RSMList.Exists(x => x.Name == RSM.Name))
                    {
                        RSMRepo.AddRSM(RSM);
                    }

                    long RSMPk = db.RegionalSalesManagers.Where(x => x.Name == item.RSM).Select(x => x.Id).FirstOrDefault();

                    AreaSalesManager ASM = new AreaSalesManager();
                    ASM.Name                   = item.ASM;
                    ASM.EmailId                = item.ASMEmailId;
                    ASM.SecondaryEmailId       = item.ASMSecondaryEmailId;
                    ASM.Zone                   = item.ASMZone;
                    ASM.RegionalSalesManagerId = RSMPk;
                    ASM.CompanyId              = newId;

                    ASMRepository           ASMRepo = new ASMRepository();
                    List <AreaSalesManager> ASMList = ASMRepo.GetASM(newId);
                    if (!ASMList.Exists(x => x.Name == ASM.Name))
                    {
                        ASMRepo.AddASM(ASM);
                    }

                    long ASMPk = db.ClientEmployees.Where(x => x.Name == item.ASM).Select(x => x.Id).FirstOrDefault();

                    ClientEmployee ESM = new ClientEmployee();
                    ESM.Name             = item.ESM;
                    ESM.EmailId          = item.ESMEmailId;
                    ESM.SecondaryEmailId = item.ESMSecondaryEmailId;
                    //   ESM.Zone = item.ESMZone;
                    ESM.ClientSideId       = item.ESMErpId;
                    ESM.AreaSalesManagerId = ASMPk;
                    ESM.Company            = newId;

                    ESMRepository         ESMRepo = new ESMRepository();
                    List <ClientEmployee> ESMList = ESMRepo.GetESM(newId);
                    if (!ESMList.Exists(x => x.Name == ESM.Name))
                    {
                        ESMRepo.AddESM(ESM);
                    }

                    LocationBeat BEAT = new LocationBeat();
                    BEAT.Name         = item.FinalBeatName;
                    BEAT.ErpId        = item.BeatErpId;
                    BEAT.City         = item.BeatDistrict;
                    BEAT.State        = item.BeatState;
                    BEAT.DivisionZone = item.BeatZone;

                    BEATRepository      BEATRepo = new BEATRepository();
                    List <LocationBeat> BEATList = BEATRepo.GetBEAT(newId);

                    if (!BEATList.Exists(x => x.Name == BEAT.Name))
                    {
                        BEATRepo.AddBEAT(BEAT);
                    }
                    Distributor Distributor = new Distributor();
                    Distributor.Name         = item.DistributorName;
                    Distributor.EmailId      = item.DistributorEmailId;
                    Distributor.ClientSideId = item.DistributorErpId;
                    Distributor.Place        = item.DistributorLocation;

                    DistributorRepository DistributorRepo = new DistributorRepository();
                    List <Distributor>    DIstributorList = DistributorRepo.GetDistributor(newId);

                    if (!DIstributorList.Exists(x => x.Name == Distributor.Name))
                    {
                        DistributorRepo.AddDistributor(Distributor);
                    }

                    DistributorBeatMappingRepository DBMRepo = new DistributorBeatMappingRepository();
                    List <DistributorBeatMapping>    DBMList = DBMRepo.GetDistributorBeatMap(newId);

                    long BeatId        = db.LocationBeats.Where(x => x.Name == item.FinalBeatName).Select(x => x.Id).FirstOrDefault();
                    long DistributorId = db.Distributors.Where(x => x.Name == item.DistributorName).Select(x => x.Id).FirstOrDefault();

                    DistributorBeatMapping DBM = new DistributorBeatMapping();
                    DBM.BeatId        = BeatId;
                    DBM.DistributorId = DistributorId;
                    DBM.CompanyId     = newId;

                    if (!DBMList.Contains(DBM))
                    {
                        DBMRepo.AddDistributorBeatMap(DBM);
                    }
                }
            }
            return(View());
        }
 public void ClearDistributors()
 {
     DistributorRepository.Crear();
 }
Example #21
0
 public DistributorService(DistributorRepository repo)
 {
     _repo = repo;
 }