Example #1
0
 /// <summary>
 /// 由一行数据得到一个实体
 /// </summary>
 private Hi.Model.DIS_ShopCart GetModel(DataRow r)
 {
     Hi.Model.DIS_ShopCart model = new Hi.Model.DIS_ShopCart();
     model.ID           = SqlHelper.GetInt(r["ID"]);
     model.CompID       = SqlHelper.GetInt(r["CompID"]);
     model.DisID        = SqlHelper.GetInt(r["DisID"]);
     model.GoodsID      = SqlHelper.GetInt(r["GoodsID"]);
     model.GoodsinfoID  = SqlHelper.GetInt(r["GoodsinfoID"]);
     model.GoodsInfos   = SqlHelper.GetString(r["GoodsInfos"]);
     model.GoodsNum     = SqlHelper.GetDecimal(r["GoodsNum"]);
     model.Price        = SqlHelper.GetDecimal(r["Price"]);
     model.Remark       = SqlHelper.GetString(r["Remark"]);
     model.AuditAmount  = SqlHelper.GetDecimal(r["AuditAmount"]);
     model.sumAmount    = SqlHelper.GetDecimal(r["sumAmount"]);
     model.ProID        = SqlHelper.GetInt(r["ProID"]);
     model.ProType      = SqlHelper.GetInt(r["ProType"]);
     model.DisCount     = SqlHelper.GetDecimal(r["DisCount"]);
     model.ProNum       = SqlHelper.GetDecimal(r["ProNum"]);
     model.CreateUserID = SqlHelper.GetInt(r["CreateUserID"]);
     model.CreateDate   = SqlHelper.GetDateTime(r["CreateDate"]);
     model.ts           = SqlHelper.GetDateTime(r["ts"]);
     model.dr           = SqlHelper.GetInt(r["dr"]);
     model.modifyuser   = SqlHelper.GetInt(r["modifyuser"]);
     model.vdef1        = SqlHelper.GetString(r["vdef1"]);
     model.vdef2        = SqlHelper.GetString(r["vdef2"]);
     model.vdef3        = SqlHelper.GetString(r["vdef3"]);
     return(model);
 }
