//NOTE: Use Save() when calling directly, it will generate correct salt.
        //NOTE: Add and Update should be used only by Replication on the remote side, so that they don't regenerate salt again !!!
        public static void Update(string pSalt, PartnerDto pPartner)
        {
            using (Rbr_Db _db = new Rbr_Db()) {
                using (Transaction _tx = new Transaction(_db, pSalt, pPartner)) {
                    PartnerDto _originalPartner = PartnerManager.Get(_db, pPartner.PartnerId);

                    ContactInfoManager.Update(_db, pPartner.ContactInfo);

                    //TODO: NEW DAL - handle Person deletion...
                    if (pPartner.Employees != null)
                    {
                        foreach (PersonDto _employee in pPartner.Employees)
                        {
                            _employee.PartnerId = pPartner.PartnerId;
                            PersonManager.Save(_db, pSalt, _employee);
                        }
                    }

                    if (pPartner.BillingSchedule != null)
                    {
                        ScheduleManager.Save(_db, pPartner.BillingSchedule);
                    }
                    else if (_originalPartner.BillingSchedule != null)
                    {
                        ScheduleManager.Delete(_db, _originalPartner.BillingSchedule.ScheduleId);
                    }

                    PartnerManager.Update(_db, pPartner);

                    _tx.Commit();
                }
            }
        }
        //NOTE: Use Save() when calling directly, it will generate correct salt.
        //NOTE: Add and Update should be used only by Replication on the remote side, so that they don't regenerate salt again !!!
        public static void Add(string pSalt, PartnerDto pPartner)
        {
            using (Rbr_Db _db = new Rbr_Db()) {
                using (Transaction _tx = new Transaction(_db, pSalt, pPartner)) {
                    try {
                        if (pPartner.ContactInfo.ContactInfoId == 0)
                        {
                            ContactInfoManager.Add(_db, pPartner.ContactInfo);
                        }

                        if (pPartner.BillingSchedule != null)
                        {
                            ScheduleManager.Save(_db, pPartner.BillingSchedule);
                        }

                        PartnerManager.Add(_db, pPartner);

                        if (pPartner.Employees != null)
                        {
                            foreach (PersonDto _employee in pPartner.Employees)
                            {
                                _employee.PartnerId = pPartner.PartnerId;
                                PersonManager.Save(_db, pSalt, _employee);
                            }
                        }
                    }
                    catch (Exception _ex) {
                        TimokLogger.Instance.LogRbr(LogSeverity.Error, "PartnerController.add", string.Format("Exception:\r\n{0}", _ex));
                        if (pPartner.ContactInfo != null)
                        {
                            pPartner.ContactInfo.ContactInfoId = 0;
                        }
                        if (pPartner.Employees != null)
                        {
                            foreach (PersonDto _employee in pPartner.Employees)
                            {
                                _employee.PersonId = 0;
                            }
                        }
                        if (pPartner.BillingSchedule != null)
                        {
                            pPartner.BillingSchedule.ScheduleId = 0;
                        }
                        throw;
                    }
                    _tx.Commit();
                }
            }
        }
Example #3
0
        public void RejectChangesTest()
        {
            var mgr   = new PartnerManager();
            var items = mgr.GetFiltered(null);

            foreach (var partner in items)
            {
                //partner.BeginMapping(null);
                //partner.EndMapping(null);
                //partner.BeginEdit();
                partner.SetProperty("Partner2Mandant", true);
                partner.SetProperty("Partner2Mandant", false);
                partner.RejectChanges();
                //partner.EndEdit();
            }
        }
