Example #1
0
        /// <summary>
        /// 计算重量
        /// </summary>
        /// <param name="context"></param>
        void CalculateFreight(HttpContext context)
        {
            decimal freight = 0M;

            if (!string.IsNullOrEmpty(context.Request.Params["ModeId"]) && !string.IsNullOrEmpty(context.Request["RegionId"]))
            {
                int modeId = int.Parse(context.Request["ModeId"], NumberStyles.None);

                int totalWeight = int.Parse(context.Request["Weight"], NumberStyles.None);

                int regionId = int.Parse(context.Request["RegionId"], NumberStyles.None);

                ShippingModeInfo shippingMode = ShoppingProcessor.GetShippingMode(modeId, true);

                freight = ShoppingProcessor.CalcFreight(regionId, totalWeight, shippingMode);
            }

            StringBuilder builder = new StringBuilder();

            builder.Append("{");
            builder.Append("\"Status\":\"OK\",");
            builder.AppendFormat("\"Price\":\"{0}\", \"Price_v\":\"{1}\"", Globals.FormatMoney(freight), freight);
            builder.Append("}");
            context.Response.ContentType = "text/plain";

            context.Response.Write(builder.ToString());
        }
Example #2
0
 public ApiErrorCode SendOrders(PurchaseOrderInfo purchaseorder, ShippingModeInfo shippingmode, string out_id, ExpressCompanyInfo express)
 {
     if (string.IsNullOrEmpty(out_id))
     {
         return(ApiErrorCode.ShipingOrderNumber_Error);
     }
     if (purchaseorder == null)
     {
         return(ApiErrorCode.NoExists_Error);
     }
     if (purchaseorder.PurchaseStatus != OrderStatus.BuyerAlreadyPaid)
     {
         return(ApiErrorCode.NoPay_Error);
     }
     if (shippingmode.ModeId <= 0)
     {
         return(ApiErrorCode.NoShippingMode);
     }
     if (string.IsNullOrEmpty(express.Name))
     {
         return(ApiErrorCode.Empty_Error);
     }
     purchaseorder.RealShippingModeId = shippingmode.ModeId;
     purchaseorder.RealModeName       = shippingmode.Name;
     purchaseorder.ExpressCompanyName = express.Name;
     purchaseorder.ExpressCompanyAbb  = express.Kuaidi100Code;
     purchaseorder.ShipOrderNumber    = out_id;
     if (SalesHelper.SendAPIPurchaseOrderGoods(purchaseorder))
     {
         return(ApiErrorCode.Success);
     }
     return(ApiErrorCode.Unknown_Error);
 }
Example #3
0
 protected void Page_Load(object sender, System.EventArgs e)
 {
     if (!int.TryParse(this.Page.Request.QueryString["TemplateId"], out this.templateId))
     {
         base.GotoResourceNotFound();
         return;
     }
     this.btnUpdate.Click       += new System.EventHandler(this.btnUpdate_Click);
     this.btnAdd.Click          += new System.EventHandler(this.btnAdd_Click);
     this.grdRegion.RowDeleting += new System.Web.UI.WebControls.GridViewDeleteEventHandler(this.grdRegion_RowDeleting);
     if (!this.Page.IsPostBack)
     {
         if (this.Page.Request.QueryString["isUpdate"] != null && this.Page.Request.QueryString["isUpdate"] == "true")
         {
             this.ShowMsg("成功修改了一个配送方式", true);
         }
         ShippingModeInfo shippingTemplate = SalesHelper.GetShippingTemplate(this.templateId, true);
         if (shippingTemplate == null)
         {
             base.GotoResourceNotFound();
             return;
         }
         this.BindControl(shippingTemplate);
         this.BindRegion();
     }
 }
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!int.TryParse(Page.Request.QueryString["TemplateId"], out templateId))
     {
         base.GotoResourceNotFound();
     }
     else
     {
         btnUpdate.Click       += new EventHandler(btnUpdate_Click);
         btnAdd.Click          += new EventHandler(btnAdd_Click);
         grdRegion.RowDeleting += new GridViewDeleteEventHandler(grdRegion_RowDeleting);
         if (!Page.IsPostBack)
         {
             if ((Page.Request.QueryString["isUpdate"] != null) && (Page.Request.QueryString["isUpdate"] == "true"))
             {
                 ShowMsg("成功修改了一个配送方式", true);
             }
             ShippingModeInfo shippingTemplate = SalesHelper.GetShippingTemplate(templateId, true);
             if (shippingTemplate == null)
             {
                 base.GotoResourceNotFound();
             }
             else
             {
                 BindControl(shippingTemplate);
                 BindRegion();
             }
         }
     }
 }
