예제 #1
0
        public virtual IList <MemberAddressInfo> GetMemberAddresss(QueryInfo Query)
        {
            int PageSize;
            int CurrentPage;
            IList <MemberAddressInfo> entitys = null;
            MemberAddressInfo         entity = null;
            string        SqlList, SqlField, SqlOrder, SqlParam, SqlTable;
            SqlDataReader RdrList = null;

            try
            {
                CurrentPage = Query.CurrentPage;
                PageSize    = Query.PageSize;
                SqlTable    = "Member_Address";
                SqlField    = "*";
                SqlParam    = DBHelper.GetSqlParam(Query.ParamInfos);
                SqlOrder    = DBHelper.GetSqlOrder(Query.OrderInfos);
                SqlList     = DBHelper.GetSqlPage(SqlTable, SqlField, SqlParam, SqlOrder, CurrentPage, PageSize);
                RdrList     = DBHelper.ExecuteReader(SqlList);
                if (RdrList.HasRows)
                {
                    entitys = new List <MemberAddressInfo>();
                    while (RdrList.Read())
                    {
                        entity = new MemberAddressInfo();
                        entity.Member_Address_ID                = Tools.NullInt(RdrList["Member_Address_ID"]);
                        entity.Member_Address_MemberID          = Tools.NullInt(RdrList["Member_Address_MemberID"]);
                        entity.Member_Address_Country           = Tools.NullStr(RdrList["Member_Address_Country"]);
                        entity.Member_Address_State             = Tools.NullStr(RdrList["Member_Address_State"]);
                        entity.Member_Address_City              = Tools.NullStr(RdrList["Member_Address_City"]);
                        entity.Member_Address_County            = Tools.NullStr(RdrList["Member_Address_County"]);
                        entity.Member_Address_StreetAddress     = Tools.NullStr(RdrList["Member_Address_StreetAddress"]);
                        entity.Member_Address_Zip               = Tools.NullStr(RdrList["Member_Address_Zip"]);
                        entity.Member_Address_Name              = Tools.NullStr(RdrList["Member_Address_Name"]);
                        entity.Member_Address_Phone_Countrycode = Tools.NullStr(RdrList["Member_Address_Phone_Countrycode"]);
                        entity.Member_Address_Phone_Areacode    = Tools.NullStr(RdrList["Member_Address_Phone_Areacode"]);
                        entity.Member_Address_Phone_Number      = Tools.NullStr(RdrList["Member_Address_Phone_Number"]);
                        entity.Member_Address_Mobile            = Tools.NullStr(RdrList["Member_Address_Mobile"]);
                        entity.Member_Address_IsDefault         = Tools.NullInt(RdrList["Member_Address_IsDefault"]);
                        entity.Member_Address_Site              = Tools.NullStr(RdrList["Member_Address_Site"]);

                        entitys.Add(entity);
                        entity = null;
                    }
                }
                return(entitys);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (RdrList != null)
                {
                    RdrList.Close();
                    RdrList = null;
                }
            }
        }
예제 #2
0
        public MemberInfo SaveCheckoutAddressInfo(MemberAddressInfo req)
        {
            var res = Call <MemberInfo, MemberAddressInfo>(req, MethodBase.GetCurrentMethod().Name);

            HttpContext.Current.Session["Member"] = res;
            return(res);
        }
예제 #3
0
        public MemberAddressInfo GetMemberAddress(string id)
        {
            var a = Provider.Database.Read <MemberAddress>("Id={0}", id);

            if (a == null || a.MemberId != Session.MemberId)
            {
                throw new APIException(Provider.TR("No such address"));
            }
            var address = new MemberAddressInfo();

            a.CopyPropertiesWithSameName(address);
            return(address);
        }
