Пример #1
0
        protected virtual void BindPurchaseItemEntities()
        {
            var rows          = Request.Params["rows"].Convert <int>();
            var purchaseItems = new List <PurchaseItemEntity>();

            for (int i = 0; i < rows; i++)
            {
                var productId = Request.Params["ProductId" + i].Convert <long>();
                var count     = Request.Params["Count" + i].Convert <int>();
                var price     = Request.Params["Price" + i].Convert <decimal>();

                var purchaseItemEntity = new PurchaseItemEntity
                {
                    Product = Ioc.Resolve <IApplicationService, ScmProduct>().GetEntity <ScmProduct>(productId),
                    Count   = count,
                    Price   = price,
                };
                purchaseItems.Add(purchaseItemEntity);
            }

            if (purchaseItems.Count > 0)
            {
                GridView2.DataSource = purchaseItems;
                GridView2.DataBind();
            }
        }
Пример #2
0
        /// <summary>
        /// 加载产品明细
        /// </summary>
        /// <param name="info"></param>
        protected virtual void FillPurchaseItemsByProductIds(PurchaseEntity info)
        {
            if (string.IsNullOrEmpty(hfProducts.Value))
            {
                return;
            }
            var purchaseItems = hfProducts.Value.DeserializeJson <List <PurchaseItemEntity> >();

            if (purchaseItems != null)
            {
                foreach (var subPurchaseItem in purchaseItems)
                {
                    var purchaseItem = new PurchaseItemEntity
                    {
                        Product = new ProductEntity {
                            Id = subPurchaseItem.Id
                        },
                        Price    = subPurchaseItem.Price,
                        Count    = subPurchaseItem.Count,
                        Name     = subPurchaseItem.Name,
                        Purchase = info,
                        Remark   = subPurchaseItem.Remark,
                        SaveType = SaveType.Add
                    };
                    info.PurchaseItems.Add(purchaseItem);
                }
            }
        }
        public async Task <UserPurchaseModel.PurchaseIssueModel> AddIssueToPurchase(UserObject parent, int purchaseId, int issueId)
        {
            using (var dataContext = new AppDbContext())
            {
                var issue = dataContext.Issues.Where(x => x.Id == issueId).First();
                var box   = dataContext.Boxes.Where(x => x.Location.UserId == parent.Id && x.Location.Name == "Home" && x.Name == "Home").First();

                var pi = new PurchaseItemEntity
                {
                    IssueId            = issueId,
                    TitleId            = issue.TitleId,
                    IssueNumber        = issue.SeoFriendlyName,
                    IssueNumberOrdinal = issue.IssueNumberOrdinal,
                    PurchaseId         = purchaseId,
                    BoxId = box.Id
                };

                var publishers = dataContext.PurchaseItems.Add(pi);

                var retval = dataContext.SaveChanges();

                return(new UserPurchaseModel.PurchaseIssueModel
                {
                    Id = pi.Id,
                    ImageUrl = issue.ImageUrl
                });
            }
        }
Пример #4
0
        protected override PurchaseEntity FillEntity()
        {
            var purchaseEntity = base.FillEntity();

            purchaseEntity.OriginalPurchase = new PurchaseEntity {
                Id = 0
            };
            purchaseEntity.Order = new OrderEntity {
                Id = OrderId
            };
            purchaseEntity.SaveType      = SaveType.Add;
            purchaseEntity.PurchaseItems = new List <PurchaseItemEntity>();
            foreach (GridViewRow gvr in GridView2.Rows)
            {
                if (gvr.RowType != DataControlRowType.DataRow)
                {
                    continue;
                }
                var ckSelect = gvr.FindControl("ckSelect") as System.Web.UI.HtmlControls.HtmlInputCheckBox;
                if (!ckSelect.Checked)
                {
                    continue;
                }

                var txtPrice = gvr.FindControl("txtPrice") as System.Web.UI.HtmlControls.HtmlInputText;
                if (txtPrice == null)
                {
                    continue;
                }
                var txtCount = gvr.FindControl("txtCount") as System.Web.UI.HtmlControls.HtmlInputText;
                if (txtCount == null)
                {
                    continue;
                }
                var productId = gvr.FindControl("hidProductId") as System.Web.UI.HtmlControls.HtmlInputHidden;
                var txtRemark = gvr.FindControl("txtRemark") as System.Web.UI.HtmlControls.HtmlInputText;
                var txtName   = gvr.FindControl("txtName") as System.Web.UI.HtmlControls.HtmlInputHidden;
                if (txtName == null)
                {
                    continue;
                }

                var purchaseItem = new PurchaseItemEntity
                {
                    Purchase = purchaseEntity,
                    Product  = new ScmProduct {
                        Id = productId.Value.Convert <long>()
                    },
                    Name   = txtName.Value.Convert <string>(),
                    Price  = txtPrice.Value.Convert <decimal>(),
                    Count  = txtCount.Value.Convert <int>(),
                    Remark = txtRemark == null ? "" : txtRemark.Value.Trim(),
                    SaveType = SaveType.Add
                };
                purchaseItem.Amount = purchaseItem.Count * purchaseItem.Price;
                purchaseEntity.PurchaseItems.Add(purchaseItem);
            }
            return(purchaseEntity);
        }
Пример #5
0
 /// <summary>
 /// 填充发票
 /// </summary>
 /// <param name="info"></param>
 protected virtual void FillPurchaseItems(PurchaseEntity info)
 {
     info.PurchaseItems = new List <PurchaseItemEntity>();
     foreach (GridViewRow gvr in gvProduct.Rows)
     {
         if (gvr.RowType != DataControlRowType.DataRow)
         {
             continue;
         }
         var ckSelect = gvr.FindControl("hfId") as System.Web.UI.HtmlControls.HtmlInputHidden;
         if (ckSelect == null)
         {
             continue;
         }
         var txtCost  = gvr.FindControl("txtCost") as System.Web.UI.HtmlControls.HtmlInputText;
         var txtCount = gvr.FindControl("txtCount") as System.Web.UI.HtmlControls.HtmlInputText;
         var hfName   = gvr.FindControl("hfName") as System.Web.UI.HtmlControls.HtmlInputHidden;
         if (txtCost == null || txtCount == null || hfName == null)
         {
             continue;
         }
         var purchaseItem = new PurchaseItemEntity
         {
             Product = new ProductEntity {
                 Id = ckSelect.Value.Convert <long>()
             },
             Price    = txtCost.Value.Convert <decimal>(),
             Count    = txtCount.Value.Convert <int>(),
             Name     = hfName.Value,
             Purchase = info,
             SaveType = SaveType.Add
         };
         info.PurchaseItems.Add(purchaseItem);
     }
     FillPurchaseItemsByProductIds(info);
 }