Example #5
0
 private void btnSendGoods_Click(object sender, EventArgs e)
 {
     if (grdOrderGoods.Rows.Count <= 0)
     {
         ShowMsg("没有要进行发货的订单。", false);
     }
     else
     {
         DropdownColumn     column        = (DropdownColumn)grdOrderGoods.Columns[4];
         ListItemCollection selectedItems = column.SelectedItems;
         int num = 0;
         for (int i = 0; i < selectedItems.Count; i++)
         {
             string   orderId = (string)grdOrderGoods.DataKeys[grdOrderGoods.Rows[i].RowIndex].Value;
             TextBox  box     = (TextBox)grdOrderGoods.Rows[i].FindControl("txtShippOrderNumber");
             ListItem item    = selectedItems[i];
             int      result  = 0;
             int.TryParse(item.Value, out result);
             OrderInfo orderInfo = SubsiteSalesHelper.GetOrderInfo(orderId);
             if (((orderInfo != null) && ((orderInfo.GroupBuyId <= 0) || (orderInfo.GroupBuyStatus == GroupBuyStatus.Success))) && (((orderInfo.OrderStatus == OrderStatus.BuyerAlreadyPaid) && (result > 0)) && (!string.IsNullOrEmpty(box.Text) && (box.Text.Length <= 20))))
             {
                 ShippingModeInfo shippingMode = SubsiteSalesHelper.GetShippingMode(result, true);
                 orderInfo.RealShippingModeId = shippingMode.ModeId;
                 orderInfo.RealModeName       = shippingMode.Name;
                 orderInfo.ExpressCompanyAbb  = shippingMode.ExpressCompanyAbb;
                 orderInfo.ExpressCompanyName = shippingMode.ExpressCompanyName;
                 orderInfo.ShipOrderNumber    = box.Text;
                 if (SubsiteSalesHelper.SendGoods(orderInfo))
                 {
                     if (!string.IsNullOrEmpty(orderInfo.GatewayOrderId) && (orderInfo.GatewayOrderId.Trim().Length > 0))
                     {
                         PaymentModeInfo paymentMode = SubsiteSalesHelper.GetPaymentMode(orderInfo.PaymentTypeId);
                         if (paymentMode != null)
                         {
                             PaymentRequest.CreateInstance(paymentMode.Gateway, Cryptographer.Decrypt(paymentMode.Settings), orderInfo.OrderId, orderInfo.GetTotal(), "订单发货", "订单号-" + orderInfo.OrderId, orderInfo.EmailAddress, orderInfo.OrderDate, Globals.FullPath(Globals.GetSiteUrls().Home), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentReturn_url", new object[] { paymentMode.Gateway })), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentNotify_url", new object[] { paymentMode.Gateway })), "").SendGoods(orderInfo.GatewayOrderId, orderInfo.RealModeName, orderInfo.ShipOrderNumber, "EXPRESS");
                         }
                     }
                     int userId = orderInfo.UserId;
                     if (userId == 0x44c)
                     {
                         userId = 0;
                     }
                     IUser user = Users.GetUser(userId);
                     Messenger.OrderShipping(orderInfo, user);
                     orderInfo.OnDeliver();
                 }
                 num++;
             }
         }
         if (num == 0)
         {
             ShowMsg("批量发货失败!,发货数量0个", false);
         }
         else if (num > 0)
         {
             BindData();
             ShowMsg(string.Format("批量发货成功!,发货数量{0}个", num), true);
         }
     }
 }
