Ejemplo n.º 1
0
        //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();
                }
            }
        }
Ejemplo n.º 2
0
        public ActionResult Create(Partner pm)
        {
            if (ModelState.IsValid)
            {
                var file = Request.Form.Files["downl"];
                if (file != null && file.ContentType.Contains("image/"))
                {
                    string fileName = System.Guid.NewGuid().ToString() + System.IO.Path.GetExtension(file.FileName);

                    GoogleDriveManager driveClient = new GoogleDriveManager(hosting);

                    pm.Image = driveClient.DriveUploadAndGetSrc(file, DRIVE_FOLDER_NAME);
                }
                pmManager.Add(pm);
                return(Redirect("/Partners"));
            }
            else
            {
                return(View());
            }
        }