示例#1
0
        /// <summary>
        /// 根据单据信息构造台帐信息
        /// </summary>
        /// <param name="billMaster">单据头</param>
        /// <param name="billOrder">单据明细信息</param>
        /// <param name="storeNum">库存处理后药品库存信息</param>
        /// <param name="accountYear">会计年份</param>
        /// <param name="accountMonth">会计月份</param>
        /// <param name="smallUnit">基本单位</param>
        /// <returns>台帐信息</returns>
        override protected YP_Account BuildAccount(BillMaster billMaster, BillOrder billOrder, decimal storeNum,
                                                   int accountYear, int accountMonth, int smallUnit)
        {
            YP_OutMaster master  = (YP_OutMaster)billMaster;
            YP_OutOrder  order   = (YP_OutOrder)billOrder;
            YP_Account   account = new YP_Account();

            account.AccountYear  = accountYear;
            account.AccountMonth = accountMonth;
            account.AccountType  = 2;
            account.Balance_Flag = 0;
            account.BillNum      = master.BillNum;
            account.OpType       = master.OpType;
            account.DeptID       = master.DeptID;
            account.LeastUnit    = smallUnit;
            account.UnitNum      = order.UnitNum;
            account.MakerDicID   = order.MakerDicID;
            account.RegTime      = master.AuditTime;
            account.RetailPrice  = order.RetailPrice;
            account.StockPrice   = order.TradePrice;
            account.OrderID      = order.OutStorageID;
            account.DebitFee     = order.RetailFee;
            account.OverNum      = storeNum;
            account.BalanceFee   = 0;
            return(account);
        }
示例#2
0
        /// <summary>
        /// 根据单据信息构造台帐信息
        /// </summary>
        /// <param name="billMaster">单据头</param>
        /// <param name="billOrder">单据明细信息</param>
        /// <param name="storeNum">库存处理后药品库存信息</param>
        /// <param name="accountYear">会计年份</param>
        /// <param name="accountMonth">会计月份</param>
        /// <param name="smallUnit">基本单位</param>
        /// <returns>台帐信息</returns>
        override protected YP_Account BuildAccount(BillMaster billMaster, BillOrder billOrder, decimal storeNum,
                                                   int accountYear, int accountMonth, int smallUnit)
        {
            YP_DRMaster master  = (YP_DRMaster)billMaster;
            YP_DROrder  order   = (YP_DROrder)billOrder;
            YP_Account  account = new YP_Account();

            account.AccountYear  = accountYear;
            account.AccountMonth = accountMonth;;
            account.AccountType  = 2;
            account.Balance_Flag = 0;
            account.BillNum      = (master.InvoiceNum != 0 ? master.InvoiceNum : Convert.ToInt32(master.InpatientID));
            account.OpType       = master.OpType;
            account.DeptID       = master.DeptID;
            account.LeastUnit    = smallUnit;
            account.UnitNum      = order.UnitNum;
            account.MakerDicID   = order.MakerDicID;
            account.RegTime      = master.OPTime;
            account.RetailPrice  = order.RetailPrice;
            account.StockPrice   = order.TradePrice;
            account.OrderID      = order.OrderDrugOCID;
            if (master.InvoiceNum != 0)
            {
                account.DebitFee = order.RetailFee * master.RecipeNum;
                account.DebitNum = order.DrugOCNum * master.RecipeNum;
            }
            else
            {
                account.DebitFee = order.RetailFee;
                account.DebitNum = order.DrugOCNum;
            }
            account.OverNum = storeNum;
            return(account);
        }
示例#3
0
        /// <summary>
        /// 根据单据信息构造台帐信息
        /// </summary>
        /// <param name="billMaster">单据头</param>
        /// <param name="billOrder">单据明细信息</param>
        /// <param name="storeNum">库存处理后药品库存信息</param>
        /// <param name="accountYear">会计年份</param>
        /// <param name="accountMonth">会计月份</param>
        /// <param name="smallUnit">基本单位</param>
        /// <returns>台帐信息</returns>
        override protected YP_Account BuildAccount(BillMaster billMaster, BillOrder billOrder, decimal storeNum,
                                                   int accountYear, int accountMonth, int smallUnit)
        {
            YP_Account     account = new YP_Account();
            YP_CheckMaster master  = (YP_CheckMaster)billMaster;
            YP_CheckOrder  order   = (YP_CheckOrder)billOrder;

            account.AccountYear  = accountYear;
            account.AccountMonth = accountMonth;;
            account.AccountType  = 2;
            account.Balance_Flag = 0;
            account.BillNum      = master.BillNum;
            account.OpType       = master.OpType;
            account.DeptID       = master.DeptID;
            account.LeastUnit    = smallUnit;
            account.UnitNum      = order.UnitNum;
            account.MakerDicID   = order.MakerDicID;
            account.RegTime      = master.AuditTime;
            account.RetailPrice  = order.RetailPrice;
            account.StockPrice   = order.TradePrice;
            account.OrderID      = order.CheckOrderID;
            if (order.CheckNum - order.FactNum > 0)
            {
                account.LenderNum = order.CheckNum - order.FactNum;
                account.LenderFee = Math.Abs(order.CKRetailFee - order.FTRetailFee);
            }
            else
            {
                account.DebitNum = order.FactNum - order.CheckNum;
                account.DebitFee = Math.Abs(order.CKRetailFee - order.FTRetailFee);
            }
            account.OverNum = storeNum;
            return(account);
        }
