Ejemplo n.º 1
0
    /// <summary>
    /// 添加信息
    /// </summary>
    /// <param name="model"></param>
    /// <param name="count"></param>
    public static void AddProductInfo(int type, TB_Order_OrderDetails model, int count)
    {
        XmlDocument doc = new XmlDocument();

        doc.Load(path);
        XmlNode    xmlnode = doc.SelectSingleNode("TB_Products");
        XmlElement xmlele  = doc.CreateElement("ProInfo");

        XmlElement ele0 = doc.CreateElement("type");

        ele0.InnerText = type.ToStr();
        xmlele.AppendChild(ele0);

        XmlElement ele1 = doc.CreateElement("id");

        ele1.InnerText = model.ProductID.ToStr();
        xmlele.AppendChild(ele1);

        XmlElement ele2 = doc.CreateElement("proNumber");

        ele2.InnerText = model.ProNumber;
        xmlele.AppendChild(ele2);

        XmlElement ele7 = doc.CreateElement("name");

        ele7.InnerText = model.ProName;
        xmlele.AppendChild(ele7);

        XmlElement ele6 = doc.CreateElement("img");

        ele6.InnerText = model.Picture;
        xmlele.AppendChild(ele6);

        XmlElement ele8 = doc.CreateElement("marketPrice");

        ele8.InnerText = model.Price.ToStr();
        xmlele.AppendChild(ele8);

        XmlElement ele3 = doc.CreateElement("price");

        ele3.InnerText = model.Price.ToStr();
        xmlele.AppendChild(ele3);

        XmlElement ele4 = doc.CreateElement("count");

        ele4.InnerText = count.ToStr();
        xmlele.AppendChild(ele4);

        XmlElement ele5 = doc.CreateElement("amount");

        ele5.InnerText = (model.Price * count).ToStr();
        xmlele.AppendChild(ele5);

        xmlnode.AppendChild(xmlele);
        doc.Save(path);
    }
Ejemplo n.º 2
0
    /// <summary>
    /// 添加购物车
    /// </summary>
    /// <param name="type">商品类型,0为普通商品,1为团购商品</param>
    /// <param name="proId">商品编号</param>
    /// <param name="count">商品数量</param>
    /// <returns></returns>
    public static bool AddCart(int type, int proId, int count)
    {
        if (!File.Exists(path))
        {
            CreateXMLFile(path);
        }

        decimal marketPrice = 0;

        //获取购物车里面的数据
        TB_Order_OrderDetails model = new TB_Order_OrderDetails();

        switch (type)
        {
        case 0:
            TB_Product_Products entity = ProductService.ProductsService.Get(proId);
            model.ProductID = entity.ID;
            model.ProNumber = entity.ProNumber;
            model.ProName   = entity.ProName;
            model.Price     = entity.SalesPrice;
            model.Picture   = entity.ImgUrl;
            marketPrice     = entity.MarketPrice;
            break;

        case 1:
            TB_Product_Group entity2 = ProductService.GroupService.Get(proId);
            model.ProductID = entity2.ID;
            model.ProName   = entity2.GroupName;
            model.Price     = entity2.Price;
            model.Picture   = entity2.ImgUrl;
            break;
        }

        DataSet ds = new DataSet();

        ds.ReadXml(path);

        if (ds.Tables.Count > 0)
        {
            DataTable dt = ds.Tables[0];
            //当前商品是否存在
            bool isExist = false;
            foreach (DataRow dr in dt.Rows)
            {
                if (dr["id"].ToInt() == proId && dr["type"].ToInt() == type)
                {
                    isExist      = true;
                    dr["count"]  = dr["count"].ToInt() + count;
                    dr["amount"] = model.Price * dr["count"].ToInt();
                }
            }
            //当不存在
            if (isExist == false)
            {
                DataRow dr = dt.NewRow();
                dr["type"]        = type.ToStr();
                dr["id"]          = model.ProductID;
                dr["proNumber"]   = model.ProNumber;
                dr["name"]        = model.ProName;
                dr["img"]         = model.Picture;
                dr["marketPrice"] = marketPrice;
                dr["count"]       = count;
                dr["price"]       = model.Price;
                dr["amount"]      = model.Price * count;
                dt.Rows.Add(dr);
            }
            //保存到购物车
            ds.WriteXml(path);
        }
        else
        {
            AddProductInfo(type, model, count);
        }
        return(true);
    }
