/// <summary>
        /// 获取备注信息支出收入明细
        /// </summary>
        /// <param name="start"></param>
        /// <param name="end"></param>
        /// <returns></returns>
        public NoteDetailViewModel GetNoteDetails(DateTime start, DateTime end)
        {
            var result  = new NoteDetailViewModel();
            var details = DetailService.GetAll(d => d.Date >= start.Date && d.Date <= end.Date, d => d.Date, SqlSugar.OrderByType.Desc);

            //按照支出收入进行分类且将支出类型明细的涉及金额变为负数
            result.Expend = details.Where(d => d.Type == Type.支出).Select(d =>
            {
                var model = new NoteDetailItem()
                {
                    Amount  = d.Amount > 0 ? -d.Amount : d.Amount,
                    Note    = d.Note,
                    TagID   = d.TagID.ToString(),
                    TagInfo = d.TagInfo,
                    Type    = d.Type
                };
                return(model);
            }).ToList();
            result.Income = details.Where(d => d.Type == Type.收入).Select(d =>
            {
                var model = new NoteDetailItem()
                {
                    Amount  = d.Amount,
                    Note    = d.Note,
                    TagID   = d.TagID.ToString(),
                    TagInfo = d.TagInfo,
                    Type    = d.Type
                };
                return(model);
            }).ToList();

            return(result);
        }
        // GET: NoteDetail
        public ActionResult NoteDetail(int?NoteID)
        {
            if (Session["ID"] != null)
            {
                int  id         = Convert.ToInt32(Session["ID"]);
                int  RoleMember = Convert.ToInt32(Enums.UserRoleId.Member);
                User user       = db.Users.Where(x => x.ID == id).FirstOrDefault();
                if (user.RoleID != RoleMember)
                {
                    NoteDetailViewModel model = new NoteDetailViewModel();

                    model.sellNote    = db.SellNotes.Where(x => x.ID == NoteID).FirstOrDefault();
                    model.noteReviews = db.NoteReviews.Where(x => x.NoteID == NoteID).ToList();
                    model.ReviewCount = model.noteReviews.Count();
                    model.ReportCount = db.NoteReports.Where(x => x.NoteID == NoteID).Count();
                    if (model.ReviewCount != 0)
                    {
                        model.Rating = (decimal)db.NoteReviews.Where(x => x.NoteID == NoteID).Select(x => x.Ratings).Average();
                    }
                    else
                    {
                        model.Rating = 0;
                    }
                    return(View(model));
                }
                else
                {
                    return(RedirectToAction("Index", "Home"));
                }
            }
            else
            {
                return(RedirectToAction("Login", "Account"));
            }
        }