示例#4
0
        public ActionResult DeleteConfirmed(int id)
        {
            BillOrder billorder = db.BillOrders.Find(id);

            db.BillOrders.Remove(billorder);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        /// <summary>
        /// 根据单据信息构造台帐信息
        /// </summary>
        /// <param name="billMaster">单据头</param>
        /// <param name="billOrder">单据明细信息</param>
        /// <param name="storeNum">库存处理后药品库存信息</param>
        /// <param name="accountYear">会计年份</param>
        /// <param name="accountMonth">会计月份</param>
        /// <param name="smallUnit">基本单位</param>
        /// <returns>台帐信息</returns>
        protected override YP_Account BuildAccount(BillMaster billMaster, BillOrder billOrder, decimal storeNum,
                                                   int accountYear, int accountMonth, int smallUnit)
        {
            YP_InOrder order   = (YP_InOrder)billOrder;
            YP_Account account = base.BuildAccount(billMaster, billOrder, storeNum, accountYear, accountMonth, smallUnit);

            account.LenderNum = order.InNum;
            return(account);
        }
示例#6
0
 public ActionResult Edit([Bind(Include = "BillOrderID,CustormerRefId,Shipdate,OrderDate,PayDay,BillOrderMoneyTotal,PaidStatus")] BillOrder billorder)
 {
     if (ModelState.IsValid)
     {
         db.Entry(billorder).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.CustormerRefId = new SelectList(db.Customers, "CustomerID", "CustomerName", billorder.CustormerRefId);
     return(View(billorder));
 }
示例#7
0
        // GET: /Admin/Bill/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            BillOrder billorder = db.BillOrders.Find(id);

            if (billorder == null)
            {
                return(HttpNotFound());
            }
            return(View(billorder));
        }
示例#8
0
        // GET: /Admin/Bill/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            BillOrder billorder = db.BillOrders.Find(id);

            if (billorder == null)
            {
                return(HttpNotFound());
            }
            ViewBag.CustormerRefId = new SelectList(db.Customers, "CustomerID", "CustomerName", billorder.CustormerRefId);
            return(View(billorder));
        }
示例#9
0
        /// <summary>
        /// 根据单据信息构造台帐信息
        /// </summary>
        /// <param name="billMaster">单据头</param>
        /// <param name="billOrder">单据明细信息</param>
        /// <param name="storeNum">库存处理后药品库存信息</param>
        /// <param name="accountYear">会计年份</param>
        /// <param name="accountMonth">会计月份</param>
        /// <param name="smallUnit">基本单位</param>
        /// <returns>台帐信息</returns>
        protected override YP_Account BuildAccount(BillMaster billMaster, BillOrder billOrder, decimal storeNum,
                                                   int accountYear, int accountMonth, int smallUnit)
        {
            YP_InOrder order   = (YP_InOrder)billOrder;
            YP_Account account = base.BuildAccount(billMaster, billOrder, storeNum, accountYear, accountMonth, smallUnit);

            if (account.OpType != ConfigManager.OP_YF_APPLYIN)
            {
                account.LenderNum = Convert.ToInt32(order.InNum);
            }
            else
            {
                account.LenderNum = Convert.ToInt32(order.InNum * order.UnitNum);
            }
            return(account);
        }
