예제 #1
0
        internal static DataTypes.Appointment TranslateBusinessToService(BMS.Appointment from)
        {
            DataTypes.Appointment to = new DataTypes.Appointment();
            to.Ubrn               = from.Ubrn;
            to.StartDateTime      = from.StartDateTime;
            to.EndDateTime        = from.EndDateTime;
            to.CreatedDateTime    = from.CreatedDateTime;
            to.UpdatedDateTime    = from.UpdatedDateTime;
            to.CancelledDateTime  = from.CancelledDateTime;
            to.CancellationReason = from.CancellationReason;
            to.Referrer           = DirectoryTranslator.TranslateBusinessToService(from.Referrer);
            to.Patient            = DirectoryTranslator.TranslateBusinessToService(from.Patient);
            to.Provider           = ProviderTranslator.TranslateBusinessToService(from.Provider);
            to.ClinicType         = DirectoryTranslator.TranslateBusinessToService(from.ClinicType);

            to.Status       = (DataTypes.AppointmentStatus)from.Status;
            to.Comments     = from.Comments;
            to.ReminderDate = from.ReminderDate;
            to.WorkflowId   = from.WorkflowId;
            if (from.CancelledBy != null)
            {
                to.CancelledById = from.CancelledBy.Id;
            }
            if (from.Slot != null)
            {
                to.Slot = SlotTranslator.TranslateBusinessToService(from.Slot);
            }

            return(to);
        }
예제 #2
0
        internal static DataTypes.Slot TranslateBusinessToService(BMS.Slot from)
        {
            DataTypes.Slot to = new DataTypes.Slot();

            to.Id            = from.Id;
            to.Provider      = ProviderTranslator.TranslateBusinessToService(from.Provider);
            to.ClinicType    = DirectoryTranslator.TranslateBusinessToService(from.ClinicType);
            to.StartDateTime = from.StartDateTime;
            to.EndDateTime   = from.EndDateTime;
            to.Ubrn          = from.Ubrn;
            to.Status        = (EAppointments.BMS.DataTypes.SlotStatus)from.Status;

            return(to);
        }
예제 #3
0
        public EAppointments.BMS.DataTypes.Provider Update(DataTypes.Provider provider)
        {
            if (provider == null)
            {
                throw new ArgumentNullException("provider");
            }

            BMS.Provider businessProvider = Helper.GetApplication().FindProviderById(provider.Id);

            businessProvider = ProviderTranslator.TranslateServiceToBusiness(provider, businessProvider);

            businessProvider.Save();

            return(ProviderTranslator.TranslateBusinessToService(businessProvider));
        }
예제 #4
0
        public ProviderCollection FindProvider(DataTypes.ProviderSearchCriteria criteria)
        {
            if (criteria == null)
            {
                throw new ArgumentNullException("criteria");
            }

            BMS.ProviderSearchCriteria businessCriteria = ProviderTranslator.TranslateSearchCriteria(criteria);

            List <BMS.Provider> businessProviders = new List <BMS.Provider>(Helper.GetApplication().Find(businessCriteria));

            return(new ProviderCollection(businessProviders.ConvertAll <DataTypes.Provider>(
                                              new Converter <BMS.Provider, DataTypes.Provider>(ProviderTranslator.TranslateBusinessToService)
                                              )));
        }