⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 softmarketsrv.cs

📁 用vs.net开发的网上软件商城
💻 CS
字号:
using System;
using System.Web;
using System.Collections;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Data;
using System.Data.SqlClient;
using System.Collections.Generic;
using System.Configuration;

/// <summary>
/// SoftMarketSrv 的摘要说明
/// </summary>
[WebService(Namespace = "http://www.SoftMarket.com.cn/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class SoftMarketSrv : System.Web.Services.WebService 
{
    protected SqlConnection conn;
    protected SqlCommand cmd;

    /// <summary>
    /// 构造服务对象
    /// </summary>
    public SoftMarketSrv() 
    {
        conn = new SqlConnection(ConfigurationManager.ConnectionStrings["SoftMarket"].ConnectionString);
        cmd = conn.CreateCommand();
    }

    /// <summary>
    /// 获取商品类别列表
    /// </summary>
    /// <returns>商品类别列表</returns>
    [WebMethod]
    public List<string> GetGategories()
    {
        List<string> l1 = new List<string>();
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "GetCategories";
        conn.Open();
        SqlDataReader reader1 = cmd.ExecuteReader();
        while (reader1.Read())
            l1.Add(reader1[0].ToString());
        return l1;
    }

    /// <summary>
    /// 查询商品记录
    /// </summary>
    /// <param name="productID">商品ID号</param>
    /// <returns>商品对象</returns>
    [WebMethod]
    public Product GetProduct(int productID)
    {
        Product prod1 = null;
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "GetProduct";
        cmd.Parameters.Add(new SqlParameter("@ProductID", productID));
        conn.Open();
        SqlDataReader reader1 = cmd.ExecuteReader();
        if (reader1.Read())
        {
            prod1 = new Product();
            prod1.Name = (string)reader1["Name"];
            if(reader1["Description"] != DBNull.Value)
                prod1.Description = (string)reader1["Description"];
            prod1.Price = (decimal)reader1["Price"];
            if(reader1["Media"] != DBNull.Value)
                prod1.Media = (string)reader1["Media"];
            if(reader1["MediaAmount"] != DBNull.Value)
                prod1.MediaAmount = (int)reader1["MediaAmount"];
        }
        reader1.Close();
        conn.Close();
        return prod1;
    }

    /// <summary>
    /// 搜索商品记录
    /// </summary>
    /// <param name="productName">商品名称,为空时搜索所有商品</param>
    /// <param name="categoryID">商品类别ID,小于等于0时搜索所有类别</param>
    /// <returns>商品记录集</returns>
    [WebMethod]
    public DataSet SearchProduct(string productName, int categoryID)
    {
        cmd.CommandType = CommandType.StoredProcedure;
        if (productName == null || productName == "")
        {
            cmd.CommandText = "SearchProductByCategory";
            cmd.Parameters.Add(new SqlParameter("@CategoryID", categoryID));
        }
        else if (categoryID <= 0)
        {
            cmd.CommandText = "SearchProductByName";
            cmd.Parameters.Add(new SqlParameter("@ProductName", productName));
        }
        else
        {
            cmd.CommandText = "SearchProduct";
            cmd.Parameters.Add(new SqlParameter("@ProductName", productName));
            cmd.Parameters.Add(new SqlParameter("@CategoryID", categoryID));
        }
        DataTable table1 = new DataTable("Product");
        conn.Open();
        SqlDataReader reader1 = cmd.ExecuteReader();
        table1.Load(reader1);
        DataSet ds1 = new DataSet();
        ds1.Tables.Add(table1);
        conn.Close();
        return ds1;
    }

    /// <summary>
    /// 新建订单
    /// </summary>
    /// <param name="userName">用户名</param>
    /// <param name="time">创建时间</param>
    /// <param name="sum">订单金额</param>
    /// <returns>新插入订单的ID号</returns>
    [WebMethod]
    public int NewOrder(string userName, DateTime time, decimal sum)
    {
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "NewOrder";
        cmd.Parameters.Add(new SqlParameter("@UserName", userName));
        cmd.Parameters.Add(new SqlParameter("@Time", time));
        cmd.Parameters.Add(new SqlParameter("@Sum", sum));
        SqlParameter par1 = new SqlParameter("@ID", SqlDbType.Int);
        cmd.Parameters.Add(par1);
        par1.Direction = ParameterDirection.Output;
        conn.Open();
        cmd.ExecuteNonQuery();
        conn.Close();
        return (int)par1.Value;
    }

    /// <summary>
    /// 新建订单明细
    /// </summary>
    /// <param name="orderID">订单ID号</param>
    /// <param name="productID">商品ID号</param>
    /// <param name="number">数量</param>
    /// <param name="sum">金额</param>
    [WebMethod]
    public void NewOrderItem(int orderID, int productID, int number, decimal sum)
    {
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "NewOrderItem";
        cmd.Parameters.Add(new SqlParameter("@OrderID", orderID));
        cmd.Parameters.Add(new SqlParameter("@ProductID", productID));
        cmd.Parameters.Add(new SqlParameter("@Number", number));
        cmd.Parameters.Add(new SqlParameter("@Sum", sum));
        conn.Open();
        cmd.ExecuteNonQuery();
        conn.Close();
    }

    /// <summary>
    /// 订单结算
    /// </summary>
    /// <param name="orderID">订单ID号</param>
    /// <param name="person">收货人</param>
    /// <param name="address">地址</param>
    /// <param name="postcode">邮编</param>
    /// <param name="phone">电话</param>
    /// <param name="time">结算时间</param>
    [WebMethod]
    public void CheckoutOrder(int orderID, string person, string address, string postcode, string phone, DateTime time)
    {
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "CheckoutOrder";
        cmd.Parameters.Add(new SqlParameter("@OrderID", orderID));
        cmd.Parameters.Add(new SqlParameter("@Person", person));
        cmd.Parameters.Add(new SqlParameter("@Address", address));
        cmd.Parameters.Add(new SqlParameter("@Postcode", postcode));
        cmd.Parameters.Add(new SqlParameter("@Phone", phone));
        cmd.Parameters.Add(new SqlParameter("@Time", time));
        conn.Open();
        cmd.ExecuteNonQuery();
        conn.Close();
    }

    /// <summary>
    /// 订单发货
    /// </summary>
    /// <param name="orderID">订单ID号</param>
    /// <param name="salesmanID">处理订单的雇员ID号</param>
    /// <param name="time">发货时间</param>
    [WebMethod]
    public void SendoutOrder(int orderID, int salesID, DateTime time)
    {
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "CheckoutOrder";
        cmd.Parameters.Add(new SqlParameter("@OrderID", orderID));
        cmd.Parameters.Add(new SqlParameter("@SalesID", salesID));
        cmd.Parameters.Add(new SqlParameter("@Time", time));
        conn.Open();
        cmd.ExecuteNonQuery();
        conn.Close();
    }

    /// <summary>
    /// 查询订单
    /// </summary>
    /// <param name="orderID">订单ID号</param>
    /// <returns>订单对象</returns>
    [WebMethod]
    public Order GetOrder(int orderID)
    {
        Order order1 = new Order();
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "GetOrder";
        cmd.Parameters.Add(new SqlParameter("@OrderID", orderID));
        conn.Open();
        SqlDataReader reader1 = cmd.ExecuteReader();
        if (reader1.Read())
        {
            order1.UserName = (string)reader1["UserName"];
            order1.SubmitTime = (DateTime)reader1["SubmitTime"];
            if (reader1["Sum"] != DBNull.Value)
                order1.Sum = (decimal)reader1["Sum"];
            order1.StatusID = (int)reader1["StatusID"];
            if (reader1["ContactPerson"] != DBNull.Value)
                order1.ContactPerson = (string)reader1["ContactPerson"];
            if (reader1["ContactAddress"] != DBNull.Value)
                order1.ContactAddress = (string)reader1["ContactAddress"];
            if (reader1["ContactPostcode"] != DBNull.Value)
                order1.ContactPostcode = (string)reader1["ContactPostcode"];
            if (reader1["ContactPhone"] != DBNull.Value)
                order1.ContactPhone = (string)reader1["ContactPhone"];
            if (reader1["CheckoutTime"] != DBNull.Value)
                order1.CheckoutTime = (DateTime)reader1["CheckoutTime"];
            if (reader1["SendoutTime"] != DBNull.Value)
                order1.SendoutTime = (DateTime)reader1["SendoutTime"];
        }
        reader1.Close();
        conn.Close();
        return order1;
    }

    /// <summary>
    /// 查询订单明细
    /// </summary>
    /// <param name="orderID">订单ID号</param>
    /// <returns>订单明细记录集</returns>
    [WebMethod]
    public DataSet GetOrderItems(int orderID)
    {
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "GetOrderItems";
        cmd.Parameters.Add(new SqlParameter("@OrderID", orderID));
        DataTable table1 = new DataTable("OrderItem");
        conn.Open();
        SqlDataReader reader1 = cmd.ExecuteReader();
        table1.Load(reader1);
        DataSet ds1 = new DataSet();
        ds1.Tables.Add(table1);
        conn.Close();
        return ds1;
    }

    /// <summary>
    /// 查询畅销商品
    /// </summary>
    /// <returns>畅销商品记录集</returns>
    [WebMethod]
    public DataSet GetPopularProducts()
    {
        List<int> l1 = new List<int>();
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.CommandText = "GetPopularProducts";
        DataTable table1 = new DataTable("ProductSale");
        conn.Open();
        SqlDataReader reader1 = cmd.ExecuteReader();
        table1.Load(reader1);
        DataSet ds1 = new DataSet();
        ds1.Tables.Add(table1);
        conn.Close();
        return ds1;
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -