示例#1
0
        /// <summary>
        /// 更新补货单头的种数,数量,总码洋,总实洋
        /// </summary>
        /// <param name="rd">销售单头实体</param>
        /// <returns>受影响行数</returns>
        public int updateRsHead(replenishMentHead rd)
        {
            string cmdText = "update T_ReplenishmentHead set kingdsNum=@kindsNum,number=@number where saleTaskId=@saleTaskId";

            string[] param  = { "@kindsNum", "@number", "@saleTaskId" };
            object[] values = { rd.KindsNum, rd.Number, rd.SaleTaskId };
            int      row    = db.ExecuteNoneQuery(cmdText, param, values);

            return(row);
        }
示例#2
0
        /// <summary>
        /// 添加补货单头
        /// </summary>
        /// <param name="rd">补货单头实体</param>
        /// <returns>受影响行数</returns>
        public int InsertRsHead(replenishMentHead rd)
        {
            string cmdText = "insert into T_ReplenishmentHead(saleTaskId,kingdsNum,number,userId,dateTime) VALUES(@saleTaskId,@kingdsNum,@number,@userId,@dateTimee)";

            string[] param  = { "@saleTaskId", "@kingdsNum", "@number", "@userId", "@dateTimee" };
            object[] values = { rd.SaleTaskId, rd.KindsNum, rd.Number, rd.UserId, rd.Time };
            int      row    = db.ExecuteNoneQuery(cmdText, param, values);

            return(row);
        }
示例#3
0
        /// <summary>
        /// 添加销售单头
        /// </summary>
        /// <param name="saleId">销售任务id</param>
        /// <returns></returns>
        public Result addrsHead(string saleId)
        {
            replenishMentHead rsHead    = new replenishMentHead();
            replenishMentBll  replenBll = new replenishMentBll();

            rsHead.KindsNum   = 0;
            rsHead.Number     = 0;
            rsHead.SaleTaskId = saleId;
            rsHead.UserId     = user.UserId;
            rsHead.Time       = DateTime.Now.ToLocalTime();
            return(replenBll.InsertRsHead(rsHead));
        }
示例#4
0
        /// <summary>
        /// 更新补货单头的种数,数量,总码洋,总实洋
        /// </summary>
        /// <param name="rd">销售单头实体</param>
        /// <returns>结果</returns>
        public Result updateRsHead(replenishMentHead rd)
        {
            int row = dao.updateRsHead(rd);

            if (row > 0)
            {
                return(Result.更新成功);
            }
            else
            {
                return(Result.更新失败);
            }
        }
示例#5
0
        /// <summary>
        /// 添加补货单头
        /// </summary>
        /// <param name="rd">补货单头实体</param>
        /// <returns>添加结果</returns>
        public Result InsertRsHead(replenishMentHead rd)
        {
            int row = dao.InsertRsHead(rd);

            if (row > 0)
            {
                return(Result.添加成功);
            }
            else
            {
                return(Result.添加失败);
            }
        }
