/// <summary> /// 获取所有发货模版 /// </summary> /// <returns></returns> public List <ShippingModeInfo> GetAllShippingMode() { DbCommand sqlStringCommand = this.database.GetSqlStringCommand("SELECT *,ModeId=-1,Name='',Description='',DisplaySequence=-1 from Ecshop_ShippingTemplates;"); sqlStringCommand.CommandText += "SELECT * FROM Ecshop_ShippingTypeGroups;"; sqlStringCommand.CommandText += "SELECT * FROM Ecshop_ShippingRegions;"; List <ShippingModeInfo> modes = new List <ShippingModeInfo>(); using (IDataReader dataReader = this.database.ExecuteReader(sqlStringCommand)) { while (dataReader.Read()) { modes.Add(DataMapper.PopulateShippingMode(dataReader)); } dataReader.NextResult(); while (dataReader.Read()) { int templateId; int.TryParse(dataReader["TemplateId"].ToString(), out templateId); ShippingModeInfo shippingModeInfo = modes.FirstOrDefault(p => p.TemplateId == templateId); if (shippingModeInfo == null) { continue; } shippingModeInfo.ModeGroup.Add(new ShippingModeGroupInfo { AddPrice = (decimal)dataReader["AddPrice"], Price = (decimal)dataReader["Price"], TemplateId = (int)dataReader["TemplateId"], GroupId = (int)dataReader["GroupId"] }); } dataReader.NextResult(); while (dataReader.Read()) { int templateId; int.TryParse(dataReader["TemplateId"].ToString(), out templateId); int groupId; int.TryParse(dataReader["GroupId"].ToString(), out groupId); ShippingModeInfo shippingModeInfo = modes.FirstOrDefault(p => p.TemplateId == templateId); if (shippingModeInfo == null) { continue; } ShippingModeGroupInfo shippingModeGroupInfo = shippingModeInfo.ModeGroup.FirstOrDefault(p => p.GroupId == groupId); if (shippingModeGroupInfo == null) { continue; } shippingModeGroupInfo.ModeRegions.Add(new ShippingRegionInfo { GroupId = shippingModeGroupInfo.GroupId, TemplateId = shippingModeGroupInfo.TemplateId, RegionId = (int)dataReader["RegionId"] }); } } return(modes); }
public ShippingModeInfo GetShippingMode(int modeId, bool includeDetail) { ShippingModeInfo info = null; DbCommand sqlStringCommand = this.database.GetSqlStringCommand("SELECT * FROM Hishop_ShippingTypes st INNER JOIN Hishop_ShippingTemplates temp ON st.TemplateId=temp.TemplateId Where ModeId =@ModeId"); if (includeDetail) { sqlStringCommand.CommandText = sqlStringCommand.CommandText + " SELECT * FROM Hishop_TemplateRelatedShipping Where ModeId =@ModeId"; sqlStringCommand.CommandText = sqlStringCommand.CommandText + " SELECT * FROM Hishop_ShippingTypeGroups WHERE TemplateId = (SELECT TemplateId FROM Hishop_ShippingTypes WHERE ModeId =@ModeId )"; } this.database.AddInParameter(sqlStringCommand, "ModeId", DbType.Int32, modeId); using (IDataReader reader = this.database.ExecuteReader(sqlStringCommand)) { if (reader.Read()) { info = DataMapper.PopulateShippingMode(reader); } if (!includeDetail) { return(info); } reader.NextResult(); while (reader.Read()) { if (reader["ExpressCompanyName"] != DBNull.Value) { info.ExpressCompany.Add((string)reader["ExpressCompanyName"]); } } reader.NextResult(); while (reader.Read()) { ShippingModeGroupInfo item = new ShippingModeGroupInfo { AddPrice = (decimal)reader["AddPrice"], Price = (decimal)reader["Price"], TemplateId = (int)reader["TemplateId"], GroupId = (int)reader["GroupId"] }; info.ModeGroup.Add(item); } string str = ""; foreach (ShippingModeGroupInfo info3 in info.ModeGroup) { str = "SELECT RegionId FROM Hishop_ShippingRegions WHERE GroupId = " + info3.GroupId; using (IDataReader reader2 = this.database.ExecuteReader(CommandType.Text, str)) { while (reader2.Read()) { ShippingRegionInfo info4 = new ShippingRegionInfo { GroupId = info3.GroupId, TemplateId = info3.TemplateId, RegionId = (int)reader2["RegionId"] }; info3.ModeRegions.Add(info4); } } } } return(info); }
private void btnUpdate_Click(object sender, System.EventArgs e) { decimal num; decimal?nullable; decimal num2; decimal?nullable2; if (this.ValidateRegionValues(out num, out nullable, out num2, out nullable2)) { new System.Collections.Generic.List <ShippingModeGroupInfo>(); ShippingModeInfo shippingMode = new ShippingModeInfo { Name = Globals.HtmlEncode(this.txtModeName.Text.Trim()), Weight = num, AddWeight = nullable, Price = num2, AddPrice = nullable2, TemplateId = this.templateId }; foreach (System.Web.UI.WebControls.GridViewRow row in this.grdRegion.Rows) { decimal result = 0m; decimal num3 = 0m; decimal.TryParse(((System.Web.UI.WebControls.TextBox)row.FindControl("txtModeRegionPrice")).Text, out result); decimal.TryParse(((System.Web.UI.WebControls.TextBox)row.FindControl("txtModeRegionAddPrice")).Text, out num3); ShippingModeGroupInfo item = new ShippingModeGroupInfo { Price = result, AddPrice = num3 }; System.Web.UI.WebControls.TextBox box = (System.Web.UI.WebControls.TextBox) this.grdRegion.Rows[row.RowIndex].FindControl("txtRegionvalue_Id"); if (!string.IsNullOrEmpty(box.Text)) { string[] array = box.Text.Split(new char[] { ',' }); for (int i = 0; i < array.Length; i++) { string str = array[i]; ShippingRegionInfo info3 = new ShippingRegionInfo { RegionId = System.Convert.ToInt32(str.Trim()) }; item.ModeRegions.Add(info3); } } shippingMode.ModeGroup.Add(item); } if (SalesHelper.UpdateShippingTemplate(shippingMode)) { this.Page.Response.Redirect("EditShippingTemplate.aspx?TemplateId=" + shippingMode.TemplateId + "&isUpdate=true"); } else { this.ShowMsg("您添加的地区有重复", false); } } }
private void btnCreate_Click(object sender, System.EventArgs e) { decimal weight; decimal?addWeight; decimal price; decimal?addPrice; if (!this.ValidateRegionValues(out weight, out addWeight, out price, out addPrice)) { return; } new System.Collections.Generic.List <ShippingModeGroupInfo>(); ShippingModeInfo shippingModeInfo = new ShippingModeInfo(); shippingModeInfo.Name = Globals.HtmlEncode(this.txtModeName.Text.Trim()); shippingModeInfo.Weight = weight; shippingModeInfo.AddWeight = addWeight; shippingModeInfo.Price = price; shippingModeInfo.AddPrice = addPrice; foreach (System.Web.UI.WebControls.GridViewRow gridViewRow in this.grdRegion.Rows) { decimal price2 = 0m; decimal addPrice2 = 0m; decimal.TryParse(((System.Web.UI.WebControls.TextBox)gridViewRow.FindControl("txtModeRegionPrice")).Text, out price2); decimal.TryParse(((System.Web.UI.WebControls.TextBox)gridViewRow.FindControl("txtModeRegionAddPrice")).Text, out addPrice2); ShippingModeGroupInfo shippingModeGroupInfo = new ShippingModeGroupInfo(); shippingModeGroupInfo.Price = price2; shippingModeGroupInfo.AddPrice = addPrice2; System.Web.UI.WebControls.TextBox textBox = (System.Web.UI.WebControls.TextBox) this.grdRegion.Rows[gridViewRow.RowIndex].FindControl("txtRegionvalue_Id"); if (!string.IsNullOrEmpty(textBox.Text)) { string[] array = textBox.Text.Split(new char[] { ',' }); string[] array2 = array; for (int i = 0; i < array2.Length; i++) { string text = array2[i]; ShippingRegionInfo shippingRegionInfo = new ShippingRegionInfo(); shippingRegionInfo.RegionId = System.Convert.ToInt32(text.Trim()); shippingModeGroupInfo.ModeRegions.Add(shippingRegionInfo); } } shippingModeInfo.ModeGroup.Add(shippingModeGroupInfo); } if (!SalesHelper.CreateShippingTemplate(shippingModeInfo)) { this.ShowMsg("您添加的地区有重复", false); return; } if (!string.IsNullOrEmpty(this.Page.Request.QueryString["source"]) && this.Page.Request.QueryString["source"] == "add") { this.CloseWindow(); return; } this.ClearControlValue(); this.ShowMsg("成功添加了一个配送方式模板", true); }
private void btnCreate_Click(object sender, EventArgs e) { decimal num; decimal?nullable; decimal num2; decimal?nullable2; if (this.ValidateRegionValues(out num, out nullable, out num2, out nullable2)) { new List <ShippingModeGroupInfo>(); ShippingModeInfo shippingMode = new ShippingModeInfo { Name = Globals.HtmlEncode(this.txtModeName.Text.Trim()), Weight = num, AddWeight = nullable, Price = num2, AddPrice = nullable2 }; foreach (GridViewRow row in this.grdRegion.Rows) { decimal result = 0M; decimal num4 = 0M; decimal.TryParse(((TextBox)row.FindControl("txtModeRegionPrice")).Text, out result); decimal.TryParse(((TextBox)row.FindControl("txtModeRegionAddPrice")).Text, out num4); ShippingModeGroupInfo item = new ShippingModeGroupInfo { Price = result, AddPrice = num4 }; TextBox box = (TextBox)this.grdRegion.Rows[row.RowIndex].FindControl("txtRegionvalue_Id"); if (!string.IsNullOrEmpty(box.Text)) { foreach (string str in box.Text.Split(new char[] { ',' })) { ShippingRegionInfo info3 = new ShippingRegionInfo { RegionId = Convert.ToInt32(str.Trim()) }; item.ModeRegions.Add(info3); } } shippingMode.ModeGroup.Add(item); } if (SalesHelper.CreateShippingTemplate(shippingMode)) { if (!string.IsNullOrEmpty(this.Page.Request.QueryString["source"]) && (this.Page.Request.QueryString["source"] == "add")) { this.CloseWindow(); } else { this.ClearControlValue(); this.ShowMsg("成功添加了一个配送方式模板", true); } } else { this.ShowMsg("您添加的地区有重复", false); } } }
private void btnUpdate_Click(object sender, EventArgs e) { int num; int? nullable; decimal num2; decimal?nullable2; if (ValidateRegionValues(out num, out nullable, out num2, out nullable2)) { new List <ShippingModeGroupInfo>(); ShippingModeInfo info6 = new ShippingModeInfo(); info6.Name = Globals.HtmlEncode(txtModeName.Text.Trim()); info6.Weight = num; info6.AddWeight = nullable; info6.Price = num2; info6.AddPrice = nullable2; info6.TemplateId = templateId; ShippingModeInfo target = info6; foreach (GridViewRow row in grdRegion.Rows) { ShippingModeGroupInfo info5 = new ShippingModeGroupInfo(); info5.Price = decimal.Parse(((TextBox)row.FindControl("txtModeRegionPrice")).Text); info5.AddPrice = decimal.Parse(((TextBox)row.FindControl("txtModeRegionAddPrice")).Text); ShippingModeGroupInfo item = info5; TextBox box = (TextBox)grdRegion.Rows[row.RowIndex].FindControl("txtRegionvalue_Id"); foreach (string str in box.Text.Split(new char[] { ',' })) { ShippingRegionInfo info4 = new ShippingRegionInfo(); info4.RegionId = Convert.ToInt32(str.Trim()); ShippingRegionInfo info3 = info4; item.ModeRegions.Add(info3); } target.ModeGroup.Add(item); } ValidationResults results = Hishop.Components.Validation.Validation.Validate <ShippingModeInfo>(target, new string[] { "ValShippingModeInfo" }); string msg = string.Empty; if (!results.IsValid) { foreach (ValidationResult result in (IEnumerable <ValidationResult>)results) { msg = msg + Formatter.FormatErrorMessage(result.Message); } ShowMsg(msg, false); } else if (SalesHelper.UpdateShippingTemplate(target)) { Page.Response.Redirect("EditShippingTemplate.aspx?TemplateId=" + target.TemplateId + "&isUpdate=true"); } else { ShowMsg("您添加的地区有重复", false); } } }
private void btnUpdate_Click(object sender, EventArgs e) { decimal num; decimal?nullable; decimal num2; decimal?nullable2; if (this.ValidateRegionValues(out num, out nullable, out num2, out nullable2)) { new List <ShippingModeGroupInfo>(); ShippingModeInfo shippingMode = new ShippingModeInfo(); shippingMode.Name = Globals.HtmlEncode(this.txtModeName.Text.Trim()); shippingMode.Weight = num; shippingMode.AddWeight = nullable; shippingMode.Price = num2; shippingMode.AddPrice = nullable2; shippingMode.TemplateId = this.templateId; foreach (GridViewRow row in this.grdRegion.Rows) { decimal result = 0M; decimal num4 = 0M; decimal.TryParse(((TextBox)row.FindControl("txtModeRegionPrice")).Text, out result); decimal.TryParse(((TextBox)row.FindControl("txtModeRegionAddPrice")).Text, out num4); ShippingModeGroupInfo item = new ShippingModeGroupInfo(); item.Price = result; item.AddPrice = num4; TextBox box = (TextBox)this.grdRegion.Rows[row.RowIndex].FindControl("txtRegionvalue_Id"); if (!string.IsNullOrEmpty(box.Text)) { foreach (string str in box.Text.Split(new char[] { ',' })) { ShippingRegionInfo info3 = new ShippingRegionInfo(); info3.RegionId = Convert.ToInt32(str.Trim()); item.ModeRegions.Add(info3); } } shippingMode.ModeGroup.Add(item); } if (SalesHelper.UpdateShippingTemplate(shippingMode)) { this.Page.Response.Redirect("EditShippingTemplate.aspx?TemplateId=" + shippingMode.TemplateId + "&isUpdate=true"); } else { this.ShowMsg("您添加的地区有重复", false); } } }
public static ShippingModeGroupInfo PopulateShippingModeGroup(IDataRecord reader) { if (reader == null) { return(null); } ShippingModeGroupInfo info = new ShippingModeGroupInfo { TemplateId = (int)reader["TemplateId"], GroupId = (int)reader["GroupId"], Price = (decimal)reader["Price"] }; if (DBNull.Value != reader["AddPrice"]) { info.AddPrice = (decimal)reader["AddPrice"]; } return(info); }
private void btnCreate_Click(object sender, EventArgs e) { int weight = 0; int? addWeight = 0; decimal price = 0m; decimal?addPrice = 0; if (ValidateRegionValues(out weight, out addWeight, out price, out addPrice)) { new List <ShippingModeGroupInfo>(); ShippingModeInfo shippingModeInfo = new ShippingModeInfo(); shippingModeInfo.Name = Globals.HtmlEncode(txtModeName.Text.Trim()); shippingModeInfo.Weight = weight; shippingModeInfo.AddWeight = addWeight; shippingModeInfo.Price = price; shippingModeInfo.AddPrice = addPrice; ShippingModeGroupInfo shippingModeGroupInfo = null; ShippingRegionInfo shippingRegionInfo = null; foreach (GridViewRow row in grdRegion.Rows) { shippingModeGroupInfo = new ShippingModeGroupInfo(); shippingModeGroupInfo.Price = decimal.Parse(((TextBox)row.FindControl("txtModeRegionPrice")).Text); shippingModeGroupInfo.AddPrice = decimal.Parse(((TextBox)row.FindControl("txtModeRegionAddPrice")).Text); TextBox box = (TextBox)grdRegion.Rows[row.RowIndex].FindControl("txtRegionvalue_Id"); foreach (string str in box.Text.Split(new char[] { ',' })) { shippingRegionInfo = new ShippingRegionInfo(); shippingRegionInfo.RegionId = Convert.ToInt32(str.Trim()); shippingModeGroupInfo.ModeRegions.Add(shippingRegionInfo); } shippingModeInfo.ModeGroup.Add(shippingModeGroupInfo); } ValidationResults results = Hishop.Components.Validation.Validation.Validate <ShippingModeInfo>(shippingModeInfo, "ValShippingModeInfo"); string msg = string.Empty; if (!results.IsValid) { foreach (ValidationResult result in (IEnumerable <ValidationResult>)results) { msg = msg + Formatter.FormatErrorMessage(result.Message); } ShowMsg(msg, false); } else if (SalesHelper.CreateShippingTemplate(shippingModeInfo)) { ClearControlValue(); ShowMsg("成功添加了一个配送方式模板", true); } else { ShowMsg("您添加的地区有重复", false); } } }