Exemple #1
0
    /// <summary>
    /// 获取所有的收藏物品的信息
    /// </summary>
    public void OnRecieveAllStarItemDatas(stStarItemListConsignmentUserCmd_S cmd)
    {
        if (cmd != null)
        {
            if (itemStarInfo == null)
            {
                itemStarInfo = new MyConsignStarInfo();
            }
            itemStarInfo.consignmentItemList.Clear();
            ItemSerialize itData = new ItemSerialize();
            for (int i = 0; i < cmd.item_data.Count; i++)
            {
                itData = ItemSerialize.Deserialize(cmd.item_data[i]);
                if (i < cmd.item_list.Count)
                {
                    ConsignmentItem consignment = new ConsignmentItem(cmd.item_list[i].market_id, cmd.item_list[i], itData);
                    itemStarInfo.consignmentItemList.Add(consignment);
                }
            }
            itemStarInfo.consignmentItemList.Sort(CompareConsignment);

            AllPage = (uint)cmd.item_list.Count;
        }
        DispatchValueUpdateEvent(new ValueUpdateEventArgs(SaleItemDispatchEvents.GetAllStarItems.ToString(), null, null));
    }
Exemple #2
0
        private static ConsignmentItem CreateConsignmentItem()
        {
            var guid            = PrimeActs.Service.IDGenerator.NewGuid('L');
            var consignmentItem = new ConsignmentItem
            {
                ConsignmentItemID = guid,
                ConsignmentID     = Guid.Parse("BBD967D8-3200-47DB-8352-E04362C5B394"),
                BestBeforeDate    = DateTime.Today,
                ProduceID         = Guid.Parse("68041464-4850-0000-0076-000000000125"),
                Brand             = "BrandApples",
                PackSize          = "Medium",
                PackPall          = 12,
                PackWeight        = 10.00m,
                //Pack = "12",
                PackWtUnitID = Guid.Parse("9D1D0C0D-EEC6-442A-B390-AB2BE29ED3F0"),
                //ExpectedQuantity = 12.00m,
                //ReceivedQuantity = 12.00m,
                EstimatedProfit     = 54,
                EstimatedChargeCost = 34,
                //Returns = 1.20m,
                EstimatedPurchaseCost = 10,
                //ItemStatus = 0,
                PorterageID = Guid.Parse("68041464-4851-3000-0076-000000000422"),
                CreatedBy   = "Test",
                CreatedDate = DateTime.Now,
                ObjectState = ObjectState.Added
            };

            return(consignmentItem);
        }
