Esempio n. 1
0
        private void btnCreate_Click(object sender, EventArgs e)
        {
            decimal          defaultNumber   = default(decimal);
            decimal?         addNumber       = default(decimal?);
            decimal          price           = default(decimal);
            decimal?         addPrice        = default(decimal?);
            ValuationMethods valuationMethod = default(ValuationMethods);

            if (this.ValidateRegionValues(out defaultNumber, out addNumber, out price, out addPrice, out valuationMethod))
            {
                IList <ShippingTemplateGroupInfo> list = new List <ShippingTemplateGroupInfo>();
                string value = this.hidRegionJson.Value;
                if (!string.IsNullOrEmpty(value))
                {
                    IList <ShippingTemplateGroupMode> list2 = new List <ShippingTemplateGroupMode>();
                    list2 = JsonHelper.ParseFormJson <List <ShippingTemplateGroupMode> >(value);
                    if (list2 != null && list2.Count > 0)
                    {
                        foreach (ShippingTemplateGroupMode item in list2)
                        {
                            ShippingTemplateGroupInfo shippingTemplateGroupInfo = new ShippingTemplateGroupInfo();
                            shippingTemplateGroupInfo.AddPrice      = item.AddPrice;
                            shippingTemplateGroupInfo.AddNumber     = item.AddNumber;
                            shippingTemplateGroupInfo.DefaultNumber = item.DefaultNumber;
                            shippingTemplateGroupInfo.Price         = item.DefaultPrice;
                            string   safeIDList = Globals.GetSafeIDList(item.RegionIds, ',', true);
                            string[] array      = safeIDList.Split(',');
                            foreach (string obj in array)
                            {
                                ShippingRegionInfo shippingRegionInfo = new ShippingRegionInfo();
                                shippingRegionInfo.RegionId = obj.ToInt(0);
                                shippingTemplateGroupInfo.ModeRegions.Add(shippingRegionInfo);
                            }
                            list.Add(shippingTemplateGroupInfo);
                        }
                    }
                }
                IList <ShippingTemplateFreeGroupInfo> list3 = new List <ShippingTemplateFreeGroupInfo>();
                string value2 = this.hidFreeJson.Value;
                if (!string.IsNullOrEmpty(value2))
                {
                    IList <ShippingTemplateFreeGroupMode> list4 = new List <ShippingTemplateFreeGroupMode>();
                    list4 = JsonHelper.ParseFormJson <List <ShippingTemplateFreeGroupMode> >(value2);
                    if (list4 != null && list4.Count > 0)
                    {
                        foreach (ShippingTemplateFreeGroupMode item2 in list4)
                        {
                            ShippingTemplateFreeGroupInfo shippingTemplateFreeGroupInfo = new ShippingTemplateFreeGroupInfo();
                            shippingTemplateFreeGroupInfo.ConditionType   = item2.ConditionType;
                            shippingTemplateFreeGroupInfo.ConditionNumber = item2.ConditionNumber;
                            string   safeIDList2 = Globals.GetSafeIDList(item2.RegionIds, ',', true);
                            string[] array2      = safeIDList2.Split(',');
                            foreach (string obj2 in array2)
                            {
                                ShippingFreeRegionInfo shippingFreeRegionInfo = new ShippingFreeRegionInfo();
                                shippingFreeRegionInfo.RegionId = obj2.ToInt(0);
                                shippingTemplateFreeGroupInfo.ModeRegions.Add(shippingFreeRegionInfo);
                            }
                            list3.Add(shippingTemplateFreeGroupInfo);
                        }
                    }
                }
                string text = Globals.StripAllTags(this.txtModeName.Text.Trim()).Replace("\\", "").Replace("<", "")
                              .Replace(">", "");
                if (text == "" || text.Length > 20)
                {
                    this.ShowMsg("模板名称不能为空,长度限制在20字符以内,不允许包含脚本标签和特殊字符,系统会自动过滤", false);
                }
                else if (SalesHelper.IsExistTemplateName(text, 0))
                {
                    this.ShowMsg("模板名称重复,请重新输入", false);
                }
                else
                {
                    ShippingTemplateInfo shippingTemplateInfo = new ShippingTemplateInfo();
                    shippingTemplateInfo.ModeGroup       = list;
                    shippingTemplateInfo.FreeGroup       = list3;
                    shippingTemplateInfo.IsFreeShipping  = (this.radIsFreeShipping.SelectedIndex != 0 && true);
                    shippingTemplateInfo.ValuationMethod = valuationMethod;
                    shippingTemplateInfo.TemplateName    = Globals.HtmlEncode(text);
                    shippingTemplateInfo.DefaultNumber   = defaultNumber;
                    shippingTemplateInfo.AddNumber       = addNumber;
                    shippingTemplateInfo.Price           = price;
                    shippingTemplateInfo.AddPrice        = addPrice;
                    if (SalesHelper.CreateShippingTemplate(shippingTemplateInfo))
                    {
                        if (!string.IsNullOrEmpty(this.Page.Request.QueryString["source"]) && this.Page.Request.QueryString["source"] == "add")
                        {
                            this.CloseWindow();
                        }
                        else
                        {
                            this.ClearControlValue();
                            this.ShowMsg("成功添加了一个配送方式模板", true, "ManageShippingTemplates.aspx");
                        }
                    }
                    else
                    {
                        this.ShowMsg("您添加的地区有重复", false);
                    }
                }
            }
        }