예제 #4
0
        public MemberAddressInfo SaveMemberAddress(MemberAddressInfo req)
        {
            var a = Provider.Database.Read <MemberAddress>("Id = {0}", req.Id) ?? new MemberAddress();

            req.CopyPropertiesWithSameName(a);
            a.MemberId = Session.MemberId;
            a.Save();

            if (a.AddressType == AddressTypes.DefaultAddress)
            {
                Session.Member().MemberAddressId = a.Id;
                Session.Member().Save();
            }
            return(a.ToEntityInfo <MemberAddressInfo>());
        }
예제 #5
0
        public static async Task setAddressInfo(this IServiceProvider sp)
        {
            var ds      = sp.Resolve <IMemberAddressService>();
            var memInfo = new MemberAddressInfo()
            {
                MemberAddress  = "发货地址" + Strings.NumberAndLowerUpperChars.Random(4),
                MemberName     = "发货人" + Strings.NumberAndLowerUpperChars.Random(4),
                MemberPhoneNum = "1888888" + Strings.Numbers.Random(4)
            };
            await ds.SetMemberAddressInfo(memInfo);

            var oldName = await ds.GetMemberAddressInfo();

            Assert.AreEqual(memInfo.MemberAddress, oldName.MemberAddress);
            Assert.AreEqual(memInfo.MemberName, oldName.MemberName);
            Assert.AreEqual(memInfo.MemberPhoneNum, oldName.MemberPhoneNum);
        }
