/// <summary>
        /// 更新数据
        /// </summary>
        /// <returns></returns>
        public int UpdateStorehouseStoragePriceInfo(storehouseproductsprice pp)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update tbStoreStorehouseProductsPriceInfo set ");
            strSql.Append(" pPrice=@mnypPrice,");
            strSql.Append(" ProductsBarcode=@chvProductsBarcode ");
            strSql.Append(" where ProductPriceID=@inyProductPriceID");

            SqlParameter[] parm =
            {
                new SqlParameter("@inyProductPriceID",  SqlDbType.Int),
                new SqlParameter("@mnypPrice",          SqlDbType.Money),
                new SqlParameter("@chvProductsBarcode", SqlDbType.VarChar, 50),
            };
            parm[0].Value = pp.ProductPriceID;
            parm[1].Value = pp.PPrice;
            parm[2].Value = pp.ProductsBarcode;

            int state = DbHelper.ExecuteNonQuery(CommandType.Text, strSql.ToString(), parm);

            if (state > 0)
            {
                return(state);
            }
            else
            {
                return(-1);
            }
        }
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public storehouseproductsprice GetStorehouseProductsPriceInfoModel(int ProductPriceID)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select top 1 StoresID,StoresName,stName,StCode,ProductsID,ProductsName,ProductsBarcode,pPrice,pAppendTime from tbStoreStorehouseProductsPriceInfo  ");
            strSql.Append(" where ProductPriceID=@ProductPriceID ");
            SqlParameter[] parameters =
            {
                new SqlParameter("@ProductPriceID", SqlDbType.Int, 4)
            };
            parameters[0].Value = ProductPriceID;

            storehouseproductsprice model = new storehouseproductsprice();
            DataSet ds = DbHelper.ExecuteDataset(CommandType.Text, strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                if (ds.Tables[0].Rows[0]["StoresID"].ToString() != "")
                {
                    model.StoresID = int.Parse(ds.Tables[0].Rows[0]["StoresID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["StoresName"].ToString() != "")
                {
                    model.StoresName = ds.Tables[0].Rows[0]["StoresName"].ToString();
                }
                if (ds.Tables[0].Rows[0]["stName"].ToString() != "")
                {
                    model.StName = ds.Tables[0].Rows[0]["stName"].ToString();
                }
                if (ds.Tables[0].Rows[0]["StCode"].ToString() != "")
                {
                    model.StCode = ds.Tables[0].Rows[0]["StCode"].ToString();
                }
                if (ds.Tables[0].Rows[0]["ProductsID"].ToString() != "")
                {
                    model.ProductsID = int.Parse(ds.Tables[0].Rows[0]["ProductsID"].ToString());
                }
                if (ds.Tables[0].Rows[0]["ProductsName"].ToString() != "")
                {
                    model.ProductsName = ds.Tables[0].Rows[0]["ProductsName"].ToString();
                }
                if (ds.Tables[0].Rows[0]["ProductsBarcode"].ToString() != "")
                {
                    model.ProductsBarcode = ds.Tables[0].Rows[0]["ProductsBarcode"].ToString();
                }
                if (ds.Tables[0].Rows[0]["pPrice"].ToString() != "")
                {
                    model.PPrice = decimal.Parse(ds.Tables[0].Rows[0]["pPrice"].ToString());
                }
                if (ds.Tables[0].Rows[0]["pAppendTime"].ToString() != "")
                {
                    model.PAppendTime = DateTime.Parse(ds.Tables[0].Rows[0]["pAppendTime"].ToString());
                }
                return(model);
            }
            else
            {
                return(null);
            }
        }
        /// <summary>
        /// 添加数据到表tbStoreStorehouseProductsPriceInfo
        /// </summary>
        /// <returns></returns>
        public int AddStorehouseStorageProductsPriceInfo(storehouseproductsprice storehouseStorage)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into tbStoreStorehouseProductsPriceInfo(");
            strSql.Append("StoresID,StoresName,StCode,stName,ProductsID,ProductsName,ProductsBarcode,pPrice,pAppendTime,pUpdateTime)");
            strSql.Append(" values (");
            strSql.Append("@inyStoresID,@chvStoresName,@chvStCode,@chvstName,@inyProductsID,@chvProductsName,@chvProductsBarcode,@delpPrice,@dtmDateTime,GETDATE())");
            strSql.Append(";select @@IDENTITY");
            SqlParameter[] parameters =
            {
                new SqlParameter("@inyStoresID",        SqlDbType.Int),
                new SqlParameter("@chvStoresName",      SqlDbType.VarChar,   50),
                new SqlParameter("@chvStCode",          SqlDbType.VarChar,   50),
                new SqlParameter("@chvstName",          SqlDbType.VarChar,   50),
                new SqlParameter("@inyProductsID",      SqlDbType.Int),
                new SqlParameter("@chvProductsName",    SqlDbType.VarChar,   50),
                new SqlParameter("@chvProductsBarcode", SqlDbType.VarChar,   50),
                new SqlParameter("@delpPrice",          SqlDbType.Money),
                new SqlParameter("@dtmDateTime",        SqlDbType.DateTime),
            };

            parameters[0].Value = storehouseStorage.StoresID;
            parameters[1].Value = storehouseStorage.StoresName;
            parameters[2].Value = storehouseStorage.StCode;
            parameters[3].Value = storehouseStorage.StName;
            parameters[4].Value = storehouseStorage.ProductsID;
            parameters[5].Value = storehouseStorage.ProductsName;
            parameters[6].Value = storehouseStorage.ProductsBarcode;
            parameters[7].Value = storehouseStorage.PPrice;
            parameters[8].Value = storehouseStorage.PAppendTime;

            object obj = DbHelper.ExecuteScalar(CommandType.Text, strSql.ToString(), parameters);

            if (obj == null)
            {
                return(-1);
            }
            else
            {
                return(Convert.ToInt32(obj));
            }
        }
        public int StoresID;   //匹配状态记录:匹配未成功=0
        protected virtual void Page_Load(object sender, EventArgs e)
        {
            if (ispost)
            {
                if (this.userid > 0)
                {
                    if (CheckUserPopedoms("X") || CheckUserPopedoms("3-4-6-1"))
                    {
                        //获取前台的门店名称与仓库名称
                        sName  = HTTPRequest.GetString("SName").Trim();
                        stName = HTTPRequest.GetString("stName").Trim();
                        //根据仓库名称找到仓库编号--预留
                        stNum = "默认值";
                        //获取前台选择的时间
                        DateTime sDateTime = Utils.IsDateString(Utils.ChkSQL(HTTPRequest.GetString("dtime"))) ? DateTime.Parse(Utils.ChkSQL(HTTPRequest.GetString("dtime"))) : DateTime.Now;
                        //根据门店名称取出门店编号
                        sNum = storehouseStorage.GetScodeBySname(sName);

                        StoresID = Utils.StrToInt(HTTPRequest.GetString("StoresID"), 0); //获得门店编号

                        if (sNum.Rows.Count > 0)
                        {
                            //判断选择时间是否大于当前时间
                            if (sDateTime > DateTime.Now)
                            {
                                AddErrLine("日期选择错误,不能大于当前日期,请重新选择!");
                            }
                            else
                            {
                                //获取上传文件路径
                                string    PathStr          = Utils.GetMapPath(config.DataPath.ToString());
                                string    fileExtension    = "";
                                string    fileName         = "";
                                string    thispath         = DateTime.Now.Year + "-" + DateTime.Now.Month;
                                ArrayList filearr          = new ArrayList();
                                int       importdata_count = 0;
                                if (!Directory.Exists(PathStr + thispath))
                                {
                                    Directory.CreateDirectory(PathStr + thispath);
                                }

                                //上传文件
                                HttpFileCollection files = HttpContext.Current.Request.Files;
                                try
                                {
                                    if (files.Count > 0)
                                    {
                                        for (int i = 0; i < files.Count; i++)
                                        {
                                            HttpPostedFile postedFile = files[i];
                                            fileName = System.IO.Path.GetFileName(postedFile.FileName);
                                            if (Utils.ChkSQL(fileName) != "")
                                            {
                                                fileExtension = System.IO.Path.GetExtension(fileName).ToLower();
                                                if (fileExtension == ".xls")
                                                {
                                                    postedFile.SaveAs(PathStr + thispath + "/" + fileName);
                                                    filearr.Add(PathStr + thispath + "/" + fileName);
                                                }
                                                else
                                                {
                                                    AddErrLine("<b>文件格式错误,请将 Xls 文件用 Excel 另存后再导入!</b>:<br>");
                                                }
                                            }
                                        }
                                    }
                                    if (filearr.Count > 0)
                                    {
                                        storehouseproductsprice pi = new storehouseproductsprice();
                                        for (int j = 0; j < filearr.Count; j++)
                                        {
                                            DataSet   ds = Excels.ExcelToDataTable(filearr[j].ToString());
                                            DataTable dt = new DataTable();
                                            try
                                            {
                                                dt = ds.Tables[0];
                                                foreach (DataRow dr in dt.Rows)
                                                {
                                                    if (dr[0].ToString().Trim() != "" && Utils.IsNumeric(dr[2].ToString().Trim()))
                                                    {
                                                        string  pName    = dr[0].ToString().Trim();                //产品名称
                                                        decimal pPrice   = decimal.Parse(dr[2].ToString().Trim()); //产品单价
                                                        string  pBarcode = Utils.ChkSQL(dr[1].ToString().Trim());  //产品条码

                                                        if (pBarcode == "")
                                                        {
                                                            pBarcode = "null";
                                                            int proCode = Utils.StrToInt(storehouseStorage.SelectPcodeByName(pName), 0);                  //通过产品名称获得产品编号
                                                            int pbrCode = Utils.StrToInt(storehouseStorage.SelectpBarcodeByName(pBarcode).ToString(), 0); //通过产品条码获得产品编号

                                                            if (pbrCode > 0 || proCode > 0)
                                                            {
                                                                bool state = storehouseStorage.GetStorehouseProductPriceInfoList(StoresID, stNum, proCode, pName, pBarcode, pPrice, sDateTime);
                                                                if (state)
                                                                {
                                                                    AddErrLine("价格重复:产品条码[" + pBarcode + "];产品名称[" + pName + "]");
                                                                }
                                                                else if (pbrCode > 0)
                                                                {
                                                                    pi.StoresID        = StoresID;
                                                                    pi.StoresName      = sName;
                                                                    pi.StCode          = stNum;
                                                                    pi.StName          = "默认值";
                                                                    pi.ProductsID      = pbrCode;
                                                                    pi.ProductsName    = pName;
                                                                    pi.ProductsBarcode = pBarcode;
                                                                    pi.PPrice          = pPrice;
                                                                    pi.PAppendTime     = sDateTime;
                                                                    if (storehouseStorage.AddStorehouseStorageProductsPriceInfo(pi) > 0)
                                                                    {
                                                                        importdata_count++;
                                                                    }
                                                                }
                                                                else if (pbrCode == 0)
                                                                {
                                                                    pi.StoresID        = StoresID;
                                                                    pi.StoresName      = sName;
                                                                    pi.StCode          = stNum;
                                                                    pi.StName          = "默认值";
                                                                    pi.ProductsID      = proCode;
                                                                    pi.ProductsName    = pName;
                                                                    pi.ProductsBarcode = "null";
                                                                    pi.PPrice          = pPrice;
                                                                    pi.PAppendTime     = sDateTime;
                                                                    if (storehouseStorage.AddStorehouseStorageProductsPriceInfo(pi) > 0)
                                                                    {
                                                                        importdata_count++;
                                                                    }
                                                                }
                                                            }
                                                            else
                                                            {
                                                                AddMsgLine("该产品[" + pName + "];产品条码[" + pBarcode + "]库中不存在!");
                                                            }
                                                        }
                                                        else
                                                        {
                                                            int proCode = Utils.StrToInt(storehouseStorage.SelectPcodeByName(pName), 0);                  //通过产品名称获得产品编号
                                                            int pbrCode = Utils.StrToInt(storehouseStorage.SelectpBarcodeByName(pBarcode).ToString(), 0); //通过产品条码获得产品编号

                                                            if (pbrCode > 0 || proCode > 0)
                                                            {
                                                                bool state = storehouseStorage.GetStorehouseProductPriceInfoList(StoresID, stNum, pbrCode, pName, pBarcode, pPrice, sDateTime);
                                                                if (state)
                                                                {
                                                                    AddErrLine("价格重复:产品条码[" + pBarcode + "];产品名称[" + pName + "]");
                                                                }
                                                                else if (pbrCode > 0)
                                                                {
                                                                    pi.StoresID        = StoresID;
                                                                    pi.StoresName      = sName;
                                                                    pi.StCode          = stNum;
                                                                    pi.StName          = "默认值";
                                                                    pi.ProductsID      = pbrCode;
                                                                    pi.ProductsName    = pName;
                                                                    pi.ProductsBarcode = pBarcode;
                                                                    pi.PPrice          = pPrice;
                                                                    pi.PAppendTime     = sDateTime;
                                                                    if (storehouseStorage.AddStorehouseStorageProductsPriceInfo(pi) > 0)
                                                                    {
                                                                        importdata_count++;
                                                                    }
                                                                }
                                                                else if (pbrCode == 0)
                                                                {
                                                                    pi.StoresID        = StoresID;
                                                                    pi.StoresName      = sName;
                                                                    pi.StCode          = stNum;
                                                                    pi.StName          = "默认值";
                                                                    pi.ProductsID      = proCode;
                                                                    pi.ProductsName    = pName;
                                                                    pi.ProductsBarcode = "null";
                                                                    pi.PPrice          = pPrice;
                                                                    pi.PAppendTime     = sDateTime;
                                                                    if (storehouseStorage.AddStorehouseStorageProductsPriceInfo(pi) > 0)
                                                                    {
                                                                        importdata_count++;
                                                                    }
                                                                }
                                                            }
                                                            else
                                                            {
                                                                AddMsgLine("该产品[" + pName + "];产品条码[" + pBarcode + "]库中不存在!");
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                            catch (Exception ex)
                                            {
                                                AddErrLine(ex.Message);
                                            }
                                            finally
                                            {
                                                ds.Clear();
                                                ds.Dispose();
                                            }
                                        }

                                        if (importdata_count > 0)
                                        {
                                            AddMsgLine("数据导入成功!共导入数据[" + importdata_count.ToString() + "]条.");
                                            //AddScript("window.setTimeout('window.parent.HidBox();',1000);");
                                        }
                                        else
                                        {
                                            AddErrLine("系统忙!导入失败!");
                                        }
                                    }
                                }
                                catch (Exception ex)
                                {
                                    AddErrLine("错误信息" + ex.Message);
                                }
                            }
                        }
                        else
                        {
                            AddMsgLine("该门店[" + sName + "]编号不存在!请确认后再次输入或先添加该门店!");
                        }
                    }
                    else
                    {
                        AddErrLine("权限不足!");
                        AddScript("window.parent.HidBox();");
                    }
                }
                else
                {
                    AddErrLine("请先登录!");
                    SetBackLink("login.aspx?referer=" + Utils.UrlEncode(Utils.GetUrlReferrer()));
                    SetMetaRefresh(1, "login.aspx?referer=" + Utils.UrlEncode(Utils.GetUrlReferrer()));
                }
            }
        }
 public static int UpdateStorehouseStoragePriceInfo(storehouseproductsprice pp)
 {
     return(DatabaseProvider.GetInstance().UpdateStorehouseStoragePriceInfo(pp));
 }
 public static int AddStorehouseStorageProductsPriceInfo(storehouseproductsprice storehouseStorage)
 {
     return(DatabaseProvider.GetInstance().AddStorehouseStorageProductsPriceInfo(storehouseStorage));
 }
        protected virtual void Page_Load(object sender, EventArgs e)
        {
            if (this.userid > 0)
            {
                if (CheckUserPopedoms("X") || CheckUserPopedoms("3-4-6-1"))
                {
                    if (Act == "Del")
                    {
                        try
                        {
                            sid = Utils.ChkSQL(HTTPRequest.GetString("sid"));
                            storehouseStorage.DeleteStoragesPriceInfo(sid);
                            AddMsgLine("删除成功!");
                            AddScript("window.setTimeout('window.parent.HidBox();',1000);");
                        }
                        catch (Exception ex)
                        {
                            AddErrLine("创建失败!<br/>" + ex.Message);
                            AddScript("window.setTimeout('window.parent.HidBox();',1000);");
                        }
                    }
                    if (Act == "Edit")
                    {
                        ProductPriceID = Utils.StrToInt(HTTPRequest.GetString("sid"), 0);

                        pi = storehouseStorage.GetStorehouseProductsPriceInfoModel(ProductPriceID);
                    }
                    if (ispost)
                    {
                        sName           = HTTPRequest.GetString("StoresName").Trim();            //获取前台的门店名称
                        StoresID        = Utils.StrToInt(HTTPRequest.GetString("StoresID"), 0);  //获取前台门店编号
                        stName          = HTTPRequest.GetString("stName").Trim();                //获取前台的仓库名称
                        pName           = HTTPRequest.GetString("ProductsName").Trim();          //获取前台的产品名称
                        ProductID       = HTTPRequest.GetInt("ProductID", 0);                    //获取前台的产品编号
                        ProductsBarcode = HTTPRequest.GetString("ProductsBarcode").Trim();       //获取前台产品条码
                        pPrice          = decimal.Parse(HTTPRequest.GetString("pPrice").Trim()); //获取前台产品单价
                        //获取前台选择的时间
                        sDateTime = Utils.IsDateString(Utils.ChkSQL(HTTPRequest.GetString("pAppendTime"))) ? DateTime.Parse(Utils.ChkSQL(HTTPRequest.GetString("pAppendTime"))) : DateTime.Now;

                        //根据门店名称取出门店编号
                        sNum = storehouseStorage.GetScodeBySname(sName);

                        pi.StoresID        = StoresID;
                        pi.StoresName      = sName;
                        pi.StCode          = "默认值";
                        pi.StName          = "默认值";
                        pi.ProductsID      = ProductID;
                        pi.ProductsName    = pName;
                        pi.ProductsBarcode = ProductsBarcode;
                        pi.PPrice          = pPrice;
                        pi.PAppendTime     = sDateTime;

                        if (Act == "Add")
                        {
                            if (sNum.Rows.Count > 0)
                            {
                                if (sDateTime > DateTime.Now)
                                {
                                    AddMsgLine("创建时间不能大于当前时间,请重新选择!");
                                }
                                else
                                {
                                    if (ProductsBarcode == "")
                                    {
                                        if (ProductID > 0)
                                        {
                                            bool state = storehouseStorage.GetStorehousePriceInfoList(StoresID, stNum, ProductID, sDateTime);
                                            if (state)
                                            {
                                                AddErrLine("价格重复:产品名称[" + pName + "]库中已经存在!");
                                            }
                                            else
                                            {
                                                ProductsBarcode    = "null";
                                                pi.ProductsBarcode = ProductsBarcode;
                                                if (storehouseStorage.AddStorehouseStorageProductsPriceInfo(pi) > 0)
                                                {
                                                    AddMsgLine("创建成功!");
                                                    AddScript("window.setTimeout('window.parent.HidBox();',1000);");
                                                }
                                                else
                                                {
                                                    AddErrLine("创建失败!");
                                                    AddScript("window.setTimeout('history.back(1);',1000);");
                                                }
                                            }
                                        }
                                        else
                                        {
                                            AddMsgLine("该产品[" + pName + "]编号不存在!");
                                        }
                                    }
                                    else
                                    {
                                        if (ProductID > 0)
                                        {
                                            bool state = storehouseStorage.GetStorehousePriceInfoList(StoresID, stNum, ProductID, sDateTime);
                                            if (state)
                                            {
                                                AddErrLine("价格重复:产品名称[" + pName + "]库中已经存在!");
                                            }
                                            else
                                            {
                                                if (storehouseStorage.AddStorehouseStorageProductsPriceInfo(pi) > 0)
                                                {
                                                    AddMsgLine("创建成功!");
                                                    AddScript("window.setTimeout('window.parent.HidBox();',1000);");
                                                }
                                                else
                                                {
                                                    AddErrLine("创建失败!");
                                                    AddScript("window.setTimeout('history.back(1);',1000);");
                                                }
                                            }
                                        }
                                        else
                                        {
                                            AddMsgLine("该产品[" + pName + "]编号不存在!");
                                        }
                                    }
                                }
                            }
                            else
                            {
                                AddMsgLine("该门店[" + sName + "]编号不存在!请确认后再次输入或先添加该门店!");
                            }
                        }

                        if (Act == "Edit")
                        {
                            ProductPriceID = Utils.StrToInt(HTTPRequest.GetString("sid"), 0);

                            string pNum = storehouseStorage.getPricePnumByPname(pName);
                            if (pNum != "")
                            {
                                pi.ProductPriceID = ProductPriceID;
                                try
                                {
                                    int state = storehouseStorage.UpdateStorehouseStoragePriceInfo(pi);
                                    if (state > 0)
                                    {
                                        AddMsgLine("修改成功!");
                                        AddScript("window.setTimeout('window.parent.HidBox();',1000);");
                                    }
                                    else
                                    {
                                        AddErrLine("修改失败!<br/>");
                                    }
                                }
                                catch (Exception ex)
                                {
                                    AddErrLine("错误信息" + ex.Message);
                                }
                            }
                            else
                            {
                                ProductPriceID = Utils.StrToInt(HTTPRequest.GetString("sid"), 0);
                                string PNum = storehouseStorage.SelectpBarcodeByName(ProductsBarcode);
                                pi.ProductPriceID = ProductPriceID;
                                try
                                {
                                    int state = storehouseStorage.UpdateStorehouseStoragePriceInfo(pi);
                                    if (state > 0)
                                    {
                                        AddMsgLine("修改成功!");
                                        AddScript("window.setTimeout('window.parent.HidBox();',1000);");
                                    }
                                    else
                                    {
                                        AddErrLine("修改失败!<br/>");
                                    }
                                }
                                catch (Exception ex)
                                {
                                    AddErrLine("错误信息" + ex.Message);
                                }
                            }
                        }
                    }
                }
                else
                {
                    AddErrLine("权限不足!");
                    AddScript("window.setTimeout('window.parent.HidBox();',1000);");
                }
            }
            else
            {
                AddErrLine("请先登录!");
                SetBackLink("login.aspx?referer=" + Utils.UrlEncode(Utils.GetUrlReferrer()));
                SetMetaRefresh(1, "login.aspx?referer=" + Utils.UrlEncode(Utils.GetUrlReferrer()));
            }
        }