コード例 #1
0
        public static CarrierContact Save(CarrierContact carrierContact)
        {
            DbContextHelper.DbContext.Add(carrierContact);

            DbContextHelper.DbContext.SaveChanges();

            return(carrierContact);
        }
コード例 #2
0
        public static void Delete(int id)
        {
            // Create an entity to represent the Entity you wish to delete
            // Notice you don't need to know all the properties, in this
            // case just the ID will do.
            CarrierContact carrierContact = new CarrierContact {
                CarrierContactID = id
            };

            // Now attach the category stub object to the "Categories" set.
            // This puts the Entity into the context in the unchanged state,
            // This is same state it would have had if you made the query
            DbContextHelper.DbContext.AttachTo("CarrierContacts", carrierContact);


            // Do the delete the category
            DbContextHelper.DbContext.DeleteObject(carrierContact);

            // Apply the delete to the database
            DbContextHelper.DbContext.SaveChanges();
        }
コード例 #3
0
ファイル: CarrierHelper.cs プロジェクト: amorsi/EasyFreight
        public static string AddEditCarrier(CarrierVm carrVm)
        {
            int    carrId            = carrVm.CarrierId;
            string isSaved           = "true";
            EasyFreightEntities   db = new EasyFreightEntities();
            Carrier               carrDb;
            List <CarrierContact> dbContactList = new List <CarrierContact>();

            if (carrId == 0) //Add new case
            {
                carrDb = new Carrier();
            }
            else
            {
                carrDb = db.Carriers.Include("CarrierContacts").Where(x => x.CarrierId == carrId).FirstOrDefault();
                //delete any removed contact on the screen
                dbContactList = carrDb.CarrierContacts.ToList();

                //Get contact Ids sent from the screen
                List <int> contactVmIds = carrVm.ContactPersons.Select(x => x.ContactId).ToList();
                var        contactDel   = dbContactList.Where(x => !contactVmIds.Contains(x.ContactId)).ToList();

                foreach (var item in contactDel)
                {
                    db.CarrierContacts.Remove(item);
                }
            }

            Mapper.CreateMap <CarrierVm, Carrier>().IgnoreAllNonExisting();
            Mapper.Map(carrVm, carrDb);



            if (carrId == 0)
            {
                Random rand = new Random();
                carrDb.CarrierCode = rand.Next(10000).ToString();
                db.Carriers.Add(carrDb);
            }

            Mapper.CreateMap <ContactPersonVm, CarrierContact>().IgnoreAllNonExisting()
            .ForMember(x => x.CarrierId, opts => opts.MapFrom(scr => scr.FkValue));

            CarrierContact carrContactDb;

            foreach (var item in carrVm.ContactPersons.Where(x => !string.IsNullOrEmpty(x.ContactName)))
            {
                if (item.ContactId == 0)
                {
                    carrContactDb = new CarrierContact();
                }
                else
                {
                    int contVmId = item.ContactId;
                    carrContactDb = dbContactList.Where(x => x.ContactId == contVmId).FirstOrDefault();
                }

                Mapper.Map(item, carrContactDb);

                if (item.ContactId == 0)
                {
                    carrDb.CarrierContacts.Add(carrContactDb);
                }
            }

            try
            {
                db.SaveChanges();
            }
            catch (DbEntityValidationException e)
            {
                isSaved = "false " + e.Message;
            }
            catch (Exception e)
            {
                isSaved = "false " + e.Message;
            }

            return(isSaved);
        }
コード例 #4
0
        protected void saveContact()
        {
            bool isNewContact = false;
            int  contactID    = Convert.ToInt32(ViewState["ContactID"]);

            lblMessage.Text     = string.Empty;
            lblMessage.CssClass = string.Empty;

            Contact        contact        = null;
            CarrierContact carrierContact = null;

            if (contactID == 0)
            {
                // new contact
                contact = new Contact();

                contact.ClientID = Core.SessionHelper.getClientId();

                contact.CarrierID = carrierID;

                contact.CompanyName = CarrierManager.GetName(this.carrierID);

                isNewContact = true;
            }
            else
            {
                contact = ContactManager.Get(contactID);
            }

            contact.FirstName = txtFirstName.Text;
            contact.LastName  = txtLastName.Text;

            contact.ContactName = txtFirstName.Text + " " + txtLastName.Text;

            contact.Email          = txtContactEmail.Text;
            contact.Phone          = txtContactPhone.Text;
            contact.Mobile         = txtMobilePhone.Text;
            contact.ContactTitle   = txtContactTile.Text;
            contact.DepartmentName = txtDepartmentName.Text;
            contact.IsPrimary      = cbxPrimary.Checked;
            contact.Fax            = txtContactFax.Text;

            contact.Address1 = txtAddress1.Text;
            contact.Address2 = txtAddress2.Text;

            if (ddlState.SelectedIndex > 0)
            {
                contact.StateID = Convert.ToInt32(ddlState.SelectedValue);
            }

            if (ddlCity.SelectedIndex > 0)
            {
                contact.CityID = Convert.ToInt32(ddlCity.SelectedValue);
            }

            if (ddlLossZip.SelectedIndex > 0)
            {
                contact.ZipCodeID = Convert.ToInt32(ddlLossZip.SelectedValue);
            }

            if (ddlContactType.SelectedIndex > 0)
            {
                contact.CategoryID = Convert.ToInt32(ddlContactType.SelectedValue);
            }

            try {
                if (isNewContact)
                {
                    using (TransactionScope scope = new TransactionScope()) {
                        // save contact to contact table
                        contact = ContactManager.Save(contact);

                        carrierContact = new CarrierContact();

                        carrierContact.CarrierID = carrierID;
                        carrierContact.ContactID = contact.ContactID;

                        // save contact reference for carrier
                        carrierContact = CarrierContactManager.Save(carrierContact);

                        // complete transaction
                        scope.Complete();
                    }

                    ViewState["ContactID"] = contact.ContactID;
                }
                else
                {
                    // save contact to contact table
                    contact = ContactManager.Save(contact);
                }

                lblMessage.Text     = "Contact saved successfully.";
                lblMessage.CssClass = "ok";

                btnShowCreateAccount.Visible = true;
            }
            catch (Exception ex) {
                lblMessage.Text     = "Unable to save contact.";
                lblMessage.CssClass = "error";

                Core.EmailHelper.emailError(ex);
            }
        }