示例#10
0
        private void insertToBills(BillOrder billOrder)
        {
            StringBuilder sb = new StringBuilder();

            sb.Append("INSERT INTO Bills(BillNumber,SellDate,EmployeeName,CustomerID,");
            sb.Append("CustomerName,ProductID,ProductName,Amount,Discount,TotalPrice)");
            sb.Append(" VALUES(@BillNumber,@SellDate,@EmployeeName,CustomerID,");
            sb.Append("@CustomerName,@ProductID,@ProductName,@Amount,@Discount,@TotalPrice)");

            string sqlInsert = sb.ToString();

            OpenConnection();
            OleDbTransaction tr  = Conn.BeginTransaction();
            OleDbCommand     com = new OleDbCommand();

            com.CommandType = CommandType.Text;
            com.CommandText = sqlInsert;
            com.Connection  = Conn;
            com.Transaction = tr;

            com.Parameters.Add("@BillNumber", OleDbType.BigInt).Value    = billOrder.BillNumber;
            com.Parameters.Add("@SellDate", OleDbType.Date).Value        = billOrder.SellDate;
            com.Parameters.Add("@EmployeeName", OleDbType.VarChar).Value = billOrder.EmployeeName;
            com.Parameters.Add("@CustomerID", OleDbType.VarChar).Value   = billOrder.CustomerID;
            com.Parameters.Add("@CustomerName", OleDbType.VarChar).Value = billOrder.CustomerName;
            com.Parameters.Add("@ProductID", OleDbType.VarChar).Value    = billOrder.ProductID;
            com.Parameters.Add("@ProductName", OleDbType.VarChar).Value  = billOrder.ProductName;
            com.Parameters.Add("@Amount", OleDbType.Integer).Value       = billOrder.Amount;
            com.Parameters.Add("@Discount", OleDbType.Double).Value      = billOrder.Discount;
            com.Parameters.Add("@TotalPrice", OleDbType.Double).Value    = billOrder.TotalPrice;

            try
            {
                com.ExecuteNonQuery();
                tr.Commit();
                CloseConnection();
            }
            catch (Exception ex)
            {
                tr.Rollback();
                CloseConnection();
                MessageBox.Show(ex.Message, cstWarning);
            }
        }
示例#11
0
        private void btnSaveBill_Click(object sender, EventArgs e)
        {
            dgvSell.Columns[0].Visible = false;
            tbSellProductID.Enabled    = false;

            BillOrder billOrder = new BillOrder();

            billOrder.CustomerID   = tbSellCustomerID.Text.Trim();
            billOrder.CustomerName = tbSellCustomerName.Text.Trim();
            billOrder.EmployeeName = tbSellSeller.Text.Trim();

            int iDay   = dtpSellDate.Value.Day;
            int iMonth = dtpSellDate.Value.Month;
            int iYear  = dtpSellDate.Value.Year;

            if (CultureInfo.CurrentCulture.ToString() == "th-TH")
            {
                iYear = iYear + 543;
            }

            billOrder.SellDate   = MyPrint16.makeDateTransaction(iDay, iMonth, iYear);
            billOrder.BillNumber = int.Parse(tbSellNoBill.Text.ToString());

            for (int i = 0; i < dgvSell.Rows.Count; i++)
            {
                billOrder.ProductID   = dgvSell.Rows[i].Cells[1].Value.ToString();
                billOrder.ProductName = dgvSell.Rows[i].Cells[2].Value.ToString();
                billOrder.Amount      = int.Parse(dgvSell.Rows[i].Cells[4].Value.ToString());
                billOrder.Discount    = double.Parse(dgvSell.Rows[i].Cells[5].Value.ToString());
                billOrder.TotalPrice  = double.Parse(dgvSell.Rows[i].Cells[6].Value.ToString());
                insertToBills(billOrder);
            }

            btnNewBill.Visible    = true;
            btnSellCancel.Visible = false;

            increaseCirculation(double.Parse(tbTotalPrice.Text), billOrder.SellDate);
            btnDeleteOrder.Enabled = false;
            btnSaveBill.Enabled    = false;
        }
示例#12
0
        public void InsetToOrder(string username, string password)
        {
            Customer customer = db.Customers.Single(x => x.CustomerAccount.Equals(username) && x.CustomerPass.Equals(password));


            if (customer != null)
            {
                List <CartItem> cardItem  = (List <CartItem>)Session["CartSession"];
                double          totalMany = 0;
                foreach (var item in cardItem)
                {
                    totalMany = totalMany + item.Book.BookQuantity * item.Book.BookPrices;
                }
                BillOrder billOrder = new BillOrder
                {
                    CustormerRefId      = customer.CustomerID,
                    BillOrderMoneyTotal = totalMany,
                    OrderDate           = DateTime.Now,
                    PaidStatus          = false,
                    PayDay   = DateTime.Now,
                    Shipdate = DateTime.Now,
                    Customer = customer
                };
                db.BillOrders.Add(billOrder);
                db.SaveChanges();
                foreach (var item in cardItem)
                {
                    OrderDetail orderDetail = new OrderDetail
                    {
                        BillOrderRefId = billOrder.BillOrderID,
                        BookRefId      = item.Book.BookID,
                        Quantity       = item.Book.BookQuantity
                    };
                    db.OrderDetails.Add(orderDetail);
                    db.SaveChanges();
                }
            }
        }
示例#13
0
 /// <summary>
 /// 根据单据信息构造台帐信息
 /// </summary>
 /// <param name="billMaster">单据头</param>
 /// <param name="billOrder">单据明细信息</param>
 /// <param name="storeNum">库存处理后药品库存信息</param>
 /// <param name="accountYear">会计年份</param>
 /// <param name="accountMonth">会计月份</param>
 /// <param name="smallUnit">基本单位</param>
 /// <returns>台帐信息</returns>
 protected abstract YP_Account BuildAccount(BillMaster billMaster, BillOrder billOrder, decimal storeNum,
                                            int accountYear, int accountMonth, int smallUnit);