示例#6
0
        /// <summary>
        /// 单个销售单结算
        /// </summary>
        public void Settlement(string saleTaskid, string saleHead, int scaler)
        {
            int           RegionId = user.ReginId.RegionId;
            DataTable     dt = saleheadbll.getSaleAllbyHeadIdAndStaskId(saleTaskid, saleHead);
            int           number = 0;
            string        bookNum, bookName, saleHeadId, saleTaskId, Isbn, Author, Supplier;
            int           saleIdMonomerId, rsMonomerId;
            int           allstockNum = 0;//总库存
            int           bhnum       = 0;
            BookBasicData book        = new BookBasicData();

            saleHeadId = dt.Rows[0]["saleHeadId"].ToString();
            saleTaskId = dt.Rows[0]["saleTaskId"].ToString();
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                bookNum = dt.Rows[i]["bookNum"].ToString();
                DataSet stockbook = stockbll.SelectByBookNum(bookNum, RegionId);
                allstockNum = 0;
                for (int h = 0; h < stockbook.Tables[0].Rows.Count; h++)
                {
                    allstockNum += Convert.ToInt32(stockbook.Tables[0].Rows[h]["stockNum"]);
                }
                number = int.Parse(dt.Rows[i]["number"].ToString());
                //库存小于数量时生成补货单
                if (allstockNum < number)
                {
                    book            = bookbll.SelectById(bookNum);
                    Isbn            = book.Isbn;
                    Supplier        = book.Publisher;
                    Author          = book.Author;
                    bookName        = dt.Rows[i]["bookName"].ToString();
                    saleIdMonomerId = int.Parse(dt.Rows[i]["saleIdMonomerId"].ToString());
                    bhnum           = number - allstockNum;

                    string rsHead = replenBll.getRsHeadID(saleTaskId);
                    //判断该销售任务是否已有补货记录,如果没有则新增
                    if (rsHead == "none")
                    {
                        Result res = addrsHead(saleTaskId);
                        if (res == Result.添加成功)
                        {
                            int count = replenBll.countMon(saleTaskId);
                            if (count > 0)
                            {
                                rsMonomerId = count + 1;
                            }
                            else
                            {
                                rsMonomerId = 1;
                            }
                            respMon.BookNum         = bookNum;
                            respMon.Count           = bhnum;
                            respMon.Supplier        = Supplier;
                            respMon.DateTime        = DateTime.Now.ToLocalTime();
                            respMon.Isbn            = Isbn;
                            respMon.SaleIdMonomerId = saleIdMonomerId;
                            respMon.SaleTaskId      = saleTaskId;
                            respMon.Author          = Author;
                            respMon.SaleHeadId      = saleHeadId;
                            respMon.RsMonomerID     = rsMonomerId;
                            Result addmonRes = replenBll.Insert(respMon);
                            if (addmonRes == Result.添加成功)
                            {
                                //更新补货单头
                                int rskinds  = replenBll.getkinds(saleTaskId);
                                int rsnumber = replenBll.getsBookNumberSum(saleTaskId);
                                replenishMentHead upRsHead = new replenishMentHead()
                                {
                                    SaleTaskId = saleTaskId,
                                    KindsNum   = rskinds,
                                    Number     = rsnumber,
                                };
                                replenBll.updateRsHead(upRsHead);
                                for (int t = 0; t < stockbook.Tables[0].Rows.Count; t++)
                                {
                                    string goodsID = stockbook.Tables[0].Rows[t]["goodsShelvesId"].ToString();
                                    stockbll.update(0, goodsID, bookNum);
                                }
                            }
                            else
                            {
                                Response.Write("添加失败");
                                Response.End();
                            }
                        }
                        else
                        {
                            Response.Write("添加单头失败");
                            Response.End();
                        }
                    }
                    else
                    {
                        int count = replenBll.countMon(saleTaskId);
                        if (count > 0)
                        {
                            rsMonomerId = count + 1;
                        }
                        else
                        {
                            rsMonomerId = 1;
                        }
                        respMon.BookNum         = bookNum;
                        respMon.Count           = bhnum;
                        respMon.Supplier        = Supplier;
                        respMon.DateTime        = DateTime.Now.ToLocalTime();
                        respMon.Isbn            = Isbn;
                        respMon.SaleIdMonomerId = saleIdMonomerId;
                        respMon.SaleTaskId      = saleTaskId;
                        respMon.Author          = Author;
                        respMon.SaleHeadId      = saleHeadId;
                        respMon.RsMonomerID     = rsMonomerId;
                        Result addmonRes = replenBll.Insert(respMon);
                        if (addmonRes == Result.添加成功)
                        {
                            //更新补货单头
                            int rskinds  = replenBll.getkinds(saleTaskId);
                            int rsnumber = replenBll.getsBookNumberSum(saleTaskId);
                            replenishMentHead upRsHead = new replenishMentHead()
                            {
                                SaleTaskId = saleTaskId,
                                KindsNum   = rskinds,
                                Number     = rsnumber,
                            };
                            replenBll.updateRsHead(upRsHead);
                            for (int t = 0; t < stockbook.Tables[0].Rows.Count; t++)
                            {
                                string goodsID = stockbook.Tables[0].Rows[t]["goodsShelvesId"].ToString();
                                stockbll.update(0, goodsID, bookNum);
                            }
                        }
                        else
                        {
                            Response.Write("添加补货单失败");
                            Response.End();
                        }
                    }
                }
                //库存足则直接减库存
                else
                {
                    for (int j = 0; j < stockbook.Tables[0].Rows.Count; j++)
                    {
                        int    stockNum = Convert.ToInt32(stockbook.Tables[0].Rows[j]["stockNum"]);
                        string goodsId  = stockbook.Tables[0].Rows[j]["goodsShelvesId"].ToString();
                        if (number <= stockNum)
                        {
                            int stockcount = stockNum - number;
                            stockbll.update(stockcount, goodsId, bookNum);
                            number = 0;
                        }
                        else
                        {
                            number = number - stockNum;
                            stockbll.update(0, goodsId, bookNum);
                        }
                    }
                }
            }
            if (scaler == 0)
            {
                //循环完后更新销售单的状态
                Result upHeadstate = salemonbll.updateHeadstate(saleTaskId, saleHeadId, 2);
                if (upHeadstate == Result.更新成功)
                {
                    Response.Write("添加成功");
                    Response.End();
                }
                else
                {
                    Response.Write("更新销售单头失败");
                    Response.End();
                }
            }
        }