Пример #1
0
        public TransportRecordListModel QueryDailyTransportModel(string clientName, DateTime deliverDate, string received, string paid, string error)
        {
            TransportRecordListModel listModel = new TransportRecordListModel();

            using (SQLDBDataContext context = new SQLDBDataContext())
            {
                int totalCount = context.TransportRecords.Count(x => (string.IsNullOrEmpty(clientName) || x.ClientName == clientName) &&
                                                                x.DeliverDate.Date == deliverDate);
                listModel.TotalCount = totalCount;
                if (totalCount % TransportRecordListModel.PageSize > 0)
                {
                    listModel.TotalPage++;
                }
                if (listModel.TotalPage < 1)
                {
                    listModel.TotalPage = 1;
                }
                listModel.ClientName  = clientName;
                listModel.DeliverDate = deliverDate;
                listModel.ItemList    = (from x in context.TransportRecords
                                         orderby x.ID descending
                                         where (string.IsNullOrEmpty(clientName) || x.ClientName == clientName) &&
                                         x.DeliverDate.Date == deliverDate &&
                                         ((received == "Y" && x.Received) || (received == "N" && !x.Received) || (received != "Y" && received != "N")) &&
                                         ((paid == "Y" && x.Paid) || (paid == "N" && !x.Paid) || (paid != "Y" && paid != "N")) &&
                                         ((error == "Y" && x.Error) || (error == "N" && !x.Error) || (error != "Y" && error != "N"))
                                         select new TransportRecordModel()
                {
                    ID = x.ID,
                    AccountPayble = x.AccountPayble,
                    CarLicense = x.CarLicense,
                    ClientName = x.ClientName,
                    Comment = x.Comment,
                    Deductions = x.Deductions,
                    DeliverDate = x.DeliverDate,
                    DeliverPrice = x.DeliverPrice,
                    DeliverType = x.DeliverType,
                    Driver = x.Driver,
                    FromLocation = x.FromLocation,
                    HandlingFee = x.HandlingFee,
                    PackageName = x.PackageName,
                    PayDate = x.PayDate,
                    PrePay = x.PrePay,
                    Quantity = x.Quantity,
                    Reparations = x.Reparations,
                    ShortBargeFee = x.ShortBargeFee,
                    Status = x.Status,
                    ToLocation = x.ToLocation,
                    Volume = x.Volume,
                    TrayNo = x.TrayNo,
                    OilCard = x.OilCard,
                    BusinessArea = x.BusinessArea,
                    Error = x.Error,
                    Received = x.Received,
                    Paid = x.Paid,
                    ReceivedDate = x.ReceivedDate
                }).ToList();
            }
            return(listModel);
        }
Пример #2
0
        public ActionResult ExcelLocalReport()
        {
            string   clientName  = TryGetRequiredString("ClientName");
            string   deliverDate = TryGetRequiredString("DeliverDate");
            string   received    = TryGetRequiredString("received");
            string   paid        = TryGetRequiredString("paid");
            string   error       = TryGetRequiredString("error");
            DateTime dtDeliverDate;

            if (!DateTime.TryParse(deliverDate, out dtDeliverDate))
            {
                ViewBag.ErrorMessage = "必须选中一个日期才能导出日报表";
                return(View("Error"));
            }
            Response.ContentType     = "application/vnd.ms-excel";
            Response.Charset         = "GBK";
            Response.ContentEncoding = Encoding.UTF8;
            Response.AppendHeader("Content-Disposition", "attachment;filename=" + deliverDate + "_" + clientName + ".xls");
            if (clientName == "NA")
            {
                clientName = string.Empty;
            }
            TransportRecordListModel model = businessProvider.QueryDailyTransportModel(clientName, dtDeliverDate, received, paid, error);

            return(View(model));
        }
Пример #3
0
 public ActionResult Index(TransportRecordListModel model, int page = 1)
 {
     ViewBag.Clients = CreateClientListForQuery();
     model           = businessProvider.QueryTransportModel(model.ClientName, model.DeliverDate, model.Received, model.Paid, model.Error, page);
     return(View(model));
 }
Пример #4
0
 public ActionResult LocalTransportRecordList(TransportRecordListModel model, int page = 1)
 {
     ViewBag.Clients = CreateClientListForQuery();
     model           = businessProvider.QueryTransportModel(model.ClientName, model.DeliverDate, model.Received, model.Paid, model.Error, page, ((UserModel)ViewBag.LoggedUser).Area);
     return(View(model));
 }