Example #2
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(Hi.Model.DIS_ShopCart model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update [DIS_ShopCart] set ");
            strSql.Append("[CompID]=@CompID,");
            strSql.Append("[DisID]=@DisID,");
            strSql.Append("[GoodsID]=@GoodsID,");
            strSql.Append("[GoodsinfoID]=@GoodsinfoID,");
            strSql.Append("[GoodsInfos]=@GoodsInfos,");
            strSql.Append("[GoodsNum]=@GoodsNum,");
            strSql.Append("[Price]=@Price,");
            strSql.Append("[Remark]=@Remark,");
            strSql.Append("[AuditAmount]=@AuditAmount,");
            strSql.Append("[sumAmount]=@sumAmount,");
            strSql.Append("[ProID]=@ProID,");
            strSql.Append("[ProType]=@ProType,");
            strSql.Append("[DisCount]=@DisCount,");
            strSql.Append("[ProNum]=@ProNum,");
            strSql.Append("[CreateUserID]=@CreateUserID,");
            strSql.Append("[CreateDate]=@CreateDate,");
            strSql.Append("[ts]=@ts,");
            strSql.Append("[dr]=@dr,");
            strSql.Append("[modifyuser]=@modifyuser,");
            strSql.Append("[vdef1]=@vdef1,");
            strSql.Append("[vdef2]=@vdef2,");
            strSql.Append("[vdef3]=@vdef3");
            strSql.Append(" where [ID]=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@ID",           SqlDbType.Int),
                new SqlParameter("@CompID",       SqlDbType.Int),
                new SqlParameter("@DisID",        SqlDbType.Int),
                new SqlParameter("@GoodsID",      SqlDbType.Int),
                new SqlParameter("@GoodsinfoID",  SqlDbType.Int),
                new SqlParameter("@GoodsInfos",   SqlDbType.VarChar,   200),
                new SqlParameter("@GoodsNum",     SqlDbType.Decimal),
                new SqlParameter("@Price",        SqlDbType.Decimal),
                new SqlParameter("@Remark",       SqlDbType.VarChar,   500),
                new SqlParameter("@AuditAmount",  SqlDbType.Decimal),
                new SqlParameter("@sumAmount",    SqlDbType.Decimal),
                new SqlParameter("@ProID",        SqlDbType.Int),
                new SqlParameter("@ProType",      SqlDbType.Int),
                new SqlParameter("@DisCount",     SqlDbType.Decimal),
                new SqlParameter("@ProNum",       SqlDbType.Decimal),
                new SqlParameter("@CreateUserID", SqlDbType.Int),
                new SqlParameter("@CreateDate",   SqlDbType.DateTime),
                new SqlParameter("@ts",           SqlDbType.DateTime),
                new SqlParameter("@dr",           SqlDbType.SmallInt),
                new SqlParameter("@modifyuser",   SqlDbType.Int),
                new SqlParameter("@vdef1",        SqlDbType.VarChar,   200),
                new SqlParameter("@vdef2",        SqlDbType.VarChar,   200),
                new SqlParameter("@vdef3",        SqlDbType.VarChar, 200)
            };
            parameters[0].Value = model.ID;
            parameters[1].Value = model.CompID;
            parameters[2].Value = model.DisID;
            parameters[3].Value = model.GoodsID;
            parameters[4].Value = model.GoodsinfoID;

            if (model.GoodsInfos != null)
            {
                parameters[5].Value = model.GoodsInfos;
            }
            else
            {
                parameters[5].Value = DBNull.Value;
            }

            parameters[6].Value = model.GoodsNum;
            parameters[7].Value = model.Price;

            if (model.Remark != null)
            {
                parameters[8].Value = model.Remark;
            }
            else
            {
                parameters[8].Value = DBNull.Value;
            }

            parameters[9].Value  = model.AuditAmount;
            parameters[10].Value = model.sumAmount;
            parameters[11].Value = model.ProID;
            parameters[12].Value = model.ProType;
            parameters[13].Value = model.DisCount;
            parameters[14].Value = model.ProNum;
            parameters[15].Value = model.CreateUserID;

            if (model.CreateDate != DateTime.MinValue)
            {
                parameters[16].Value = model.CreateDate;
            }
            else
            {
                parameters[16].Value = DBNull.Value;
            }


            if (model.ts != DateTime.MinValue)
            {
                parameters[17].Value = model.ts;
            }
            else
            {
                parameters[17].Value = DBNull.Value;
            }

            parameters[18].Value = model.dr;
            parameters[19].Value = model.modifyuser;

            if (model.vdef1 != null)
            {
                parameters[20].Value = model.vdef1;
            }
            else
            {
                parameters[20].Value = DBNull.Value;
            }


            if (model.vdef2 != null)
            {
                parameters[21].Value = model.vdef2;
            }
            else
            {
                parameters[21].Value = DBNull.Value;
            }


            if (model.vdef3 != null)
            {
                parameters[22].Value = model.vdef3;
            }
            else
            {
                parameters[22].Value = DBNull.Value;
            }


            return(SqlHelper.ExecuteSql(SqlHelper.LocalSqlServer, strSql.ToString(), parameters) > 0);
        }