Esempio n. 2
0
        public ShippingTemplateInfo GetShippingTemplate(int templateId, bool includeDetail)
        {
            ShippingTemplateInfo shippingTemplateInfo = null;
            DbCommand            sqlStringCommand     = base.database.GetSqlStringCommand(" SELECT * FROM Hishop_ShippingTemplates Where TemplateId =@TemplateId");

            if (includeDetail)
            {
                DbCommand dbCommand = sqlStringCommand;
                dbCommand.CommandText += " SELECT GroupId,TemplateId,Price,AddPrice,DefaultNumber,AddNumber FROM Hishop_ShippingTypeGroups Where TemplateId =@TemplateId";
                DbCommand dbCommand2 = sqlStringCommand;
                dbCommand2.CommandText += " SELECT sr.TemplateId,sr.GroupId,sr.RegionId FROM Hishop_ShippingRegions sr Where sr.TemplateId =@TemplateId";
                DbCommand dbCommand3 = sqlStringCommand;
                dbCommand3.CommandText += " SELECT GroupId,TemplateId,ConditionType,ConditionNumber FROM Hishop_ShippingFreeGroups Where TemplateId =@TemplateId";
                DbCommand dbCommand4 = sqlStringCommand;
                dbCommand4.CommandText += " SELECT sr.TemplateId,sr.GroupId,sr.RegionId FROM Hishop_ShippingFreeRegions sr Where sr.TemplateId =@TemplateId";
            }
            base.database.AddInParameter(sqlStringCommand, "TemplateId", DbType.Int32, templateId);
            using (IDataReader dataReader = base.database.ExecuteReader(sqlStringCommand))
            {
                shippingTemplateInfo = DataHelper.ReaderToModel <ShippingTemplateInfo>(dataReader);
                if (shippingTemplateInfo == null)
                {
                    return(null);
                }
                if (includeDetail && shippingTemplateInfo != null)
                {
                    dataReader.NextResult();
                    shippingTemplateInfo.ModeGroup = DataHelper.ReaderToList <ShippingTemplateGroupInfo>(dataReader);
                    dataReader.NextResult();
                    while (dataReader.Read())
                    {
                        foreach (ShippingTemplateGroupInfo item in shippingTemplateInfo.ModeGroup)
                        {
                            if (item.GroupId == (int)((IDataRecord)dataReader)["GroupId"])
                            {
                                ShippingRegionInfo shippingRegionInfo = new ShippingRegionInfo();
                                shippingRegionInfo.TemplateId = (int)((IDataRecord)dataReader)["TemplateId"];
                                shippingRegionInfo.GroupId    = (int)((IDataRecord)dataReader)["GroupId"];
                                shippingRegionInfo.RegionId   = (int)((IDataRecord)dataReader)["RegionId"];
                                item.ModeRegions.Add(shippingRegionInfo);
                            }
                        }
                    }
                    dataReader.NextResult();
                    shippingTemplateInfo.FreeGroup = DataHelper.ReaderToList <ShippingTemplateFreeGroupInfo>(dataReader);
                    dataReader.NextResult();
                    while (dataReader.Read())
                    {
                        foreach (ShippingTemplateFreeGroupInfo item2 in shippingTemplateInfo.FreeGroup)
                        {
                            if (item2.GroupId == (int)((IDataRecord)dataReader)["GroupId"])
                            {
                                ShippingFreeRegionInfo shippingFreeRegionInfo = new ShippingFreeRegionInfo();
                                shippingFreeRegionInfo.TemplateId = (int)((IDataRecord)dataReader)["TemplateId"];
                                shippingFreeRegionInfo.GroupId    = (int)((IDataRecord)dataReader)["GroupId"];
                                shippingFreeRegionInfo.RegionId   = (int)((IDataRecord)dataReader)["RegionId"];
                                item2.ModeRegions.Add(shippingFreeRegionInfo);
                            }
                        }
                    }
                }
            }
            return(shippingTemplateInfo);
        }