Example #6
0
        /// <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);
        }
Example #7
0
 protected void Page_Load(object sender, EventArgs e)
 {
     if (!int.TryParse(Page.Request.QueryString["modeId"], out modeId))
     {
         base.GotoResourceNotFound();
     }
     else
     {
         btnUpDate.Click += new EventHandler(btnUpDate_Click);
         if (!Page.IsPostBack)
         {
             if ((Page.Request.QueryString["isUpdate"] != null) && (Page.Request.QueryString["isUpdate"] == "true"))
             {
                 ShowMsg("成功修改了一个配送方式", true);
             }
             ShippingModeInfo shippingMode = SalesHelper.GetShippingMode(modeId, true);
             if (shippingMode == null)
             {
                 base.GotoResourceNotFound();
             }
             else
             {
                 BindControl(shippingMode);
                 shippingTemplatesDropDownList.DataBind();
                 BindControl(shippingMode);
                 expressCheckBoxList.ExpressCompany = shippingMode.ExpressCompany;
                 expressCheckBoxList.DataBind();
             }
         }
     }
 }
Example #8
0
        private void btnUpDate_Click(object sender, System.EventArgs e)
        {
            ShippingModeInfo shippingModeInfo = new ShippingModeInfo();

            shippingModeInfo.Name        = Globals.HtmlEncode(this.txtModeName.Text.Trim());
            shippingModeInfo.ModeId      = this.modeId;
            shippingModeInfo.Description = this.fck.Text.Replace("\r\n", "").Replace("\r", "").Replace("\n", "");
            if (!this.shippingTemplatesDropDownList.SelectedValue.HasValue)
            {
                this.ShowMsg("请选择运费模板", false);
                return;
            }
            shippingModeInfo.TemplateId = this.shippingTemplatesDropDownList.SelectedValue.Value;
            foreach (System.Web.UI.WebControls.ListItem listItem in this.expressCheckBoxList.Items)
            {
                if (listItem.Selected)
                {
                    shippingModeInfo.ExpressCompany.Add(listItem.Value);
                }
            }
            if (shippingModeInfo.ExpressCompany.Count == 0)
            {
                this.ShowMsg("至少要选择一个配送公司", false);
                return;
            }
            if (SalesHelper.UpdateShippMode(shippingModeInfo))
            {
                this.Page.Response.Redirect("EditShippingType.aspx?modeId=" + shippingModeInfo.ModeId + "&isUpdate=true");
                return;
            }
            this.ShowMsg("更新失败", false);
        }
Example #9
0
        public static decimal GetFreight(ShoppingCartInfo shoppingCartItemInfo, int RegionId, bool isGroupBuy)
        {
            int     totalQuantity = 0;
            decimal freight       = 0;
            Dictionary <int, decimal> dictShippingMode = new Dictionary <int, decimal>();

            foreach (ShoppingCartItemInfo item in shoppingCartItemInfo.LineItems)
            {
                totalQuantity += item.Quantity;
                if ((!shoppingCartItemInfo.IsFreightFree || !item.IsfreeShipping || isGroupBuy))
                {
                    if (item.TemplateId > 0)
                    {
                        if (dictShippingMode.ContainsKey(item.TemplateId))
                        {
                            dictShippingMode[item.TemplateId] += item.Weight * item.Quantity;
                        }
                        else
                        {
                            dictShippingMode.Add(item.TemplateId, item.Weight * item.Quantity);
                        }
                    }
                }
            }
            foreach (var item in dictShippingMode)
            {
                ShippingModeInfo shippingMode = ShoppingProcessor.GetShippingMode(item.Key);
                freight += ShoppingProcessor.CalcFreight(RegionId, item.Value, shippingMode);
            }
            return(freight);
        }