Exemple #3
0
        public async Task <ActionResult> SaveItem(int?id, string description, int?quantity, decimal?unitPrice)
        {
            if (id == null || string.IsNullOrEmpty(description) || quantity == null || unitPrice == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ConsignmentItem ci = await db.ConsignmentItems.FindAsync(id);

            if (ci == null)
            {
                return(HttpNotFound());
            }
            ci.Description     = description;
            ci.Quantity        = quantity.Value;
            ci.UnitPrice       = unitPrice.Value;
            db.Entry(ci).State = EntityState.Modified;
            await db.SaveChangesAsync();

            var items = db.ConsignmentItems
                        .Where(c => c.ConsignmentID == ci.ConsignmentID)
                        .OrderBy(c => c.ID)
                        .Select(c => new { c.ID, c.ProductID, c.StockCode, c.Description, c.Quantity, c.UnitPrice })
                        .ToList();

            return(Json(items, JsonRequestBehavior.AllowGet));
        }
 private void Edit(Guid consignmentItemId, string instructions)
 {
     try
     {
         _consignmentItemForEdit = _consignmentItemService.Edit(consignmentItemId, instructions);
     }
     catch (DomainValidationException dex)
     {
         _domainValidationException = dex;
     }
 }
 private void CreateConsignmentItem(Guid id, Guid jobItemId, Guid consignmentId, string instructions)
 {
     try
     {
         _savedConsigmentItem = _consignmentItemService.Create(id, jobItemId, consignmentId, instructions);
         _jobItemToUpdate     = _jobItemService.GetById(_jobItemToUpdate.Id);
     }
     catch (DomainValidationException dex)
     {
         _domainValidationException = dex;
     }
 }
Exemple #6
0
    /// <summary>
    /// 寄售成功
    /// </summary>
    /// <param name="cmd"></param>
    public void OnResponSellConsignItem(stSellItemConsignmentUserCmd_S cmd)
    {
        if (itemSellInfo == null)
        {
            itemSellInfo = new MyConsignItemInfo();
        }
        ItemSerialize   data        = ItemSerialize.Deserialize(cmd.item_data);
        ConsignmentItem consignment = new ConsignmentItem(cmd.page_info.market_id, cmd.page_info, data, cmd.time_info);

        itemSellInfo.consignmentItemList.Add(consignment);
        itemSellInfo.consignmentItemList.Sort(CompareConsignment);
        DispatchValueUpdateEvent(new ValueUpdateEventArgs(SaleItemDispatchEvents.RefreshSellItemInfo.ToString(), null, null));
    }
Exemple #7
0
    public static int  CompareConsignment(ConsignmentItem left, ConsignmentItem right)
    {
        int leftNum  = 0;
        int rightNum = 0;

        if (left.page_info != null)
        {
            bool great = left.page_info.great;
            int  money = (int)left.page_info.money;
            leftNum = great ? money * DataManager.Manager <ConsignmentManager>().UnitYuanBaoToJinBi : money;
        }
        if (right.page_info != null)
        {
            bool great = right.page_info.great;
            int  money = (int)right.page_info.money;
            rightNum = great ? money * DataManager.Manager <ConsignmentManager>().UnitYuanBaoToJinBi : money;
        }
        return(leftNum - rightNum);
    }
Exemple #8
0
        public ConsignmentItem Create(Guid id, Guid jobItemId, Guid consignmentId, string instructions)
        {
            if (!CurrentUser.HasRole(UserRole.Member))
            {
                throw new DomainValidationException(Messages.InsufficientSecurityClearance);
            }
            if (id == Guid.Empty)
            {
                throw new ArgumentException("An ID must be supplied for the consignment item.");
            }
            var jobItem = _jobItemRepository.GetById(jobItemId);

            if (jobItem == null)
            {
                throw new ArgumentException("A valid ID must be supplied for the job item.");
            }
            if (jobItem.Job.IsPending)
            {
                throw new DomainValidationException(Messages.PendingJob);
            }
            var consignment = _consignmentRepository.GetById(consignmentId);

            if (consignment == null)
            {
                throw new ArgumentException("A valid ID must be supplied for the parent consignment.");
            }
            var consignmentItem = new ConsignmentItem
            {
                Id           = id,
                Consignment  = consignment,
                ItemNo       = _consignmentRepository.GetConsignmentItemCount(consignmentId) + 1,
                JobItem      = jobItem,
                Instructions = instructions
            };

            jobItem.Status = _listItemRepository.GetByType(ListItemType.StatusConsigned);
            ValidateAnnotatedObjectThrowOnFailure(consignmentItem);
            _jobItemRepository.EmitItemHistory(CurrentUser, jobItemId, 0, 0, String.Format("Item consigned on {0}", consignment.ConsignmentNo), ListItemType.StatusConsigned, ListItemType.WorkTypeAdministration);
            _consignmentItemRepository.Create(consignmentItem);
            _jobItemRepository.Update(jobItem);
            return(consignmentItem);
        }
Exemple #9
0
        public async Task <ActionResult> AddProduct(int?id, string stockCode)
        {
            if (id == null || string.IsNullOrEmpty(stockCode))
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Consignment consignment = await db.Consignments.FindAsync(id);

            if (consignment == null)
            {
                return(HttpNotFound());
            }
            Product product = await db.Products.Where(p => p.StockCode == stockCode).FirstOrDefaultAsync();

            if (product == null)
            {
                return(HttpNotFound());
            }
            ConsignmentItem ci = await db.ConsignmentItems.Where(c => c.ConsignmentID == consignment.ID && c.ProductID == product.ID).FirstOrDefaultAsync();

            if (ci != null)
            {
                ci.Quantity++;
                db.Entry(ci).Property(p => p.Quantity).IsModified = true;
            }
            else
            {
                ci = new ConsignmentItem {
                    ConsignmentID = consignment.ID, ProductID = product.ID, StockCode = product.StockCode, Description = product.Description, UnitPrice = product.UnitPrice
                };
                db.ConsignmentItems.Add(ci);
            }
            await db.SaveChangesAsync();

            var items = consignment.ConsignmentItems
                        .OrderBy(c => c.ID)
                        .Select(c => new { c.ID, c.ProductID, c.StockCode, c.Description, c.Quantity, c.UnitPrice })
                        .ToList();

            return(Json(items, JsonRequestBehavior.AllowGet));
        }
Exemple #10
0
        public async Task <ActionResult> DeleteItem(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ConsignmentItem ci = await db.ConsignmentItems.FindAsync(id);

            if (ci == null)
            {
                return(HttpNotFound());
            }
            db.ConsignmentItems.Remove(ci);
            await db.SaveChangesAsync();

            var items = db.ConsignmentItems
                        .Where(c => c.ConsignmentID == ci.ConsignmentID)
                        .OrderBy(c => c.ID)
                        .Select(c => new { c.ID, c.ProductID, c.StockCode, c.Description, c.Quantity, c.UnitPrice })
                        .ToList();

            return(Json(items, JsonRequestBehavior.AllowGet));
        }
Exemple #11
0
 /// <summary>
 /// 收到个人寄售信息列表
 /// </summary>
 /// <param name="cmd"></param>
 public void OnResponItemSellInfo(stItemSellInfoConsignmentUserCmd_S cmd)
 {
     if (cmd != null)
     {
         if (itemSellInfo == null)
         {
             itemSellInfo = new MyConsignItemInfo();
         }
         itemSellInfo.consignmentItemList.Clear();
         ItemSerialize itData = new ItemSerialize();
         for (int i = 0; i < cmd.item_data.Count; i++)
         {
             itData = ItemSerialize.Deserialize(cmd.item_data[i]);
             if (i < cmd.item_time_list.Count && i < cmd.item_list.Count)
             {
                 ConsignmentItem consignment = new ConsignmentItem(cmd.item_list[i].market_id, cmd.item_list[i], itData, cmd.item_time_list[i]);
                 itemSellInfo.consignmentItemList.Add(consignment);
             }
         }
         itemSellInfo.consignmentItemList.Sort(CompareConsignment);
         ConsignTotalJinBi   = cmd.gold;
         ConsignTotalYuanBao = cmd.coin;
     }
 }
Exemple #12
0
    /// <summary>
    /// 返回寄售列表
    /// </summary>
    /// <param name="cmd"></param>
    public void OnResponItemListConsignment(stResponItemListConsignmentUserCmd_S cmd)
    {
        //处理页数
        switch (ReqItemListState)
        {
        case ReqConsignListState.PreviousPage:
            CurPage = CurPage > 1 ? CurPage - 1 : 1;
            break;

        case ReqConsignListState.NextPage:
            CurPage += 1;
            break;

        default:
            CurPage = 1;
            break;
        }
        ReqItemListState = ReqConsignListState.None;
        BeginIndex       = (int)cmd.begin_index;
        EndIndex         = cmd.end_index;
        AllPage          = cmd.all_item;
        if (cmd.init_page)
        {
            CurPage = 1;
        }
        pageConsignmentItemLists.Clear();
        if (cmd.item_list.Count == cmd.item_data.Count)
        {
            ItemSerialize itemData = new ItemSerialize();
            for (int i = 0; i < cmd.item_data.Count; i++)
            {
                if (cmd.item_data[i] != null)
                {
                    itemData = ItemSerialize.Deserialize(cmd.item_data[i]);
                    ConsignmentItem consignment = new ConsignmentItem(cmd.item_list[i].market_id, cmd.item_list[i], itemData);
                    pageConsignmentItemLists.Add(consignment);
                }
            }
        }
        else
        {
            //堆叠物品  下发的itemList和ItemData不对等  需要自己赋值
            ItemSerialize itemData = new ItemSerialize();
            Dictionary <uint, ItemSerialize> tempDic = new Dictionary <uint, ItemSerialize>();
            for (int i = 0; i < cmd.item_data.Count; i++)
            {
                if (cmd.item_data[i] != null)
                {
                    itemData = ItemSerialize.Deserialize(cmd.item_data[i]);
                    if (itemData != null)
                    {
                        if (!tempDic.ContainsKey(itemData.dwObjectID))
                        {
                            tempDic.Add(itemData.dwObjectID, itemData);
                        }
                    }
                }
            }

            for (int i = 0; i < cmd.item_list.Count; i++)
            {
                if (cmd.item_list[i] != null)
                {
                    if (tempDic.ContainsKey(cmd.item_list[i].item_base_id))
                    {
                        ConsignmentItem consignment = new ConsignmentItem(cmd.item_list[i].market_id, cmd.item_list[i], tempDic[cmd.item_list[i].item_base_id]);
                        pageConsignmentItemLists.Add(consignment);
                    }
                }
            }
        }
        pageConsignmentItemLists.Sort(CompareConsignment);
        DispatchValueUpdateEvent(new ValueUpdateEventArgs(SaleItemDispatchEvents.RefreshSaleItemInfo.ToString(), null, null));
    }
 public void Setup()
 {
     _domainValidationException = null;
     _jobItemToUpdate           = new JobItem
     {
         Id  = Guid.NewGuid(),
         Job = new Job
         {
             Id          = Guid.NewGuid(),
             JobNo       = "JR2000",
             CreatedBy   = _userContext.GetCurrentUser(),
             OrderNo     = "ORDER12345",
             DateCreated = DateTime.UtcNow,
             Customer    = new Customer {
                 Id = Guid.NewGuid(), Name = "Gael Ltd"
             }
         },
         ItemNo     = 1,
         SerialNo   = "12345",
         Instrument = new Instrument
         {
             Id = Guid.NewGuid(), Manufacturer = "Druck", ModelNo = "DPI601IS", Range = "None", Description = "Digital Pressure Indicator"
         },
         CalPeriod   = 12,
         Created     = DateTime.UtcNow,
         CreatedUser = _userContext.GetCurrentUser(),
     };
     _jobItemforEditPendingId = Guid.NewGuid();
     _jobItemForEditPending   = new JobItem
     {
         Id  = _jobItemforEditPendingId,
         Job = new Job
         {
             Id          = Guid.NewGuid(),
             JobNo       = "JR2001",
             CreatedBy   = _userContext.GetCurrentUser(),
             OrderNo     = "ORDER12345",
             DateCreated = DateTime.UtcNow,
             Customer    = new Customer {
                 Id = Guid.NewGuid(), Name = "Gael Ltd"
             }
         },
         ItemNo     = 1,
         SerialNo   = "12345",
         Instrument = new Instrument
         {
             Id           = Guid.NewGuid(),
             Manufacturer = "Druck",
             ModelNo      = "DPI601IS",
             Range        = "None",
             Description  = "Digital Pressure Indicator"
         },
         CalPeriod   = 12,
         Created     = DateTime.UtcNow,
         CreatedUser = _userContext.GetCurrentUser(),
     };
     _pendingItemId      = Guid.NewGuid();
     _pendingItemForEdit = new PendingConsignmentItem
     {
         Id       = _pendingItemId,
         Supplier = new Supplier {
             Id = Guid.NewGuid(), Name = "Gael Ltd"
         },
         JobItem      = _jobItemForEditPending,
         Instructions = "some instructions"
     };
     _consignmentItemForEditId = Guid.NewGuid();
     _consignmentItemForEdit   = new ConsignmentItem
     {
         Id           = _consignmentItemForEditId,
         ItemNo       = 1,
         Instructions = "some instructions",
         Consignment  = new Consignment
         {
             Id            = Guid.NewGuid(),
             ConsignmentNo = "CR2000",
             IsOrdered     = false
         }
     };
 }