Ejemplo n.º 3
0
    //提交订单
    protected void BtnSubmitOrder_Click(object sender, EventArgs e)
    {
        Random random = new Random();

gotoBack:
        string OrderNumber = DateTime.Now.ToString("yyyyMMddHHmmss") + random.Next(1000, 9999);
        List <Expression> express = new List <Expression>();

        express.Add(new Expression("OrderNumber", "=", OrderNumber));
        if (OrderService.OrdersService.Get(express).ID > 0)
        {
            goto gotoBack;
        }

        TB_Order_Orders order = new TB_Order_Orders();

        order.OrderNumber  = OrderNumber;
        order.OrderType    = 0;
        order.OrderDate    = DateTime.Now;
        order.OrderStateID = 0;

        int     count      = 0;
        decimal priceCount = 0;

        foreach (DataRow dr in Cart.GetCart().Tables[0].Rows)
        {
            count      += dr["count"].ToInt();
            priceCount += dr["count"].ToInt() * dr["price"].ToDecimal();
        }
        order.ProCount = count;
        order.MemberID = MemberID;
        order.MoneySum = priceCount;


        //发票信息
        order.IsInvoice     = RadioBtnIsInvoice.SelectedValue.ToInt();
        order.InvoiceType   = RadioBtnInvoiceType.SelectedValue;
        order.InvoiceValue  = RadioBtnInvoiceValue.SelectedValue;
        order.InvoiceLookUp = RadioButtonListInvoiceLookUp.SelectedValue;
        order.CompanyName   = TbCompanyName.Text;
        order.Remark        = TbRemark.Text;

        //收货人信息
        TB_Order_Distribution distribution = new TB_Order_Distribution();

        distribution.OrderNumber      = OrderNumber;
        distribution.Address          = Address.Text + TbAddress.Text;
        distribution.BuyerName        = TbName.Text;
        distribution.CompanyName      = TbCompanyName.Text;
        distribution.ConsignmentID    = DDLConsigument.SelectedValue.ToInt();
        distribution.PaymentID        = RadioBtnPaymentList.SelectedValue.ToInt();
        distribution.Phone            = TbPhone.Text;
        distribution.PostalCode       = TbPostedCode.Text;
        distribution.Mobile           = TbMobile.Text;
        distribution.Email            = TbEmail.Text;
        distribution.RepceiptDateType = DDLRepceiptDateType.SelectedValue;
        distribution.MentionDate      = TbMentionDate.Text;


        TB_Member_BuyerInfo buyerInfo = new TB_Member_BuyerInfo();

        buyerInfo.MemberID   = MemberID;
        buyerInfo.Zone       = Address.Value + "|" + Address.Text;
        buyerInfo.Address    = TbAddress.Text;
        buyerInfo.BuyerName  = TbName.Text;
        buyerInfo.Phone      = TbPhone.Text;
        buyerInfo.PostalCode = TbPostedCode.Text;
        buyerInfo.Mobile     = TbMobile.Text;
        buyerInfo.Email      = TbEmail.Text;



        if (OrderService.OrdersService.Insert(order) == 1)
        {
            OrderService.DistributionService.Insert(distribution);

            DataSet ds = Cart.GetCart();
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                TB_Order_OrderDetails details = new TB_Order_OrderDetails();
                details.OrderNumber = OrderNumber;
                details.Type        = dr["type"].ToInt();
                details.ProductID   = dr["id"].ToInt();
                details.ProName     = dr["name"].ToStr();
                details.ProNumber   = dr["proNumber"].ToStr();
                details.Count       = dr["count"].ToInt();
                details.Price       = dr["price"].ToDecimal();
                details.Picture     = dr["img"].ToStr();
                details.Total       = dr["price"].ToDecimal() * dr["count"].ToInt();

                OrderService.OrderDetailsService.Insert(details);
            }

            MemberService.BuyerInfoService.Insert(buyerInfo);

            Cart.ClearCart();

            Response.Redirect("ShoppingCart3.aspx?OrderNumber=" + OrderNumber);
        }
    }