Exemple #1
0
        public ActionResult PurchaseCreate(int id = 0, int page = 1)
        {
            var purchase = new PrPurchase();

            ViewBag.WarehouseName = "--请选择--";
            if (id > 0)
            {
                purchase = BLL.Purchase.PrPurchaseBo.Instance.GetPrPurchaseInfo(id);
                ViewBag.WarehouseName = BLL.Warehouse.WhWarehouseBo.Instance.GetWarehouseName(purchase.WarehouseSysNo);
                var departInfo = Hyt.BLL.Basic.OrganizationBo.Instance.GetEntity(purchase.DepartmentSysNo);
                if (departInfo != null)
                {
                    ViewBag.DepartName = departInfo.Name;
                }

                var businessInfo = BLL.Sys.SyUserBo.Instance.GetSyUser(purchase.SyUserSysNo);
                if (businessInfo != null)
                {
                    ViewBag.BusinessName = businessInfo.UserName;
                }

                if (purchase.custodian != null)
                {
                    var custodianInfo = BLL.Sys.SyUserBo.Instance.GetSyUser((int)purchase.custodian);
                    ViewBag.CustodianName = custodianInfo.UserName;
                }
            }
            ViewBag.UserId           = CurrentUser.Base.SysNo;
            ViewBag.ManufacturerList = PmBaseDataBo.Instance.GetPmManufacturert();
            ViewBag.Warehouse        = CurrentUser.Warehouses;
            return(View(purchase));
        }
