public ActionResult TOAddPage()
        {
            var viewResult = new TransferOrderViewResult();

            string pOID = Request.QueryString["poid"];

            if (!string.IsNullOrEmpty(pOID))
            {
                var service    = new VInventoryListService();
                int totalCount = 0;

                var queryResult = service.Query(new VInventoryListQueryConditions {
                    POID = pOID
                }, out totalCount);
                if (totalCount != 0)
                {
                    viewResult.OutName = queryResult.First().WarehouseName;
                    viewResult.Details = EntityHelper.CopyEntities(queryResult, new List <TODetailsViewResult>());
                }
            }

            var orderForeID = BuilderDictionary.ForeIDDictionary.FirstOrDefault(i => i.Key == typeof(TransferOrderViewResult)).Value;
            var nowDate     = DateTime.Now;

            EntityHelper.SetEntityID(viewResult, orderForeID + nowDate.ToString("yyyyMMddHHmmss"));
            EntityHelper.SetPropertyValue(viewResult, "Date", nowDate);

            return(View("TOAddPage", viewResult));
        }
Пример #2
0
        public ActionResult Index()
        {
            int totalCount      = 0;
            var queryConditions = new BillQueryConditions {
                OrderByDescending = "Date", PageSize = 15, PageIndex = 1
            };

            if (Request.QueryString.HasKeys())
            {
                queryConditions.GetValues(Request.QueryString);
            }

            if (queryConditions.PageIndex < 1)
            {
                queryConditions.PageIndex = 1;
            }

            var service = new BillService();
            var results = service.Query(queryConditions, out totalCount);

            ViewBag.ViewResults          = EntityHelper.CopyEntities(results, new List <BillViewResult>());
            ViewBag.TotalPage            = (totalCount + 14) / 15;
            ViewBag.PageIndex            = queryConditions.PageIndex;
            ViewBag.QueryConditions      = queryConditions;
            ViewBag.TimePeriodDictionary = ConverterDictionary.TimePeriodDictionary;

            return(View("Index"));
        }
Пример #3
0
        protected T SetViewResult <T, S>(T viewResult, string pOID = null)
            where T : IOrder <S>, new()
            where S : IOrderDetails, new()
        {
            if (!string.IsNullOrEmpty(pOID))
            {
                var service    = new VInventoryListService();
                int totalCount = 0;

                var queryResult = service.Query(new VInventoryListQueryConditions {
                    POID = pOID
                }, out totalCount);
                if (totalCount != 0)
                {
                    viewResult         = EntityHelper.CopyEntity(queryResult.First(), viewResult);
                    viewResult.Details = EntityHelper.CopyEntities(queryResult, new List <S>());
                }
            }

            var orderForeID = BuilderDictionary.ForeIDDictionary.FirstOrDefault(i => i.Key == typeof(T)).Value;
            var nowDate     = DateTime.Now;

            viewResult.ID   = orderForeID + nowDate.ToString("yyyyMMddHHmmss");
            viewResult.Date = nowDate;
            //EntityHelper.SetEntityID(viewResult, orderForeID + nowDate.ToString("yyyyMMddHHmmss"));
            //EntityHelper.SetPropertyValue(viewResult, "Date", nowDate);

            return(viewResult);
        }
Пример #4
0
        public ActionResult EditPage(int tableID)
        {
            var service = new VBillService();
            var vBills  = service.QueryServing(tableID);

            if (vBills == null || vBills.Count() == 0)
            {
                GetModelError(DBResult.NotFound);
                return(EditTablePage());
            }

            var billViewResult = EntityHelper.CopyEntity(vBills.First(), new BillViewResult());

            billViewResult.ID = vBills.First().BillID;

            billViewResult.Details = EntityHelper.CopyEntities(vBills, new List <BillDetailsViewResult>());
            for (int i = 1; i < billViewResult.Details.Count(); i++)
            {
                billViewResult.Details[i].ID = vBills[i].DetailsID;
            }

            ViewBag.TimePeriod = ConverterDictionary.TimePeriodDictionary.FirstOrDefault(p => p.Key == billViewResult.TimePeriod).Value;

            return(View("EditPage", billViewResult));
        }
Пример #5
0
        public ActionResult DiscountPage(int tableID)
        {
            var service = new VBillService();
            var vBills  = service.QueryServing(tableID);

            if (vBills == null || vBills.Count() == 0)
            {
                GetModelError(DBResult.NotFound);
                return(EditTablePage());
            }

            var billViewResult = EntityHelper.CopyEntity(vBills.First(), new BillViewResult());

            billViewResult.ID = vBills.First().BillID;

            billViewResult.Details = EntityHelper.CopyEntities(vBills, new List <BillDetailsViewResult>());
            for (int i = 1; i < billViewResult.Details.Count(); i++)
            {
                billViewResult.Details[i].ID = vBills[i].DetailsID;
            }

            ViewBag.Discounts = GetSelectList <Discount>(new DiscountQueryConditions {
                OrderBy = "ID", IgnoredProperties = new string[] { "IsMemberOnly" }
            }, "Description", "Description");
            ViewBag.TimePeriod = ConverterDictionary.TimePeriodDictionary.FirstOrDefault(p => p.Key == billViewResult.TimePeriod).Value;

            return(View("DiscountPage", billViewResult));
        }
