Exemplo n.º 1
0
        public PagerInfo <SaleDto> GetPagedList(GetSaleOrderQueryRequest request, int uid)
        {
            var filter       = Mapper.Map <GetSaleOrderQueryRequest, SaleOrderFilter>(request);
            var pagerRequest = new Domain.PagerRequest(request.Page ?? 1, request.PageSize ?? 10);

            if (request.EndDate != null || request.StartDate != null)
            {
                var daterange = new DateRangeFilter {
                    EndDateTime = request.EndDate, StartDateTime = request.StartDate
                };

                filter.DateRange = daterange;
            }

            int total;
            var datas = _saleOrderRepository.GetPagedList(pagerRequest, out total, filter, (SaleOrderSortOrder)(request.SortOrder ?? 0));
            var dto   = Mapper.Map <List <SalesOrderModel>, List <SaleDto> >(datas);

            var pagerdto = new PagerInfo <SaleDto>(pagerRequest, total)
            {
                Datas = dto
            };

            return(pagerdto);
        }
Exemplo n.º 2
0
        public IHttpActionResult GetNoPickupSaleOrders([FromUri] GetSaleOrderQueryRequest request, [UserId] int uid, [UserProfile] UserProfile userProfile)
        {
            return(GetList4OldApi(request, uid, userProfile));

            //request.ArrangeParams();
            //return DoFunction(() =>
            //{
            //    var saleDtos = _saleOrderService.QuerySaleOrders(request, uid);
            //    return new PageResult<SaleDto>(saleDtos, saleDtos.Count);
            //});
        }
Exemplo n.º 3
0
        private IHttpActionResult GetList4OldApi(GetSaleOrderQueryRequest request, int uid, UserProfile userProfile)
        {
            IHttpActionResult httpActionResult;
            var result = CheckDataRoleAndArrangeParams(request, userProfile, out httpActionResult);

            if (!result)
            {
                return(httpActionResult);
            }

            var dto = _salesOrderService.GetPagedList(request, uid);

            var pageResult = new PageResult <SaleDto>(dto.Datas, dto.TotalCount);

            return(RetrunHttpActionResult(pageResult));
        }
Exemplo n.º 4
0
        public IHttpActionResult GetList([FromUri] GetSaleOrderQueryRequest request, [UserId] int uid, [UserProfile] UserProfile userProfile)
        {
            if (request == null)
            {
                request = new GetSaleOrderQueryRequest();
            }
            IHttpActionResult httpActionResult;
            var result = CheckDataRoleAndArrangeParams(request, userProfile, out httpActionResult);

            if (!result)
            {
                return(httpActionResult);
            }

            var dto = _salesOrderService.GetPagedList(request, uid);

            return(RetrunHttpActionResult(dto));
        }
Exemplo n.º 5
0
        public IList <SaleDto> QuerySaleOrders(GetSaleOrderQueryRequest request, int uid)
        {
            using (var db = new YintaiHZhouContext())
            {
                var user =
                    db.OPC_AuthUsers.Where(x => x.Id == uid)
                    .Join(db.OPC_OrgInfos, u => u.OrgId, o => o.OrgID, (u, o) => new { user = u, org = o })
                    .FirstOrDefault();
                if (user == null)
                {
                    throw new OpcException("未授权的用户");
                }

                if (user.user.IsSystem)
                {
                    throw new NotImplementedException();
                }

                Expression <Func <OPC_Sale, bool> > whereCondition =
                    sale => sale.CreatedDate > request.StartDate && sale.CreatedDate < request.EndDate;

                if (!string.IsNullOrEmpty(request.SaleOrderNo))
                {
                    whereCondition = whereCondition.And(sale => sale.SaleOrderNo == request.SaleOrderNo);
                }

                if (!string.IsNullOrEmpty(request.OrderNo))
                {
                    whereCondition = whereCondition.And(sale => sale.OrderNo == request.OrderNo);
                }



                return
                    (db.OPC_Sales.Where(whereCondition)
                     .Join(db.Sections.Where(s => s.StoreId == user.org.StoreOrSectionID)
                           .Join(db.Stores, s => s.StoreId, x => x.Id, (section, store) => new { section, store }), o => o.SectionId, s => s.section.Id, (o, s) => new { o, store = s })
                     .Join(db.OrderTransactions, o => o.o.OrderNo, ot => ot.OrderNo, (o, ot) => new { o, ot })
                     .Join(db.PaymentMethods, ot => ot.ot.PaymentCode, pm => pm.Code, (ot, pm) => new SaleDto()
                {
                    Id = ot.o.o.Id,
                    OrderNo = ot.o.o.OrderNo,
                    SaleOrderNo = ot.o.o.SaleOrderNo,
                    SalesType = ot.o.o.SalesType,
                    ShipViaId = ot.o.o.ShipViaId,
                    Status = ot.o.o.Status,
                    ShippingCode = ot.o.o.ShippingCode,
                    ShippingFee = ot.o.o.ShippingFee.HasValue ? ot.o.o.ShippingFee.Value : 0m,
                    ShippingStatus = ot.o.o.ShippingStatus,
                    ShippingStatusName = ot.o.o.ShippingStatus.HasValue ? ((EnumSaleOrderStatus)ot.o.o.ShippingStatus.Value).GetDescription() : String.Empty,
                    ShippingRemark = ot.o.o.ShippingRemark,
                    SellDate = ot.ot.CreateDate,
                    IfTrans = ot.o.o.IfTrans.HasValue && ot.o.o.IfTrans.Value ? "是" : "否",
                    TransStatus = ot.o.o.TransStatus.HasValue && ot.o.o.TransStatus.Value == 1 ? "调拨" : String.Empty,
                    SalesAmount = ot.o.o.SalesAmount,
                    SalesCount = ot.o.o.SalesCount,
                    CashStatus = ot.o.o.CashStatus,
                    CashNum = ot.o.o.CashNum,
                    CashDate = ot.o.o.CashDate,
                    SectionId = ot.o.o.SectionId,
                    PrintTimes = ot.o.o.PrintTimes,
                    Remark = ot.o.o.Remark,
                    RemarkDate = ot.o.o.RemarkDate,
                    //CreatedDate = ot.o.CreatedDate,
                    //CreatedUser = ot.o.CreatedUser,
                    //UpdatedDate = ot.o.UpdatedDate.Value,
                    //UpdatedUser = ot.o.UpdatedUser.Value,
                    StatusName = ((EnumSaleOrderStatus)ot.o.o.Status).GetDescription(),
                    CashStatusName = ot.o.o.CashStatus.HasValue ? ((EnumCashStatus)ot.o.o.CashStatus).GetDescription() : string.Empty,
                    StoreName = ot.o.store.store.Name,
                    //InvoiceSubject = ot.o.o.
                    SectionName = ot.o.store.section.Name,
                    TransNo = ot.ot.TransNo,
                }).ToList());
            }
        }