예제 #6
0
        public virtual bool EditMemberAddress(MemberAddressInfo entity)
        {
            string    SqlAdd = null;
            DataTable DtAdd  = null;
            DataRow   DrAdd  = null;

            SqlAdd = "SELECT * FROM Member_Address WHERE Member_Address_ID = " + entity.Member_Address_ID;
            DtAdd  = DBHelper.Query(SqlAdd);
            try
            {
                if (DtAdd.Rows.Count > 0)
                {
                    DrAdd = DtAdd.Rows[0];
                    DrAdd["Member_Address_ID"]                = entity.Member_Address_ID;
                    DrAdd["Member_Address_MemberID"]          = entity.Member_Address_MemberID;
                    DrAdd["Member_Address_Country"]           = entity.Member_Address_Country;
                    DrAdd["Member_Address_State"]             = entity.Member_Address_State;
                    DrAdd["Member_Address_City"]              = entity.Member_Address_City;
                    DrAdd["Member_Address_County"]            = entity.Member_Address_County;
                    DrAdd["Member_Address_StreetAddress"]     = entity.Member_Address_StreetAddress;
                    DrAdd["Member_Address_Zip"]               = entity.Member_Address_Zip;
                    DrAdd["Member_Address_Name"]              = entity.Member_Address_Name;
                    DrAdd["Member_Address_Phone_Countrycode"] = entity.Member_Address_Phone_Countrycode;
                    DrAdd["Member_Address_Phone_Areacode"]    = entity.Member_Address_Phone_Areacode;
                    DrAdd["Member_Address_Phone_Number"]      = entity.Member_Address_Phone_Number;
                    DrAdd["Member_Address_Mobile"]            = entity.Member_Address_Mobile;
                    DrAdd["Member_Address_IsDefault"]         = entity.Member_Address_IsDefault;
                    DrAdd["Member_Address_Site"]              = entity.Member_Address_Site;

                    DBHelper.SaveChanges(SqlAdd, DtAdd);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                DtAdd.Dispose();
            }
            return(true);
        }
예제 #7
0
        public virtual MemberAddressInfo GetMemberAddressByID(int ID)
        {
            MemberAddressInfo entity  = null;
            SqlDataReader     RdrList = null;

            try
            {
                string SqlList;
                SqlList = "SELECT * FROM Member_Address WHERE Member_Address_ID = " + ID;
                RdrList = DBHelper.ExecuteReader(SqlList);
                if (RdrList.Read())
                {
                    entity = new MemberAddressInfo();

                    entity.Member_Address_ID                = Tools.NullInt(RdrList["Member_Address_ID"]);
                    entity.Member_Address_MemberID          = Tools.NullInt(RdrList["Member_Address_MemberID"]);
                    entity.Member_Address_Country           = Tools.NullStr(RdrList["Member_Address_Country"]);
                    entity.Member_Address_State             = Tools.NullStr(RdrList["Member_Address_State"]);
                    entity.Member_Address_City              = Tools.NullStr(RdrList["Member_Address_City"]);
                    entity.Member_Address_County            = Tools.NullStr(RdrList["Member_Address_County"]);
                    entity.Member_Address_StreetAddress     = Tools.NullStr(RdrList["Member_Address_StreetAddress"]);
                    entity.Member_Address_Zip               = Tools.NullStr(RdrList["Member_Address_Zip"]);
                    entity.Member_Address_Name              = Tools.NullStr(RdrList["Member_Address_Name"]);
                    entity.Member_Address_Phone_Countrycode = Tools.NullStr(RdrList["Member_Address_Phone_Countrycode"]);
                    entity.Member_Address_Phone_Areacode    = Tools.NullStr(RdrList["Member_Address_Phone_Areacode"]);
                    entity.Member_Address_Phone_Number      = Tools.NullStr(RdrList["Member_Address_Phone_Number"]);
                    entity.Member_Address_Mobile            = Tools.NullStr(RdrList["Member_Address_Mobile"]);
                    entity.Member_Address_IsDefault         = Tools.NullInt(RdrList["Member_Address_IsDefault"]);
                    entity.Member_Address_Site              = Tools.NullStr(RdrList["Member_Address_Site"]);
                }

                return(entity);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (RdrList != null)
                {
                    RdrList.Close();
                    RdrList = null;
                }
            }
        }
예제 #8
0
        public virtual bool AddMemberAddress(MemberAddressInfo entity)
        {
            string    SqlAdd = null;
            DataTable DtAdd  = null;
            DataRow   DrAdd  = null;

            SqlAdd = "SELECT TOP 0 * FROM Member_Address";
            DtAdd  = DBHelper.Query(SqlAdd);
            DrAdd  = DtAdd.NewRow();

            DrAdd["Member_Address_ID"]                = entity.Member_Address_ID;
            DrAdd["Member_Address_MemberID"]          = entity.Member_Address_MemberID;
            DrAdd["Member_Address_Country"]           = entity.Member_Address_Country;
            DrAdd["Member_Address_State"]             = entity.Member_Address_State;
            DrAdd["Member_Address_City"]              = entity.Member_Address_City;
            DrAdd["Member_Address_County"]            = entity.Member_Address_County;
            DrAdd["Member_Address_StreetAddress"]     = entity.Member_Address_StreetAddress;
            DrAdd["Member_Address_Zip"]               = entity.Member_Address_Zip;
            DrAdd["Member_Address_Name"]              = entity.Member_Address_Name;
            DrAdd["Member_Address_Phone_Countrycode"] = entity.Member_Address_Phone_Countrycode;
            DrAdd["Member_Address_Phone_Areacode"]    = entity.Member_Address_Phone_Areacode;
            DrAdd["Member_Address_Phone_Number"]      = entity.Member_Address_Phone_Number;
            DrAdd["Member_Address_Mobile"]            = entity.Member_Address_Mobile;
            DrAdd["Member_Address_IsDefault"]         = entity.Member_Address_IsDefault;
            DrAdd["Member_Address_Site"]              = entity.Member_Address_Site;

            DtAdd.Rows.Add(DrAdd);
            try
            {
                DBHelper.SaveChanges(SqlAdd, DtAdd);
                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                DtAdd.Dispose();
            }
        }
예제 #9
0
 public virtual bool EditMemberAddress(MemberAddressInfo entity)
 {
     return(MyDAL.EditMemberAddress(entity));
 }
예제 #10
0
 public MemberAddressInfo SaveMemberAddress(MemberAddressInfo req)
 {
     return(Call <MemberAddressInfo, MemberAddressInfo>(req, MethodBase.GetCurrentMethod().Name));
 }
예제 #11
0
        public MemberInfo SaveCheckoutAddressInfo(MemberAddressInfo req)
        {
            // eğer yeni ziyaretçi ise
            if (string.IsNullOrWhiteSpace(this.Session.MemberId))
            {
                if (!req.Email.IsEmail())
                {
                    throw new APIException("Invalid email address.");
                }

                // yeni üye kaydı oluşturalım
                Member m = Provider.Database.Read <Member>("Email={0}", req.Email);
                if (m != null)
                {
                    throw new APIException("The email address is registered. Please login before proceeding.",
                                           ErrorTypes.ValidationError, ErrorCodes.ExistingMemberCannotSignUp);
                }

                m = new Member();
                req.CopyPropertiesWithSameName(m);

                if (req.FullName.Contains(" "))
                {
                    while (req.FullName.Contains("  "))
                    {
                        req.FullName = req.FullName.Replace("  ", " ");
                    }
                    m.FirstName = req.FullName.Substring(0, req.FullName.IndexOf(' '));
                    m.LastName  = req.FullName.Substring(req.FullName.IndexOf(' ') + 1);
                }
                else
                {
                    m.FirstName = req.FullName;
                }

                m.MemberType = MemberTypes.Individual;
                m.State      = MemberStates.WaitingEmailConfirmation;
                m.ClientId   = ApiClient.ClientId;
                m.Save();

                // yeni üyeye email confirmation mesajı
                m.SendEmailWithPasswordAndConfirmationCode();

                // adress kaydını oluşturalım
                MemberAddress ma = new MemberAddress();
                req.CopyPropertiesWithSameName(ma);
                ma.InvoiceTitle = string.IsNullOrWhiteSpace(ma.InvoiceTitle) ? m.FullName : ma.InvoiceTitle;
                ma.MemberId     = m.Id;
                ma.Save();

                // bu adresi üyenin default adresi yapalım
                m.MemberAddressId = ma.Id;
                m.Save();

                // sepetini üye kaydıyla ilişkilendirelim
                var order = Order.GetMemberBasket();
                order.MemberAddressId = ma.Id;
                order.MemberId        = m.Id;
                order.Save();

                this.Session.MemberId = m.Id;
                this.Session.Save();

                return(m.ToEntityInfo <MemberInfo>());
            }

            // eğer oturum açılmışsa
            {
                // üyede eksik bilgi varsa tamamlayalım
                Member m = this.Session.Member();
                if (string.IsNullOrWhiteSpace(m.FirstName)) // ismi eksikse ekleyelim
                {
                    if (req.FullName != null && req.FullName.Contains(" "))
                    {
                        while (req.FullName.Contains("  "))
                        {
                            req.FullName = req.FullName.Replace("  ", " ");
                        }
                        m.FirstName = req.FullName.Substring(0, req.FullName.IndexOf(' '));
                        m.LastName  = req.FullName.Substring(req.FullName.IndexOf(' ') + 1);
                    }
                    else
                    {
                        m.FirstName = req.FullName;
                    }
                }
                if (string.IsNullOrWhiteSpace(m.CompanyInfo)) // firma adı eksikse ekleyelim
                {
                    m.CompanyInfo = req.InvoiceTitle;
                }
                if (string.IsNullOrWhiteSpace(m.PhoneNumber)) // telefon no eksikse ekleyelim
                {
                    m.PhoneNumber = req.PhoneNumber;
                }
                m.Save();

                // gönderilen adresi insert ya da update edelim
                MemberAddress ma = Provider.Database.Read <MemberAddress>("Id={0}", req.Id) ?? new MemberAddress();
                req.CopyPropertiesWithSameName(ma);
                ma.MemberId = m.Id;
                ma.Save();

                // sepetini adresle ilişkilendirelim
                var order = Order.GetMemberBasket();
                order.MemberAddressId = ma.Id;
                order.MemberId        = Session.MemberId;
                order.Save();

                return(m.ToEntityInfo <MemberInfo>());
            }
        }