Ejemplo n.º 1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="newItem"></param>
 public void AddVisit(VisitRowModel newItem)
 {
     lock (this._VisitsItemsLock)
     {
         this._Visits.Add(newItem);
     }
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Ctor
        /// </summary>
        public MainVM(IMessageBoxService iMessageBoxService)
        {
            this._IMessageBoxService = iMessageBoxService;

            this._SelectedClient = null;
            this._SelectedVisit  = null;

            this._ClientsItemsLock = new object();
            this._Clients          = new ObservableCollection <ClientRowModel>();
            BindingOperations.EnableCollectionSynchronization(this._Clients,
                                                              this._ClientsItemsLock);

            this._VisitsItemsLock = new object();
            this._Visits          = new ObservableCollection <VisitRowModel>();
            BindingOperations.EnableCollectionSynchronization(this._Visits,
                                                              this._VisitsItemsLock);
        }
Ejemplo n.º 3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        private VisitInfoModel LoadVisitModel(Int32 id)
        {
            IDataSource i_datasource = DataSourceCreator.CreateDataSource();

            VisitInfoModel model = i_datasource.LoadVisitInfo(id);

            if (id == 0)
            {
                model.ClientId = this.SelectedClient.Id;
            }

            model.SuccessSave += (o, e) =>
            {
                // испольцуем model - так ьыстрее

                if (0 == id)
                {   // add new
                    var new_visit = new VisitRowModel(model.Id,
                                                      model.ClientId,
                                                      model.DateVisit,
                                                      model.VisitType,
                                                      model.Diagnos);
                    this.AddVisit(new_visit);
                }
                else
                { // refresh
                    var visit = this.Visits.Where(c => c.Id == model.Id).
                                FirstOrDefault();
                    if (null != visit)
                    {
                        visit.DateVisit = model.DateVisit;
                        visit.Diagnos   = model.Diagnos;
                        visit.VisitType = model.VisitType;
                    }
                }
            };

            return(model);
        }