Exemplo n.º 1
0
        /// <summary>
        /// Prepare paged vendor note list model
        /// </summary>
        /// <param name="searchModel">Vendor note search model</param>
        /// <param name="vendor">Vendor</param>
        /// <returns>Vendor note list model</returns>
        public virtual VendorNoteListModel PrepareVendorNoteListModel(VendorNoteSearchModel searchModel, Vendor vendor)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            if (vendor == null)
            {
                throw new ArgumentNullException(nameof(vendor));
            }

            //get vendor notes
            var vendorNotes = vendor.VendorNotes.OrderByDescending(note => note.CreatedOnUtc).ToList();

            //prepare list model
            var model = new VendorNoteListModel
            {
                Data = vendorNotes.PaginationByRequestModel(searchModel).Select(note =>
                {
                    //fill in model values from the entity
                    var vendorNoteModel = new VendorNoteModel
                    {
                        Id       = note.Id,
                        VendorId = note.VendorId
                    };

                    //convert dates to the user time
                    vendorNoteModel.CreatedOn = _dateTimeHelper.ConvertToUserTime(note.CreatedOnUtc, DateTimeKind.Utc);

                    //fill in additional values (not existing in the entity)
                    vendorNoteModel.Note = _vendorService.FormatVendorNoteText(note);

                    return(vendorNoteModel);
                }),
                Total = vendorNotes.Count
            };

            return(model);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Prepare paged vendor note list model
        /// </summary>
        /// <param name="searchModel">Vendor note search model</param>
        /// <param name="vendor">Vendor</param>
        /// <returns>Vendor note list model</returns>
        public virtual VendorNoteListModel PrepareVendorNoteListModel(VendorNoteSearchModel searchModel, Vendor vendor)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            if (vendor == null)
            {
                throw new ArgumentNullException(nameof(vendor));
            }

            //get vendor notes
            var vendorNotes = _vendorService.GetVendorNotesByVendor(vendor.Id, searchModel.Page - 1, searchModel.PageSize);

            //prepare list model
            var model = new VendorNoteListModel().PrepareToGrid(searchModel, vendorNotes, () =>
            {
                //fill in model values from the entity
                return(vendorNotes.Select(note =>
                {
                    //fill in model values from the entity
                    var vendorNoteModel = note.ToModel <VendorNoteModel>();

                    //convert dates to the user time
                    vendorNoteModel.CreatedOn = _dateTimeHelper.ConvertToUserTime(note.CreatedOnUtc, DateTimeKind.Utc);

                    //fill in additional values (not existing in the entity)
                    vendorNoteModel.Note = _vendorService.FormatVendorNoteText(note);

                    return vendorNoteModel;
                }));
            });

            return(model);
        }