Ejemplo n.º 3
0
        public ActionResult AddPost(NoteDetailViewModel model)
        {
            if (ModelState.IsValid)
            {
                _service.Create(model, User.Identity.GetUserId());
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }
        public ActionResult NoteDetails(int id)
        {
            ViewBag.navClass    = "white-nav";
            ViewBag.SearchNotes = "active";

            ViewBag.SadminPhone = db.SystemConfigurations.FirstOrDefault(x => x.Key == "SupportContactNumber").Value;

            if (Session["ID"] != null)
            {
                var user = db.Users.FirstOrDefault(x => x.Email == User.Identity.Name);

                //check user enter detail of profile or not
                if (user.RoleID == 3 || user.RoleID == 4)
                {
                    ViewBag.isAdmin = user.RoleID;
                }
            }

            var totalReportedIssue = db.SellerNotesReportedIssues.Where(x => x.NoteID == id).Count();

            //total review
            var rating      = db.SellerNotesReviews.Where(x => x.NoteID == id && x.IsActive == true).Average(x => (int?)x.Ratings) ?? 0;
            var totalreview = db.SellerNotesReviews.Where(x => x.NoteID == id && x.IsActive == true).Count();

            //fetch country name
            var country = db.SellerNotes.FirstOrDefault(x => x.ID == id).Country;

            ViewBag.countryName = db.Countries.FirstOrDefault(x => x.ID == country && x.IsActive == true).Name;

            //Querystring
            IEnumerable <ReviewsModel> reviews = from review in db.SellerNotesReviews
                                                 join users in db.Users on review.ReviewedByID equals users.ID
                                                 join userprofile in db.UserProfile on review.ReviewedByID equals userprofile.UserID
                                                 where review.NoteID == id && review.IsActive == true
                                                 orderby review.Ratings descending, review.CreatedDate descending
                                       select new ReviewsModel {
                sellerNotesReviews = review, users = users, userProfiles = userprofile
            };

            NoteDetailViewModel detail = new NoteDetailViewModel();

            detail.sellnote      = db.SellerNotes.FirstOrDefault(x => x.ID == id);
            detail.reportedIssue = totalReportedIssue;
            detail.TotalReview   = totalreview;
            detail.AvgRating     = (int)rating;
            detail.notesreview   = reviews;

            //show popup box
            if (TempData["Requested"] != null)
            {
                ViewBag.Requested = "Requested";
            }

            return(View(detail));
        }
Ejemplo n.º 5
0
        // GET: Notes/Create
        public ActionResult Create(int id)
        {
            NoteDetailViewModel noteDetailViewModel = new NoteDetailViewModel();

            noteDetailViewModel.CustomerId   = id;
            noteDetailViewModel.Active       = true;
            noteDetailViewModel.CreatedDate  = DateTime.Now;
            noteDetailViewModel.ModifiedDate = DateTime.Now;

            return(View(noteDetailViewModel));
        }
Ejemplo n.º 6
0
 public ActionResult Edit([Bind(Include = "NoteId,Value,CreatedDate,ModifiedDate,Active,CustomerId")] NoteDetailViewModel noteDetailViewModel)
 {
     if (ModelState.IsValid)
     {
         Note note = db.Notes.Find(noteDetailViewModel.NoteId);
         note.Value           = noteDetailViewModel.Value;
         note.ModifiedDate    = DateTime.Now;
         db.Entry(note).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Edit", "Customers", new { id = note.Customer.CustomerId }));
     }
     return(View(noteDetailViewModel));
 }
Ejemplo n.º 7
0
        public IHttpActionResult Put(Guid key, NoteDetailViewModel delta)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            using (var unitOfWork = _unitOfWorkManager.NewUnitOfWork())
            {
                _noteDetail.UpdateNoteDetail(delta);
                unitOfWork.Commit();
                return(StatusCode(HttpStatusCode.OK));
            }
        }
Ejemplo n.º 8
0
        public NoteDetailPage(Note note)
        {
            _viewModel = new NoteDetailViewModel();
            InitializeComponent();

            _viewModel.CurrentNoteId = note.NoteId;
            _viewModel.NoteTitle     = note.Title;
            _viewModel.Content       = note.Content;
            _viewModel.Category      = note.Category;
            _viewModel.Date          = note.CreatedDate;
            _viewModel.Time          = note.CreatedDate.TimeOfDay;
            _viewModel.AccessLevel   = note.AccessLevel;

            BindingContext = _viewModel;
        }
Ejemplo n.º 9
0
        public bool Create(NoteDetailViewModel model, string requestingUserId)
        {
            using (var context = Dependencies.DataContext)
            {
                context.Notes.Add(new Note()
                {
                    ApplicationUserId = requestingUserId,
                    NoteId            = model.Id,
                    Title             = model.Title,
                    Contents          = model.Content,
                    DateCreated       = DateTime.Now,
                    DateModified      = DateTime.Now
                });

                return(1 == context.SaveChanges());
            }
        }
Ejemplo n.º 10
0
        public ActionResult NoteDetail(int?noteId)
        {
            NoteDetailViewModel model = new NoteDetailViewModel();

            model.sellNote    = db.SellNotes.Where(x => x.ID == noteId).FirstOrDefault();
            model.noteReviews = db.NoteReviews.Where(x => x.NoteID == noteId).ToList();
            model.ReviewCount = model.noteReviews.Count();
            model.ReportCount = db.NoteReports.Where(x => x.NoteID == noteId).Count();
            if (model.ReviewCount != 0)
            {
                model.Rating = (decimal)db.NoteReviews.Where(x => x.NoteID == noteId).Select(x => x.Ratings).Average();
            }
            else
            {
                model.Rating = 0;
            }
            return(View(model));
        }
