CustomerUpdateService
[ServiceContract]
public interface ICustomerUpdateService
{
/// <summary>
/// Updates the properties for an existing customer in the database or Creates the customer if he does not exist.
/// This does not affect accounts or portfolios
/// </summary>
/// <param name="customer"><see cref="T:Kodi.Kodiak.Services.DataContracts.Customer"/></param>
[FaultContract(typeof(KodiakFault), Action = "<http://tempuri.org/ICustomerService/UpdateCustomerPropertiesKodiakFaultFault")]>
[OperationContract(Action = "<http://tempuri.org/ICustomerService/UpdateCustomerProperties",> ReplyAction = "<http://tempuri.org/ICustomerService/UpdateCustomerPropertiesResponse")]>
UpdateCustomerPropertiesResponse UpdateCustomerProperties(UpdateCustomerPropertiesRequest request);
/// <summary>
/// Updates the properties of a list of existing customers in the database or creates customers that do not exist.
/// /// This does not affect accounts or portfolios
/// </summary>
/// <param name="customer"><see cref="T:Kodi.Kodiak.Services.DataContracts.Customer"/></param>
[FaultContract(typeof(KodiakFault), Action = "<http://tempuri.org/ICustomerService/BulkUpdateCustomerPropertiesKodiakFaultFault")]>
[OperationContract(Action = "<http://tempuri.org/ICustomerService/BulkUpdateCustomerProperties",> ReplyAction = "<http://tempuri.org/ICustomerService/BulkUpdateCustomerPropertiesResponse")]>
List<UpdateCustomerPropertiesResponse> BulkUpdateCustomerProperties(List<UpdateCustomerPropertiesRequest> requests);
/// <summary>
/// Updates or creates accounts and portfolios for an existing customer in the database.
/// This does not update the customer properties
/// </summary>
/// <param name="customer"><see cref="T:Kodi.Kodiak.Services.DataContracts.Customer"/></param>
[FaultContract(typeof(KodiakFault), Action = "<http://tempuri.org/ICustomerService/UpdateCustomerPortfoliosAndAccountsKodiakFaultFault")]>
[OperationContract(Action = "<http://tempuri.org/ICustomerService/UpdateCustomerPortfoliosAndAccounts",> ReplyAction = "<http://tempuri.org/ICustomerService/UpdateCustomerPortfoliosAndAccountsResponse")]>
UpdateCustomerPortfoliosAndAccountsResponse UpdateCustomerPortfoliosAndAccounts(UpdateCustomerPortfoliosAndAccountsRequest request);
/// <summary>
/// Updates or creates a list of accounts and portfolios for existing customer in the database.
/// This does not update the customer properties
/// </summary>
/// <param name="customer"><see cref="T:Kodi.Kodiak.Services.DataContracts.Customer"/></param>
[FaultContract(typeof(KodiakFault), Action = "<http://tempuri.org/ICustomerService/BulkUpdateCustomerPortfoliosAndAccountsKodiakFaultFault")]>
[OperationContract(Action = "<http://tempuri.org/ICustomerService/BulkUpdateCustomerPortfoliosAndAccounts",> ReplyAction = "<http://tempuri.org/ICustomerService/BulkUpdateCustomerPortfoliosAndAccountsResponse")]>
List<UpdateCustomerPortfoliosAndAccountsResponse> BulkUpdateCustomerPortfoliosAndAccounts(List<UpdateCustomerPortfoliosAndAccountsRequest> requests);
/// <summary>
/// Updates or creates a customer in the database.
/// This updates and creates portfolios as well
/// </summary>
/// <param name="customer"><see cref="T:Kodi.Kodiak.Services.DataContracts.Customer"/></param>
[FaultContract(typeof(KodiakFault), Action = "<http://tempuri.org/ICustomerService/UpdateCustomerKodiakFaultFault")]>
[OperationContract(Action = "<http://tempuri.org/ICustomerService/UpdateCustomer",> ReplyAction = "<http://tempuri.org/ICustomerService/UpdateCustomerResponse")]>
UpdateCustomerResponse UpdateCustomer(Customer customer);
/// <summary>
/// Updates or creates a list of customers in the database.
/// This updates and creates portfolios as well
/// </summary>
/// <param name="customer"><see cref="T:Kodi.Kodiak.Services.DataContracts.Customer"/></param>
[FaultContract(typeof(KodiakFault), Action = "<http://tempuri.org/ICustomerService/BulkUpdateCustomerKodiakFaultFault")]>
[OperationContract(Action = "<http://tempuri.org/ICustomerService/BulkUpdateCustomer",> ReplyAction = "<http://tempuri.org/ICustomerService/BulkUpdateCustomerResponse")]>
List<UpdateCustomerResponse> BulkUpdateCustomer(List<Customer> customers);
/// <summary>
/// Updates or creates a customer in the database.
/// This updates and creates portfolios as well
/// </summary>
/// <param name="customer"><see cref="T:Kodi.Kodiak.Services.DataContracts.Customer"/></param>
[FaultContract(typeof(KodiakFault), Action = "<http://tempuri.org/ICustomerService/CreateOrUpdateCustomerKodiakFaultFault")]>
[OperationContract(Action = "<http://tempuri.org/ICustomerService/CreateOrUpdateCustomer",> ReplyAction = "<http://tempuri.org/ICustomerService/CreateOrUpdateCustomerResponse")]>
int CreateOrUpdateCustomer(Customer customer);
[FaultContract(typeof(KodiakFault), Action = "<http://tempuri.org/ICustomerService/SearchCustomersBySSNKodiakFaultFault")]>
[OperationContract(Action = "<http://tempuri.org/ICustomerService/SearchCustomersBySSN",> ReplyAction = "<http://tempuri.org/ICustomerService/SearchCustomersBySSNResponse")]>
List<Customer> SearchCustomersBySSN(string ssnStartsWith);
}
Â