Ejemplo n.º 1
0
 public ExpressDeliveryFeeListModel()
 {
     Filter           = new ExpressDeliveryFeeListFilterModel();
     PagedList        = new PagedList <ExpressDeliveryFeeModel>();
     SearchWhereTypes = new List <SelectListItem>();
     StatusList       = new List <SelectListItem>();
 }
        public ActionResult ExpressImportWaitAduit(ExpressDeliveryFeeListFilterModel filter)
        {
            var model = ExpressDeliveryFeeListInit();

            model.Filter = filter;

            model.PagedList = _financialService.ExpressImportWait2Audit(new DeliveryReviewParam()
            {
                Page     = filter.Page,
                PageSize = filter.PageSize,
                UserName = _workContext.User.UserUame,
                Status   = filter.Status
            }).ToModelAsPageCollection <DeliveryFeeExpressExt, ExpressDeliveryFeeModel>();

            return(View("ExpressDeliveryImportWaitAduitPartList", model));
        }
        public ActionResult SearchExpressAjax(ExpressDeliveryFeeListFilterModel filter)
        {
            var model = ExpressDeliveryFeeListInit();

            model.Filter = filter;

            var list = GetShippingMethods(filter.VenderCode, filter.ShippingType);

            if (list != null && list.Any())
            {
                string _shippingmethodid = filter.SearchContext.IsNullOrWhiteSpace()
                                               ? filter.ShippingMethodId
                                               : string.Empty;
                model.PagedList = _financialService.ExpressDeliveryFeeSearch(new DeliveryReviewParam()
                {
                    EndTime           = filter.EndTime,
                    Page              = filter.Page,
                    PageSize          = filter.PageSize,
                    SearchContext     = filter.SearchContext,
                    SearchWhere       = filter.SearchWhere,
                    ShippingMethodId  = _shippingmethodid,
                    StartTime         = filter.StartTime,
                    Status            = filter.Status,
                    VenderCode        = filter.VenderCode,
                    ShippingMethodIds = _shippingmethodid.IsNullOrWhiteSpace()? list.Select(p => p.ShippingMethodId).ToArray():new int[1] {
                        Int32.Parse(_shippingmethodid)
                    }
                }).ToModelAsPageCollection <DeliveryFeeExt, ExpressDeliveryFeeModel>();
            }
            else
            {
                model.PagedList = new PagedList <ExpressDeliveryFeeModel>();
            }


            return(View("ExpressDeliveryFeePartialList", model));
        }
        public ActionResult ExpressExportExcel(ExpressDeliveryFeeListFilterModel filter)
        {
            HttpContext.Server.ScriptTimeout = 100 * 60; //10 minutes
            Log.Info("开始导出快递发货费用");
            string fileName = "ExpressDeliveryFeeList-" + filter.VenderCode + "-" + DateTime.Now.ToString("yyyy-dd-MM-hh-mm-ss") + "1";
            var    list     = new List <ExpressDeliveryFeeModel>();

            Log.Info("开始获取快递的运输方式");
            var shippingMethods = GetShippingMethods(filter.VenderCode, filter.ShippingType);

            Log.Info("完成获取快递的运输方式");
            if (shippingMethods != null && shippingMethods.Any())
            {
                Log.Info("开始查询快递发货费用列表");
                _financialService.ExportExcel(new DeliveryReviewParam()
                {
                    EndTime           = filter.EndTime,
                    Page              = filter.Page,
                    PageSize          = filter.PageSize,
                    SearchContext     = filter.SearchContext,
                    SearchWhere       = filter.SearchWhere,
                    ShippingMethodId  = filter.ShippingMethodId,
                    StartTime         = filter.StartTime,
                    Status            = filter.Status,
                    VenderCode        = filter.VenderCode,
                    IsExportExcel     = true,
                    ShippingMethodIds = shippingMethods.Select(p => p.ShippingMethodId).ToArray(),
                }, false, true).ForEach(d => list.Add(new ExpressDeliveryFeeModel()
                {
                    AprroveWeight       = d.AprroveWeight,
                    Auditor             = d.Auditor,
                    AuditorDate         = d.AuditorDate,
                    CountryChineseName  = d.CountryChineseName,
                    CountryCode         = d.CountryCode,
                    CustomerName        = d.CustomerName,
                    CreatedBy           = d.CreatedBy,
                    CreatedOn           = d.CreatedOn,
                    CustomerOrderNumber = d.CustomerOrderNumber,
                    DeliveryFeeID       = d.DeliveryFeeID,
                    Freight             = d.Freight,
                    FuelCharge          = d.FuelCharge,
                    LastUpdatedBy       = d.LastUpdatedBy,
                    LastUpdatedOn       = d.LastUpdatedOn,
                    OutStorageCreatedOn = d.OutStorageCreatedOn,
                    Register            = d.Register,
                    Remark                   = d.Remark,
                    SetWeight                = d.SetWeight,
                    ShippingmethodID         = d.ShippingmethodID,
                    ShippingmethodName       = d.ShippingmethodName,
                    Status                   = d.Status,
                    StatusStr                = ConvertStatusToString(d.Status),
                    Surcharge                = d.Surcharge,
                    TariffPrepayFee          = d.TariffPrepayFee,
                    OverWeightLengthGirthFee = d.OverWeightLengthGirthFee,
                    SecurityAppendFee        = d.SecurityAppendFee,
                    AddedTaxFee              = d.AddedTaxFee,
                    OtherFee                 = d.OtherFee,
                    OtherFeeRemark           = d.OtherFeeRemark,
                    TotalFee                 = d.TotalFee,
                    TotalFeeFinal            = d.TotalFeeFinal,
                    Trackingnumber           = d.Trackingnumber,
                    VenderCode               = d.VenderCode,
                    VenderId                 = d.VenderId,
                    VenderName               = d.VenderName,
                    WayBillNumber            = d.WayBillNumber,
                    Weight                   = d.Weight,
                }));
                Log.Info("完成查询快递发货费用列表");
            }
            Log.Info("开始生成快递execl");
            var titleList = new List <string>
            {
                "WayBillNumber-运单号",
                "CustomerOrderNumber-客户订单号",
                "CustomerName-客户名称",
                "Trackingnumber-跟踪号",
                "VenderName-服务商",
                "OutStorageCreatedOn-发货时间",
                "CountryCode-发货国家",
                "ShippingmethodName-运输方式",
                "SetWeight-计费重量",
                "Weight-称重重量",
                "AprroveWeight-最终重量",
                "Freight-运费",
                "Register-挂号费",
                "FuelCharge-燃油费",
                "Surcharge-附加费",
                "TariffPrepayFee-关税服务费用",
                "OverWeightLengthGirthFee-超长超重超周长费",
                "SecurityAppendFee-安全附加费",
                "AddedTaxFee-增值税费",
                "OtherFee-杂费",
                "OtherFeeRemark-杂费备注",
                "TotalFee-系统总费用",
                "TotalFeeFinal-最终总费用",
                "StatusStr-状态",
                "Auditor-审核人",
                "AuditorDate-审核时间"
            };

            ExportExcelByWeb.ListExcel(fileName, list, titleList);
            Log.Info("完成生成快递execl");
            Log.Info("完成导出快递发货费用");
            return(new EmptyResult());
        }