Exemple #2
0
        public JsonResult PurchaseCreate(PrPurchase model, List <int> delSysNos = null)
        {
            var result = new Result
            {
                Status     = false,
                StatusCode = 0
            };

            try
            {
                if (model.SysNo <= 0)
                {
                    model.CreatedBy         = BLL.Authentication.AdminAuthenticationBo.Instance.Current.Base.SysNo;
                    model.CreatedDate       = DateTime.Now;
                    model.EnterQuantity     = 0;
                    model.PaymentStatus     = (int)PurchaseStatus.采购单付款状态.未付款;
                    model.PurchaseCode      = BLL.Basic.ReceiptNumberBo.Instance.GetPurchaseNo();
                    model.Status            = (int)PurchaseStatus.采购单状态.待审核;
                    model.WarehousingStatus = (int)PurchaseStatus.采购单入库状态.未入库;
                }
                BLL.Purchase.PrPurchaseBo.Instance.AddPurchase(model);
                if (delSysNos != null)
                {
                    BLL.Purchase.PrPurchaseDetailsBo.Instance.Delete(string.Join(",", delSysNos));
                }
            }
            catch (Exception ex)
            {
                result.StatusCode = -1;
                result.Message    = ex.Message;
            }
            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Exemple #3
0
 /// <summary>
 /// 添加采购单
 /// </summary>
 /// <param name="purchase">采购单实体类对象</param>
 /// <returns></returns>
 public override int AddPurchase(PrPurchase purchase)
 {
     purchase.SysNo = Context.Insert("PrPurchase", purchase)
                      .AutoMap(o => o.SysNo, o => o.PurchaseDetails)
                      .ExecuteReturnLastId <int>("SysNo");
     return(purchase.SysNo);
 }
Exemple #4
0
        /// <summary>
        /// 添加采购单
        /// </summary>
        /// <param name="purchase">采购单实体类对象</param>
        /// <returns></returns>
        public void AddPurchase(PrPurchase purchase)
        {
            var sysNo = 0;

            purchase.Quantity   = purchase.PurchaseDetails.Sum(x => x.Quantity);
            purchase.TotalMoney = purchase.PurchaseDetails.Sum(x => x.Quantity * x.Money);
            if (purchase.SysNo > 0)
            {
                IPrPurchaseDao.Instance.UpdatePurchase(purchase);
                sysNo = purchase.SysNo;
            }
            else
            {
                sysNo = IPrPurchaseDao.Instance.AddPurchase(purchase);
            }

            if (sysNo > 0)
            {
                foreach (var item in purchase.PurchaseDetails)
                {
                    item.PurchaseSysNo = sysNo;
                    item.TotalMoney    = item.Quantity * item.Money;
                    item.EnterQuantity = 0;
                    if (item.SysNo <= 0)
                    {
                        IPrPurchaseDetailsDao.Instance.AddPurchaseDetails(item);
                    }
                    else
                    {
                        IPrPurchaseDetailsDao.Instance.UpdatePurchaseDetails(item);
                    }
                }
            }
        }
Exemple #5
0
        /// <summary>
        /// 更新采购单
        /// </summary>
        /// <param name="purchase">采购单实体类对象</param>
        /// <returns></returns>
        public override int UpdatePurchase(PrPurchase purchase)
        {
            int rows = Context.Update("PrPurchase", purchase)
                       .AutoMap(o => o.SysNo, o => o.CreatedBy, o => o.CreatedDate, o => o.PaymentStatus, o => o.Status, o => o.WarehousingStatus, o => o.PurchaseDetails)
                       .Where("SysNo", purchase.SysNo)
                       .Execute();

            return(rows);
        }
Exemple #6
0
        public ActionResult PurchaseReturnCreate(int id = 0, int page = 1)
        {
            var purchase = new PrPurchase();

            if (id > 0)
            {
                purchase = BLL.Purchase.PrPurchaseBo.Instance.GetPrRePurchaseInfo(id);
                var detailList = purchase.PurchaseDetails;
                var indxList   = new List <int>();
                foreach (var mod in detailList)
                {
                    indxList.Add(mod.ProductSysNo);
                }
                var stockList = Hyt.BLL.Warehouse.PdProductStockBo.Instance.GetAllStockList(purchase.WarehouseSysNo, indxList);
                ViewBag.WarehouseName = BLL.Warehouse.WhWarehouseBo.Instance.GetWarehouseName(purchase.WarehouseSysNo);
                ViewBag.StockList     = stockList;
            }
            return(View(purchase));
        }
        /// <summary>
        /// 审核采购退货单
        /// </summary>
        /// <param name="sysNo">采购单编号</param>
        /// <remarks>2016-6-18 王耀发 创建</remarks>
        public bool AuditPurchaseReturn(int sysNo)
        {
            int CreatedBy      = BLL.Authentication.AdminAuthenticationBo.Instance.Current.Base.SysNo;
            var purchaseReturn = IPrPurchaseReturnDao.Instance.GetPrPurchaseReturn(sysNo);

            if (UpdateStatus(sysNo, (int)PurchaseStatus.采购退货单状态.已审核))
            {
                var receiptVoucherMod = new FnReceiptVoucher();
                receiptVoucherMod.TransactionSysNo = "";
                receiptVoucherMod.IncomeType       = (int)Hyt.Model.WorkflowStatus.FinanceStatus.收款单收入类型.预付;
                receiptVoucherMod.Source           = (int)Hyt.Model.WorkflowStatus.FinanceStatus.收款来源类型.采购退货单;
                receiptVoucherMod.SourceSysNo      = sysNo;
                receiptVoucherMod.IncomeAmount     = purchaseReturn.ReturnTotalMoney;
                receiptVoucherMod.ReceivedAmount   = 0;
                receiptVoucherMod.Status           = (int)Hyt.Model.WorkflowStatus.FinanceStatus.收款单状态.待确认;
                receiptVoucherMod.Remark           = "采购退货收款单";
                receiptVoucherMod.CreatedBy        = CreatedBy;
                receiptVoucherMod.CreatedDate      = DateTime.Now;
                receiptVoucherMod.ConfirmedBy      = 0;
                receiptVoucherMod.ConfirmedDate    = DateTime.Now;
                receiptVoucherMod.LastUpdateBy     = CreatedBy;
                receiptVoucherMod.LastUpdateDate   = DateTime.Now;
                receiptVoucherMod.PaymentType      = null;
                FinanceBo.Instance.InsertReceiptVoucher(receiptVoucherMod);
                //创建出库单
                WhInventoryOut outEntity = new WhInventoryOut
                {
                    TransactionSysNo = ReceiptNumberBo.Instance.GetPurchaseOutNo(),
                    WarehouseSysNo   = purchaseReturn.WarehouseSysNo,
                    SourceType       = (int)WarehouseStatus.出库单来源.采购单,
                    SourceSysNO      = sysNo,
                    DeliveryType     = 0,
                    Remarks          = "采购退货出库",
                    IsPrinted        = 0,
                    Status           = (int)WarehouseStatus.采购退货出库单状态.待出库,
                    CreatedBy        = CreatedBy,
                    CreatedDate      = DateTime.Now,
                    LastUpdateBy     = CreatedBy,
                    LastUpdateDate   = DateTime.Now,
                    Stamp            = (DateTime)System.Data.SqlTypes.SqlDateTime.MinValue,
                };

                outEntity.ItemList = new List <WhInventoryOutItem>();
                var        purchaseReturnDetails = BLL.Purchase.PrPurchaseReturnDetailsBo.Instance.GetPurchaseReturnDetailsList(sysNo);
                PrPurchase purMod = PrPurchaseBo.Instance.GetPrPurchaseInfo(purchaseReturn.PurchaseSysNo);

                //出库明细
                foreach (var item in purchaseReturnDetails)
                {
                    Hyt.Model.PdProduct Product = Hyt.BLL.Product.PdProductBo.Instance.GetProductBySysNo(item.ProductSysNo);
                    outEntity.ItemList.Add(new WhInventoryOutItem
                    {
                        ProductSysNo         = item.ProductSysNo,
                        ProductName          = Product.ProductName,
                        StockOutQuantity     = item.ReturnQuantity,
                        RealStockOutQuantity = 0,
                        SourceItemSysNo      = item.SysNo,//记录出库单明细来源单号(采购退货单明细编号)
                        Remarks        = "",
                        CreatedBy      = CreatedBy,
                        CreatedDate    = DateTime.Now,
                        LastUpdateBy   = CreatedBy,
                        LastUpdateDate = DateTime.Now
                    });
                }
                var inSysNo = WhInventoryOutBo.Instance.CreateWhInventoryOut(outEntity); //保存出库单数据
            }
            return(true);
        }
Exemple #8
0
 /// <summary>
 /// 更新采购单
 /// </summary>
 /// <param name="purchase">采购单实体类对象</param>
 /// <returns></returns>
 public int UpdatePurchase(PrPurchase purchase)
 {
     return(IPrPurchaseDao.Instance.UpdatePurchase(purchase));
 }
Exemple #9
0
 /// <summary>
 /// 更新采购单
 /// </summary>
 /// <param name="purchase">采购单实体类对象</param>
 /// <returns></returns>
 public abstract int UpdatePurchase(PrPurchase purchase);
Exemple #10
0
 /// <summary>
 /// 添加采购单
 /// </summary>
 /// <param name="purchase">采购单实体类对象</param>
 /// <returns></returns>
 public abstract int AddPurchase(PrPurchase purchase);