Example #3
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(Hi.Model.DIS_ShopCart model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into [DIS_ShopCart](");
            strSql.Append("[CompID],[DisID],[GoodsID],[GoodsinfoID],[GoodsInfos],[GoodsNum],[Price],[Remark],[AuditAmount],[sumAmount],[ProID],[ProType],[DisCount],[ProNum],[CreateUserID],[CreateDate],[ts],[dr],[modifyuser],[vdef1],[vdef2],[vdef3])");
            strSql.Append(" values (");
            strSql.Append("@CompID,@DisID,@GoodsID,@GoodsinfoID,@GoodsInfos,@GoodsNum,@Price,@Remark,@AuditAmount,@sumAmount,@ProID,@ProType,@DisCount,@ProNum,@CreateUserID,@CreateDate,@ts,@dr,@modifyuser,@vdef1,@vdef2,@vdef3)");
            strSql.Append(";select @@Identity");
            SqlParameter[] parameters =
            {
                new SqlParameter("@CompID",       SqlDbType.Int),
                new SqlParameter("@DisID",        SqlDbType.Int),
                new SqlParameter("@GoodsID",      SqlDbType.Int),
                new SqlParameter("@GoodsinfoID",  SqlDbType.Int),
                new SqlParameter("@GoodsInfos",   SqlDbType.VarChar,   200),
                new SqlParameter("@GoodsNum",     SqlDbType.Decimal),
                new SqlParameter("@Price",        SqlDbType.Decimal),
                new SqlParameter("@Remark",       SqlDbType.VarChar,   500),
                new SqlParameter("@AuditAmount",  SqlDbType.Decimal),
                new SqlParameter("@sumAmount",    SqlDbType.Decimal),
                new SqlParameter("@ProID",        SqlDbType.Int),
                new SqlParameter("@ProType",      SqlDbType.Int),
                new SqlParameter("@DisCount",     SqlDbType.Decimal),
                new SqlParameter("@ProNum",       SqlDbType.Decimal),
                new SqlParameter("@CreateUserID", SqlDbType.Int),
                new SqlParameter("@CreateDate",   SqlDbType.DateTime),
                new SqlParameter("@ts",           SqlDbType.DateTime),
                new SqlParameter("@dr",           SqlDbType.SmallInt),
                new SqlParameter("@modifyuser",   SqlDbType.Int),
                new SqlParameter("@vdef1",        SqlDbType.VarChar,   200),
                new SqlParameter("@vdef2",        SqlDbType.VarChar,   200),
                new SqlParameter("@vdef3",        SqlDbType.VarChar, 200)
            };
            parameters[0].Value = model.CompID;
            parameters[1].Value = model.DisID;
            parameters[2].Value = model.GoodsID;
            parameters[3].Value = model.GoodsinfoID;

            if (model.GoodsInfos != null)
            {
                parameters[4].Value = model.GoodsInfos;
            }
            else
            {
                parameters[4].Value = DBNull.Value;
            }

            parameters[5].Value = model.GoodsNum;
            parameters[6].Value = model.Price;

            if (model.Remark != null)
            {
                parameters[7].Value = model.Remark;
            }
            else
            {
                parameters[7].Value = DBNull.Value;
            }

            parameters[8].Value  = model.AuditAmount;
            parameters[9].Value  = model.sumAmount;
            parameters[10].Value = model.ProID;
            parameters[11].Value = model.ProType;
            parameters[12].Value = model.DisCount;
            parameters[13].Value = model.ProNum;
            parameters[14].Value = model.CreateUserID;

            if (model.CreateDate != DateTime.MinValue)
            {
                parameters[15].Value = model.CreateDate;
            }
            else
            {
                parameters[15].Value = DBNull.Value;
            }


            if (model.ts != DateTime.MinValue)
            {
                parameters[16].Value = model.ts;
            }
            else
            {
                parameters[16].Value = DBNull.Value;
            }

            parameters[17].Value = model.dr;
            parameters[18].Value = model.modifyuser;

            if (model.vdef1 != null)
            {
                parameters[19].Value = model.vdef1;
            }
            else
            {
                parameters[19].Value = DBNull.Value;
            }


            if (model.vdef2 != null)
            {
                parameters[20].Value = model.vdef2;
            }
            else
            {
                parameters[20].Value = DBNull.Value;
            }


            if (model.vdef3 != null)
            {
                parameters[21].Value = model.vdef3;
            }
            else
            {
                parameters[21].Value = DBNull.Value;
            }

            return(SqlHelper.GetInt(SqlHelper.GetSingle(SqlHelper.LocalSqlServer, strSql.ToString(), parameters)));
        }
Example #4
0
        /// <summary>
        /// 更新经销商购物车
        /// </summary>
        /// <param name="ID">登录用户ID</param>
        /// <param name="CompID">登录用户企业ID</param>
        /// <param name="DisID">登录用户经销商ID</param>
        /// <param name="goodsinfoid">商品ID</param>
        /// <param name="ProID">促销ID</param>
        /// <param name="Num">商品数量</param>
        /// <param name="Price">商品基本价格</param>
        /// <param name="TPrice">商品最终销售价格</param>
        /// /// <param name="CartType">是否添加商品 1、添加到购物车,2、减商品数量 3、加商品数量  4、删除购物车商品</param>
        /// <returns>0、更新失败  1、更新成功</returns>
        public int Cart(int ID, int CompID, int DisID, string goodsinfoid, string ProID, string Num, string Price, string TPrice, string CartType)
        {
            bool falg = false;

            //经销商购物车实体
            Hi.Model.DIS_ShopCart cartModel = new Hi.Model.DIS_ShopCart();
            try
            {
                //判断查询商品详细信息
                System.Data.DataTable goodsinfoDt = new Hi.BLL.DIS_ShopCart().GetList("ID,GoodsID,ValueInfo,SalePrice,TinkerPrice", "BD_GoodsInfo", " ID=" + goodsinfoid + " and isEnabled=1 and IsOffline=1 and CompID=" + CompID, "");
                //判断商品可用
                if (goodsinfoDt != null && goodsinfoDt.Rows.Count > 0)
                {
                    //修改商品
                    if (CartType == "2" || CartType == "3")
                    {
                        //判断该商品在购物车是否想存在
                        string arestr = " GoodsInfoID=" + goodsinfoid + " and DisID=" + DisID + " and CompID=" + CompID;
                        List <Hi.Model.DIS_ShopCart> lmodel = dal.GetModel("top 1 *", arestr);
                        if (lmodel != null && lmodel.Count > 0)
                        {
                            falg = true;
                            foreach (var item in lmodel)
                            {
                                item.Price       = Convert.ToDecimal(Price);
                                item.AuditAmount = Convert.ToDecimal(TPrice);
                                item.sumAmount   = Convert.ToDecimal(TPrice) * Convert.ToDecimal(Num);
                                cartModel        = item;
                            }
                        }
                    }
                    else if (CartType == "1")
                    {
                        //新增商品
                        string arestr = " GoodsInfoID=" + goodsinfoid + " and DisID=" + DisID + " and CompID=" + CompID;
                        List <Hi.Model.DIS_ShopCart> lmodel = dal.GetModel("top 1 *", arestr);

                        if (lmodel != null && lmodel.Count > 0)
                        {
                            falg = true;
                            foreach (var item in lmodel)
                            {
                                cartModel = item;
                                Num       = (cartModel.GoodsNum + Convert.ToDecimal(Num)).ToString();
                            }
                        }
                        else
                        {
                            cartModel.CreateUserID = ID;
                            cartModel.CreateDate   = DateTime.Now;

                            cartModel.CompID      = CompID;
                            cartModel.DisID       = DisID;
                            cartModel.GoodsinfoID = Convert.ToInt32(goodsinfoid);
                            cartModel.GoodsID     = Convert.ToInt32(goodsinfoDt.Rows[0]["GoodsID"]);
                            cartModel.GoodsInfos  = goodsinfoDt.Rows[0]["ValueInfo"].ToString();
                        }
                    }

                    cartModel.ts          = DateTime.Now;
                    cartModel.modifyuser  = ID;
                    cartModel.GoodsNum    = Convert.ToDecimal(Num);
                    cartModel.AuditAmount = Convert.ToDecimal(TPrice);
                    cartModel.Price       = Convert.ToDecimal(Price);
                    //单个商品小计
                    cartModel.sumAmount = Convert.ToDecimal(Num) * Convert.ToDecimal(TPrice);

                    if (ProID != "")
                    {
                        //判断促销是否可用
                        DataTable prodt = new Hi.BLL.DIS_ShopCart().GetList("Type,ProType,DisCount", "BD_Promotion", " ID=" + ProID + " and isEnabled=1 and dr=0 and CompID=" + CompID, "");
                        if (prodt != null && prodt.Rows.Count > 0)
                        {
                            cartModel.ProID    = Convert.ToInt32(ProID.ToString());
                            cartModel.ProType  = Convert.ToInt32(prodt.Rows[0]["ProType"].ToString());
                            cartModel.DisCount = Convert.ToDecimal(prodt.Rows[0]["DisCount"].ToString());

                            //促销为商品促销中的满送,查询促销明细表
                            if (Convert.ToInt32(prodt.Rows[0]["Type"]) == 1 && Convert.ToInt32(prodt.Rows[0]["ProType"]) == 3)
                            {
                                //查询促销明细表
                                System.Data.DataTable prodDt = new Hi.BLL.DIS_ShopCart().GetList("GoodsPrice,SendGoodsInfoID", "BD_PromotionDetail", " ProID=" + ProID + "and GoodInfoID=" + goodsinfoid + " and dr=0 and CompID=" + CompID, "");
                                if (prodDt != null && prodDt.Rows.Count > 0)
                                {
                                    int sendNum = Convert.ToInt32(Convert.ToDecimal(Num)) / Convert.ToInt32(prodt.Rows[0]["DisCount"]);
                                    cartModel.ProNum = sendNum * Convert.ToInt32(prodDt.Rows[0]["GoodsPrice"]);
                                }
                            }
                        }
                    }
                    else
                    {
                        string    sql = string.Format(@"select top 1 pro.ID,pro.CompID,pro.ProType,pro.Type,pro.DisCount,pro.ProStartTime,pro.ProEndTime,prod.GoodsID,prod.GoodInfoID,prod.GoodsPrice from BD_Promotion as pro left join BD_PromotionDetail as prod on pro.ID=prod.ProID where  prod.GoodsID={0} and pro.CompID={1} and prod.GoodInfoID={2} and (pro.ProStartTime<=GETDATE() and DATEADD(D,1,pro.ProEndTime)>GETDATE()) and isnull(pro.dr,0)=0 and ISNULL(pro.IsEnabled,0)=1 order by pro.CreateDate desc", goodsinfoDt.Rows[0]["GoodsID"].ToString(), CompID, goodsinfoid);
                        DataTable dt  = DBUtility.SqlHelper.Query(DBUtility.SqlHelper.LocalSqlServer, sql).Tables[0];
                        DateTime  now = DateTime.Now;

                        if (dt != null && dt.Rows.Count > 0)
                        {
                            foreach (DataRow item in dt.Rows)
                            {
                                if (Convert.ToDateTime(item["ProStartTime"]) <= now && Convert.ToDateTime(item["ProEndTime"]).AddDays(1) > now)
                                {
                                    cartModel.ProID    = Convert.ToInt32(item["ID"].ToString());
                                    cartModel.ProType  = Convert.ToInt32(item["ProType"].ToString());
                                    cartModel.DisCount = Convert.ToDecimal(item["DisCount"].ToString());
                                    //促销为商品促销中的满送,查询促销明细表
                                    if (Convert.ToInt32(item["Type"].ToString()) == 1 && Convert.ToInt32(item["ProType"].ToString()) == 3)
                                    {
                                        int sendNum = Convert.ToInt32(Convert.ToDecimal(Num)) / Convert.ToInt32(item["DisCount"]);
                                        cartModel.ProNum = sendNum * Convert.ToInt32(item["GoodsPrice"]);
                                    }
                                }
                            }
                        }
                    }
                    if (falg)
                    {
                        return(new Hi.BLL.DIS_ShopCart().Update(cartModel) == true ? 1 : 0);
                    }
                    return(new Hi.BLL.DIS_ShopCart().Add(cartModel));
                }
                return(0);
            }
            catch (Exception)
            {
                return(0);
            }
        }