Example #10
0
        void FillOrderShippingMode(OrderInfo orderInfo, ShoppingCartInfo shoppingCartInfo)
        {
            orderInfo.ShippingRegion = dropRegions.SelectedRegions;
            orderInfo.Address        = Globals.HtmlEncode(txtAddress.Text);
            orderInfo.ZipCode        = txtZipcode.Text;
            orderInfo.ShipTo         = Globals.HtmlEncode(txtShipTo.Text);
            orderInfo.TelPhone       = txtTelPhone.Text;
            orderInfo.CellPhone      = txtCellPhone.Text;
            if (!string.IsNullOrEmpty(inputShippingModeId.Value))
            {
                orderInfo.ShippingModeId = int.Parse(inputShippingModeId.Value, NumberStyles.None);
            }
            if (dropRegions.GetSelectedRegionId().HasValue)
            {
                orderInfo.RegionId = dropRegions.GetSelectedRegionId().Value;
            }
            ShippingModeInfo shippingMode = ShoppingProcessor.GetShippingMode(orderInfo.ShippingModeId, true);

            if (shippingMode != null)
            {
                orderInfo.ModeName        = shippingMode.Name;
                orderInfo.Freight         = ShoppingProcessor.CalcFreight(orderInfo.RegionId, shoppingCartInfo.Weight, shippingMode);
                orderInfo.AdjustedFreight = orderInfo.Freight;
            }
        }
Example #11
0
        public bool CreateShippingMode(ShippingModeInfo shippingMode)
        {
            bool      flag;
            DbCommand storedProcCommand = this.database.GetStoredProcCommand("cp_ShippingMode_Create");

            this.database.AddInParameter(storedProcCommand, "Name", DbType.String, shippingMode.Name);
            this.database.AddInParameter(storedProcCommand, "TemplateId", DbType.Int32, shippingMode.TemplateId);
            this.database.AddOutParameter(storedProcCommand, "ModeId", DbType.Int32, 4);
            this.database.AddOutParameter(storedProcCommand, "Status", DbType.Int32, 4);
            this.database.AddInParameter(storedProcCommand, "Description", DbType.String, shippingMode.Description);
            using (DbConnection connection = this.database.CreateConnection())
            {
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();
                try
                {
                    try
                    {
                        this.database.ExecuteNonQuery(storedProcCommand, transaction);
                        flag = ((int)this.database.GetParameterValue(storedProcCommand, "Status")) == 0;
                        if (flag)
                        {
                            int       parameterValue   = (int)this.database.GetParameterValue(storedProcCommand, "ModeId");
                            DbCommand sqlStringCommand = this.database.GetSqlStringCommand(" ");
                            this.database.AddInParameter(sqlStringCommand, "ModeId", DbType.Int32, parameterValue);
                            StringBuilder builder = new StringBuilder();
                            int           num2    = 0;
                            builder.Append("DECLARE @ERR INT; Set @ERR =0;");
                            foreach (string str in shippingMode.ExpressCompany)
                            {
                                builder.Append(" INSERT INTO Hishop_TemplateRelatedShipping(ModeId,ExpressCompanyName) VALUES( @ModeId,").Append("@ExpressCompanyName").Append(num2).Append("); SELECT @ERR=@ERR+@@ERROR;");
                                this.database.AddInParameter(sqlStringCommand, "ExpressCompanyName" + num2, DbType.String, str);
                                num2++;
                            }
                            sqlStringCommand.CommandText = builder.Append("SELECT @ERR;").ToString();
                            if (((int)this.database.ExecuteScalar(sqlStringCommand, transaction)) != 0)
                            {
                                transaction.Rollback();
                                flag = false;
                            }
                        }
                        transaction.Commit();
                    }
                    catch
                    {
                        if (transaction.Connection != null)
                        {
                            transaction.Rollback();
                        }
                        flag = false;
                    }
                    return(flag);
                }
                finally
                {
                    connection.Close();
                }
            }
            return(flag);
        }
Example #12
0
        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);
        }
Example #13
0
 protected void Page_Load(object sender, System.EventArgs e)
 {
     if (!int.TryParse(this.Page.Request.QueryString["modeId"], out this.modeId))
     {
         base.GotoResourceNotFound();
         return;
     }
     this.btnUpDate.Click += new System.EventHandler(this.btnUpDate_Click);
     if (!this.Page.IsPostBack)
     {
         if (this.Page.Request.QueryString["isUpdate"] != null && this.Page.Request.QueryString["isUpdate"] == "true")
         {
             this.ShowMsg("成功修改了一个配送方式", true);
         }
         ShippingModeInfo shippingMode = SalesHelper.GetShippingMode(this.modeId, true);
         if (shippingMode == null)
         {
             base.GotoResourceNotFound();
             return;
         }
         this.BindControl(shippingMode);
         this.shippingTemplatesDropDownList.DataBind();
         this.BindControl(shippingMode);
         this.expressCheckBoxList.ExpressCompany = shippingMode.ExpressCompany;
         this.expressCheckBoxList.DataBind();
     }
 }
Example #14
0
        private void btnCreate_Click(object sender, System.EventArgs e)
        {
            ShippingModeInfo shippingModeInfo = new ShippingModeInfo();

            shippingModeInfo.Name        = Globals.HtmlEncode(this.txtModeName.Text.Trim());
            shippingModeInfo.Description = this.fck.Text.Replace("\r\n", "").Replace("\r", "").Replace("\n", "");
            if (!this.shippingTemplatesDropDownList.SelectedValue.HasValue)
            {
                this.ShowMsg("请选择运费模板", false);
                return;
            }
            shippingModeInfo.TemplateId = this.shippingTemplatesDropDownList.SelectedValue.Value;
            foreach (System.Web.UI.WebControls.ListItem listItem in this.expressCheckBoxList.Items)
            {
                if (listItem.Selected)
                {
                    shippingModeInfo.ExpressCompany.Add(listItem.Value);
                }
            }
            if (shippingModeInfo.ExpressCompany.Count == 0)
            {
                this.ShowMsg("至少要选择一个配送公司", false);
                return;
            }
            if (SalesHelper.CreateShippingMode(shippingModeInfo))
            {
                this.ClearControlValue();
                this.ShowMsg("成功添加了一个配送方式", true);
                return;
            }
            this.ShowMsg("添加失败,请确定填写了所有必填项", false);
        }
Example #15
0
        public static ShippingModeInfo PopulateShippingTemplate(IDataRecord reader)
        {
            if (reader == null)
            {
                return(null);
            }
            ShippingModeInfo info = new ShippingModeInfo();

            if (reader["TemplateId"] != DBNull.Value)
            {
                info.TemplateId = (int)reader["TemplateId"];
            }
            info.Name   = (string)reader["TemplateName"];
            info.Weight = (decimal)reader["Weight"];
            if (DBNull.Value != reader["AddWeight"])
            {
                info.AddWeight = new decimal?((decimal)reader["AddWeight"]);
            }
            info.Price = (decimal)reader["Price"];
            if (DBNull.Value != reader["AddPrice"])
            {
                info.AddPrice = new decimal?((decimal)reader["AddPrice"]);
            }
            return(info);
        }
Example #16
0
        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);
                }
            }
        }
Example #17
0
        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);
        }
Example #18
0
 public static bool CreateShippingMode(ShippingModeInfo shippingMode)
 {
     if (null == shippingMode)
     {
         return(false);
     }
     return(new ShippingModeDao().CreateShippingMode(shippingMode));
 }
Example #19
0
 public static bool CreateShippingMode(ShippingModeInfo shippingMode)
 {
     if (null == shippingMode)
     {
         return(false);
     }
     return(SalesProvider.Instance().CreateShippingMode(shippingMode));
 }
Example #20
0
        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);
                }
            }
        }
