Ejemplo n.º 1
0
		public OrderGeneralInfoViewModel(OrderGeneralInfo model, string state)
			: this()
		{
			if (model == null) return;
			Address = new AddressWithCountyViewModel(model.PropertyAddress);
			Address.State = state;
			BorrowerFirstName = model.BorrowerFirstName;
			BorrowerLastName = model.BorrowerLastName;
			LoanNumber = model.LoanNumber;
		}
Ejemplo n.º 2
0
		public RequestDetailsViewModel(Order order, IReferenceManagement refManager, AppraiserOrder appraiserOrder, ISecurityContext securityContext)
		{
			if (order != null)
			{
				bool isAppraiserUser = new RoleType[] { RoleType.AppraisalCompanyAdmin, RoleType.Appraiser, RoleType.CompanyAdminAndAppraiser }
					.Contains(securityContext.CurrentUser.PrimaryRole.RoleType);
				bool isDVSUser = new RoleType[] { RoleType.DvsAdmin, RoleType.DvsDisbursementsProcessor, RoleType.DvsSuperAdmin }
					.Contains(securityContext.CurrentUser.PrimaryRole.RoleType);

				AcceptOrderData = new RequestDetailsAcceptOrderViewModel();
				if (appraiserOrder != null)
				{
					Distance = appraiserOrder.Distance;
					AppraiserOrderId = appraiserOrder.Id;
					AllowAcceptDeclineOrder = appraiserOrder.Order.OrderStatus == OrderStatus.PendingAssignment && (isDVSUser || (!appraiserOrder.IsDeclined && isAppraiserUser));
					AcceptOrderData.DefaultAppraiserId = appraiserOrder.AppraiserUser.Id;
					AcceptOrderData.DefaultAppraiserFirstName = appraiserOrder.AppraiserUser.User.FirstName;
					AcceptOrderData.DefaultAppraiserLastName = appraiserOrder.AppraiserUser.User.LastName;
					AcceptOrderData.DefaultAppraiserEmail = appraiserOrder.AppraiserUser.User.Email;
					AcceptOrderData.IsOtherAppraiser = false;
				}
				else
				{
					if (order.AcceptedAppraiserUser != null)
					{
						AcceptedInfo = String.Format("Accepted on {0} {1} by {2} ({3})", order.AcceptDate.Value.Date.ToString(Constants.DateTimeFormats.Date), order.AcceptDate.Value.ToString(Constants.DateTimeFormats.Time), order.AcceptedAppraiserUser.User.FullName, order.AcceptedAppraiserUser.User.Email);
					}
					else
					{
						AllowAcceptDeclineOrder = isDVSUser && order.OrderStatus == OrderStatus.PendingAssignment;
					}
					AcceptOrderData.IsOtherAppraiser = order.AcceptedAppraiserUser == null;
				}

				Address propertyAddress = order.GeneralInfo.PropertyAddress;
				if (!string.IsNullOrEmpty(order.GeocodingCounty))
					propertyAddress.County = order.GeocodingCounty;
				Address = new AddressWithCountyViewModel { City = propertyAddress.City, County = propertyAddress.County, State = propertyAddress.State, Street = propertyAddress.Street, Street2 = propertyAddress.Street2, ZIP = propertyAddress.ZIP };
				IsRush = order.AppraisalInfo.Rush;
				IsSecondAppraisalOrDuplicateAppraisal = order.AppraisalInfo.SecondDuplicateAppraisal;
				IsSupplementalREOAddendum = order.AppraisalInfo.SupplementalREOAddendum;
				DueDate = order.DueDate.Value;
				AppraisalFormType = order.AppraisalInfo.AppraisalForm.HasValue ? refManager.GetAppraisalForms().Single(e => e.Id == order.AppraisalInfo.AppraisalForm.Value).FormAbbreviation : null;
				ReviewFormType = order.AppraisalInfo.ReviewForm.HasValue ? refManager.GetAppraisalForms().Single(e => e.Id == order.AppraisalInfo.ReviewForm.Value).FormAbbreviation : null;
				AppraisalType = order.AppraisalInfo.AppraisalType.Value;
				LoanPurpose = refManager.GetReference(ReferenceType.LoanPurposeTypes)[order.LoanAndContactInfo.LoanPurposeTypeId.Value];
				Occupancy = refManager.GetReference(ReferenceType.OccupancyTypes)[order.AppraisalInfo.OccupancyTypeId.Value];
				PropertyType = refManager.GetReference(ReferenceType.PropertyTypes)[order.AppraisalInfo.PropertyTypeId.Value];
				LoanType = order.AppraisalInfo.LoanType.HasValue ? order.AppraisalInfo.LoanType.Value.ToString() : Constants.Text.EmptyField;
				if (order.LoanAndContactInfo.LoanPurpose == Model.Enums.OrderManagement.LoanPurpose.Purchase)
					PurchasePrice = order.LoanAndContactInfo.PurchasePrice.Value.ToString();
				TotalFee = order.AppraisersFee;
				Instructions = order.LoanAndContactInfo.Instructions != null ? order.LoanAndContactInfo.Instructions.ToList().Select(s => s.Id) : new List<int>();
			}
		}