public MaintenanceRequestEditViewModel(MaintenanceRequest request, Lookups lookups) { var usr = LoginHelper.GetLoggedInUser(); this.Request = request ?? new MaintenanceRequest() { IsAddressed = false, RequestDate = DateTime.Now, RequestedById = usr.User.UserIdValue, MaintenanceRequestImages = new ObservableCollection <MaintenanceRequestImage>(), MaintenanceRequestReplys = new ObservableCollection <MaintenanceRequestReply>() }; this.HasReplies = this.Request.MaintenanceRequestReplys.Any(); this.Users = new ObservableCollection <User>(); this.Assignees = new ObservableCollection <User>(); lookups.Users.ForEach(u => this.Users.Add(u)); lookups.Users.FindAll(u => u.Roles != null && u.Roles.IndexOf((int)Constants.ROLE.MAINTENANCE_REQUESTS) >= 0).ForEach(u => this.Assignees.Add(u)); if (this.Request.AssignedToId != null) { this.Request.AssignedTo = this.Users.FirstOrDefault(u => u.UserIdValue == this.Request.AssignedToIdValue); } if (this.Request.RequestedById != null) { this.Request.RequestedBy = this.Users.FirstOrDefault(u => u.UserIdValue == this.Request.RequestedByIdValue); } this.SaveCommand = new Command(async() => await this.saveRequest()); this.LoadImagesCommand = new Command(async() => await this.loadImages()); this.ReplyCommand = new Command(async() => await this.addReply()); this.ImagesViewModel = new MaintenanceRequestImagesViewViewModel(true); this.NewReplies = new List <MaintenanceRequestReply>(); }
public MaintenanceRequestImagesViewModel(MaintenanceRequest request) { this.Request = request; ImagesViewModel = new MaintenanceRequestImagesViewViewModel(false); this.LoadImagesCommand = new Command(async() => await this.loadImages()); }