示例#14
0
        public static Task <IEnumerable <Bill> > GetBillsAsync(this FreeAgentClient client, BillFilter filterBy = BillFilter.All, BillOrder orderBy = BillOrder.DueDate, DateTime?fromDate = null, DateTime?toDate = null)
        {
            var view = filterBy.GetMemberValue();
            var sort = orderBy.GetMemberValue();

            return(client.GetOrCreateAsync(c => c.BillList(client.Configuration.CurrentHeader, view, sort, fromDate, toDate), r => r.Bills));
        }
示例#15
0
        private void insertToBills(BillOrder billOrder)
        {
            StringBuilder sb = new StringBuilder();
            sb.Append("INSERT INTO Bills(BillNumber,SellDate,EmployeeName,CustomerID,");
            sb.Append("CustomerName,ProductID,ProductName,Amount,Discount,TotalPrice)");
            sb.Append(" VALUES(@BillNumber,@SellDate,@EmployeeName,CustomerID,");
            sb.Append("@CustomerName,@ProductID,@ProductName,@Amount,@Discount,@TotalPrice)");

            string sqlInsert = sb.ToString();

            OpenConnection();
            OleDbTransaction tr = Conn.BeginTransaction();
            OleDbCommand com = new OleDbCommand();
            com.CommandType = CommandType.Text;
            com.CommandText = sqlInsert;
            com.Connection = Conn;
            com.Transaction = tr;

            com.Parameters.Add("@BillNumber", OleDbType.BigInt).Value = billOrder.BillNumber;
            com.Parameters.Add("@SellDate", OleDbType.Date).Value = billOrder.SellDate;
            com.Parameters.Add("@EmployeeName", OleDbType.VarChar).Value = billOrder.EmployeeName;
            com.Parameters.Add("@CustomerID", OleDbType.VarChar).Value = billOrder.CustomerID;
            com.Parameters.Add("@CustomerName", OleDbType.VarChar).Value = billOrder.CustomerName;
            com.Parameters.Add("@ProductID", OleDbType.VarChar).Value = billOrder.ProductID;
            com.Parameters.Add("@ProductName", OleDbType.VarChar).Value = billOrder.ProductName;
            com.Parameters.Add("@Amount", OleDbType.Integer).Value = billOrder.Amount;
            com.Parameters.Add("@Discount", OleDbType.Double).Value = billOrder.Discount;
            com.Parameters.Add("@TotalPrice", OleDbType.Double).Value = billOrder.TotalPrice;

            try
            {
                com.ExecuteNonQuery();
                tr.Commit();
                CloseConnection();
            }
            catch (Exception ex)
            {
                tr.Rollback();
                CloseConnection();
                MessageBox.Show(ex.Message, cstWarning);
            }
        }
示例#16
0
        private void btnSaveBill_Click(object sender, EventArgs e)
        {
            dgvSell.Columns[0].Visible = false;
            tbSellProductID.Enabled = false;

            BillOrder billOrder = new BillOrder();

            billOrder.CustomerID = tbSellCustomerID.Text.Trim();
            billOrder.CustomerName = tbSellCustomerName.Text.Trim();
            billOrder.EmployeeName = tbSellSeller.Text.Trim();

            int iDay = dtpSellDate.Value.Day;
            int iMonth = dtpSellDate.Value.Month;
            int iYear = dtpSellDate.Value.Year;

            if (CultureInfo.CurrentCulture.ToString() == "th-TH")
                iYear = iYear + 543;

            billOrder.SellDate = MyPrint16.makeDateTransaction(iDay, iMonth, iYear);
            billOrder.BillNumber = int.Parse(tbSellNoBill.Text.ToString());

            for (int i = 0; i < dgvSell.Rows.Count; i++)
            {
                billOrder.ProductID = dgvSell.Rows[i].Cells[1].Value.ToString();
                billOrder.ProductName = dgvSell.Rows[i].Cells[2].Value.ToString();
                billOrder.Amount = int.Parse(dgvSell.Rows[i].Cells[4].Value.ToString());
                billOrder.Discount = double.Parse(dgvSell.Rows[i].Cells[5].Value.ToString());
                billOrder.TotalPrice = double.Parse(dgvSell.Rows[i].Cells[6].Value.ToString());
                insertToBills(billOrder);
            }

            btnNewBill.Visible = true;
            btnSellCancel.Visible = false;

            increaseCirculation(double.Parse(tbTotalPrice.Text), billOrder.SellDate);
            btnDeleteOrder.Enabled = false;
            btnSaveBill.Enabled = false;
        }