Exemple #1
0
        public override IEnumerable <AccessoryReceiptModel> ExportAccessoryReceiptReport(IMongoCollection <AccessoryReceipt> _accessoryReceipt)
        {
            List <AccessoryReceiptModel> res = new List <AccessoryReceiptModel>();
            List <Tuple <DateTime, string, int, string, double> > temp = new List <Tuple <DateTime, string, int, string, double> >();
            var accessoryReceiptFilterBuilder = Builders <AccessoryReceipt> .Filter;
            var accessoryReceiptFilter        = accessoryReceiptFilterBuilder.Gte("CreatedDate", _start)
                                                & accessoryReceiptFilterBuilder.Lt("CreatedDate", _end);
            var dataAccessoryReceipt = _accessoryReceipt.Find(accessoryReceiptFilter)
                                       .ToList();

            foreach (var data in dataAccessoryReceipt)
            {
                AccessoryReceiptDetail[] details = _accessoryReceiptService.GetDetails(data.Id);
                foreach (var accDetail in details)
                {
                    temp.Add(new Tuple <DateTime, string, int, string, double>(data.CreatedDate, accDetail.AccessoryId, accDetail.Quantity
                                                                               , accDetail.Unit, accDetail.UnitPrice));
                }
            }
            foreach (var acc in temp)
            {
                var dataAccessory       = _accessoryService.Get(acc.Item2);
                AccessoryReceiptModel a = new AccessoryReceiptModel(acc.Item1, dataAccessory.Name, acc.Item3, acc.Item4, acc.Item5, dataAccessory.Provider.Name);
                res.Add(a);
            }
            return(res);
        }
        public ActionResult <List <ReceiptDetailsModel> > GetDetails(string id)
        {
            var result  = new List <ReceiptDetailsModel>();
            var details = _accReceiptService.GetDetails(id);

            foreach (var detail in details)
            {
                var acc = _accessoryService.Get(detail.AccessoryId);
                result.Add(new ReceiptDetailsModel()
                {
                    Name         = acc.Name,
                    Unit         = detail.Unit,
                    UnitPrice    = detail.UnitPrice,
                    DateExpired  = detail.ExpiredTime,
                    ProviderName = acc.Provider?.Name,
                    TypeName     = acc.AccessoryType?.Name,
                    Quantity     = detail.Quantity
                });
            }

            return(result);
        }