Ejemplo n.º 11
0
        public bool UpdateNoteDetail(NoteDetailViewModel model)
        {
            var NoteDetail = Find(model.Id.Value);

            if (NoteDetail != null)
            {
                NoteDetail.Price            = model.Price;
                NoteDetail.Quantity         = model.Quantity;
                NoteDetail.User             = _userRepository.Find(HttpContext.Current.User.Identity.GetUserId());
                NoteDetail.Product          = _product.Find(model.ProductId);
                NoteDetail.LastModifiedDate = DateTime.Now;
                Update(NoteDetail);
                return(true);
            }
            else
            {
                throw new Exception("Không tìm thấy chi tiết phiếu");
            }
        }
Ejemplo n.º 12
0
        public ActionResult Details(int id)
        {
            NoteDTO note = _bl.Notes.GetItemById(id);

            if (note != null)
            {
                note.Category = _bl.Categories.GetItemById(note.CategoryId)?.Name;
                note.Owner    = _bl.Users.GetItemById(note.OwnerId)?.NameOrLogin;
                IMapper             mapper = new MapperConfiguration(c => c.CreateMap <NoteDTO, NoteDetailViewModel>()).CreateMapper();
                NoteDetailViewModel model  = mapper.Map <NoteDTO, NoteDetailViewModel>(note);
                model.References = new List <NoteReferenceViewModel>();
                mapper           = new MapperConfiguration(c => c.CreateMap <NoteReferenceDTO, NoteReferenceViewModel>()).CreateMapper();
                model.References = mapper.Map <IEnumerable <NoteReferenceDTO>, List <NoteReferenceViewModel> >(_bl.NoteReferences.GetReferencesTo(id));
                return(PartialView("Details", model));
            }
            else
            {
                ErrorViewModel error = new ErrorViewModel("Запись заметки не найдена");
                return(PartialView("PartialError", error));
            }
        }
Ejemplo n.º 13
0
        // POST: odata/Warehouse
        public IHttpActionResult Post(NoteDetailViewModel delta)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            // TODO: Add create logic here.
            using (var unitOfWork = _unitOfWorkManager.NewUnitOfWork())
            {
                var result = _noteDetail.AddNoteDetail(delta);
                unitOfWork.Commit();
                var resultObject = new NoteDetailViewModel()
                {
                    Id          = result.Id,
                    Price       = result.Price,
                    ProductName = result.Product.ProductName,
                    Quantity    = result.Quantity
                };
                return(Created(resultObject));
            }
        }
Ejemplo n.º 14
0
        public ActionResult getNotesByPatientID(int patientID, int?skip)
        {
            var noteDetail = _iPatientService.getNotesByPatientID(patientID, skip.Value, GlobalConst.Records.LandingTake);
            NoteDetailViewModel _objNote = new NoteDetailViewModel();

            _objNote.NotesDetails = Mapper.Map <IEnumerable <NoteDetail> >(noteDetail.NotesDetails);
            foreach (NoteDetail viewmodel in _objNote.NotesDetails)
            {
                Regex regex = new Regex("\\<[^\\>]*\\>");
                viewmodel.ShortNotes = regex.Replace(HttpUtility.HtmlDecode(viewmodel.Notes), String.Empty);
                if (viewmodel.ShortNotes.Length > 25)
                {
                    viewmodel.ShortNotes = regex.Replace(HttpUtility.HtmlDecode(viewmodel.Notes), String.Empty).Substring(0, 25) + "...";
                    viewmodel.ShortNotes = viewmodel.ShortNotes.Replace("&nbsp;", "") + "...";
                }
                else
                {
                    viewmodel.ShortNotes = viewmodel.ShortNotes.Replace("&nbsp;", "") + "...";
                }
            }
            _objNote.TotalCount = noteDetail.TotalCount;
            return(Json(_objNote));
        }