Пример #6
0
        public ActionResult Index()
        {
            int totalCount      = 0;
            var queryConditions = new VInventoryListQueryConditions {
                OrderBy = "WarehouseID", PageSize = 15, PageIndex = 1
            };

            if (Request.QueryString.HasKeys())
            {
                queryConditions.GetValues(Request.QueryString);
            }

            if (queryConditions.PageIndex < 1)
            {
                queryConditions.PageIndex = 1;
            }

            var service = new VInventoryListService();
            var results = service.Query(queryConditions, out totalCount);

            ViewBag.ViewResults     = EntityHelper.CopyEntities(results, new List <VInventoryListViewResult>());
            ViewBag.TotalPage       = (totalCount + 14) / 15;
            ViewBag.PageIndex       = queryConditions.PageIndex;
            ViewBag.QueryConditions = queryConditions;

            return(View("Index"));
        }
        protected List <S> GetQueryResults <T, S>(QueryConditions queryConditions, out int totalCount)
            where T : class, new()
            where S : class, new()
        {
            var service     = ServiceHelper.GetDataService <T>();
            var results     = service.Query(queryConditions, out totalCount);
            var viewResults = EntityHelper.CopyEntities(results, new List <S>());

            return(viewResults);
        }
        protected List <S> GetQueryResults(QueryConditions queryConditions)
        {
            int totalCount = 0;

            queryConditions.GetValues(Request.QueryString);

            if (queryConditions.PageIndex < 1)
            {
                queryConditions.PageIndex = 1;
            }

            var service     = ServiceHelper.GetDataService <T>();
            var results     = service.Query(queryConditions, out totalCount);
            var viewResults = EntityHelper.CopyEntities(results, new List <S>());

            ViewBag.ViewResults     = viewResults;
            ViewBag.TotalPage       = (totalCount + 14) / 15;
            ViewBag.PageIndex       = queryConditions.PageIndex;
            ViewBag.QueryConditions = queryConditions;

            return(viewResults);
        }
Пример #9
0
        public List <MonthlyReportViewResult> Get(DateTime date)
        {
            int      totalCount = 0;
            int      startOfTermsCount;
            DateTime monthStart = new DateTime(date.Year, date.Month, 1);

            var startOfTerms = Query <StartOfTerm>(new StartOfTermQueryConditions {
                Date = monthStart
            }, out startOfTermsCount);
            var results = Query <MonthlyReport>(new MonthlyReportQueryConditions {
                Date = monthStart
            }, out totalCount);

            if (results != null && totalCount != 0)
            {
                var viewResults = EntityHelper.CopyEntities(results, new List <MonthlyReportViewResult>());
                foreach (var viewResult in viewResults)
                {
                    int detailsCount = 0;
                    viewResult.Details = new List <MReportDetailsViewResult>();

                    var details = Query <MReportDetails>(new MReportDetailsQueryConditions {
                        OrderID = viewResult.ID
                    }, out detailsCount);
                    if (details != null && detailsCount != 0)
                    {
                        viewResult.Details.AddRange(EntityHelper.CopyEntities(details, new List <MReportDetailsViewResult>()));
                        foreach (var detailsViewResult in viewResult.Details)
                        {
                            detailsViewResult.StartOfTerm = new StartOfTermViewResult();

                            var startOfTerm = startOfTerms
                                              .FirstOrDefault(s => s.ProductName == detailsViewResult.ProductName && s.WarehouseName == viewResult.WarehouseName);
                            if (startOfTerms != null)
                            {
                                detailsViewResult.StartOfTerm = EntityHelper.CopyEntity(startOfTerm, new StartOfTermViewResult());
                            }
                        }
                    }
                }

                return(viewResults);
            }

            if (startOfTermsCount == 0)
            {
                int      lastReportsCount = 0;
                DateTime lastMonthStart   = date.Month == 1 ? new DateTime(date.Year - 1, 12, 1) : new DateTime(date.Year, date.Month - 1, 1);

                var lastReports = Query <MonthlyReport>(new MonthlyReportQueryConditions {
                    Date = lastMonthStart
                }, out lastReportsCount);
                if (lastReportsCount != 0)
                {
                    foreach (var lastReport in lastReports)
                    {
                        int detailsCount = 0;

                        var details = Query <MReportDetails>(new MReportDetailsQueryConditions {
                            OrderID = lastReport.ID
                        }, out detailsCount);
                        if (detailsCount != 0)
                        {
                            foreach (var detail in details)
                            {
                                var newStartOfTerm = new StartOfTerm
                                {
                                    Date          = lastReport.Date,
                                    WarehouseName = lastReport.WarehouseName,
                                    ProductName   = detail.ProductName,
                                    Price         = detail.SListPrice,
                                    Amount        = detail.SListAmount,
                                    TotalPrice    = detail.SListTotalPrice
                                };

                                var termDBResult = AddStartOfTerm(newStartOfTerm);
                                if (termDBResult != DBResult.Succeed)
                                {
                                    return(new List <MonthlyReportViewResult>());
                                }
                            }
                        }
                    }
                }
            }

            var calViewResults = CalculateMonthlyReport(monthStart);

            var dBResult = Add(calViewResults);

            if (dBResult != DBResult.Succeed)
            {
                return(new List <MonthlyReportViewResult>());
            }

            return(calViewResults);
        }