Пример #5
0
        public TransportRecordListModel QueryTransportModel(string clientName, DateTime?deliverDate, string received, string paid, string error, int pageIndex, BusinessAreaModel area)
        {
            TransportRecordListModel listModel = new TransportRecordListModel();

            if (pageIndex < 1)
            {
                pageIndex = 1;
            }

            using (SQLDBDataContext context = new SQLDBDataContext())
            {
                bool     checkDeliverDate = deliverDate.HasValue;
                DateTime dd = DateTime.MinValue;
                if (checkDeliverDate)
                {
                    dd = deliverDate.Value;
                }
                string areaName = string.Empty;
                if (area != null)
                {
                    areaName = area.AreaName;
                }

                int totalCount = context.TransportRecords.Count(x => (string.IsNullOrEmpty(clientName) || x.ClientName == clientName) &&
                                                                (!checkDeliverDate || x.DeliverDate.Date == dd) && (string.IsNullOrEmpty(areaName) || x.BusinessArea == areaName));
                listModel.TotalCount = totalCount;
                listModel.TotalPage  = totalCount / TransportRecordListModel.PageSize;
                listModel.PageIndex  = pageIndex;
                if (totalCount % TransportRecordListModel.PageSize > 0)
                {
                    listModel.TotalPage++;
                }
                if (listModel.TotalPage < 1)
                {
                    listModel.TotalPage = 1;
                }
                if (pageIndex > listModel.TotalPage)
                {
                    pageIndex = listModel.TotalPage;
                }
                int startIndex = (pageIndex - 1) * TransportRecordListModel.PageSize;
                listModel.ClientName  = clientName;
                listModel.DeliverDate = deliverDate;
                listModel.ItemList    = (from x in context.TransportRecords
                                         orderby x.ID descending
                                         where (string.IsNullOrEmpty(clientName) || x.ClientName == clientName) &&
                                         (!checkDeliverDate || x.DeliverDate.Date == dd) &&
                                         (string.IsNullOrEmpty(areaName) || x.BusinessArea == areaName) &&
                                         ((received == "Y" && x.Received) || (received == "N" && !x.Received) || (received != "Y" && received != "N")) &&
                                         ((paid == "Y" && x.Paid) || (paid == "N" && !x.Paid) || (paid != "Y" && paid != "N")) &&
                                         ((error == "Y" && x.Error) || (error == "N" && !x.Error) || (error != "Y" && error != "N"))
                                         select new TransportRecordModel()
                {
                    ID = x.ID,
                    AccountPayble = x.AccountPayble,
                    CarLicense = x.CarLicense,
                    ClientName = x.ClientName,
                    Comment = x.Comment,
                    Deductions = x.Deductions,
                    DeliverDate = x.DeliverDate,
                    DeliverPrice = x.DeliverPrice,
                    DeliverType = x.DeliverType,
                    Driver = x.Driver,
                    FromLocation = x.FromLocation,
                    HandlingFee = x.HandlingFee,
                    PackageName = x.PackageName,
                    PayDate = x.PayDate,
                    PrePay = x.PrePay,
                    Quantity = x.Quantity,
                    Reparations = x.Reparations,
                    ShortBargeFee = x.ShortBargeFee,
                    Status = x.Status,
                    ToLocation = x.ToLocation,
                    Volume = x.Volume,
                    TrayNo = x.TrayNo,
                    OilCard = x.OilCard,
                    BusinessArea = x.BusinessArea,
                    Error = x.Error,
                    Paid = x.Paid,
                    Received = x.Received,
                    ReceivedDate = x.ReceivedDate,
                    HistoryItem = (from y in x.TransportRecordsOptionHistory
                                   orderby y.LogDateTime
                                   select new TransportRecordsHistoryModel()
                    {
                        Description = y.Description,
                        LogDateTime = y.LogDateTime,
                        Operation = y.Operation,
                        TransportRecordID = y.TransportRecordID,
                        UserID = y.UserID,
                        User = new UserModel()
                        {
                            Comment = y.Users.Comment,
                            CreateDateTime = y.Users.CreateDateTime,
                            LastLoginIP = y.Users.LastLoginIP,
                            LastLoginTime = y.Users.LastLoginTime,
                            AreaID = y.Users.AreaID,
                            Area = new BusinessAreaModel()
                            {
                                AreaName = y.Users.BusinessArea.AreaName,
                                ID = y.Users.BusinessArea.ID
                            },
                            Name = y.Users.Name,
                            Password = y.Users.Password,
                            RoleID = y.Users.RoleId,
                            UserID = y.Users.UserID,
                            Role = new RoleModel()
                            {
                                RoleID = y.Users.Roles.RoleID,
                                RoleName = y.Users.Roles.RoleName
                            }
                        }
                    }).ToList()
                }).Skip(startIndex).Take(TransportRecordListModel.PageSize).ToList();
            }
            return(listModel);
        }