Example #21
0
 private void BindControl(ShippingModeInfo modeItem)
 {
     txtModeName.Text = Globals.HtmlDecode(modeItem.Name);
     fck.Text         = modeItem.Description;
     if (modeItem.TemplateId > 0)
     {
         shippingTemplatesDropDownList.SelectedValue = new int?(modeItem.TemplateId);
     }
 }
Example #22
0
 public static bool UpdateShippMode(ShippingModeInfo shippingMode)
 {
     if (shippingMode == null)
     {
         return(false);
     }
     Globals.EntityCoding(shippingMode, true);
     return(new ShippingModeDao().UpdateShippingMode(shippingMode));
 }
Example #23
0
 public static bool UpdateShippMode(ShippingModeInfo shippingMode)
 {
     if (shippingMode == null)
     {
         return(false);
     }
     Globals.EntityCoding(shippingMode, true);
     return(SalesProvider.Instance().UpdateShippingMode(shippingMode));
 }
Example #24
0
        public bool UpdateShippingMode(ShippingModeInfo shippingMode)
        {
            DbCommand storedProcCommand = this.database.GetStoredProcCommand("cp_ShippingMode_Update");

            this.database.AddInParameter(storedProcCommand, "Name", DbType.String, shippingMode.Name);
            this.database.AddInParameter(storedProcCommand, "TemplateId", DbType.Int32, shippingMode.TemplateId);
            this.database.AddInParameter(storedProcCommand, "ModeId", DbType.Int32, shippingMode.ModeId);
            this.database.AddOutParameter(storedProcCommand, "Status", DbType.Int32, 4);
            this.database.AddInParameter(storedProcCommand, "Description", DbType.String, shippingMode.Description);
            bool flag;

            using (DbConnection dbConnection = this.database.CreateConnection())
            {
                dbConnection.Open();
                DbTransaction dbTransaction = dbConnection.BeginTransaction();
                try
                {
                    this.database.ExecuteNonQuery(storedProcCommand, dbTransaction);
                    flag = ((int)this.database.GetParameterValue(storedProcCommand, "Status") == 0);
                    if (flag)
                    {
                        DbCommand sqlStringCommand = this.database.GetSqlStringCommand(" ");
                        this.database.AddInParameter(sqlStringCommand, "ModeId", DbType.Int32, shippingMode.ModeId);
                        StringBuilder stringBuilder = new StringBuilder();
                        int           num           = 0;
                        stringBuilder.Append("DECLARE @ERR INT; Set @ERR =0;");
                        foreach (string current in shippingMode.ExpressCompany)
                        {
                            stringBuilder.Append(" INSERT INTO Ecshop_TemplateRelatedShipping(ModeId,ExpressCompanyName) VALUES( @ModeId,").Append("@ExpressCompanyName").Append(num).Append("); SELECT @ERR=@ERR+@@ERROR;");
                            this.database.AddInParameter(sqlStringCommand, "ExpressCompanyName" + num, DbType.String, current);
                            num++;
                        }
                        sqlStringCommand.CommandText = stringBuilder.Append("SELECT @ERR;").ToString();
                        int num2 = (int)this.database.ExecuteScalar(sqlStringCommand, dbTransaction);
                        if (num2 != 0)
                        {
                            dbTransaction.Rollback();
                            flag = false;
                        }
                    }
                    dbTransaction.Commit();
                }
                catch
                {
                    if (dbTransaction.Connection != null)
                    {
                        dbTransaction.Rollback();
                    }
                    flag = false;
                }
                finally
                {
                    dbConnection.Close();
                }
            }
            return(flag);
        }