Example #4
0
        public static void Credit(PersonDto pPerson, CustomerAcctPaymentDto pCustomerAcctPayment)
        {
            using (var _db = new Rbr_Db()) {
                using (var _tx = new Transaction(_db, pPerson, pCustomerAcctPayment)) {
                    pCustomerAcctPayment.DateTime = DateTime.Now;
                    //NOTE: make sure we got prev amnt
                    CustomerAcctRow _customerAcctRow = CustomerAcctManager.Get(_db, pCustomerAcctPayment.CustomerAcctId);
                    pCustomerAcctPayment.PreviousAmount = _customerAcctRow.Current_amount;
                    pCustomerAcctPayment.Person         = pPerson;
                    CustomerAcctManager.Credit(_db, pCustomerAcctPayment);
                    _tx.Commit();

                    PartnerDto     _partner     = PartnerManager.Get(_db, _customerAcctRow.Partner_id);
                    ContactInfoDto _contactInfo = ContactInfoManager.Get(_db, _partner.ContactInfo.ContactInfoId);
                    sendNotification(pPerson, pCustomerAcctPayment, _customerAcctRow, _partner, _contactInfo);
                }
            }
        }
        public void SimpleManagerTest()
        {
            var pTask = new Task(() =>
            {
                Trace.WriteLine("Start partners");
                var mgr   = new PartnerManager();
                var items = mgr.GetFiltered("ROWNUM < 500");
                Trace.WriteLine("Stop partners. Recieved " + items.Count());
            });

            pTask.Start();
            var uTask = new Task(() =>
            {
                Trace.WriteLine("Start users");
                var mgr   = new UserManager();
                var items = mgr.GetFiltered("ROWNUM < 500", GetModeEnum.Full);
                Trace.WriteLine("Stop users. Recieved " + items.Count());
            });

            uTask.Start();

            Task.WaitAll(new[] { pTask, uTask });
        }
        public static void Delete(PartnerDto pPartner)
        {
            using (Rbr_Db _db = new Rbr_Db()) {
                using (Transaction _tx = new Transaction(_db, pPartner)) {
                    if (CustomerAcctManager.Exist(_db, pPartner.PartnerId))
                    {
                        throw new ApplicationException("Partner has Customer Account(s).\r\nCannot delete.");
                    }

                    if (CarrierAcctManager.Exist(_db, pPartner.PartnerId))
                    {
                        throw new ApplicationException("Partner has Carrier Account(s).\r\nCannot delete.");
                    }

                    //TODO: NEW DAL !!!
                    //ResellAcctManager.DeleteByPartnerId(_db, pPartner.PartnerId);
                    PersonManager.DeleteByPartnerId(_db, pPartner.PartnerId);
                    PartnerManager.Delete(_db, pPartner);

                    _tx.Commit();
                }
            }
        }
Example #7
0
        public ActionResult Create([Bind(Include = "Name, Email, CreditCard, Plan")] Partner partner)
        {
            var Plans = new DonationPlans();

            ViewBag.DonationPlans = Plans.Amount;
            ViewBag.Culture       = Thread.CurrentThread.CurrentCulture.ToString();

            if (!ModelState.IsValid)
            {
                return(View("Create"));
            }

            var partnerManager = new PartnerManager();

            var result = partnerManager.VerifyPartner(partner);

            if (result.Valid == false)
            {
                ViewBag.ErrorMessage = result.Message;
                return(View("Create"));
            }

            return(RedirectToAction("Thank"));
        }
Example #8
0
 public PartnersController(ArlenContext db)
 {
     pmManager = new PartnerManager(db);
 }
 public static PartnerDto[] GetActiveResellers()
 {
     using (Rbr_Db _db = new Rbr_Db()) {
         return(PartnerManager.GetActiveResellers(_db));
     }
 }
 public static PartnerDto[] GetAll()
 {
     using (Rbr_Db _db = new Rbr_Db()) {
         return(PartnerManager.GetAll(_db));
     }
 }
 public static bool IsNameInUse(string pName, int pPartnerId)
 {
     using (Rbr_Db _db = new Rbr_Db()) {
         return(PartnerManager.IsNameInUse(_db, pName, pPartnerId));
     }
 }
 public static PartnerDto Get(int pPartnerId)
 {
     using (Rbr_Db _db = new Rbr_Db()) {
         return(PartnerManager.Get(_db, pPartnerId));
     }
 }
Example #13
0
        public PartnerSection(ArlenContext db)
        {
            PartnerManager partnerManager = new PartnerManager(db);

            allPartners = partnerManager.All;
        }