Ejemplo n.º 15
0
 public NoteDetail AddNoteDetail(NoteDetailViewModel model)
 {
     if (Queryable().Any(x => x.Id == model.Id))
     {
         throw new Exception("Đã tồn tại Id");
     }
     else
     {
         var result = new NoteDetail();
         result.Price            = model.Price;
         result.Quantity         = model.Quantity;
         result.User             = _userRepository.Find(HttpContext.Current.User.Identity.GetUserId());
         result.Note             = _note.Find(model.NoteId);
         result.Product          = _product.Find(model.ProductId);
         result.CreatedDate      = DateTime.Now;
         result.LastModifiedDate = DateTime.Now;
         var note = _note.Find(model.NoteId);
         note.Total = Queryable().Where(x => x.Note.Id == note.Id && x.Delete == false).Sum(x => x.Quantity * x.Price) + (model.Quantity * model.Price);
         _note.Update(note);
         _note.SaveChanges();
         return(result);
     }
 }
Ejemplo n.º 16
0
 public NoteDetailPage()
 {
     InitializeComponent();
     BindingContext = new NoteDetailViewModel();
 }
Ejemplo n.º 17
0
        public ActionResult UploadNote()
        {
            Request.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Origin", "*");
            Request.RequestContext.HttpContext.Response.AddHeader("Access-Control-Allow-Headers", "*");
            if (Request.Files.Count > 0)
            {
                try
                {
                    var NoteList = new List <NoteViewModel>();
                    //  Get all files from Request object
                    string firstfname = "";
                    string fname;
                    HttpFileCollectionBase files = Request.Files;
                    for (int i = 0; i < files.Count; i++)
                    {
                        HttpPostedFileBase file = files[i];

                        // Checking for Internet Explorer
                        if (Request.Browser.Browser.ToUpper() == "IE" || Request.Browser.Browser.ToUpper() == "INTERNETEXPLORER")
                        {
                            string[] testfiles = file.FileName.Split(new char[] { '\\' });
                            fname = testfiles[testfiles.Length - 1];
                        }
                        else
                        {
                            fname = file.FileName;
                        }
                        // Get the complete folder path and store the file inside it.
                        fname      = Path.Combine(Server.MapPath("~/Uploads/"), fname);
                        firstfname = fname;
                        file.SaveAs(fname);
                    }
                    using (XLWorkbook wb = new XLWorkbook(firstfname))
                    {
                        var ws         = wb.Worksheet(1);
                        var sheet      = wb.Worksheet(1).RowsUsed();
                        var usedColumn = wb.Worksheet(1).ColumnsUsed();
                        var ExceptRow  = 1;
                        foreach (var dataRow in sheet)
                        {
                            var Note = new NoteViewModel();
                            if (ExceptRow == 1)
                            {
                                ExceptRow++;
                            }
                            else
                            {
                                var NoteType = ws.Cell(1, 1).Value.ToString();
                                switch (NoteType)
                                {
                                case "NK":
                                {
                                    Note.Code = "NK" + DateTime.Now.ToString("yy") + DateTime.Now.ToString("MM") + (_note.Queryable().Where(mi => mi.Source.Id == null && mi.CreatedDate.Month == DateTime.Now.Month &&
                                                                                                                                            mi.CreatedDate.Year == DateTime.Now.Year).Count() + 1).ToString("D3");
                                    Note.Source = null;
                                    var destCode = dataRow.Cell("A").Value.ToString();
                                    Note.DestinationId        = _warehouse.Queryable().Where(x => x.WarehouseCode.Equals(destCode)).Select(x => x.Id).FirstOrDefault();
                                    Note.DestinationWarehouse = _warehouse.Queryable().Where(x => x.WarehouseCode.Equals(destCode)).Select(x => x.Name).FirstOrDefault();
                                    Note.Details = new List <NoteDetailViewModel>();
                                    for (int i = 2; i < usedColumn.Count(); i++)
                                    {
                                        if (!(dataRow.Cell(i).Value.ToString() == ""))
                                        {
                                            var detail        = new NoteDetailViewModel();
                                            var NumberProduct = (double)dataRow.Cell(i).Value;
                                            var detailCode    = ws.Cell(1, i).Value.ToString();
                                            var price         = _product.Queryable().Where(p => p.ProductName.Equals(detailCode)).Select(p => p.Price).FirstOrDefault();
                                            detail.Price       = price;
                                            detail.Quantity    = (int)NumberProduct;
                                            detail.ProductId   = _product.Queryable().Where(p => p.ProductName.Equals(detailCode)).Select(p => p.Id).FirstOrDefault();
                                            detail.ProductName = _product.Queryable().Where(p => p.ProductName.Equals(detailCode)).Select(p => p.ProductName).FirstOrDefault();
                                            detail.Unit        = _product.Queryable().Where(p => p.ProductName.Equals(detailCode)).Select(p => p.Unit).FirstOrDefault();
                                            Note.Details.Add(detail);
                                        }
                                    }
                                    Note.Noted = ws.Cell(ExceptRow, usedColumn.Count()).Value.ToString();
                                    Note.Total = Note.Details.Sum(x => x.Price * x.Quantity);
                                    NoteList.Add(Note);
                                    ExceptRow++;
                                    break;
                                }

                                case "XK":
                                {
                                    Note.Code = "XK" + DateTime.Now.ToString("yy") + DateTime.Now.ToString("MM") + (_note.Queryable().Where(mi => mi.Destination.Id == null && mi.CreatedDate.Month == DateTime.Now.Month &&
                                                                                                                                            mi.CreatedDate.Year == DateTime.Now.Year).Count() + 1).ToString("D3");
                                    var sourceCode = dataRow.Cell("A").Value.ToString();
                                    Note.SourceId        = _warehouse.Queryable().Where(s => s.WarehouseCode.Equals(sourceCode)).Select(s => s.Id).FirstOrDefault();
                                    Note.Destination     = null;
                                    Note.SourceWarehouse = _warehouse.Queryable().Where(s => s.WarehouseCode.Equals(sourceCode)).Select(s => s.Name).FirstOrDefault();
                                    Note.Details         = new List <NoteDetailViewModel>();
                                    for (int i = 2; i < usedColumn.Count(); i++)
                                    {
                                        if (!(dataRow.Cell(i).Value.ToString() == ""))
                                        {
                                            var detail        = new NoteDetailViewModel();
                                            var NumberProduct = (double)dataRow.Cell(i).Value;
                                            var detailCode    = ws.Cell(1, i).Value.ToString();
                                            var price         = _product.Queryable().Where(p => p.ProductName.Equals(detailCode)).Select(p => p.Price).FirstOrDefault();
                                            detail.Price       = price;
                                            detail.Quantity    = (int)NumberProduct;
                                            detail.ProductId   = _product.Queryable().Where(p => p.ProductName.Equals(detailCode)).Select(p => p.Id).FirstOrDefault();
                                            detail.ProductName = _product.Queryable().Where(p => p.ProductName.Equals(detailCode)).Select(p => p.ProductName).FirstOrDefault();
                                            detail.Unit        = _product.Queryable().Where(p => p.ProductName.Equals(detailCode)).Select(p => p.Unit).FirstOrDefault();
                                            Note.Details.Add(detail);
                                        }
                                    }
                                    Note.Noted = ws.Cell(ExceptRow, usedColumn.Count()).Value.ToString();
                                    Note.Total = Note.Details.Sum(x => x.Price * x.Quantity);
                                    NoteList.Add(Note);
                                    ExceptRow++;
                                    break;
                                }

                                case "CK":
                                {
                                    break;
                                }
                                }
                            }
                        }

                        //using (MemoryStream stream = new MemoryStream())
                        //{
                        //    wb.SaveAs(stream);
                        //    return File(stream.ToArray(), "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "PhieuNhapKho.xlsx");
                        //}
                    }
                    // Returns message that successfully uploaded
                    return(Json(NoteList, JsonRequestBehavior.AllowGet));
                }
                catch (Exception ex)
                {
                    return(Json("Error occurred. Error details: " + ex.Message));
                }
            }
            else
            {
                return(Json("No files selected."));
            }
        }
Ejemplo n.º 18
0
 public NoteDetailPage()
 {
     InitializeComponent(); BindingContext = _viewModel = App.Current.Services.GetService <NoteDetailViewModel>();
 }
Ejemplo n.º 19
0
        public ItemDetailPage(NoteDetailViewModel viewModel)
        {
            InitializeComponent();

            BindingContext = _viewModel = viewModel;
        }