public EmployeeController(IMemoryCache cache, LogisticsContext dbContext) { _cache = cache; _dbContext = dbContext; _employeeLogic = new Lms_EmployeeLogic(_cache, new EntityFrameworkGenericRepository <Lms_EmployeePoco>(_dbContext)); _employeeTypeLogic = new Lms_EmployeeTypeLogic(_cache, new EntityFrameworkGenericRepository <Lms_EmployeeTypePoco>(_dbContext)); }
public IActionResult Index() { ValidateSession(); _cityLogic = new App_CityLogic(_cache, new EntityFrameworkGenericRepository <App_CityPoco>(_dbContext)); _provinceLogic = new App_ProvinceLogic(_cache, new EntityFrameworkGenericRepository <App_ProvincePoco>(_dbContext)); _countryLogic = new App_CountryLogic(_cache, new EntityFrameworkGenericRepository <App_CountryPoco>(_dbContext)); _employeeLogic = new Lms_EmployeeLogic(_cache, new EntityFrameworkGenericRepository <Lms_EmployeePoco>(_dbContext)); ViewBag.UserGroups = Enum.GetValues(typeof(Enum_UserGroup)).Cast <Enum_UserGroup>(); ViewBag.Cities = _cityLogic.GetList().Select(c => new App_CityPoco { Id = c.Id, CityName = c.CityName }).ToList(); ViewBag.Provinces = _provinceLogic.GetList().Select(c => new App_ProvincePoco { Id = c.Id, ShortCode = c.ShortCode, IsDefault = c.IsDefault }).ToList(); ViewBag.Countries = _countryLogic.GetList().Select(c => new App_CountryPoco { Id = c.Id, CountryName = c.CountryName, IsDefault = c.IsDefault }).ToList(); ViewBag.Employees = _employeeLogic.GetList().Select(c => new Lms_EmployeePoco { Id = c.Id, FirstName = c.FirstName, LastName = c.LastName, EmailAddress = c.EmailAddress }).ToList(); return(View(GetUserData())); }
public SearchController(IMemoryCache cache, IEmailService emailService, IHostingEnvironment hostingEnvironment, IHttpContextAccessor httpContext, LogisticsContext dbContext) { _cache = cache; _dbContext = dbContext; _emailService = emailService; _hostingEnvironment = hostingEnvironment; _httpContext = httpContext; _orderLogic = new Lms_OrderLogic(_cache, new EntityFrameworkGenericRepository <Lms_OrderPoco>(_dbContext)); _customerLogic = new Lms_CustomerLogic(_cache, new EntityFrameworkGenericRepository <Lms_CustomerPoco>(_dbContext)); _addressLogic = new Lms_AddressLogic(_cache, new EntityFrameworkGenericRepository <Lms_AddressPoco>(_dbContext)); _employeeLogic = new Lms_EmployeeLogic(_cache, new EntityFrameworkGenericRepository <Lms_EmployeePoco>(_dbContext)); _cityLogic = new App_CityLogic(_cache, new EntityFrameworkGenericRepository <App_CityPoco>(_dbContext)); _provinceLogic = new App_ProvinceLogic(_cache, new EntityFrameworkGenericRepository <App_ProvincePoco>(_dbContext)); _countryLogic = new App_CountryLogic(_cache, new EntityFrameworkGenericRepository <App_CountryPoco>(_dbContext)); _unitTypeLogic = new Lms_UnitTypeLogic(_cache, new EntityFrameworkGenericRepository <Lms_UnitTypePoco>(_dbContext)); _weightScaleLogic = new Lms_WeightScaleLogic(_cache, new EntityFrameworkGenericRepository <Lms_WeightScalePoco>(_dbContext)); _deliveryOptionLogic = new Lms_DeliveryOptionLogic(_cache, new EntityFrameworkGenericRepository <Lms_DeliveryOptionPoco>(_dbContext)); _vehicleTypeScaleLogic = new Lms_VehicleTypeLogic(_cache, new EntityFrameworkGenericRepository <Lms_VehicleTypePoco>(_dbContext)); }
private ViewModel_MiscellaneousOrder GetMiscellaneousOrders() { ViewModel_MiscellaneousOrder miscOrderViewModel = new ViewModel_MiscellaneousOrder(); _cityLogic = new App_CityLogic(_cache, new EntityFrameworkGenericRepository <App_CityPoco>(_dbContext)); miscOrderViewModel.Cities = _cityLogic.GetList(); _provinceLogic = new App_ProvinceLogic(_cache, new EntityFrameworkGenericRepository <App_ProvincePoco>(_dbContext)); miscOrderViewModel.Provinces = _provinceLogic.GetList(); _configurationLogic = new Lms_ConfigurationLogic(_cache, new EntityFrameworkGenericRepository <Lms_ConfigurationPoco>(_dbContext)); miscOrderViewModel.Configuration = _configurationLogic.GetList().FirstOrDefault(); _customerLogic = new Lms_CustomerLogic(_cache, new EntityFrameworkGenericRepository <Lms_CustomerPoco>(_dbContext)); miscOrderViewModel.Customers = _customerLogic.GetList(); _deliveryOptionLogic = new Lms_DeliveryOptionLogic(_cache, new EntityFrameworkGenericRepository <Lms_DeliveryOptionPoco>(_dbContext)); miscOrderViewModel.DeliveryOptions = _deliveryOptionLogic.GetList(); _unitTypeLogic = new Lms_UnitTypeLogic(_cache, new EntityFrameworkGenericRepository <Lms_UnitTypePoco>(_dbContext)); miscOrderViewModel.UnitTypes = _unitTypeLogic.GetList(); _weightScaleLogic = new Lms_WeightScaleLogic(_cache, new EntityFrameworkGenericRepository <Lms_WeightScalePoco>(_dbContext)); miscOrderViewModel.WeightScales = _weightScaleLogic.GetList(); _additionalServiceLogic = new Lms_AdditionalServiceLogic(_cache, new EntityFrameworkGenericRepository <Lms_AdditionalServicePoco>(_dbContext)); miscOrderViewModel.AdditionalServices = _additionalServiceLogic.GetList(); _employeeLogic = new Lms_EmployeeLogic(_cache, new EntityFrameworkGenericRepository <Lms_EmployeePoco>(_dbContext)); miscOrderViewModel.Employees = _employeeLogic.GetList().Where(c => c.EmployeeTypeId == 5).ToList(); // Load employees 'Broker' var orders = _orderLogic.GetList().Where(c => c.OrderTypeId == 3).ToList(); // Load only misc. orders List <ViewModel_OrderDispatched> viewModelOrders = new List <ViewModel_OrderDispatched>(); foreach (var item in orders) { ViewModel_OrderDispatched viewModelOrder = new ViewModel_OrderDispatched(); viewModelOrder.OrderId = item.Id; viewModelOrder.OrderTypeId = item.OrderTypeId; viewModelOrder.OrderTypeFlag = "Misc."; viewModelOrder.ServiceProviderEmployeeId = item.ServiceProviderEmployeeId; if (item.ServiceProviderEmployeeId != null && item.ServiceProviderEmployeeId > 0) { viewModelOrder.ServiceProviderEmployeeName = (miscOrderViewModel.Employees.Where(c => c.Id == item.ServiceProviderEmployeeId).FirstOrDefault()).FirstName; } viewModelOrder.WayBillNumber = item.WayBillNumber; viewModelOrder.OrderDateString = item.CreateDate.ToString("dd-MMM-yy"); viewModelOrder.CustomerRefNumber = item.ReferenceNumber; viewModelOrder.UnitTypeId = item.UnitTypeId; if (item.UnitTypeId > 0) { viewModelOrder.UnitTypeName = miscOrderViewModel.UnitTypes.Where(c => c.Id == viewModelOrder.UnitTypeId).FirstOrDefault().ShortCode; } viewModelOrder.UnitQuantity = item.UnitQuantity; viewModelOrder.SkidQuantity = item.SkidQuantity; viewModelOrder.TotalPiece = item.TotalPiece; viewModelOrder.SpcIns = ""; viewModelOrder.BillerCustomerId = item.BillToCustomerId; if (item.BillToCustomerId > 0) { viewModelOrder.BillerCustomerName = miscOrderViewModel.Customers.Where(c => c.Id == viewModelOrder.BillerCustomerId).FirstOrDefault().CustomerName; } viewModelOrders.Add(viewModelOrder); } miscOrderViewModel.MiscellaneousOrders = viewModelOrders; return(miscOrderViewModel); }
public IActionResult PartialLoadEmployeeOrders(string empId, string fromDate, string toDate) { List <ViewModel_PayrollOrder> viewModelPayrollOrders = new List <ViewModel_PayrollOrder>(); if (empId != "") { int selectedEmpId = Convert.ToInt16(empId); DateTime selectedFromDate = Convert.ToDateTime(fromDate); DateTime selectedToDate = Convert.ToDateTime(toDate); _deliveryOptionLogic = new Lms_DeliveryOptionLogic(_cache, new EntityFrameworkGenericRepository <Lms_DeliveryOptionPoco>(_dbContext)); var deliveryOptionList = _deliveryOptionLogic.GetList(); _employeeLogic = new Lms_EmployeeLogic(_cache, new EntityFrameworkGenericRepository <Lms_EmployeePoco>(_dbContext)); var employeeList = _employeeLogic.GetList(); _additionalServiceLogic = new Lms_OrderAdditionalServiceLogic(_cache, new EntityFrameworkGenericRepository <Lms_OrderAdditionalServicePoco>(_dbContext)); _orderLogic = new Lms_OrderLogic(_cache, new EntityFrameworkGenericRepository <Lms_OrderPoco>(_dbContext)); var orderList = _orderLogic.GetList(); _orderStatusLogic = new Lms_OrderStatusLogic(_cache, new EntityFrameworkGenericRepository <Lms_OrderStatusPoco>(_dbContext)); var orderStatusList = _orderStatusLogic.GetList().Where(c => (c.DispatchedToEmployeeId == selectedEmpId || c.PassedOffToEmployeeId == selectedEmpId) && c.CreateDate >= selectedFromDate && c.CreateDate <= selectedToDate && c.IsDelivered == true).ToList(); orderList = (from order in orderList join status in orderStatusList on order.Id equals status.OrderId select order).ToList(); foreach (var order in orderList) { ViewModel_PayrollOrder payrollOrder = new ViewModel_PayrollOrder(); var empInfo = _employeeLogic.GetSingleById(selectedEmpId); var orderStatus = orderStatusList.Where(c => c.OrderId == order.Id).FirstOrDefault(); payrollOrder.WaybillNumber = order.WayBillNumber; payrollOrder.WaybillDate = order.CreateDate; payrollOrder.OrderType = order.OrderTypeId == 1 ? "Single" : "Return"; payrollOrder.DeliveryOptionShortCode = deliveryOptionList.Where(c => c.Id == order.DeliveryOptionId).FirstOrDefault().ShortCode; payrollOrder.PickupEmployeeId = (int)orderStatus.DispatchedToEmployeeId; payrollOrder.PickupEmployeeName = employeeList.Where(c => c.Id == payrollOrder.PickupEmployeeId).FirstOrDefault().FirstName; var deliveryEmpId = orderStatusList.Where(c => c.OrderId == order.Id).FirstOrDefault().PassedOffToEmployeeId; if (deliveryEmpId != null && deliveryEmpId > 0) { payrollOrder.DeliveryEmployeeId = (int)orderStatus.PassedOffToEmployeeId; payrollOrder.DeliveryEmployeeName = employeeList.Where(c => c.Id == payrollOrder.DeliveryEmployeeId).FirstOrDefault().FirstName; } else { payrollOrder.DeliveryEmployeeId = payrollOrder.PickupEmployeeId; payrollOrder.DeliveryEmployeeName = payrollOrder.PickupEmployeeName; } payrollOrder.WaybillBaseAmount = order.OrderBasicCost; if (order.BasicCostOverriden != null && order.BasicCostOverriden > 0) { payrollOrder.WaybillBaseAmount = (decimal)order.BasicCostOverriden; } payrollOrder.OrderCommissionPercent = empInfo.CommissionPercentage == null ? 0 : (decimal)empInfo.CommissionPercentage; payrollOrder.OrderFuelPercent = empInfo.FuelPercentage == null ? 0 : (decimal)empInfo.FuelPercentage; payrollOrder.OrderCommissionAmnt = payrollOrder.WaybillBaseAmount * payrollOrder.OrderCommissionPercent / 100; payrollOrder.OrderFuelAmnt = payrollOrder.WaybillBaseAmount * payrollOrder.OrderFuelPercent / 100; payrollOrder.AddServiceAmnt = 0; var additionalServices = _additionalServiceLogic.GetList().Where(c => c.OrderId == order.Id); foreach (var addSrv in additionalServices) { if (addSrv.DriverPercentageOnAddService != null && addSrv.DriverPercentageOnAddService > 0) { payrollOrder.AddServiceAmnt = payrollOrder.AddServiceAmnt + (addSrv.AdditionalServiceFee * (decimal)addSrv.DriverPercentageOnAddService / 100); } } payrollOrder.WaitTime = orderStatus.DeliveryWaitTimeHour; viewModelPayrollOrders.Add(payrollOrder); } } return(PartialView("_PartialViewEmployeeDeliveries", viewModelPayrollOrders)); }
public JsonResult PrintWaybill([FromBody] dynamic orderData) { try { List <ViewModel_PrintWaybill> waybillPrintViewModels = new List <ViewModel_PrintWaybill>(); JArray wayBillNumberList = null; var orderList = _orderLogic.GetList(); _addressLogic = new Lms_AddressLogic(_cache, new EntityFrameworkGenericRepository <Lms_AddressPoco>(_dbContext)); var addresses = _addressLogic.GetList(); _cityLogic = new App_CityLogic(_cache, new EntityFrameworkGenericRepository <App_CityPoco>(_dbContext)); var cities = _cityLogic.GetList(); _provinceLogic = new App_ProvinceLogic(_cache, new EntityFrameworkGenericRepository <App_ProvincePoco>(_dbContext)); var provinces = _provinceLogic.GetList(); _customerLogic = new Lms_CustomerLogic(_cache, new EntityFrameworkGenericRepository <Lms_CustomerPoco>(_dbContext)); var customers = _customerLogic.GetList(); _deliveryOptionLogic = new Lms_DeliveryOptionLogic(_cache, new EntityFrameworkGenericRepository <Lms_DeliveryOptionPoco>(_dbContext)); var deliveryOptions = _deliveryOptionLogic.GetList(); _unitTypeLogic = new Lms_UnitTypeLogic(_cache, new EntityFrameworkGenericRepository <Lms_UnitTypePoco>(_dbContext)); var unitTypes = _unitTypeLogic.GetList(); _weightScaleLogic = new Lms_WeightScaleLogic(_cache, new EntityFrameworkGenericRepository <Lms_WeightScalePoco>(_dbContext)); var weightScales = _weightScaleLogic.GetList(); _employeeLogic = new Lms_EmployeeLogic(_cache, new EntityFrameworkGenericRepository <Lms_EmployeePoco>(_dbContext)); var employees = _employeeLogic.GetList(); if (orderData != null) { wayBillNumberList = JArray.Parse(JsonConvert.SerializeObject(orderData[0])); } foreach (var item in wayBillNumberList) { var wbNumber = item.ToString(); var orderInfo = orderList.Where(c => c.WayBillNumber == wbNumber && c.OrderTypeId == 1).FirstOrDefault(); //consider only the single order; not the return order if (orderInfo != null) { ViewModel_PrintWaybill waybillPrintViewModel = new ViewModel_PrintWaybill(); waybillPrintViewModel.WaybillNumber = orderInfo.WayBillNumber; waybillPrintViewModel.WayBillDate = orderInfo.CreateDate.ToString("dd-MMM-yy"); waybillPrintViewModel.BillerCustomerId = orderInfo.BillToCustomerId; waybillPrintViewModel.CustomerRefNo = orderInfo.ReferenceNumber; waybillPrintViewModel.CargoCtlNo = orderInfo.CargoCtlNumber; waybillPrintViewModel.AwbContainerNo = orderInfo.AwbCtnNumber; waybillPrintViewModel.BillerCustomerName = customers.Where(c => c.Id == orderInfo.BillToCustomerId).FirstOrDefault().CustomerName; waybillPrintViewModel.OrderedByName = orderInfo.OrderedBy; waybillPrintViewModel.DeliveryOptionShortCode = deliveryOptions.Where(c => c.Id == orderInfo.DeliveryOptionId).FirstOrDefault().ShortCode; waybillPrintViewModel.OrderBasePrice = orderInfo.OrderBasicCost.ToString(); if (orderInfo.BasicCostOverriden != null && orderInfo.BasicCostOverriden > 0) { waybillPrintViewModel.OrderBasePrice = orderInfo.BasicCostOverriden.ToString(); } if (orderInfo.DiscountPercentOnOrderCost != null && orderInfo.DiscountPercentOnOrderCost > 0) { var orderDiscount = Convert.ToDecimal(waybillPrintViewModel.OrderBasePrice) - (Convert.ToDecimal(waybillPrintViewModel.OrderBasePrice) * orderInfo.DiscountPercentOnOrderCost / 100); if (orderDiscount > 0) { waybillPrintViewModel.OrderDiscountAmount = orderDiscount.ToString(); waybillPrintViewModel.OrderBasePrice = (Convert.ToDecimal(waybillPrintViewModel.OrderBasePrice) - (decimal)orderDiscount).ToString(); } else { waybillPrintViewModel.OrderDiscountAmount = "0.00"; } } if (orderInfo.FuelSurchargePercentage != null && orderInfo.FuelSurchargePercentage > 0) { var fuelAmnt = Convert.ToDecimal(waybillPrintViewModel.OrderBasePrice) * orderInfo.FuelSurchargePercentage / 100; if (fuelAmnt > 0) { waybillPrintViewModel.FuelSurcharge = fuelAmnt.ToString(); } else { waybillPrintViewModel.FuelSurcharge = "0.00"; } } if (orderInfo.TotalAdditionalServiceCost > 0) { waybillPrintViewModel.AdditionalServiceCost = orderInfo.TotalAdditionalServiceCost.ToString(); } else { waybillPrintViewModel.AdditionalServiceCost = "0.00"; } if (orderInfo.ApplicableGstPercent != null && orderInfo.ApplicableGstPercent > 0) { var taxAmnt = Convert.ToDecimal(waybillPrintViewModel.OrderBasePrice) * orderInfo.ApplicableGstPercent / 100; if (taxAmnt > 0) { waybillPrintViewModel.OrderTaxAmountOnBasePrice = taxAmnt.ToString(); } else { waybillPrintViewModel.OrderTaxAmountOnBasePrice = "0.00"; } } waybillPrintViewModel.NetTotalOrderCost = (Convert.ToDecimal(waybillPrintViewModel.OrderBasePrice) + Convert.ToDecimal(waybillPrintViewModel.FuelSurcharge) + Convert.ToDecimal(waybillPrintViewModel.AdditionalServiceCost)).ToString(); waybillPrintViewModel.ShipperCustomerName = customers.Where(c => c.Id == orderInfo.ShipperCustomerId).FirstOrDefault().CustomerName; var shippperAddress = addresses.Where(c => c.Id == orderInfo.ShipperAddressId).FirstOrDefault(); waybillPrintViewModel.ShipperCustomerAddressLine1 = !string.IsNullOrEmpty(shippperAddress.UnitNumber) ? shippperAddress.UnitNumber + ", " + shippperAddress.AddressLine : shippperAddress.AddressLine; waybillPrintViewModel.ShipperCustomerAddressLine2 = cities.Where(c => c.Id == shippperAddress.CityId).FirstOrDefault().CityName + ", " + provinces.Where(c => c.Id == shippperAddress.ProvinceId).FirstOrDefault().ShortCode + " " + shippperAddress.PostCode; waybillPrintViewModel.ConsigneeCustomerName = customers.Where(c => c.Id == orderInfo.ConsigneeCustomerId).FirstOrDefault().CustomerName; var consigneeAddress = addresses.Where(c => c.Id == orderInfo.ConsigneeAddressId).FirstOrDefault(); waybillPrintViewModel.ConsigneeCustomerAddressLine1 = !string.IsNullOrEmpty(consigneeAddress.UnitNumber) ? consigneeAddress.UnitNumber + ", " + consigneeAddress.AddressLine : consigneeAddress.AddressLine; waybillPrintViewModel.ConsigneeCustomerAddressLine2 = cities.Where(c => c.Id == consigneeAddress.CityId).FirstOrDefault().CityName + ", " + provinces.Where(c => c.Id == consigneeAddress.ProvinceId).FirstOrDefault().ShortCode + " " + consigneeAddress.PostCode; waybillPrintViewModel.TotalSkidPieces = 0; waybillPrintViewModel.UnitTypeName = unitTypes.Where(c => c.Id == orderInfo.UnitTypeId).FirstOrDefault().TypeName; waybillPrintViewModel.UnitTypeShortCode = unitTypes.Where(c => c.Id == orderInfo.UnitTypeId).FirstOrDefault().ShortCode; waybillPrintViewModel.UnitQuantity = orderInfo.UnitQuantity; waybillPrintViewModel.WeightScaleShortCode = weightScales.Where(c => c.Id == orderInfo.WeightScaleId).FirstOrDefault().ShortCode; waybillPrintViewModel.WeightTotal = orderInfo.WeightTotal.ToString(); waybillPrintViewModel.DeliveryDate = null;; waybillPrintViewModel.DeliveryTime = null; waybillPrintViewModel.PUDriverName = ""; waybillPrintViewModel.DeliveredBy = orderInfo.DeliveredBy; waybillPrintViewModel.ShipperName = orderInfo.ShipperName; waybillPrintViewModel.ShipperAddress = orderInfo.ShipperAddress; waybillPrintViewModel.ProReferenceNumber = orderInfo.ProReferenceNumber; if (orderInfo.ServiceProviderEmployeeId != null && orderInfo.ServiceProviderEmployeeId > 0) { waybillPrintViewModel.ServiceProviderEmployeeName = employees.Where(c => c.Id == orderInfo.ServiceProviderEmployeeId).FirstOrDefault().FirstName; } if (orderInfo.IsPrintedOnWayBill != null && orderInfo.IsPrintedOnWayBill == true) { waybillPrintViewModel.WaybillComments = orderInfo.CommentsForWayBill; } waybillPrintViewModels.Add(waybillPrintViewModel); } } var webrootPath = _hostingEnvironment.WebRootPath; var uniqueId = DateTime.Now.ToFileTime(); var path = "/contents/waybills/waybill_" + uniqueId + ".pdf"; var filePath = webrootPath + path; var pdfReport = new ViewAsPdf("PrintWaybill", waybillPrintViewModels); var file = pdfReport.BuildFile(ControllerContext).Result; System.IO.File.WriteAllBytes(filePath, file); //_emailService.SendEmail("*****@*****.**", "test subject", "test body content", path); return(Json(path)); } catch (Exception ex) { throw ex; //return null; } //return View(); }