Example #25
0
        private void btnUpDate_Click(object sender, EventArgs e)
        {
            ShippingModeInfo info3 = new ShippingModeInfo();

            info3.Name        = Globals.HtmlEncode(txtModeName.Text.Trim());
            info3.ModeId      = modeId;
            info3.Description = fck.Text.Replace("\r\n", "").Replace("\r", "").Replace("\n", "");
            ShippingModeInfo target = info3;

            if (shippingTemplatesDropDownList.SelectedValue.HasValue)
            {
                target.TemplateId = shippingTemplatesDropDownList.SelectedValue.Value;
            }
            else
            {
                ShowMsg("请选择配送模板", false);
                return;
            }
            foreach (ListItem item in expressCheckBoxList.Items)
            {
                if (item.Selected)
                {
                    ExpressCompanyInfo info2 = new ExpressCompanyInfo();
                    info2.ExpressCompanyName = item.Text;
                    info2.ExpressCompanyAbb  = item.Value;
                    target.ExpressCompany.Add(info2);
                }
            }
            if (target.ExpressCompany.Count == 0)
            {
                ShowMsg("至少要选择一个配送公司", false);
            }
            else
            {
                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.UpdateShippMode(target))
                {
                    Page.Response.Redirect("EditShippingType.aspx?modeId=" + target.ModeId + "&isUpdate=true");
                }
                else
                {
                    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);
                }
            }
        }
Example #27
0
        protected void btnCreate_Click(object sender, EventArgs e)
        {
            ShippingModeInfo target = new ShippingModeInfo();

            target.Name        = Globals.HtmlEncode(txtModeName.Text.Trim());
            target.Description = fck.Text.Replace("\r\n", "").Replace("\r", "").Replace("\n", "");
            if (shippingTemplatesDropDownList.SelectedValue.HasValue)
            {
                target.TemplateId = shippingTemplatesDropDownList.SelectedValue.Value;
            }
            else
            {
                ShowMsg("请选择配送模板", false);
                return;
            }
            foreach (ListItem item in expressCheckBoxList.Items)
            {
                if (item.Selected)
                {
                    ExpressCompanyInfo expressCompanyInfo = new ExpressCompanyInfo();
                    expressCompanyInfo.ExpressCompanyName = item.Text;
                    expressCompanyInfo.ExpressCompanyAbb  = item.Value;
                    target.ExpressCompany.Add(expressCompanyInfo);
                }
            }
            if (target.ExpressCompany.Count == 0)
            {
                ShowMsg("至少要选择一个配送公司", false);
            }
            else
            {
                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.CreateShippingMode(target))
                {
                    ClearControlValue();
                    ShowMsg("成功添加了一个配送方式", true);
                }
                else
                {
                    ShowMsg("添加失败,请确定填写了所有必填项", false);
                }
            }
        }
Example #28
0
 public ApiErrorCode SendOrders(OrderInfo order, ShippingModeInfo shippingmode, string out_id, ExpressCompanyInfo express)
 {
     if (order.GroupBuyId > 0 && order.GroupBuyStatus != GroupBuyStatus.Success)
     {
         return(ApiErrorCode.Group_Error);
     }
     if (!order.CheckAction(OrderActions.SELLER_SEND_GOODS))
     {
         return(ApiErrorCode.NoPay_Error);
     }
     if (shippingmode.ModeId <= 0)
     {
         return(ApiErrorCode.NoShippingMode);
     }
     if (string.IsNullOrEmpty(out_id) || out_id.Length > 20)
     {
         return(ApiErrorCode.ShipingOrderNumber_Error);
     }
     order.RealShippingModeId = shippingmode.ModeId;
     order.RealModeName       = shippingmode.Name;
     order.ExpressCompanyName = express.Name;
     order.ExpressCompanyAbb  = express.Kuaidi100Code;
     order.ShipOrderNumber    = out_id;
     if (OrderHelper.SendAPIGoods(order))
     {
         if (!string.IsNullOrEmpty(order.GatewayOrderId) && order.GatewayOrderId.Trim().Length > 0)
         {
             PaymentModeInfo paymentMode = SalesHelper.GetPaymentMode(order.PaymentTypeId);
             if (paymentMode != null)
             {
                 PaymentRequest paymentRequest = PaymentRequest.CreateInstance(paymentMode.Gateway, HiCryptographer.Decrypt(paymentMode.Settings), order.OrderId, order.GetTotal(), "订单发货", "订单号-" + order.OrderId, order.EmailAddress, order.OrderDate, Globals.FullPath(Globals.GetSiteUrls().Home), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentReturn_url", new object[]
                 {
                     paymentMode.Gateway
                 })), Globals.FullPath(Globals.GetSiteUrls().UrlData.FormatUrl("PaymentNotify_url", new object[]
                 {
                     paymentMode.Gateway
                 })), "");
                 paymentRequest.SendGoods(order.GatewayOrderId, order.RealModeName, order.ShipOrderNumber, "EXPRESS");
             }
         }
         int num = order.UserId;
         if (num == 1100)
         {
             num = 0;
         }
         Hidistro.Membership.Core.IUser user = Hidistro.Membership.Context.Users.GetUser(num);
         Messenger.OrderShipping(order, user);
         order.OnDeliver();
         return(ApiErrorCode.Success);
     }
     return(ApiErrorCode.Unknown_Error);
 }
