106 lines
3.5 KiB
C#
106 lines
3.5 KiB
C#
namespace Pluto.Api {
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using PlutoServer.MSL;
|
|
using PlutoServer.MSL.Connectors;
|
|
|
|
[RemObjects.SDK.Server.ClassFactories.StandardClassFactory()]
|
|
[RemObjects.SDK.Server.Service(Name = "Practice", InvokerClass = typeof(Practice_Invoker), ActivatorClass = typeof(Practice_Activator))]
|
|
public class Practice : RemObjects.SDK.Server.Service, IPractice {
|
|
private System.ComponentModel.Container components = null;
|
|
public Practice() :
|
|
base() {
|
|
this.InitializeComponent();
|
|
}
|
|
|
|
private void InitializeComponent() {
|
|
}
|
|
|
|
protected override void Dispose(bool aDisposing) {
|
|
if(aDisposing) {
|
|
if((this.components != null)) {
|
|
this.components.Dispose();
|
|
}
|
|
}
|
|
base.Dispose(aDisposing);
|
|
}
|
|
|
|
public virtual PracticeInfo1[] GetPracticeList1(string apiKey)
|
|
{
|
|
// Not supported for current SystemApiKey Structure.
|
|
// Each ApiKey binds to one specific practice
|
|
return null;
|
|
}
|
|
|
|
public virtual ProviderInfo1[] GetProviderList1(string apiKey, PracticeInfo1 practiceInfo)
|
|
{
|
|
if (ProductType.IsKeyLytec(apiKey))
|
|
{
|
|
return LytecConnector.GetProviderList(apiKey);
|
|
}
|
|
else if (ProductType.IsKeyMedisoft(apiKey))
|
|
{
|
|
return MedisoftConnector.GetProviderList(apiKey);
|
|
}
|
|
|
|
MSLSpecific.Logger.Error("Invalid Product");
|
|
return null;
|
|
}
|
|
|
|
#region IPractice Members
|
|
|
|
public virtual PatientInfo1[] GetPatientList1(string apiKey, string lastName, string firstName, string dateOfBirth)
|
|
{
|
|
if (ProductType.IsKeyLytec(apiKey))
|
|
{
|
|
return LytecConnector.GetPatientList(apiKey, lastName, firstName, dateOfBirth);
|
|
}
|
|
else if (ProductType.IsKeyMedisoft(apiKey))
|
|
{
|
|
return MedisoftConnector.GetPatientList(apiKey, lastName, firstName, dateOfBirth);
|
|
}
|
|
|
|
MSLSpecific.Logger.Error("Invalid Product");
|
|
return null;
|
|
}
|
|
|
|
public virtual MessageRecipientInfo1[] GetMessageRecipientList(string apiKey)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
public virtual FacilityInfo1[] GetFacilitiesList1(string apiKey)
|
|
{
|
|
if (ProductType.IsKeyLytec(apiKey))
|
|
{
|
|
return LytecConnector.GetFacilitiesList(apiKey);
|
|
}
|
|
else if (ProductType.IsKeyMedisoft(apiKey))
|
|
{
|
|
return MedisoftConnector.GetFacilitiesList(apiKey);
|
|
}
|
|
|
|
MSLSpecific.Logger.Error("Invalid Product");
|
|
return null;
|
|
}
|
|
|
|
public virtual ResourceInfo1[] GetResourcesList1(string apiKey)
|
|
{
|
|
if (ProductType.IsKeyLytec(apiKey))
|
|
{
|
|
return LytecConnector.GetResourcesList(apiKey);
|
|
}
|
|
else if (ProductType.IsKeyMedisoft(apiKey))
|
|
{
|
|
return MedisoftConnector.GetResourcesList(apiKey);
|
|
}
|
|
|
|
MSLSpecific.Logger.Error("Invalid Product");
|
|
return null;
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
}
|