Example #29
0
 private void btnSendGoods_Click(object sender, EventArgs e)
 {
     if (grdOrderGoods.Rows.Count <= 0)
     {
         ShowMsg("没有要进行发货的订单。", false);
     }
     else
     {
         DropdownColumn     column        = (DropdownColumn)grdOrderGoods.Columns[4];
         ListItemCollection selectedItems = column.SelectedItems;
         DropdownColumn     column2       = (DropdownColumn)grdOrderGoods.Columns[5];
         ListItemCollection items2        = column2.SelectedItems;
         int num = 0;
         for (int i = 0; i < selectedItems.Count; i++)
         {
             string   purchaseOrderId = (string)grdOrderGoods.DataKeys[grdOrderGoods.Rows[i].RowIndex].Value;
             TextBox  box             = (TextBox)grdOrderGoods.Rows[i].FindControl("txtShippOrderNumber");
             ListItem item            = selectedItems[i];
             ListItem item2           = items2[i];
             int      result          = 0;
             int.TryParse(item.Value, out result);
             if ((!string.IsNullOrEmpty(box.Text.Trim()) && (box.Text.Length <= 20)) && (result > 0))
             {
                 PurchaseOrderInfo purchaseOrder = SalesHelper.GetPurchaseOrder(purchaseOrderId);
                 if (((purchaseOrder != null) && (purchaseOrder.PurchaseStatus == OrderStatus.BuyerAlreadyPaid)) && !string.IsNullOrEmpty(item2.Value))
                 {
                     ShippingModeInfo shippingMode = SalesHelper.GetShippingMode(int.Parse(item.Value), true);
                     purchaseOrder.RealShippingModeId = shippingMode.ModeId;
                     purchaseOrder.RealModeName       = shippingMode.Name;
                     purchaseOrder.ExpressCompanyAbb  = item2.Value;
                     purchaseOrder.ExpressCompanyName = item2.Text;
                     purchaseOrder.ShipOrderNumber    = box.Text;
                     if (SalesHelper.SendPurchaseOrderGoods(purchaseOrder))
                     {
                         num++;
                     }
                 }
             }
         }
         if (num == 0)
         {
             ShowMsg("批量发货失败!", false);
         }
         else if (num > 0)
         {
             BindData();
             ShowMsg(string.Format("批量发货成功!发货数量{0}个", num), true);
         }
     }
 }
Example #30
0
        private void btnMondifyShip_Click(object sender, System.EventArgs e)
        {
            ShippingModeInfo shippingMode = SalesHelper.GetShippingMode(this.ddlshippingMode.SelectedValue.Value, false);

            this.order.ShippingModeId = shippingMode.ModeId;
            this.order.ModeName       = shippingMode.Name;
            if (OrderHelper.UpdateOrderShippingMode(this.order))
            {
                this.chargesList.LoadControls();
                this.shippingAddress.LoadControl();
                this.ShowMsg("修改配送方式成功", true);
                return;
            }
            this.ShowMsg("修改配送方式失败", false);
        }