diff --git a/LCU.API.Internal.RepoApi/.gitignore b/LCU.API.Internal.RepoApi/.gitignore
new file mode 100644
index 0000000..41ee9e4
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/.gitignore
@@ -0,0 +1,363 @@
+## Ignore Visual Studio temporary files, build results, and
+## files generated by popular Visual Studio add-ons.
+##
+## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
+
+# User-specific files
+*.rsuser
+*.suo
+*.user
+*.userosscache
+*.sln.docstates
+
+# User-specific files (MonoDevelop/Xamarin Studio)
+*.userprefs
+
+# Mono auto generated files
+mono_crash.*
+
+# Build results
+[Dd]ebug/
+[Dd]ebugPublic/
+[Rr]elease/
+[Rr]eleases/
+x64/
+x86/
+[Ww][Ii][Nn]32/
+[Aa][Rr][Mm]/
+[Aa][Rr][Mm]64/
+bld/
+[Bb]in/
+[Oo]bj/
+[Ll]og/
+[Ll]ogs/
+
+# Visual Studio 2015/2017 cache/options directory
+.vs/
+# Uncomment if you have tasks that create the project's static files in wwwroot
+#wwwroot/
+
+# Visual Studio 2017 auto generated files
+Generated\ Files/
+
+# MSTest test Results
+[Tt]est[Rr]esult*/
+[Bb]uild[Ll]og.*
+
+# NUnit
+*.VisualState.xml
+TestResult.xml
+nunit-*.xml
+
+# Build Results of an ATL Project
+[Dd]ebugPS/
+[Rr]eleasePS/
+dlldata.c
+
+# Benchmark Results
+BenchmarkDotNet.Artifacts/
+
+# .NET Core
+project.lock.json
+project.fragment.lock.json
+artifacts/
+
+# ASP.NET Scaffolding
+ScaffoldingReadMe.txt
+
+# StyleCop
+StyleCopReport.xml
+
+# Files built by Visual Studio
+*_i.c
+*_p.c
+*_h.h
+*.ilk
+*.meta
+*.obj
+*.iobj
+*.pch
+*.pdb
+*.ipdb
+*.pgc
+*.pgd
+*.rsp
+*.sbr
+*.tlb
+*.tli
+*.tlh
+*.tmp
+*.tmp_proj
+*_wpftmp.csproj
+*.log
+*.vspscc
+*.vssscc
+.builds
+*.pidb
+*.svclog
+*.scc
+
+# Chutzpah Test files
+_Chutzpah*
+
+# Visual C++ cache files
+ipch/
+*.aps
+*.ncb
+*.opendb
+*.opensdf
+*.sdf
+*.cachefile
+*.VC.db
+*.VC.VC.opendb
+
+# Visual Studio profiler
+*.psess
+*.vsp
+*.vspx
+*.sap
+
+# Visual Studio Trace Files
+*.e2e
+
+# TFS 2012 Local Workspace
+$tf/
+
+# Guidance Automation Toolkit
+*.gpState
+
+# ReSharper is a .NET coding add-in
+_ReSharper*/
+*.[Rr]e[Ss]harper
+*.DotSettings.user
+
+# TeamCity is a build add-in
+_TeamCity*
+
+# DotCover is a Code Coverage Tool
+*.dotCover
+
+# AxoCover is a Code Coverage Tool
+.axoCover/*
+!.axoCover/settings.json
+
+# Coverlet is a free, cross platform Code Coverage Tool
+coverage*.json
+coverage*.xml
+coverage*.info
+
+# Visual Studio code coverage results
+*.coverage
+*.coveragexml
+
+# NCrunch
+_NCrunch_*
+.*crunch*.local.xml
+nCrunchTemp_*
+
+# MightyMoose
+*.mm.*
+AutoTest.Net/
+
+# Web workbench (sass)
+.sass-cache/
+
+# Installshield output folder
+[Ee]xpress/
+
+# DocProject is a documentation generator add-in
+DocProject/buildhelp/
+DocProject/Help/*.HxT
+DocProject/Help/*.HxC
+DocProject/Help/*.hhc
+DocProject/Help/*.hhk
+DocProject/Help/*.hhp
+DocProject/Help/Html2
+DocProject/Help/html
+
+# Click-Once directory
+publish/
+
+# Publish Web Output
+*.[Pp]ublish.xml
+*.azurePubxml
+# Note: Comment the next line if you want to checkin your web deploy settings,
+# but database connection strings (with potential passwords) will be unencrypted
+*.pubxml
+*.publishproj
+
+# Microsoft Azure Web App publish settings. Comment the next line if you want to
+# checkin your Azure Web App publish settings, but sensitive information contained
+# in these scripts will be unencrypted
+PublishScripts/
+
+# NuGet Packages
+*.nupkg
+# NuGet Symbol Packages
+*.snupkg
+# The packages folder can be ignored because of Package Restore
+**/[Pp]ackages/*
+# except build/, which is used as an MSBuild target.
+!**/[Pp]ackages/build/
+# Uncomment if necessary however generally it will be regenerated when needed
+#!**/[Pp]ackages/repositories.config
+# NuGet v3's project.json files produces more ignorable files
+*.nuget.props
+*.nuget.targets
+
+# Microsoft Azure Build Output
+csx/
+*.build.csdef
+
+# Microsoft Azure Emulator
+ecf/
+rcf/
+
+# Windows Store app package directories and files
+AppPackages/
+BundleArtifacts/
+Package.StoreAssociation.xml
+_pkginfo.txt
+*.appx
+*.appxbundle
+*.appxupload
+
+# Visual Studio cache files
+# files ending in .cache can be ignored
+*.[Cc]ache
+# but keep track of directories ending in .cache
+!?*.[Cc]ache/
+
+# Others
+ClientBin/
+~$*
+*~
+*.dbmdl
+*.dbproj.schemaview
+*.jfm
+*.pfx
+*.publishsettings
+orleans.codegen.cs
+
+# Including strong name files can present a security risk
+# (https://github.com/github/gitignore/pull/2483#issue-259490424)
+#*.snk
+
+# Since there are multiple workflows, uncomment next line to ignore bower_components
+# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
+#bower_components/
+
+# RIA/Silverlight projects
+Generated_Code/
+
+# Backup & report files from converting an old project file
+# to a newer Visual Studio version. Backup files are not needed,
+# because we have git ;-)
+_UpgradeReport_Files/
+Backup*/
+UpgradeLog*.XML
+UpgradeLog*.htm
+ServiceFabricBackup/
+*.rptproj.bak
+
+# SQL Server files
+*.mdf
+*.ldf
+*.ndf
+
+# Business Intelligence projects
+*.rdl.data
+*.bim.layout
+*.bim_*.settings
+*.rptproj.rsuser
+*- [Bb]ackup.rdl
+*- [Bb]ackup ([0-9]).rdl
+*- [Bb]ackup ([0-9][0-9]).rdl
+
+# Microsoft Fakes
+FakesAssemblies/
+
+# GhostDoc plugin setting file
+*.GhostDoc.xml
+
+# Node.js Tools for Visual Studio
+.ntvs_analysis.dat
+node_modules/
+
+# Visual Studio 6 build log
+*.plg
+
+# Visual Studio 6 workspace options file
+*.opt
+
+# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
+*.vbw
+
+# Visual Studio LightSwitch build output
+**/*.HTMLClient/GeneratedArtifacts
+**/*.DesktopClient/GeneratedArtifacts
+**/*.DesktopClient/ModelManifest.xml
+**/*.Server/GeneratedArtifacts
+**/*.Server/ModelManifest.xml
+_Pvt_Extensions
+
+# Paket dependency manager
+.paket/paket.exe
+paket-files/
+
+# FAKE - F# Make
+.fake/
+
+# CodeRush personal settings
+.cr/personal
+
+# Python Tools for Visual Studio (PTVS)
+__pycache__/
+*.pyc
+
+# Cake - Uncomment if you are using it
+# tools/**
+# !tools/packages.config
+
+# Tabs Studio
+*.tss
+
+# Telerik's JustMock configuration file
+*.jmconfig
+
+# BizTalk build output
+*.btp.cs
+*.btm.cs
+*.odx.cs
+*.xsd.cs
+
+# OpenCover UI analysis results
+OpenCover/
+
+# Azure Stream Analytics local run output
+ASALocalRun/
+
+# MSBuild Binary and Structured Log
+*.binlog
+
+# NVidia Nsight GPU debugger configuration file
+*.nvuser
+
+# MFractors (Xamarin productivity tool) working folder
+.mfractor/
+
+# Local History for Visual Studio
+.localhistory/
+
+# BeatPulse healthcheck temp database
+healthchecksdb
+
+# Backup folder for Package Reference Convert tool in Visual Studio 2017
+MigrationBackup/
+
+# Ionide (cross platform F# VS Code tools) working folder
+.ionide/
+
+# Fody - auto-generated XML schema
+FodyWeavers.xsd
+.idea/**
diff --git a/LCU.API.Internal.RepoApi/Dockerfile b/LCU.API.Internal.RepoApi/Dockerfile
new file mode 100644
index 0000000..0198193
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/Dockerfile
@@ -0,0 +1,41 @@
+# .NET Core SDK
+FROM mcr.microsoft.com/dotnet/sdk:8.0 AS aspnetcore-build
+
+# Copy Projects
+COPY LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.csproj ./source/LCU.API.Internal.RepoApi/
+COPY LCU.API.Internal.RepoApi.Repos/LCU.API.Internal.RepoApi.Repos.csproj ./source/LCU.API.Internal.RepoApi.Repos/
+COPY LCU.Library.Internal.RepoApiModels/LCU.Library.Internal.RepoApiModels.csproj ./source/LCU.Library.Internal.RepoApiModels/
+
+# Install Credential Provider and set env variables to enable Nuget restore with auth
+ARG PAT=bh2lq3jibktw67b2wdbqyfln7cd3je6lk52kijntpj43v6kimpgq
+RUN curl -L https://raw.githubusercontent.com/Microsoft/artifacts-credprovider/master/helpers/installcredprovider.sh | sh
+#RUN wget -qO- https://raw.githubusercontent.com/Microsoft/artifacts-credprovider/master/helpers/installcredprovider.sh | bash
+ENV NUGET_CREDENTIALPROVIDER_SESSIONTOKENCACHE_ENABLED true
+ENV VSS_NUGET_EXTERNAL_FEED_ENDPOINTS "{\"endpointCredentials\": [{\"endpoint\":\"https://landmarkcu.pkgs.visualstudio.com/_packaging/LCU-Internal/nuget/v3/index.json\", \"password\":\"${PAT}\"}]}"
+
+# .NET Core Restore, use auth'd feed
+RUN dotnet restore -s "https://landmarkcu.pkgs.visualstudio.com/_packaging/LCU-Internal/nuget/v3/index.json" -s "https://api.nuget.org/v3/index.json" ./source/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.csproj
+
+# Copy All Files
+COPY . ./source/
+
+FROM aspnetcore-build AS test
+LABEL test=true
+COPY LCU.API.Internal.RepoApiTests/LCU.API.Internal.RepoApiTests.csproj ./source/LCU.API.Internal.RepoApiTests/
+RUN dotnet restore ./source/LCU.API.Internal.RepoApiTests/LCU.API.Internal.RepoApiTests.csproj
+RUN dotnet test -c Release --results-directory /testresults --logger "trx;LogFileName=test_results.trx" ./source/LCU.API.Internal.RepoApiTests/LCU.API.Internal.RepoApiTests.csproj
+
+# .NET Core Publish
+FROM aspnetcore-build as publish
+RUN dotnet publish ./source/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.csproj -c Release -o /dist
+
+# ASP.NET Core
+FROM mcr.microsoft.com/dotnet/aspnet:8.0-alpine3.20
+RUN apk add --no-cache icu-libs && apk add --no-cache tzdata;
+ENV TZ America/Chicago
+ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false
+ENV ASPNETCORE_ENVIRONMENT=Development
+
+WORKDIR /app
+COPY --from=publish /dist .
+ENTRYPOINT ["dotnet", "LCU.API.Internal.RepoApi.dll"]
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/ConnectedService.json b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/ConnectedService.json
new file mode 100644
index 0000000..6e94d95
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/ConnectedService.json
@@ -0,0 +1,16 @@
+{
+ "ExtendedData": {
+ "inputs": [
+ "https://webservice-stage.jdpowervalues.com/vehicles/secure/securelogin.asmx?wsdl"
+ ],
+ "collectionTypes": [
+ "System.Array",
+ "System.Collections.Generic.Dictionary`2"
+ ],
+ "namespaceMappings": [
+ "*, JdpLogin"
+ ],
+ "targetFramework": "netcoreapp2.2",
+ "typeReuseMode": "All"
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/Reference.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/Reference.cs
new file mode 100644
index 0000000..ee91900
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/Reference.cs
@@ -0,0 +1,258 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace JdpLogin
+{
+ using System.Runtime.Serialization;
+
+
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Runtime.Serialization.DataContractAttribute(Name="GetTokenRequest", Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetTokenRequest : object
+ {
+
+ private string UsernameField;
+
+ private string PasswordField;
+
+ [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false)]
+ public string Username
+ {
+ get
+ {
+ return this.UsernameField;
+ }
+ set
+ {
+ this.UsernameField = value;
+ }
+ }
+
+ [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false, Order=1)]
+ public string Password
+ {
+ get
+ {
+ return this.PasswordField;
+ }
+ set
+ {
+ this.PasswordField = value;
+ }
+ }
+ }
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.ServiceModel.ServiceContractAttribute(Namespace="http://webservice.jdpowervalues.com/", ConfigurationName="JdpLogin.SecureLoginSoap")]
+ public interface SecureLoginSoap
+ {
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getToken", ReplyAction="*")]
+ System.Threading.Tasks.Task getTokenAsync(JdpLogin.getTokenRequest1 request);
+ }
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(IsWrapped=false)]
+ public partial class getTokenRequest1
+ {
+
+ [System.ServiceModel.MessageBodyMemberAttribute(Name="getToken", Namespace="http://webservice.jdpowervalues.com/", Order=0)]
+ public JdpLogin.getTokenRequest1Body Body;
+
+ public getTokenRequest1()
+ {
+ }
+
+ public getTokenRequest1(JdpLogin.getTokenRequest1Body Body)
+ {
+ this.Body = Body;
+ }
+ }
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.Runtime.Serialization.DataContractAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class getTokenRequest1Body
+ {
+
+ [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false, Order=0)]
+ public JdpLogin.GetTokenRequest tokenRequest;
+
+ public getTokenRequest1Body()
+ {
+ }
+
+ public getTokenRequest1Body(JdpLogin.GetTokenRequest tokenRequest)
+ {
+ this.tokenRequest = tokenRequest;
+ }
+ }
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.ServiceModel.MessageContractAttribute(IsWrapped=false)]
+ public partial class getTokenResponse
+ {
+
+ [System.ServiceModel.MessageBodyMemberAttribute(Name="getTokenResponse", Namespace="http://webservice.jdpowervalues.com/", Order=0)]
+ public JdpLogin.getTokenResponseBody Body;
+
+ public getTokenResponse()
+ {
+ }
+
+ public getTokenResponse(JdpLogin.getTokenResponseBody Body)
+ {
+ this.Body = Body;
+ }
+ }
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ [System.Runtime.Serialization.DataContractAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class getTokenResponseBody
+ {
+
+ [System.Runtime.Serialization.DataMemberAttribute(EmitDefaultValue=false, Order=0)]
+ public string getTokenResult;
+
+ public getTokenResponseBody()
+ {
+ }
+
+ public getTokenResponseBody(string getTokenResult)
+ {
+ this.getTokenResult = getTokenResult;
+ }
+ }
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ public interface SecureLoginSoapChannel : JdpLogin.SecureLoginSoap, System.ServiceModel.IClientChannel
+ {
+ }
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ public partial class SecureLoginSoapClient : System.ServiceModel.ClientBase, JdpLogin.SecureLoginSoap
+ {
+
+ ///
+ /// Implement this partial method to configure the service endpoint.
+ ///
+ /// The endpoint to configure
+ /// The client credentials
+ static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials);
+
+ public SecureLoginSoapClient(EndpointConfiguration endpointConfiguration) :
+ base(SecureLoginSoapClient.GetBindingForEndpoint(endpointConfiguration), SecureLoginSoapClient.GetEndpointAddress(endpointConfiguration))
+ {
+ this.Endpoint.Name = endpointConfiguration.ToString();
+ ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
+ }
+
+ public SecureLoginSoapClient(EndpointConfiguration endpointConfiguration, string remoteAddress) :
+ base(SecureLoginSoapClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress))
+ {
+ this.Endpoint.Name = endpointConfiguration.ToString();
+ ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
+ }
+
+ public SecureLoginSoapClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) :
+ base(SecureLoginSoapClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress)
+ {
+ this.Endpoint.Name = endpointConfiguration.ToString();
+ ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
+ }
+
+ public SecureLoginSoapClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
+ base(binding, remoteAddress)
+ {
+ }
+
+ [System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
+ System.Threading.Tasks.Task JdpLogin.SecureLoginSoap.getTokenAsync(JdpLogin.getTokenRequest1 request)
+ {
+ return base.Channel.getTokenAsync(request);
+ }
+
+ public System.Threading.Tasks.Task getTokenAsync(JdpLogin.GetTokenRequest tokenRequest)
+ {
+ JdpLogin.getTokenRequest1 inValue = new JdpLogin.getTokenRequest1();
+ inValue.Body = new JdpLogin.getTokenRequest1Body();
+ inValue.Body.tokenRequest = tokenRequest;
+ return ((JdpLogin.SecureLoginSoap)(this)).getTokenAsync(inValue);
+ }
+
+ public virtual System.Threading.Tasks.Task OpenAsync()
+ {
+ return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen));
+ }
+
+ public virtual System.Threading.Tasks.Task CloseAsync()
+ {
+ return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose));
+ }
+
+ private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration)
+ {
+ if ((endpointConfiguration == EndpointConfiguration.SecureLoginSoap))
+ {
+ System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding();
+ result.MaxBufferSize = int.MaxValue;
+ result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max;
+ result.MaxReceivedMessageSize = int.MaxValue;
+ result.AllowCookies = true;
+ result.Security.Mode = System.ServiceModel.BasicHttpSecurityMode.Transport;
+ return result;
+ }
+ if ((endpointConfiguration == EndpointConfiguration.SecureLoginSoap12))
+ {
+ System.ServiceModel.Channels.CustomBinding result = new System.ServiceModel.Channels.CustomBinding();
+ System.ServiceModel.Channels.TextMessageEncodingBindingElement textBindingElement = new System.ServiceModel.Channels.TextMessageEncodingBindingElement();
+ textBindingElement.MessageVersion = System.ServiceModel.Channels.MessageVersion.CreateVersion(System.ServiceModel.EnvelopeVersion.Soap12, System.ServiceModel.Channels.AddressingVersion.None);
+ result.Elements.Add(textBindingElement);
+ System.ServiceModel.Channels.HttpsTransportBindingElement httpsBindingElement = new System.ServiceModel.Channels.HttpsTransportBindingElement();
+ httpsBindingElement.AllowCookies = true;
+ httpsBindingElement.MaxBufferSize = int.MaxValue;
+ httpsBindingElement.MaxReceivedMessageSize = int.MaxValue;
+ result.Elements.Add(httpsBindingElement);
+ return result;
+ }
+ throw new System.InvalidOperationException(string.Format("Could not find endpoint with name \'{0}\'.", endpointConfiguration));
+ }
+
+ private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration)
+ {
+ if ((endpointConfiguration == EndpointConfiguration.SecureLoginSoap))
+ {
+ return new System.ServiceModel.EndpointAddress("https://webservice-stage.jdpowervalues.com/vehicles/secure/securelogin.asmx");
+ }
+ if ((endpointConfiguration == EndpointConfiguration.SecureLoginSoap12))
+ {
+ return new System.ServiceModel.EndpointAddress("https://webservice-stage.jdpowervalues.com/vehicles/secure/securelogin.asmx");
+ }
+ throw new System.InvalidOperationException(string.Format("Could not find endpoint with name \'{0}\'.", endpointConfiguration));
+ }
+
+ public enum EndpointConfiguration
+ {
+
+ SecureLoginSoap,
+
+ SecureLoginSoap12,
+ }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/securelogin.wsdl b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/securelogin.wsdl
new file mode 100644
index 0000000..a4bfdb5
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpLogin/securelogin.wsdl
@@ -0,0 +1,74 @@
+
+
+ This is JDPA Web Service into its Login methods.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Logs the user in and returns a valid token.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This is JDPA Web Service into its Login methods.
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/ConnectedService.json b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/ConnectedService.json
new file mode 100644
index 0000000..74d9b37
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/ConnectedService.json
@@ -0,0 +1,16 @@
+{
+ "ExtendedData": {
+ "inputs": [
+ "http://webservice-stage.jdpowervalues.com/vehicles/vehicle.asmx?wsdl"
+ ],
+ "collectionTypes": [
+ "System.Array",
+ "System.Collections.Generic.Dictionary`2"
+ ],
+ "namespaceMappings": [
+ "*, JdpVehicle"
+ ],
+ "targetFramework": "netcoreapp2.2",
+ "typeReuseMode": "All"
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/Reference.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/Reference.cs
new file mode 100644
index 0000000..9ca6bee
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/Reference.cs
@@ -0,0 +1,3503 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace JdpVehicle
+{
+
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.ServiceModel.ServiceContractAttribute(Namespace="http://webservice.jdpowervalues.com/", ConfigurationName="JdpVehicle.VehicleSoap")]
+ public interface VehicleSoap
+ {
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/ping", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ System.Threading.Tasks.Task pingAsync(string token);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getYears", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getYearsAsync(JdpVehicle.GetYearsRequest l_Request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getMakes", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getMakesAsync(JdpVehicle.GetMakesRequest l_Request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getSeries", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getSeriesAsync(JdpVehicle.GetSeriesRequest l_Request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getBodyUids", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getBodyUidsAsync(JdpVehicle.GetBodyUidsRequest l_Request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getVehicles", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getVehiclesAsync(JdpVehicle.GetVehiclesByVinRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getVehicle", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getVehicleAsync(JdpVehicle.GetVehicleByUidRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getVehicleByVic", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getVehicleByVicAsync(JdpVehicle.GetVehicleByVicRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getAccessories", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getAccessoriesAsync(JdpVehicle.GetAccessoriesRequest accessoriesRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getInclusiveAccessories", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getInclusiveAccessoriesAsync(JdpVehicle.GetMutualAccessoriesRequest mutualAccessoriesRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getExclusiveAccessories", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getExclusiveAccessoriesAsync(JdpVehicle.GetMutualAccessoriesRequest mutualAccessoriesRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/validateVin", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task validateVinAsync(JdpVehicle.ValidateVinRequest l_request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getMileageAdj", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getMileageAdjAsync(JdpVehicle.GetMileageAdjByUidRequest mileageAdjRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getRegions", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getRegionsAsync(JdpVehicle.GetRegionsRequest l_Request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getRegionByStateCode", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getRegionByStateCodeAsync(JdpVehicle.GetRegionByStateCodeRequest l_Request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getTotalAdjFloorValues", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getTotalAdjFloorValuesAsync(JdpVehicle.GetVehicleValuesByUidRequest l_Request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getVehicleValueByUid", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getVehicleValueByUidAsync(JdpVehicle.GetVehicleValuesByUidRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getBaseVehicleValueByUid", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getBaseVehicleValueByUidAsync(JdpVehicle.GetVehicleValuesByUidRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getVehicleAndValueByUid", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getVehicleAndValueByUidAsync(JdpVehicle.GetVehicleValuesByUidRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getDefaultVehicleAndValueByVin", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getDefaultVehicleAndValueByVinAsync(JdpVehicle.GetVehicleValuesByVinRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getMsrpVehicleAndValueByVin", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getMsrpVehicleAndValueByVinAsync(JdpVehicle.GetVehicleValuesByMsrpRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getHighVehicleAndValueByVin", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getHighVehicleAndValueByVinAsync(JdpVehicle.GetVehicleValuesByVinRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getLowVehicleAndValueByVin", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getLowVehicleAndValueByVinAsync(JdpVehicle.GetVehicleValuesByVinRequest vehicleRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getAdjustedValuesByUid", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getAdjustedValuesByUidAsync(JdpVehicle.GetAdjustedValuesByUidRequest request);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getAuctionValues", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getAuctionValuesAsync(JdpVehicle.GetAuctionValuesRequest auctionValuesRequest);
+
+ [System.ServiceModel.OperationContractAttribute(Action="http://webservice.jdpowervalues.com/getExperianAutoCheckReport", ReplyAction="*")]
+ [System.ServiceModel.XmlSerializerFormatAttribute(SupportFaults=true)]
+ [System.ServiceModel.ServiceKnownTypeAttribute(typeof(NADAValueRequest))]
+ System.Threading.Tasks.Task getExperianAutoCheckReportAsync(JdpVehicle.GetExperianAutoCheckRequest experianAutocheckRequest);
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetYearsRequest : NADAValueRequest
+ {
+ }
+
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetAuctionValuesRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetVehicleValuesByMsrpRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetVehicleValuesByVinRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetVehicleValuesByUidRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetAdjustedValuesByUidRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetRegionByStateCodeRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetRegionsRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetMileageAdjByUidRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(ValidateVinRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetMutualAccessoriesRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetAccessoriesRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetVehicleByVicRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetVehicleByUidRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetVehiclesByVinRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetBodyUidsRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetSeriesRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetMakesRequest))]
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetYearsRequest))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public abstract partial class NADAValueRequest
+ {
+
+ private string tokenField;
+
+ private int periodField;
+
+ private VehicleTypes vehicleTypeField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string Token
+ {
+ get
+ {
+ return this.tokenField;
+ }
+ set
+ {
+ this.tokenField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int Period
+ {
+ get
+ {
+ return this.periodField;
+ }
+ set
+ {
+ this.periodField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public VehicleTypes VehicleType
+ {
+ get
+ {
+ return this.vehicleTypeField;
+ }
+ set
+ {
+ this.vehicleTypeField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public enum VehicleTypes
+ {
+
+ ///
+ UsedCar,
+
+ ///
+ CommercialTruck,
+
+ ///
+ Motorcycle,
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetExperianAutoCheckRequest
+ {
+
+ private string tokenField;
+
+ private string experianAccountNumberField;
+
+ private string vinField;
+
+ private ExperianAutoCheckReportTypes reportTypeField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string Token
+ {
+ get
+ {
+ return this.tokenField;
+ }
+ set
+ {
+ this.tokenField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string ExperianAccountNumber
+ {
+ get
+ {
+ return this.experianAccountNumberField;
+ }
+ set
+ {
+ this.experianAccountNumberField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public string Vin
+ {
+ get
+ {
+ return this.vinField;
+ }
+ set
+ {
+ this.vinField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public ExperianAutoCheckReportTypes ReportType
+ {
+ get
+ {
+ return this.reportTypeField;
+ }
+ set
+ {
+ this.reportTypeField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public enum ExperianAutoCheckReportTypes
+ {
+
+ ///
+ VehicleHistory,
+
+ ///
+ Summary,
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class AdjustedAccessories
+ {
+
+ private string accCodeField;
+
+ private string accDescField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string AccCode
+ {
+ get
+ {
+ return this.accCodeField;
+ }
+ set
+ {
+ this.accCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string AccDesc
+ {
+ get
+ {
+ return this.accDescField;
+ }
+ set
+ {
+ this.accDescField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class AuctionValue_Struc
+ {
+
+ private int lowAdjustedAuctionValueField;
+
+ private int averageAdjustedAuctionValueField;
+
+ private int highAdjustedAuctionValueField;
+
+ private string dateRangeField;
+
+ private AdjustedAccessories[] accessoriesAdjustedListField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int LowAdjustedAuctionValue
+ {
+ get
+ {
+ return this.lowAdjustedAuctionValueField;
+ }
+ set
+ {
+ this.lowAdjustedAuctionValueField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int AverageAdjustedAuctionValue
+ {
+ get
+ {
+ return this.averageAdjustedAuctionValueField;
+ }
+ set
+ {
+ this.averageAdjustedAuctionValueField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int HighAdjustedAuctionValue
+ {
+ get
+ {
+ return this.highAdjustedAuctionValueField;
+ }
+ set
+ {
+ this.highAdjustedAuctionValueField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public string DateRange
+ {
+ get
+ {
+ return this.dateRangeField;
+ }
+ set
+ {
+ this.dateRangeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlArrayAttribute(Order=4)]
+ public AdjustedAccessories[] AccessoriesAdjustedList
+ {
+ get
+ {
+ return this.accessoriesAdjustedListField;
+ }
+ set
+ {
+ this.accessoriesAdjustedListField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class AdjustedAccessory_Struc
+ {
+
+ private string vACField;
+
+ private string descriptionField;
+
+ private decimal tradeInField;
+
+ private decimal loanField;
+
+ private decimal retailField;
+
+ private bool isWithBodyField;
+
+ private bool isWithPackageField;
+
+ private bool isIncludedField;
+
+ private bool isEnabledField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string VAC
+ {
+ get
+ {
+ return this.vACField;
+ }
+ set
+ {
+ this.vACField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string Description
+ {
+ get
+ {
+ return this.descriptionField;
+ }
+ set
+ {
+ this.descriptionField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public decimal TradeIn
+ {
+ get
+ {
+ return this.tradeInField;
+ }
+ set
+ {
+ this.tradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public decimal Loan
+ {
+ get
+ {
+ return this.loanField;
+ }
+ set
+ {
+ this.loanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public decimal Retail
+ {
+ get
+ {
+ return this.retailField;
+ }
+ set
+ {
+ this.retailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public bool IsWithBody
+ {
+ get
+ {
+ return this.isWithBodyField;
+ }
+ set
+ {
+ this.isWithBodyField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=6)]
+ public bool IsWithPackage
+ {
+ get
+ {
+ return this.isWithPackageField;
+ }
+ set
+ {
+ this.isWithPackageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=7)]
+ public bool IsIncluded
+ {
+ get
+ {
+ return this.isIncludedField;
+ }
+ set
+ {
+ this.isIncludedField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=8)]
+ public bool IsEnabled
+ {
+ get
+ {
+ return this.isEnabledField;
+ }
+ set
+ {
+ this.isEnabledField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class AdjustedValues_Struc
+ {
+
+ private int periodField;
+
+ private int uIDField;
+
+ private string vinField;
+
+ private int regionField;
+
+ private int mileageField;
+
+ private decimal msrpField;
+
+ private int avgMileageField;
+
+ private decimal mileageAdjustmentField;
+
+ private decimal accessoryAdjustmentTradeInField;
+
+ private decimal accessoryAdjustmentLoanField;
+
+ private decimal accessoryAdjustmentRetailField;
+
+ private decimal baseRoughTradeInField;
+
+ private decimal baseAvgTradeInField;
+
+ private decimal baseCleanTradeInField;
+
+ private decimal baseLoanField;
+
+ private decimal baseRetailField;
+
+ private decimal adjustedRoughTradeInField;
+
+ private decimal adjustedAvgTradeInField;
+
+ private decimal adjustedCleanTradeInField;
+
+ private decimal adjustedLoanField;
+
+ private decimal adjustedRetailField;
+
+ private AdjustedAccessory_Struc[] accessoryListField;
+
+ private BusinessRuleViolationErrorCodes businessRuleViolationErrorCodeField;
+
+ private string businessRuleViolationErrorMessageField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Period
+ {
+ get
+ {
+ return this.periodField;
+ }
+ set
+ {
+ this.periodField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int UID
+ {
+ get
+ {
+ return this.uIDField;
+ }
+ set
+ {
+ this.uIDField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public string Vin
+ {
+ get
+ {
+ return this.vinField;
+ }
+ set
+ {
+ this.vinField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public int Region
+ {
+ get
+ {
+ return this.regionField;
+ }
+ set
+ {
+ this.regionField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public int Mileage
+ {
+ get
+ {
+ return this.mileageField;
+ }
+ set
+ {
+ this.mileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public decimal Msrp
+ {
+ get
+ {
+ return this.msrpField;
+ }
+ set
+ {
+ this.msrpField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=6)]
+ public int AvgMileage
+ {
+ get
+ {
+ return this.avgMileageField;
+ }
+ set
+ {
+ this.avgMileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=7)]
+ public decimal MileageAdjustment
+ {
+ get
+ {
+ return this.mileageAdjustmentField;
+ }
+ set
+ {
+ this.mileageAdjustmentField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=8)]
+ public decimal AccessoryAdjustmentTradeIn
+ {
+ get
+ {
+ return this.accessoryAdjustmentTradeInField;
+ }
+ set
+ {
+ this.accessoryAdjustmentTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=9)]
+ public decimal AccessoryAdjustmentLoan
+ {
+ get
+ {
+ return this.accessoryAdjustmentLoanField;
+ }
+ set
+ {
+ this.accessoryAdjustmentLoanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=10)]
+ public decimal AccessoryAdjustmentRetail
+ {
+ get
+ {
+ return this.accessoryAdjustmentRetailField;
+ }
+ set
+ {
+ this.accessoryAdjustmentRetailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=11)]
+ public decimal BaseRoughTradeIn
+ {
+ get
+ {
+ return this.baseRoughTradeInField;
+ }
+ set
+ {
+ this.baseRoughTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=12)]
+ public decimal BaseAvgTradeIn
+ {
+ get
+ {
+ return this.baseAvgTradeInField;
+ }
+ set
+ {
+ this.baseAvgTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=13)]
+ public decimal BaseCleanTradeIn
+ {
+ get
+ {
+ return this.baseCleanTradeInField;
+ }
+ set
+ {
+ this.baseCleanTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=14)]
+ public decimal BaseLoan
+ {
+ get
+ {
+ return this.baseLoanField;
+ }
+ set
+ {
+ this.baseLoanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=15)]
+ public decimal BaseRetail
+ {
+ get
+ {
+ return this.baseRetailField;
+ }
+ set
+ {
+ this.baseRetailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=16)]
+ public decimal AdjustedRoughTradeIn
+ {
+ get
+ {
+ return this.adjustedRoughTradeInField;
+ }
+ set
+ {
+ this.adjustedRoughTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=17)]
+ public decimal AdjustedAvgTradeIn
+ {
+ get
+ {
+ return this.adjustedAvgTradeInField;
+ }
+ set
+ {
+ this.adjustedAvgTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=18)]
+ public decimal AdjustedCleanTradeIn
+ {
+ get
+ {
+ return this.adjustedCleanTradeInField;
+ }
+ set
+ {
+ this.adjustedCleanTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=19)]
+ public decimal AdjustedLoan
+ {
+ get
+ {
+ return this.adjustedLoanField;
+ }
+ set
+ {
+ this.adjustedLoanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=20)]
+ public decimal AdjustedRetail
+ {
+ get
+ {
+ return this.adjustedRetailField;
+ }
+ set
+ {
+ this.adjustedRetailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlArrayAttribute(Order=21)]
+ public AdjustedAccessory_Struc[] AccessoryList
+ {
+ get
+ {
+ return this.accessoryListField;
+ }
+ set
+ {
+ this.accessoryListField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=22)]
+ public BusinessRuleViolationErrorCodes BusinessRuleViolationErrorCode
+ {
+ get
+ {
+ return this.businessRuleViolationErrorCodeField;
+ }
+ set
+ {
+ this.businessRuleViolationErrorCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=23)]
+ public string BusinessRuleViolationErrorMessage
+ {
+ get
+ {
+ return this.businessRuleViolationErrorMessageField;
+ }
+ set
+ {
+ this.businessRuleViolationErrorMessageField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public enum BusinessRuleViolationErrorCodes
+ {
+
+ ///
+ NoError,
+
+ ///
+ MutuallyExclusive,
+
+ ///
+ UidAndVinMismatch,
+
+ ///
+ VacCodeNotFound,
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class VehicleValue_Struc
+ {
+
+ private int uidField;
+
+ private int vehicleYearField;
+
+ private int makeCodeField;
+
+ private string makeDescrField;
+
+ private int seriesCodeField;
+
+ private string seriesDescrField;
+
+ private int bodyCodeField;
+
+ private string bodyDescrField;
+
+ private int weightField;
+
+ private decimal msrpField;
+
+ private int aveMileageField;
+
+ private decimal mileageAdjField;
+
+ private decimal tradeInField;
+
+ private decimal tradeInPlusVinAccField;
+
+ private decimal tradeInPlusVinAccMileageField;
+
+ private decimal loanField;
+
+ private decimal loanPlusVinAccField;
+
+ private decimal loanPlusVinAccMileageField;
+
+ private decimal retailField;
+
+ private decimal retailPlusVinAccField;
+
+ private decimal retailPlusVinAccMileageField;
+
+ private decimal avgTradeInField;
+
+ private decimal avgTradeInPlusVinAccField;
+
+ private decimal avgTradeInPlusVinAccMileageField;
+
+ private decimal roughTradeInField;
+
+ private decimal roughTradeInPlusVinAccField;
+
+ private decimal roughTradeInPlusVinAccMileageField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int VehicleYear
+ {
+ get
+ {
+ return this.vehicleYearField;
+ }
+ set
+ {
+ this.vehicleYearField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int MakeCode
+ {
+ get
+ {
+ return this.makeCodeField;
+ }
+ set
+ {
+ this.makeCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public string MakeDescr
+ {
+ get
+ {
+ return this.makeDescrField;
+ }
+ set
+ {
+ this.makeDescrField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public int SeriesCode
+ {
+ get
+ {
+ return this.seriesCodeField;
+ }
+ set
+ {
+ this.seriesCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public string SeriesDescr
+ {
+ get
+ {
+ return this.seriesDescrField;
+ }
+ set
+ {
+ this.seriesDescrField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=6)]
+ public int BodyCode
+ {
+ get
+ {
+ return this.bodyCodeField;
+ }
+ set
+ {
+ this.bodyCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=7)]
+ public string BodyDescr
+ {
+ get
+ {
+ return this.bodyDescrField;
+ }
+ set
+ {
+ this.bodyDescrField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=8)]
+ public int Weight
+ {
+ get
+ {
+ return this.weightField;
+ }
+ set
+ {
+ this.weightField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=9)]
+ public decimal Msrp
+ {
+ get
+ {
+ return this.msrpField;
+ }
+ set
+ {
+ this.msrpField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=10)]
+ public int AveMileage
+ {
+ get
+ {
+ return this.aveMileageField;
+ }
+ set
+ {
+ this.aveMileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=11)]
+ public decimal MileageAdj
+ {
+ get
+ {
+ return this.mileageAdjField;
+ }
+ set
+ {
+ this.mileageAdjField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=12)]
+ public decimal TradeIn
+ {
+ get
+ {
+ return this.tradeInField;
+ }
+ set
+ {
+ this.tradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=13)]
+ public decimal TradeInPlusVinAcc
+ {
+ get
+ {
+ return this.tradeInPlusVinAccField;
+ }
+ set
+ {
+ this.tradeInPlusVinAccField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=14)]
+ public decimal TradeInPlusVinAccMileage
+ {
+ get
+ {
+ return this.tradeInPlusVinAccMileageField;
+ }
+ set
+ {
+ this.tradeInPlusVinAccMileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=15)]
+ public decimal Loan
+ {
+ get
+ {
+ return this.loanField;
+ }
+ set
+ {
+ this.loanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=16)]
+ public decimal LoanPlusVinAcc
+ {
+ get
+ {
+ return this.loanPlusVinAccField;
+ }
+ set
+ {
+ this.loanPlusVinAccField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=17)]
+ public decimal LoanPlusVinAccMileage
+ {
+ get
+ {
+ return this.loanPlusVinAccMileageField;
+ }
+ set
+ {
+ this.loanPlusVinAccMileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=18)]
+ public decimal Retail
+ {
+ get
+ {
+ return this.retailField;
+ }
+ set
+ {
+ this.retailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=19)]
+ public decimal RetailPlusVinAcc
+ {
+ get
+ {
+ return this.retailPlusVinAccField;
+ }
+ set
+ {
+ this.retailPlusVinAccField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=20)]
+ public decimal RetailPlusVinAccMileage
+ {
+ get
+ {
+ return this.retailPlusVinAccMileageField;
+ }
+ set
+ {
+ this.retailPlusVinAccMileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=21)]
+ public decimal AvgTradeIn
+ {
+ get
+ {
+ return this.avgTradeInField;
+ }
+ set
+ {
+ this.avgTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=22)]
+ public decimal AvgTradeInPlusVinAcc
+ {
+ get
+ {
+ return this.avgTradeInPlusVinAccField;
+ }
+ set
+ {
+ this.avgTradeInPlusVinAccField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=23)]
+ public decimal AvgTradeInPlusVinAccMileage
+ {
+ get
+ {
+ return this.avgTradeInPlusVinAccMileageField;
+ }
+ set
+ {
+ this.avgTradeInPlusVinAccMileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=24)]
+ public decimal RoughTradeIn
+ {
+ get
+ {
+ return this.roughTradeInField;
+ }
+ set
+ {
+ this.roughTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=25)]
+ public decimal RoughTradeInPlusVinAcc
+ {
+ get
+ {
+ return this.roughTradeInPlusVinAccField;
+ }
+ set
+ {
+ this.roughTradeInPlusVinAccField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=26)]
+ public decimal RoughTradeInPlusVinAccMileage
+ {
+ get
+ {
+ return this.roughTradeInPlusVinAccMileageField;
+ }
+ set
+ {
+ this.roughTradeInPlusVinAccMileageField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class StandardValue_Struc
+ {
+
+ private int uidField;
+
+ private decimal retailField;
+
+ private decimal tradeInField;
+
+ private decimal loanField;
+
+ private decimal roughTradeInField;
+
+ private decimal avgTradeInField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public decimal Retail
+ {
+ get
+ {
+ return this.retailField;
+ }
+ set
+ {
+ this.retailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public decimal TradeIn
+ {
+ get
+ {
+ return this.tradeInField;
+ }
+ set
+ {
+ this.tradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public decimal Loan
+ {
+ get
+ {
+ return this.loanField;
+ }
+ set
+ {
+ this.loanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public decimal RoughTradeIn
+ {
+ get
+ {
+ return this.roughTradeInField;
+ }
+ set
+ {
+ this.roughTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public decimal AvgTradeIn
+ {
+ get
+ {
+ return this.avgTradeInField;
+ }
+ set
+ {
+ this.avgTradeInField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class Value_Struc
+ {
+
+ private int uidField;
+
+ private decimal msrpField;
+
+ private int aveMileageField;
+
+ private decimal mileageAdjField;
+
+ private decimal retailField;
+
+ private decimal tradeInField;
+
+ private decimal loanField;
+
+ private decimal mileAdjRetailField;
+
+ private decimal mileAdjTradeInField;
+
+ private decimal mileAdjLoanField;
+
+ private decimal avgTradeInField;
+
+ private decimal roughTradeInField;
+
+ private decimal mileAdjAvgTradeInField;
+
+ private decimal mileAdjRoughTradeInField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public decimal Msrp
+ {
+ get
+ {
+ return this.msrpField;
+ }
+ set
+ {
+ this.msrpField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int AveMileage
+ {
+ get
+ {
+ return this.aveMileageField;
+ }
+ set
+ {
+ this.aveMileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public decimal MileageAdj
+ {
+ get
+ {
+ return this.mileageAdjField;
+ }
+ set
+ {
+ this.mileageAdjField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public decimal Retail
+ {
+ get
+ {
+ return this.retailField;
+ }
+ set
+ {
+ this.retailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public decimal TradeIn
+ {
+ get
+ {
+ return this.tradeInField;
+ }
+ set
+ {
+ this.tradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=6)]
+ public decimal Loan
+ {
+ get
+ {
+ return this.loanField;
+ }
+ set
+ {
+ this.loanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=7)]
+ public decimal MileAdjRetail
+ {
+ get
+ {
+ return this.mileAdjRetailField;
+ }
+ set
+ {
+ this.mileAdjRetailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=8)]
+ public decimal MileAdjTradeIn
+ {
+ get
+ {
+ return this.mileAdjTradeInField;
+ }
+ set
+ {
+ this.mileAdjTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=9)]
+ public decimal MileAdjLoan
+ {
+ get
+ {
+ return this.mileAdjLoanField;
+ }
+ set
+ {
+ this.mileAdjLoanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=10)]
+ public decimal AvgTradeIn
+ {
+ get
+ {
+ return this.avgTradeInField;
+ }
+ set
+ {
+ this.avgTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=11)]
+ public decimal RoughTradeIn
+ {
+ get
+ {
+ return this.roughTradeInField;
+ }
+ set
+ {
+ this.roughTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=12)]
+ public decimal MileAdjAvgTradeIn
+ {
+ get
+ {
+ return this.mileAdjAvgTradeInField;
+ }
+ set
+ {
+ this.mileAdjAvgTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=13)]
+ public decimal MileAdjRoughTradeIn
+ {
+ get
+ {
+ return this.mileAdjRoughTradeInField;
+ }
+ set
+ {
+ this.mileAdjRoughTradeInField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class FloorValue_Struc
+ {
+
+ private int uidField;
+
+ private decimal adjustedRetailField;
+
+ private decimal adjustedTradeInField;
+
+ private decimal adjustedLoanField;
+
+ private decimal adjustedRoughTradeInField;
+
+ private decimal adjustedAvgTradeInField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public decimal AdjustedRetail
+ {
+ get
+ {
+ return this.adjustedRetailField;
+ }
+ set
+ {
+ this.adjustedRetailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public decimal AdjustedTradeIn
+ {
+ get
+ {
+ return this.adjustedTradeInField;
+ }
+ set
+ {
+ this.adjustedTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public decimal AdjustedLoan
+ {
+ get
+ {
+ return this.adjustedLoanField;
+ }
+ set
+ {
+ this.adjustedLoanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public decimal AdjustedRoughTradeIn
+ {
+ get
+ {
+ return this.adjustedRoughTradeInField;
+ }
+ set
+ {
+ this.adjustedRoughTradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public decimal AdjustedAvgTradeIn
+ {
+ get
+ {
+ return this.adjustedAvgTradeInField;
+ }
+ set
+ {
+ this.adjustedAvgTradeInField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class MileageTable_Struc
+ {
+
+ private int lowLevelField;
+
+ private int highLevelField;
+
+ private decimal adjAmountField;
+
+ private decimal ratePerMileField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int LowLevel
+ {
+ get
+ {
+ return this.lowLevelField;
+ }
+ set
+ {
+ this.lowLevelField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int HighLevel
+ {
+ get
+ {
+ return this.highLevelField;
+ }
+ set
+ {
+ this.highLevelField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public decimal AdjAmount
+ {
+ get
+ {
+ return this.adjAmountField;
+ }
+ set
+ {
+ this.adjAmountField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public decimal RatePerMile
+ {
+ get
+ {
+ return this.ratePerMileField;
+ }
+ set
+ {
+ this.ratePerMileField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class Mileage_Struc
+ {
+
+ private decimal maxAmountField;
+
+ private decimal minAmountField;
+
+ private int averageMileageField;
+
+ private int countField;
+
+ private MileageTable_Struc[] mileageTableField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public decimal MaxAmount
+ {
+ get
+ {
+ return this.maxAmountField;
+ }
+ set
+ {
+ this.maxAmountField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public decimal MinAmount
+ {
+ get
+ {
+ return this.minAmountField;
+ }
+ set
+ {
+ this.minAmountField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int AverageMileage
+ {
+ get
+ {
+ return this.averageMileageField;
+ }
+ set
+ {
+ this.averageMileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public int Count
+ {
+ get
+ {
+ return this.countField;
+ }
+ set
+ {
+ this.countField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlArrayAttribute(Order=4)]
+ public MileageTable_Struc[] MileageTable
+ {
+ get
+ {
+ return this.mileageTableField;
+ }
+ set
+ {
+ this.mileageTableField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class AccessoryMultExcl_Struc
+ {
+
+ private string accCodeField;
+
+ private string accMultExclCodeField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string AccCode
+ {
+ get
+ {
+ return this.accCodeField;
+ }
+ set
+ {
+ this.accCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string AccMultExclCode
+ {
+ get
+ {
+ return this.accMultExclCodeField;
+ }
+ set
+ {
+ this.accMultExclCodeField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class AccessoryPakgIncl_Struc
+ {
+
+ private string accCodeField;
+
+ private string accPakgInclCodeField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string AccCode
+ {
+ get
+ {
+ return this.accCodeField;
+ }
+ set
+ {
+ this.accCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string AccPakgInclCode
+ {
+ get
+ {
+ return this.accPakgInclCodeField;
+ }
+ set
+ {
+ this.accPakgInclCodeField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class Accessory_Struc
+ {
+
+ private int uidField;
+
+ private string accDescField;
+
+ private string accCodeField;
+
+ private decimal tradeInField;
+
+ private decimal retailField;
+
+ private decimal loanField;
+
+ private bool isIncludedField;
+
+ private bool isAddedField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string AccDesc
+ {
+ get
+ {
+ return this.accDescField;
+ }
+ set
+ {
+ this.accDescField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public string AccCode
+ {
+ get
+ {
+ return this.accCodeField;
+ }
+ set
+ {
+ this.accCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public decimal TradeIn
+ {
+ get
+ {
+ return this.tradeInField;
+ }
+ set
+ {
+ this.tradeInField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public decimal Retail
+ {
+ get
+ {
+ return this.retailField;
+ }
+ set
+ {
+ this.retailField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public decimal Loan
+ {
+ get
+ {
+ return this.loanField;
+ }
+ set
+ {
+ this.loanField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=6)]
+ public bool IsIncluded
+ {
+ get
+ {
+ return this.isIncludedField;
+ }
+ set
+ {
+ this.isIncludedField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=7)]
+ public bool IsAdded
+ {
+ get
+ {
+ return this.isAddedField;
+ }
+ set
+ {
+ this.isAddedField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class Vehicle_Struc
+ {
+
+ private int uidField;
+
+ private int yearField;
+
+ private int makeCodeField;
+
+ private string makeDescrField;
+
+ private int seriesCodeField;
+
+ private string seriesDescrField;
+
+ private int bodyCodeField;
+
+ private string bodyDescrField;
+
+ private int weightField;
+
+ private string mileageClassField;
+
+ private int gvwField;
+
+ private int gcwField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int Year
+ {
+ get
+ {
+ return this.yearField;
+ }
+ set
+ {
+ this.yearField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int MakeCode
+ {
+ get
+ {
+ return this.makeCodeField;
+ }
+ set
+ {
+ this.makeCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public string MakeDescr
+ {
+ get
+ {
+ return this.makeDescrField;
+ }
+ set
+ {
+ this.makeDescrField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public int SeriesCode
+ {
+ get
+ {
+ return this.seriesCodeField;
+ }
+ set
+ {
+ this.seriesCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public string SeriesDescr
+ {
+ get
+ {
+ return this.seriesDescrField;
+ }
+ set
+ {
+ this.seriesDescrField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=6)]
+ public int BodyCode
+ {
+ get
+ {
+ return this.bodyCodeField;
+ }
+ set
+ {
+ this.bodyCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=7)]
+ public string BodyDescr
+ {
+ get
+ {
+ return this.bodyDescrField;
+ }
+ set
+ {
+ this.bodyDescrField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=8)]
+ public int Weight
+ {
+ get
+ {
+ return this.weightField;
+ }
+ set
+ {
+ this.weightField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=9)]
+ public string MileageClass
+ {
+ get
+ {
+ return this.mileageClassField;
+ }
+ set
+ {
+ this.mileageClassField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=10)]
+ public int Gvw
+ {
+ get
+ {
+ return this.gvwField;
+ }
+ set
+ {
+ this.gvwField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=11)]
+ public int Gcw
+ {
+ get
+ {
+ return this.gcwField;
+ }
+ set
+ {
+ this.gcwField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class Lookup_Struc
+ {
+
+ private int codeField;
+
+ private string descrField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Code
+ {
+ get
+ {
+ return this.codeField;
+ }
+ set
+ {
+ this.codeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string Descr
+ {
+ get
+ {
+ return this.descrField;
+ }
+ set
+ {
+ this.descrField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class CheckedAccessories
+ {
+
+ private string accCodeField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string AccCode
+ {
+ get
+ {
+ return this.accCodeField;
+ }
+ set
+ {
+ this.accCodeField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetAuctionValuesRequest : NADAValueRequest
+ {
+
+ private int uidField;
+
+ private string vicField;
+
+ private int regionField;
+
+ private int mileageField;
+
+ private string customerIdField;
+
+ private int userIdField;
+
+ private string callingApplicationField;
+
+ private CheckedAccessories[] checkedAccessoriesListField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string Vic
+ {
+ get
+ {
+ return this.vicField;
+ }
+ set
+ {
+ this.vicField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int Region
+ {
+ get
+ {
+ return this.regionField;
+ }
+ set
+ {
+ this.regionField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public int Mileage
+ {
+ get
+ {
+ return this.mileageField;
+ }
+ set
+ {
+ this.mileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=4)]
+ public string CustomerId
+ {
+ get
+ {
+ return this.customerIdField;
+ }
+ set
+ {
+ this.customerIdField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=5)]
+ public int UserId
+ {
+ get
+ {
+ return this.userIdField;
+ }
+ set
+ {
+ this.userIdField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=6)]
+ public string CallingApplication
+ {
+ get
+ {
+ return this.callingApplicationField;
+ }
+ set
+ {
+ this.callingApplicationField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlArrayAttribute(Order=7)]
+ public CheckedAccessories[] CheckedAccessoriesList
+ {
+ get
+ {
+ return this.checkedAccessoriesListField;
+ }
+ set
+ {
+ this.checkedAccessoriesListField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetVehicleValuesByMsrpRequest : NADAValueRequest
+ {
+
+ private string vinField;
+
+ private int regionField;
+
+ private int mileageField;
+
+ private int msrpField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string Vin
+ {
+ get
+ {
+ return this.vinField;
+ }
+ set
+ {
+ this.vinField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int Region
+ {
+ get
+ {
+ return this.regionField;
+ }
+ set
+ {
+ this.regionField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int Mileage
+ {
+ get
+ {
+ return this.mileageField;
+ }
+ set
+ {
+ this.mileageField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=3)]
+ public int Msrp
+ {
+ get
+ {
+ return this.msrpField;
+ }
+ set
+ {
+ this.msrpField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetVehicleValuesByVinRequest : NADAValueRequest
+ {
+
+ private string vinField;
+
+ private int regionField;
+
+ private int mileageField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string Vin
+ {
+ get
+ {
+ return this.vinField;
+ }
+ set
+ {
+ this.vinField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int Region
+ {
+ get
+ {
+ return this.regionField;
+ }
+ set
+ {
+ this.regionField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int Mileage
+ {
+ get
+ {
+ return this.mileageField;
+ }
+ set
+ {
+ this.mileageField = value;
+ }
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlIncludeAttribute(typeof(GetAdjustedValuesByUidRequest))]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetVehicleValuesByUidRequest : NADAValueRequest
+ {
+
+ private int uidField;
+
+ private int regionField;
+
+ private int mileageField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int Region
+ {
+ get
+ {
+ return this.regionField;
+ }
+ set
+ {
+ this.regionField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int Mileage
+ {
+ get
+ {
+ return this.mileageField;
+ }
+ set
+ {
+ this.mileageField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetAdjustedValuesByUidRequest : GetVehicleValuesByUidRequest
+ {
+
+ private string[] accessoryListField;
+
+ private string vinField;
+
+ ///
+ [System.Xml.Serialization.XmlArrayAttribute(Order=0)]
+ public string[] AccessoryList
+ {
+ get
+ {
+ return this.accessoryListField;
+ }
+ set
+ {
+ this.accessoryListField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string Vin
+ {
+ get
+ {
+ return this.vinField;
+ }
+ set
+ {
+ this.vinField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetRegionByStateCodeRequest : NADAValueRequest
+ {
+
+ private string stateCodeField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string StateCode
+ {
+ get
+ {
+ return this.stateCodeField;
+ }
+ set
+ {
+ this.stateCodeField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetRegionsRequest : NADAValueRequest
+ {
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetMileageAdjByUidRequest : NADAValueRequest
+ {
+
+ private int uidField;
+
+ private int regionField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int Region
+ {
+ get
+ {
+ return this.regionField;
+ }
+ set
+ {
+ this.regionField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class ValidateVinRequest : NADAValueRequest
+ {
+
+ private string vINField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string VIN
+ {
+ get
+ {
+ return this.vINField;
+ }
+ set
+ {
+ this.vINField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetMutualAccessoriesRequest : NADAValueRequest
+ {
+
+ private int uidField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetAccessoriesRequest : NADAValueRequest
+ {
+
+ private int uidField;
+
+ private string vinField;
+
+ private int regionField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public string Vin
+ {
+ get
+ {
+ return this.vinField;
+ }
+ set
+ {
+ this.vinField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int Region
+ {
+ get
+ {
+ return this.regionField;
+ }
+ set
+ {
+ this.regionField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetVehicleByVicRequest : NADAValueRequest
+ {
+
+ private string vicField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string Vic
+ {
+ get
+ {
+ return this.vicField;
+ }
+ set
+ {
+ this.vicField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetVehicleByUidRequest : NADAValueRequest
+ {
+
+ private int uidField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Uid
+ {
+ get
+ {
+ return this.uidField;
+ }
+ set
+ {
+ this.uidField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetVehiclesByVinRequest : NADAValueRequest
+ {
+
+ private string vinField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public string Vin
+ {
+ get
+ {
+ return this.vinField;
+ }
+ set
+ {
+ this.vinField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetBodyUidsRequest : NADAValueRequest
+ {
+
+ private int yearField;
+
+ private int makeCodeField;
+
+ private int seriesCodeField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Year
+ {
+ get
+ {
+ return this.yearField;
+ }
+ set
+ {
+ this.yearField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int MakeCode
+ {
+ get
+ {
+ return this.makeCodeField;
+ }
+ set
+ {
+ this.makeCodeField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=2)]
+ public int SeriesCode
+ {
+ get
+ {
+ return this.seriesCodeField;
+ }
+ set
+ {
+ this.seriesCodeField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetSeriesRequest : NADAValueRequest
+ {
+
+ private int yearField;
+
+ private int makeCodeField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Year
+ {
+ get
+ {
+ return this.yearField;
+ }
+ set
+ {
+ this.yearField = value;
+ }
+ }
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=1)]
+ public int MakeCode
+ {
+ get
+ {
+ return this.makeCodeField;
+ }
+ set
+ {
+ this.makeCodeField = value;
+ }
+ }
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://webservice.jdpowervalues.com/")]
+ public partial class GetMakesRequest : NADAValueRequest
+ {
+
+ private int yearField;
+
+ ///
+ [System.Xml.Serialization.XmlElementAttribute(Order=0)]
+ public int Year
+ {
+ get
+ {
+ return this.yearField;
+ }
+ set
+ {
+ this.yearField = value;
+ }
+ }
+ }
+
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ public interface VehicleSoapChannel : JdpVehicle.VehicleSoap, System.ServiceModel.IClientChannel
+ {
+ }
+
+ [System.Diagnostics.DebuggerStepThroughAttribute()]
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.Tools.ServiceModel.Svcutil", "2.0.3")]
+ public partial class VehicleSoapClient : System.ServiceModel.ClientBase, JdpVehicle.VehicleSoap
+ {
+
+ ///
+ /// Implement this partial method to configure the service endpoint.
+ ///
+ /// The endpoint to configure
+ /// The client credentials
+ static partial void ConfigureEndpoint(System.ServiceModel.Description.ServiceEndpoint serviceEndpoint, System.ServiceModel.Description.ClientCredentials clientCredentials);
+
+ public VehicleSoapClient(EndpointConfiguration endpointConfiguration) :
+ base(VehicleSoapClient.GetBindingForEndpoint(endpointConfiguration), VehicleSoapClient.GetEndpointAddress(endpointConfiguration))
+ {
+ this.Endpoint.Name = endpointConfiguration.ToString();
+ ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
+ }
+
+ public VehicleSoapClient(EndpointConfiguration endpointConfiguration, string remoteAddress) :
+ base(VehicleSoapClient.GetBindingForEndpoint(endpointConfiguration), new System.ServiceModel.EndpointAddress(remoteAddress))
+ {
+ this.Endpoint.Name = endpointConfiguration.ToString();
+ ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
+ }
+
+ public VehicleSoapClient(EndpointConfiguration endpointConfiguration, System.ServiceModel.EndpointAddress remoteAddress) :
+ base(VehicleSoapClient.GetBindingForEndpoint(endpointConfiguration), remoteAddress)
+ {
+ this.Endpoint.Name = endpointConfiguration.ToString();
+ ConfigureEndpoint(this.Endpoint, this.ClientCredentials);
+ }
+
+ public VehicleSoapClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
+ base(binding, remoteAddress)
+ {
+ }
+
+ public System.Threading.Tasks.Task pingAsync(string token)
+ {
+ return base.Channel.pingAsync(token);
+ }
+
+ public System.Threading.Tasks.Task getYearsAsync(JdpVehicle.GetYearsRequest l_Request)
+ {
+ return base.Channel.getYearsAsync(l_Request);
+ }
+
+ public System.Threading.Tasks.Task getMakesAsync(JdpVehicle.GetMakesRequest l_Request)
+ {
+ return base.Channel.getMakesAsync(l_Request);
+ }
+
+ public System.Threading.Tasks.Task getSeriesAsync(JdpVehicle.GetSeriesRequest l_Request)
+ {
+ return base.Channel.getSeriesAsync(l_Request);
+ }
+
+ public System.Threading.Tasks.Task getBodyUidsAsync(JdpVehicle.GetBodyUidsRequest l_Request)
+ {
+ return base.Channel.getBodyUidsAsync(l_Request);
+ }
+
+ public System.Threading.Tasks.Task getVehiclesAsync(JdpVehicle.GetVehiclesByVinRequest vehicleRequest)
+ {
+ return base.Channel.getVehiclesAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getVehicleAsync(JdpVehicle.GetVehicleByUidRequest vehicleRequest)
+ {
+ return base.Channel.getVehicleAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getVehicleByVicAsync(JdpVehicle.GetVehicleByVicRequest vehicleRequest)
+ {
+ return base.Channel.getVehicleByVicAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getAccessoriesAsync(JdpVehicle.GetAccessoriesRequest accessoriesRequest)
+ {
+ return base.Channel.getAccessoriesAsync(accessoriesRequest);
+ }
+
+ public System.Threading.Tasks.Task getInclusiveAccessoriesAsync(JdpVehicle.GetMutualAccessoriesRequest mutualAccessoriesRequest)
+ {
+ return base.Channel.getInclusiveAccessoriesAsync(mutualAccessoriesRequest);
+ }
+
+ public System.Threading.Tasks.Task getExclusiveAccessoriesAsync(JdpVehicle.GetMutualAccessoriesRequest mutualAccessoriesRequest)
+ {
+ return base.Channel.getExclusiveAccessoriesAsync(mutualAccessoriesRequest);
+ }
+
+ public System.Threading.Tasks.Task validateVinAsync(JdpVehicle.ValidateVinRequest l_request)
+ {
+ return base.Channel.validateVinAsync(l_request);
+ }
+
+ public System.Threading.Tasks.Task getMileageAdjAsync(JdpVehicle.GetMileageAdjByUidRequest mileageAdjRequest)
+ {
+ return base.Channel.getMileageAdjAsync(mileageAdjRequest);
+ }
+
+ public System.Threading.Tasks.Task getRegionsAsync(JdpVehicle.GetRegionsRequest l_Request)
+ {
+ return base.Channel.getRegionsAsync(l_Request);
+ }
+
+ public System.Threading.Tasks.Task getRegionByStateCodeAsync(JdpVehicle.GetRegionByStateCodeRequest l_Request)
+ {
+ return base.Channel.getRegionByStateCodeAsync(l_Request);
+ }
+
+ public System.Threading.Tasks.Task getTotalAdjFloorValuesAsync(JdpVehicle.GetVehicleValuesByUidRequest l_Request)
+ {
+ return base.Channel.getTotalAdjFloorValuesAsync(l_Request);
+ }
+
+ public System.Threading.Tasks.Task getVehicleValueByUidAsync(JdpVehicle.GetVehicleValuesByUidRequest vehicleRequest)
+ {
+ return base.Channel.getVehicleValueByUidAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getBaseVehicleValueByUidAsync(JdpVehicle.GetVehicleValuesByUidRequest vehicleRequest)
+ {
+ return base.Channel.getBaseVehicleValueByUidAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getVehicleAndValueByUidAsync(JdpVehicle.GetVehicleValuesByUidRequest vehicleRequest)
+ {
+ return base.Channel.getVehicleAndValueByUidAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getDefaultVehicleAndValueByVinAsync(JdpVehicle.GetVehicleValuesByVinRequest vehicleRequest)
+ {
+ return base.Channel.getDefaultVehicleAndValueByVinAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getMsrpVehicleAndValueByVinAsync(JdpVehicle.GetVehicleValuesByMsrpRequest vehicleRequest)
+ {
+ return base.Channel.getMsrpVehicleAndValueByVinAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getHighVehicleAndValueByVinAsync(JdpVehicle.GetVehicleValuesByVinRequest vehicleRequest)
+ {
+ return base.Channel.getHighVehicleAndValueByVinAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getLowVehicleAndValueByVinAsync(JdpVehicle.GetVehicleValuesByVinRequest vehicleRequest)
+ {
+ return base.Channel.getLowVehicleAndValueByVinAsync(vehicleRequest);
+ }
+
+ public System.Threading.Tasks.Task getAdjustedValuesByUidAsync(JdpVehicle.GetAdjustedValuesByUidRequest request)
+ {
+ return base.Channel.getAdjustedValuesByUidAsync(request);
+ }
+
+ public System.Threading.Tasks.Task getAuctionValuesAsync(JdpVehicle.GetAuctionValuesRequest auctionValuesRequest)
+ {
+ return base.Channel.getAuctionValuesAsync(auctionValuesRequest);
+ }
+
+ public System.Threading.Tasks.Task getExperianAutoCheckReportAsync(JdpVehicle.GetExperianAutoCheckRequest experianAutocheckRequest)
+ {
+ return base.Channel.getExperianAutoCheckReportAsync(experianAutocheckRequest);
+ }
+
+ public virtual System.Threading.Tasks.Task OpenAsync()
+ {
+ return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginOpen(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndOpen));
+ }
+
+ public virtual System.Threading.Tasks.Task CloseAsync()
+ {
+ return System.Threading.Tasks.Task.Factory.FromAsync(((System.ServiceModel.ICommunicationObject)(this)).BeginClose(null, null), new System.Action(((System.ServiceModel.ICommunicationObject)(this)).EndClose));
+ }
+
+ private static System.ServiceModel.Channels.Binding GetBindingForEndpoint(EndpointConfiguration endpointConfiguration)
+ {
+ if ((endpointConfiguration == EndpointConfiguration.VehicleSoap))
+ {
+ System.ServiceModel.BasicHttpBinding result = new System.ServiceModel.BasicHttpBinding();
+ result.MaxBufferSize = int.MaxValue;
+ result.ReaderQuotas = System.Xml.XmlDictionaryReaderQuotas.Max;
+ result.MaxReceivedMessageSize = int.MaxValue;
+ result.AllowCookies = true;
+ return result;
+ }
+ if ((endpointConfiguration == EndpointConfiguration.VehicleSoap12))
+ {
+ System.ServiceModel.Channels.CustomBinding result = new System.ServiceModel.Channels.CustomBinding();
+ System.ServiceModel.Channels.TextMessageEncodingBindingElement textBindingElement = new System.ServiceModel.Channels.TextMessageEncodingBindingElement();
+ textBindingElement.MessageVersion = System.ServiceModel.Channels.MessageVersion.CreateVersion(System.ServiceModel.EnvelopeVersion.Soap12, System.ServiceModel.Channels.AddressingVersion.None);
+ result.Elements.Add(textBindingElement);
+ System.ServiceModel.Channels.HttpTransportBindingElement httpBindingElement = new System.ServiceModel.Channels.HttpTransportBindingElement();
+ httpBindingElement.AllowCookies = true;
+ httpBindingElement.MaxBufferSize = int.MaxValue;
+ httpBindingElement.MaxReceivedMessageSize = int.MaxValue;
+ result.Elements.Add(httpBindingElement);
+ return result;
+ }
+ throw new System.InvalidOperationException(string.Format("Could not find endpoint with name \'{0}\'.", endpointConfiguration));
+ }
+
+ private static System.ServiceModel.EndpointAddress GetEndpointAddress(EndpointConfiguration endpointConfiguration)
+ {
+ if ((endpointConfiguration == EndpointConfiguration.VehicleSoap))
+ {
+ return new System.ServiceModel.EndpointAddress("http://webservice-stage.jdpowervalues.com/vehicles/vehicle.asmx");
+ }
+ if ((endpointConfiguration == EndpointConfiguration.VehicleSoap12))
+ {
+ return new System.ServiceModel.EndpointAddress("http://webservice-stage.jdpowervalues.com/vehicles/vehicle.asmx");
+ }
+ throw new System.InvalidOperationException(string.Format("Could not find endpoint with name \'{0}\'.", endpointConfiguration));
+ }
+
+ public enum EndpointConfiguration
+ {
+
+ VehicleSoap,
+
+ VehicleSoap12,
+ }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/vehicle.wsdl b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/vehicle.wsdl
new file mode 100644
index 0000000..5e02c4f
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Connected Services/JdpVehicle/vehicle.wsdl
@@ -0,0 +1,1597 @@
+
+
+ This is JDPA Web Service into its vehicle evaluation data.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Returns the boolean value true if the service is functioning and the token is valid.
+
+
+
+
+ Returns the valid years for the inputted parameters.
+
+
+
+
+ Returns the valid makes for the inputted parameters.
+
+
+
+
+ Returns the valid series for the inputted parameters.
+
+
+
+
+ Returns the valid bodies for the inputted parameters.
+
+
+
+
+ Returns an array of vehicles associated with the inputted parameters.
+
+
+
+
+ Returns a vehicle associated with the inputted parameters.
+
+
+
+
+ Returns a vehicle associated with the inputted parameters.
+
+
+
+
+ Returns the accessories associated with the inputted parameters.
+
+
+
+
+ Returns the packaged accessories associated with the inputted parameters.
+
+
+
+
+ Returns the mutually exclusive accessories associated with the inputted parameters.
+
+
+
+
+ Returns true if the inputted vin is valid and false if it is not.
+
+
+
+
+ Returns the mileage adjustments associated with the inputted parameters.
+
+
+
+
+ Returns the valid regions for the inputted parameters.
+
+
+
+
+ Returns the valid region id for the inputted two letter state code.
+
+
+
+
+ Returns the minimum total adjusted value for the inputted parameters.
+
+
+
+
+ Returns the vehicle values associated with the inputted parameters.
+
+
+
+
+ Returns the base vehicle values associated with the inputted parameters.
+
+
+
+
+ Returns the vehicle value for the default vehicle associated with the inputted parameters.
+
+
+
+
+ Returns the vehicle value for the default vehicle associated with the inputted parameters.
+
+
+
+
+ Returns the value for vehicle associated with the inputted VIN and MSRP.
+
+
+
+
+ Returns the vehicle value for highest vehicle value associated with the inputted parameters.
+
+
+
+
+ Returns the vehicle value for lowest vehicle value associated with the inputted parameters.
+
+
+
+
+ Returns the adjusted vehicle values associated with the inputted parameters
+
+
+
+
+ Returns the auction values associated with the inputted parameters.
+
+
+
+
+ Returns Experian AutoCheck reports with the inputted parameters. Requires Experian AutoCheck credentials.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This is JDPA Web Service into its vehicle evaluation data.
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/DuplicateResourceException.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/DuplicateResourceException.cs
new file mode 100644
index 0000000..af73cba
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/DuplicateResourceException.cs
@@ -0,0 +1,9 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Exceptions
+{
+ public class DuplicateResourceException : Exception
+ {
+ public DuplicateResourceException(string resourceType) : base($"Duplicate Resources of type {resourceType} were found.") { }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/MaxItemException.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/MaxItemException.cs
new file mode 100644
index 0000000..6053873
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/MaxItemException.cs
@@ -0,0 +1,13 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Exceptions
+{
+ public class MaxItemException : Exception
+ {
+ public MaxItemException(int itemCount) : base("Too Many Items Were Produced Than Were Allowed.") {
+ ItemCount = itemCount;
+ }
+
+ public int ItemCount { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/UnwantedStatusException.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/UnwantedStatusException.cs
new file mode 100644
index 0000000..fc56d12
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Exceptions/UnwantedStatusException.cs
@@ -0,0 +1,9 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Exceptions
+{
+ public class UnwantedStatusException : Exception
+ {
+ public UnwantedStatusException(int repoId, string accountNo) : base($"Account Number {accountNo} with Repossession ID {repoId} is in Cancelled or Redeemed status") { }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Extensions/QueryableIncludeAll.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Extensions/QueryableIncludeAll.cs
new file mode 100644
index 0000000..4b20c75
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Extensions/QueryableIncludeAll.cs
@@ -0,0 +1,37 @@
+using System.Linq;
+using LCU.API.Internal.RepoApi.Repos.Models;
+using Microsoft.EntityFrameworkCore;
+
+namespace LCU.API.Internal.RepoApi.Repos.Extensions
+{
+ public static class QueryableIncludeAll
+ {
+ public static IQueryable IncludeAll(this IQueryable queryable)
+ {
+ return queryable
+ .Include(repo => repo.Borrowers)
+ .Include(repo => repo.Collaterals)
+ .ThenInclude(collateral => collateral.RepoCompanySelections)
+ .Include(repo => repo.RepoStatusChanges)
+ .Include(repo => repo.RefundStatus)
+ .Include(repo => repo.SixtyPlusCollector)
+ ;
+ }
+
+ public static IQueryable IncludeAll(this IQueryable queryable)
+ {
+ return queryable
+ .Include(auctionAssignment => auctionAssignment.Auction)
+ .Include(auctionAssignment => auctionAssignment.AutoIMS)
+ .Include(auctionAssignment => auctionAssignment.FloorPriceValuesUsed)
+ .ThenInclude(fpvu => fpvu.CollateralValuation)
+ .Include(auctionAssignment => auctionAssignment.AuctionAssignmentToCollaterals)
+ .ThenInclude(aa2c => aa2c.Collateral);
+ }
+
+ public static IQueryable IncludeAll(this IQueryable queryable)
+ {
+ return queryable.Include(collateral => collateral.RepoCompanySelections);
+ }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/LCU.API.Internal.RepoApi.Repos.csproj b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/LCU.API.Internal.RepoApi.Repos.csproj
new file mode 100644
index 0000000..c28a68f
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/LCU.API.Internal.RepoApi.Repos.csproj
@@ -0,0 +1,29 @@
+
+
+
+ net8.0
+ enable
+ enable
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignment.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignment.cs
new file mode 100644
index 0000000..41e93e5
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignment.cs
@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class AuctionAssignment
+ {
+ [Required]
+ public int ID { get; set; }
+ [Required]
+ public string AuctionId { get; set; }
+ [Required]
+ public int? RepoId { get; set; }
+ public string AuctionCustomerNo { get; set; }
+ public string CollateralVIN { get; set; }
+ public DateTime? DateSubmitted { get; set; }
+ public decimal? FloorPrice { get; set; }
+ public int? FloorPriceResponseCode { get; set; }
+ public string FloorPriceResponseDescription { get; set; }
+ public string FloorPriceSubmissionErrors { get; set; }
+ public int? HoldStatus { get; set; }
+ public DateTime? HoldUntil { get; set; }
+ public DateTime? RedeemedDate { get; set; }
+ public int? VehicleType { get; set; }
+ public string BodyStyle { get; set; }
+ public bool? Inoperable { get; set; }
+ public decimal? RetailValue { get; set; }
+ public string AuctionNotes { get; set; }
+ public DateTime? AvailablePickupDate { get; set; }
+ public DateTime? LegalSaleDate { get; set; }
+ public int? CleaningLevel { get; set; }
+ public int? SubmissionResponseCode { get; set; }
+ public string SubmissionResponseDescription { get; set; }
+ public string SubmissionErrors { get; set; }
+ public DateTime? SentTitleDocsDate { get; set; }
+ public int? TitleSentResponseCode { get; set; }
+ public string TitleSentResponseDescription { get; set; }
+ public string TitleSentSubmissionErrors { get; set; }
+ public bool? AddedThroughRepoDatabase { get; set; }
+ public bool IsActive { get; set; }
+
+ public ImsAutoFileData AutoIMS { get; set; }
+ public AuctionHouse Auction { get; set; }
+ public IEnumerable AuctionAssignmentToCollaterals { get; set; }
+ public FloorPriceValuesUsed FloorPriceValuesUsed { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignmentNote.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignmentNote.cs
new file mode 100644
index 0000000..6908e98
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignmentNote.cs
@@ -0,0 +1,20 @@
+using System;
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class AuctionAssignmentNote
+ {
+ [Required]
+ public int Id { get; set; }
+ [Required]
+ public int AuctionAssignmentId { get; set; }
+ [Required]
+ public string AuctionCustomerNo { get; set; }
+ public string Origin { get; set; }
+ public string Writer { get; set; }
+ public string Type { get; set; }
+ public string Text { get; set; }
+ public DateTime? DateWritten { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignmentToCollateral.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignmentToCollateral.cs
new file mode 100644
index 0000000..9047fbd
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionAssignmentToCollateral.cs
@@ -0,0 +1,14 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class AuctionAssignmentToCollateral
+ {
+ [Key]
+ public int AuctionAssignmentId { get; set; }
+ [Key]
+ public int CollateralId { get; set; }
+ public AuctionAssignment AuctionAssignment { get; set; }
+ public Collateral Collateral { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionHouse.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionHouse.cs
new file mode 100644
index 0000000..f8b1f34
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuctionHouse.cs
@@ -0,0 +1,23 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class AuctionHouse
+ {
+ [Required]
+ public string AuctionID { get; set; }
+ [Required]
+ public string Name { get; set; }
+ public string Active { get; set; }
+ public string Address_Line_1 { get; set; }
+ public string Address_Line_2 { get; set; }
+ public string City { get; set; }
+ public string State { get; set; }
+ public string ZIP { get; set; }
+ public string Country { get; set; }
+ public string Phone { get; set; }
+ public string Fax { get; set; }
+ public decimal? Latitude { get; set; }
+ public decimal? Longitude { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuditRecord.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuditRecord.cs
new file mode 100644
index 0000000..180cb12
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AuditRecord.cs
@@ -0,0 +1,18 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class AuditRecord
+ {
+ public int ID { get; set; }
+ // Name of object modified
+ public string ClassName { get; set; }
+ // category of modification
+ public string Action { get; set; }
+ public string Description { get; set; }
+ public string PerformedBy { get; set; }
+ public System.DateTime DatePerformed { get; set; }
+ // The ID representation of the object modified
+ public string KeyRepresentation { get; set; }
+ // Don't want to use, but this is a json of the whole object currently
+ public string PropertyValues { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/FtpConfiguration.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/FtpConfiguration.cs
new file mode 100644
index 0000000..4d68f0c
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/FtpConfiguration.cs
@@ -0,0 +1,13 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.AutoIms
+{
+ public class FtpConfiguration
+ {
+ public string HostName { get; set; }
+ public string UserName { get; set; }
+ public int Port { get; set; }
+ public string ExecutablePath { get; set; }
+ public string SshHostKeyFingerprint { get; set; }
+ public string SshPrivateKeyPath { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/ImportResultRow.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/ImportResultRow.cs
new file mode 100644
index 0000000..27110a1
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/ImportResultRow.cs
@@ -0,0 +1,42 @@
+using System.Collections.Generic;
+using Microsoft.EntityFrameworkCore.Internal;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.AutoIms
+{
+ public class ImportResultRow
+ {
+ public bool Success { get; set; }
+ public List Messages { get; set; }
+ public string Description { get; set; }
+ public ImsAutoFileData Data { get; set; }
+ public RepoAccount RepoAccount { get; set; }
+
+ public string BuildStatusReport(string repoManagerUrl)
+ {
+ var report = new List();
+ var success = Success ? "Success" : "Failure";
+ if (RepoAccount != null)
+ {
+ report.Add(CreateRepoLink(RepoAccount, repoManagerUrl));
+ }
+ if(RepoAccount == null && Data != null)
+ {
+ report.Add($"Auto IMS Update for {Data.VIN}, no Repo Account.");
+ }
+ report.Add($"{success} : {Description}");
+ if (Messages != null && Messages.Any())
+ {
+ report.AddRange(Messages);
+ }
+
+ return report.ToString();
+ }
+
+ public static string CreateRepoLink(RepoAccount account, string repoManagerUrl)
+ {
+ var url = repoManagerUrl + account.RepoId;
+ var link = string.Format("{1}", url, $"Account {account.RepoId} ({account.AccountNo})") ;
+ return link;
+ }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/ImsAutoFileImportData.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/ImsAutoFileImportData.cs
new file mode 100644
index 0000000..cc53c52
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/AutoIms/ImsAutoFileImportData.cs
@@ -0,0 +1,71 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models.AutoIms
+{
+ /**
+ * This models the rows in the CSV File so that they can be different from the rows in SQL
+ */
+ public class ImsAutoFileImportData
+ {
+ public string AnnouncedConditions { get; set; }
+ public string ArbitrationReason { get; set; }
+ public string AsIs100KMiles { get; set; }
+ public string AssignmentAccepted { get; set; }
+ public string AuctionAge { get; set; }
+ public string AuctionGuideBookPrice { get; set; }
+ public string BuyerID { get; set; }
+ public string BuyerName { get; set; }
+ public string ChargeAmount { get; set; }
+ public string CheckAmount { get; set; }
+ public string ClientAge { get; set; }
+ public string ClientCancelled { get; set; }
+ public string CollisionDamage { get; set; }
+ public string InspectedDate { get; set; }
+ public string DateofLoss { get; set; }
+ public string DatePickedUp { get; set; }
+ public string DateEnteredAutoIMS { get; set; }
+ public string DaysRun { get; set; }
+ public string DaysRunHighestBidRecordedbyAuction { get; set; }
+ public string DaystoDelivery { get; set; }
+ public string Description { get; set; }
+ public string Drivable { get; set; }
+ public string FloorPriceAccepted { get; set; }
+ public string FundsSent { get; set; }
+ public string GrossPercentFloor { get; set; }
+ public string HighestBid { get; set; }
+ public string StatedMileage { get; set; }
+ public string NetPercentFloor { get; set; }
+ public string OtherAdvanceFees { get; set; }
+ public string OTHERTotal { get; set; }
+ public string OTHERAdvancedOther { get; set; }
+ public string OTHERAdvancedStorage { get; set; }
+ public string OTHERAdvancedTow { get; set; }
+ public string OTHERMiscellaneous { get; set; }
+ public string SalePrice { get; set; }
+ public string ScheduledSaleDate { get; set; }
+ public string SoldDate { get; set; }
+ public string TitleNumber { get; set; }
+ public string TitleReceived { get; set; }
+ public string TitleReturned { get; set; }
+ public string TitleState { get; set; }
+ public string TitleStatus { get; set; }
+ public string TitleStatusfromAuction { get; set; }
+ public string TotalCharges { get; set; }
+ public string Operable { get; set; }
+ public string ShipmentDate { get; set; }
+ public string Status { get; set; }
+ public string VIN { get; set; }
+ public string StorageCost { get; set; }
+ public string StorageRatePerDay { get; set; }
+ public string TowCost { get; set; }
+ public string CustomerAccountNumber { get; set; }
+ public string DateReceivedFromAutoIMS { get; set; }
+ public string VehicleDecimalGradeCode { get; set; }
+ public string VehicleGrade { get; set; }
+ public string VehicleGradeApprovedCR { get; set; }
+ public string MMRNationalAdjustedPrice { get; set; }
+ public string MMRRegionalAdjustedPrice { get; set; }
+ public string MMR { get; set; }
+ public string ConditionReportLink { get; set; }
+ public string CollateralImagePath { get; set; }
+ public string AuctionAssignmentID { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Borrower.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Borrower.cs
new file mode 100644
index 0000000..34c5902
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Borrower.cs
@@ -0,0 +1,22 @@
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+using Newtonsoft.Json;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class Borrower
+ {
+ [Required]
+ public int RepoId { get; set; }
+ [Required]
+ public string IndividualId { get; set; }
+ [Required]
+ public int OwnershipType { get; set; }
+ [Required]
+ public string IndividualName { get; set; }
+
+ [ForeignKey("RepoId")]
+ [JsonIgnore]
+ public RepoAccount RepoAccount { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ClientError.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ClientError.cs
new file mode 100644
index 0000000..18e395b
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ClientError.cs
@@ -0,0 +1,10 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class ClientError
+ {
+ public string Message { get; set; }
+ public string Name { get; set; }
+ public string StackTrace { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Collateral.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Collateral.cs
new file mode 100644
index 0000000..cd9e653
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Collateral.cs
@@ -0,0 +1,37 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+using Newtonsoft.Json;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class Collateral
+ {
+ [Required]
+ public int CollateralId { get; set; }
+ [Required]
+ public int RepoId { get; set; }
+ public string? Vin { get; set; }
+ public string? Make { get; set; }
+ public string? Model { get; set; }
+ public int? Year { get; set; }
+ public string? Description { get; set; }
+ public int? VehicleType { get; set; }
+ public string? BodyStyle { get; set; }
+ public bool? Inoperable { get; set; }
+ public int? CollateralTypeId { get; set; }
+ public DateTime? RetitledInLandmarkName { get; set; }
+ public string? RefCollateralId { get; set; }
+
+ [ForeignKey("CollateralId")]
+ public IReadOnlyCollection RepoCompanySelections { get; set; }
+
+ [ForeignKey("RepoId")]
+ [JsonIgnore]
+ public RepoAccount RepoAccount { get; set; }
+
+ [JsonIgnore]
+ public IEnumerable AuctionAssignmentToCollaterals { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/AddressDetail.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/AddressDetail.cs
new file mode 100644
index 0000000..4ad0b05
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/AddressDetail.cs
@@ -0,0 +1,35 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class AddressDetail
+ {
+ public int AddressId { get; set; }
+ public string Line1 { get; set; }
+ public string Line2 { get; set; }
+ public string Line3 { get; set; }
+ public string City { get; set; }
+ public string State { get; set; }
+ public string ZipCode { get; set; }
+ public string Country { get; set; }
+ public string CountyName { get; set; }
+ public string AddressType { get; set; }
+ public bool IsPrimary { get; set; }
+ public bool IsInternational { get; set; }
+ public int AddressVerification { get; set; }
+ public string Occupancy { get; set; }
+ public System.DateTime StartDate { get; set; }
+ public System.DateTime EndDate { get; set; }
+ public string LongAddress1 { get; set; }
+ public string LongAddress2 { get; set; }
+ public string[] Membership { get; set; }
+ public string[] CoBorrower { get; set; }
+ public System.DateTime UseAlternateAsOf { get; set; }
+ public System.DateTime RestorePrimaryAsOf { get; set; }
+ public string AlternateType { get; set; }
+ public string Comments { get; set; }
+ public string Met2AddressIndicator { get; set; }
+ public bool UspsVerified { get; set; }
+ public string AddressMatchStatus { get; set; }
+ public bool IsHSA { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/AppraisalDetail.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/AppraisalDetail.cs
new file mode 100644
index 0000000..ee783e3
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/AppraisalDetail.cs
@@ -0,0 +1,25 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class AppraisalDetail
+ {
+ public decimal OriginalAppraisedValue { get; set; }
+ public string OriginalAppraisedBy { get; set; }
+ public string OriginalAppraisalType { get; set; }
+ public System.DateTime OriginalAppraisalDate { get; set; }
+ public decimal LastAppraisedValue { get; set; }
+ public string LastAppraisedBy { get; set; }
+ public string LastAppraisalType { get; set; }
+ public System.DateTime LastAppraisalDate { get; set; }
+ public bool OriginalAppraisalProvided { get; set; }
+ public System.DateTime OriginalDateProvided { get; set; }
+ public int OriginalProvidedByOperatorID { get; set; }
+ public string OriginalProvidedByOperatorName { get; set; }
+ public string OriginalDeliveryMethod { get; set; }
+ public bool LastAppraisalProvided { get; set; }
+ public System.DateTime LastDateProvided { get; set; }
+ public int LastProvidedByOperatorID { get; set; }
+ public string LastProvidedByOperatorName { get; set; }
+ public string LastDeliveryMethod { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/CollateralDetail.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/CollateralDetail.cs
new file mode 100644
index 0000000..564ede6
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/CollateralDetail.cs
@@ -0,0 +1,28 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class CollateralDetail
+ {
+ public int CollateralId { get; set; }
+ public int OwnerId { get; set; }
+ public string OwnerName { get; set; }
+ public string CollateralType { get; set; }
+ public string NameOnTitle { get; set; }
+ public string Description { get; set; }
+ public decimal PurchasePrice { get; set; }
+ public decimal CurrentValue { get; set; }
+ public string SourceOfEvaluation { get; set; }
+ public System.DateTime EvaluationDate { get; set; }
+ public int ValueVerifiedByOperatorNumber { get; set; }
+ public string ValueVerifiedByOperatorName { get; set; }
+ public string VerificationMethod { get; set; }
+ public System.DateTime VerificationDate { get; set; }
+ public int VerifiedBy { get; set; }
+ public string SerialNumber { get; set; }
+ public Vehicle Vehicle { get; set; }
+ public OtherCollateral Other { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/CoreTransaction.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/CoreTransaction.cs
new file mode 100644
index 0000000..6d23a65
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/CoreTransaction.cs
@@ -0,0 +1,16 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ // NOTE: This currently does not contain all possible fields.
+ // Instead, it only contains the fields necessary.
+ // NOTE NOTE: This class will change heavily.
+ public class CoreTransaction
+ {
+ public decimal? runningBalance { get; set; }
+ public DateTime? postingDate { get; set; }
+ public decimal? amount { get; set; }
+ public string transactionTypeCode { get; set; }
+ public string transactionTypeDescription { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/LoanDetail.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/LoanDetail.cs
new file mode 100644
index 0000000..a68e88e
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/LoanDetail.cs
@@ -0,0 +1,268 @@
+using System.Collections.Generic;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class LoanDetail
+ {
+ public long MemberId { get; set; }
+ public long LoanId { get; set; }
+ public long ExternalLoanId { get; set; }
+ public int[] IndividualId { get; set; }
+ public List Borrowers { get; set; }
+ public string LoanType { get; set; }
+ public string Title { get; set; }
+ public string Alerts { get; set; }
+ public string Product { get; set; }
+ public int ProductCode { get; set; }
+ public string Template { get; set; }
+ public int ProductId { get; set; }
+ public string ProductDescription { get; set; }
+ public string ProductCategory { get; set; }
+ public string ProductClass { get; set; }
+ public int AccountType { get; set; }
+ public string Status { get; set; }
+ public System.DateTime ClosedDate { get; set; }
+ public string Category { get; set; }
+ public string Classification { get; set; }
+ public string MetroAcctType { get; set; }
+ public string SMSA { get; set; }
+ public string Officer { get; set; }
+ public string OtherSecurity { get; set; }
+ public string NoteNumber { get; set; }
+ public System.DateTime LastMaintenance { get; set; }
+ public System.DateTime WrittenOffDate { get; set; }
+ public string CreditCardNumber { get; set; }
+ public System.DateTime LastCycleDate { get; set; }
+ public string LegalDescription { get; set; }
+ public string PropertyType { get; set; }
+ public string PurposeCode { get; set; }
+ public string CollateralCode { get; set; }
+ public string RefinanceCount { get; set; }
+ public System.DateTime LastRefinanceDate { get; set; }
+ public string LdcNumber { get; set; }
+ public string Messages { get; set; }
+ public decimal OriginalAmount { get; set; }
+ public System.DateTime OriginationDate { get; set; }
+ public decimal Balance { get; set; }
+ public decimal AvailableBalance { get; set; }
+ public decimal Limit { get; set; }
+ public decimal EscrowBalance { get; set; }
+ public decimal Payoff { get; set; }
+ public decimal UnappliedFundsBalance { get; set; }
+ public decimal CashAdvanceBalance { get; set; }
+ public decimal PurchaseAdvanceBalance { get; set; }
+ public decimal ActiveAuthorizationAmount { get; set; }
+ public decimal EscrowDividends { get; set; }
+ public string PledgeType { get; set; }
+ public string MiscCharge1 { get; set; }
+ public string MiscCharge2 { get; set; }
+ public string MiscCharge3 { get; set; }
+ public string MiscChargeCode1 { get; set; }
+ public string MiscChargeCode2 { get; set; }
+ public string MiscChargeCode3 { get; set; }
+ public decimal InterestMemoed { get; set; }
+ public System.DateTime InterestAccruedDate { get; set; }
+ public decimal PaymentInterestDue { get; set; }
+ public decimal PayoffInterestDue { get; set; }
+ public string LateChargeMethod { get; set; }
+ public decimal LateCharge { get; set; }
+ public System.DateTime LateChargeDate { get; set; }
+ public decimal CashAdvance { get; set; }
+ public string Insurance { get; set; }
+ public decimal LastStatementLateCharges { get; set; }
+ public decimal LastStatementMiscFees { get; set; }
+ public decimal LastStatementPurchaseAdvances { get; set; }
+ public decimal LastStatementCashAdvances { get; set; }
+ public decimal LastStatementCashAdvanceFees { get; set; }
+ public decimal LastStatementMiscDebits { get; set; }
+ public decimal LastStatementTotalPayments { get; set; }
+ public decimal LastStatementCreditsPosted { get; set; }
+ public decimal LastStatementAccruedInterest { get; set; }
+ public System.DateTime LastStatementDate { get; set; }
+ public decimal LastStatementPurchaseAdvanceBalance { get; set; }
+ public decimal LastStatementEndingBalance { get; set; }
+ public decimal DelinquentAmount { get; set; }
+ public decimal LastStatementMonthlyMinimum { get; set; }
+ public decimal LastStatementRequiredDue { get; set; }
+ public decimal LastStatementRequiredPayment { get; set; }
+ public decimal ScheduledPayment { get; set; }
+ public System.DateTime NextDueDate { get; set; }
+ public decimal PartialPaymentAmount { get; set; }
+ public System.DateTime PreviousDate { get; set; }
+ public string PaymentFrequency { get; set; }
+ public System.DateTime AlignmentDate { get; set; }
+ public string PaymentMethod { get; set; }
+ public string SourceAccount { get; set; }
+ public string ProcessingGroup { get; set; }
+ public System.DateTime LoanCouponDate { get; set; }
+ public decimal RequiredPaymentDue { get; set; }
+ public System.DateTime FirstPaymentDate { get; set; }
+ public decimal AlternatePaymentAmount { get; set; }
+ public System.DateTime AlternateBeginDate { get; set; }
+ public System.DateTime AlternateEndDate { get; set; }
+ public int PaymentSkips { get; set; }
+ public decimal FinalPaymentAmount { get; set; }
+ public System.DateTime FinalPaymentDate { get; set; }
+ public decimal CycleAmount { get; set; }
+ public string VariableRatePaymentChange { get; set; }
+ public string VariableRateCode { get; set; }
+ public decimal MinimumDue { get; set; }
+ public decimal FrequencyPayment { get; set; }
+ public decimal EscrowPayment { get; set; }
+ public decimal PrincipalAndInterestPayment { get; set; }
+ public string PaymentLoanDefinitionNumber { get; set; }
+ public string RateLoanDefinitionNumber { get; set; }
+ public int VacationWeeks { get; set; }
+ public int PayrollRepaidWeeklyPaymentCount { get; set; }
+ public decimal BaseRate { get; set; }
+ public decimal TieredRateAdj { get; set; }
+ public decimal ManualRateAdj { get; set; }
+ public decimal Rate { get; set; }
+ public decimal ManualRate { get; set; }
+ public decimal APR { get; set; }
+ public decimal OriginalInterestRate { get; set; }
+ public decimal AlternateInterestRate { get; set; }
+ public System.DateTime LastRateChange { get; set; }
+ public decimal RealEstateMargin { get; set; }
+ public string Amortization { get; set; }
+ public int AmortizationTerm { get; set; }
+ public int MonthlyTerm { get; set; }
+ public int NumberOfPayments { get; set; }
+ public decimal InterestYTD { get; set; }
+ public decimal InterestPYTD { get; set; }
+ public decimal InterestDaily { get; set; }
+ public decimal PrincipalYTD { get; set; }
+ public decimal PrincipalPYTD { get; set; }
+ public decimal LateChargeYTD { get; set; }
+ public decimal LateChargePYTD { get; set; }
+ public string PaymentHistory { get; set; }
+ public System.DateTime LastPaymentDue { get; set; }
+ public int PaymentsPastDue { get; set; }
+ public int DaysPastDue { get; set; }
+ public int MonthsPastDue { get; set; }
+ public decimal CurrentStatementLateCharges { get; set; }
+ public decimal CurrentStatementMiscFees { get; set; }
+ public decimal CurrentStatementPurchaseAdvances { get; set; }
+ public decimal CurrentStatementCashAdvances { get; set; }
+ public decimal CurrentStatementCashAdvanceFees { get; set; }
+ public decimal CurrentStatementMiscDebits { get; set; }
+ public decimal CurrentStatementTotalPayments { get; set; }
+ public decimal CurrentStatementTotalCredits { get; set; }
+ public System.DateTime DelinquentPaymentDueDate { get; set; }
+ public bool IsInactive { get; set; }
+ public string StatementFrequency { get; set; }
+ public decimal AppraisedValue { get; set; }
+ public int LocCycleDay { get; set; }
+ public bool IgnorePledge { get; set; }
+ public bool OpenEndPlan { get; set; }
+ public string OpenEndCategory { get; set; }
+ public decimal PointsPaid { get; set; }
+ public decimal CurtailmentAmount { get; set; }
+ public System.DateTime CurtailmentDate { get; set; }
+ public System.DateTime InsuranceExpirationDate { get; set; }
+ public string LifeInsuranceMI { get; set; }
+ public string DisabilityInsuranceMI { get; set; }
+ public string LifeActivityInsuranceCode { get; set; }
+ public string DisabilityActivityInsuranceCode { get; set; }
+ public bool LoanCoupons { get; set; }
+ public bool PaidbyGrace { get; set; }
+ public string EscrowAccount { get; set; }
+ public bool EscrowInterestPaid { get; set; }
+ public System.DateTime NextPaymentAdjustmentDate { get; set; }
+ public decimal EffectivePayment { get; set; }
+
+ public decimal InterestRate { get; set; }
+
+ public System.DateTime LastPaymentDate { get; set; }
+ public System.DateTime LastPurchaseDate { get; set; }
+ public System.DateTime LastCashAdvanceDate { get; set; }
+ public string BlockCode { get; set; }
+ public string ReclassCode { get; set; }
+ public int OutstandingAuthCount { get; set; }
+ public decimal OutstandingAuthAmount { get; set; }
+ public string InterestType { get; set; }
+ public string AlternateLoanNumber { get; set; }
+ public int ArmIndex { get; set; }
+ public string DeductionOption { get; set; }
+ public bool DelinquentPaymentSkips { get; set; }
+ public bool FirstPayment { get; set; }
+ public decimal InterestDue { get; set; }
+ public bool LoanLevelSkips { get; set; }
+ public bool PaymentReduction { get; set; }
+ public bool WaiveLateCharge { get; set; }
+ public int ExcessPaymentTargetAccountId { get; set; }
+ public long ExcessPaymentMemberId { get; set; }
+ public bool CustRate { get; set; }
+ public string IntRateMethod { get; set; }
+ public decimal Margin { get; set; }
+ public string Index { get; set; }
+ public decimal RndFactPct { get; set; }
+ public string RndFactOpt { get; set; }
+ public decimal IntRateCeiling { get; set; }
+ public decimal IntRateFloor { get; set; }
+ public decimal MaxDnRateChgLife { get; set; }
+ public decimal MaxUpRateChgLife { get; set; }
+ public decimal MaxDnRateChgPeriod { get; set; }
+ public decimal MaxUpRateChgPeriod { get; set; }
+ public decimal MinDnRateChgPeriod { get; set; }
+ public decimal MinUpRateChgPeriod { get; set; }
+ public short PmtAdjPeriod { get; set; }
+ public short DaysPriorToPeriodicRateAdj { get; set; }
+ public short DaysPriorToInitialRateAdjustment { get; set; }
+ public bool FirstAdjustmentIsEstimate { get; set; }
+ public System.DateTime InitialAnalysisEstimateDate { get; set; }
+ public string EstimatePerformed { get; set; }
+
+ public int BalloonTerm { get; set; }
+
+ public string PledgeTypeDescription { get; set; }
+
+ public string SystemApproved { get; set; }
+
+ public string[] VINList { get; set; }
+
+ public long? MortgageLoanOriginator { get; set; }
+ public decimal? LastPaymentPrincipal { get; set; }
+ public decimal? LastPaymentInterest { get; set; }
+ public decimal? LastPaymentFees { get; set; }
+ public decimal? LastPaymentLateCharges { get; set; }
+ public decimal? LastPaymentEscrowImpound { get; set; }
+ public decimal? LastPaymentCurtailment { get; set; }
+ public decimal? LastPaymentTotal { get; set; }
+ public short TransferDay { get; set; }
+
+ public long SourceMember { get; set; }
+
+ public bool AdjustPurchaseAccrual { get; set; }
+ public bool AnnualFee { get; set; }
+ public System.DateTime AnnualFeeDate { get; set; }
+ public decimal BalaceLimit { get; set; }
+ public bool CloseOnZero { get; set; }
+ public System.DateTime DrawDate { get; set; }
+ public string Form1098Option { get; set; }
+ public bool MethodADelinquency { get; set; }
+ public short? NumberofSkips { get; set; }
+ public decimal OverlimitAmount { get; set; }
+ public System.DateTime OverlimitDate { get; set; }
+ public decimal PurchaseAdvBalance { get; set; }
+ public System.DateTime SkipDate { get; set; }
+ public bool ToBeDelinquent { get; set; }
+ public bool WaiveDelinquencyNotice { get; set; }
+ public bool WaiveBillingNotice { get; set; }
+ public bool WaiveInterest { get; set; }
+ public decimal LastStatementMinimumPayment { get; set; }
+
+ public decimal LastStatementCycleRequiredPayment { get; set; }
+
+ public bool ExemptNonResident { get; set; }
+ public string YTDNonresidentWithholding { get; set; }
+ public string PYTDNonresidentWithholding { get; set; }
+
+ public string InCollection { get; set; }
+
+ public string UniversalLoanId { get; set; }
+ public System.DateTime RateLockDate { get; set; }
+ public string ActiveStopPays { get; set; }
+ public string[] ErrorMessage { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/LoanOwner.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/LoanOwner.cs
new file mode 100644
index 0000000..251fdcb
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/LoanOwner.cs
@@ -0,0 +1,18 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class LoanOwner
+ {
+ public int IndividualId { get; set; }
+ public string Name { get; set; }
+ public string Type { get; set; }
+ public string Address { get; set; }
+ public string TaxId { get; set; }
+ public string Association { get; set; }
+ public System.DateTime LastAssociationCodeChangedDate { get; set; }
+ public string Metro2ConsumerInformationIndicator { get; set; }
+ public bool CoborrowerIsSpouse { get; set; }
+ public decimal OwnershipPercentage { get; set; }
+ public string PercentageDescription { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/MemberDetail.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/MemberDetail.cs
new file mode 100644
index 0000000..caaec37
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/MemberDetail.cs
@@ -0,0 +1,55 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class MemberDetail
+ {
+ public long MemberId { get; set; }
+ public string MemberName { get; set; }
+ public int PrimaryIndividualId { get; set; }
+ public string MemberType { get; set; }
+ public string Affiliation { get; set; }
+ public System.DateTime MemberSince { get; set; }
+ public string Miscellaneous1 { get; set; }
+ public string Miscellaneous2 { get; set; }
+ public string OriginalOpenBranch { get; set; }
+ public string WithholdingCode { get; set; }
+ public decimal ExpeditedFunds { get; set; }
+ public System.DateTime ExpeditedFundsDate { get; set; }
+ public int AccessLevel { get; set; }
+ public int StandardStatementCycle { get; set; }
+ public string StandardStatementCode { get; set; }
+ public string StandardStatementMethod { get; set; }
+ public int CATFeeCounter { get; set; }
+ public System.DateTime CATFeeDate { get; set; }
+ public int CreditCardStatementCycle { get; set; }
+ public string CreditCardStatementCode { get; set; }
+ public string CreditCardStatementMethod { get; set; }
+ public int AccountCount { get; set; }
+ public decimal AccountBalance { get; set; }
+ public int LoanCount { get; set; }
+ public decimal LoanBalance { get; set; }
+ public int LoansDelinquentCount { get; set; }
+ public decimal LoansDelinquent { get; set; }
+ public int LoansWrittenOffCount { get; set; }
+ public decimal LoansWrittenOff { get; set; }
+ public int LoansInCollectionCount { get; set; }
+ public decimal LoansInCollection { get; set; }
+ // public AccountSummary[] Account { get; set; }
+ // public LoanSummary[] Loan { get; set; }
+ // public CrossMemberDetails[] CrossMember { get; set; }
+ public string Password { get; set; }
+ public string PinLock { get; set; }
+ public int BranchId { get; set; }
+ public int RelationshipPricingLevel { get; set; }
+ public string RelationshipPricingLevelPermanent { get; set; }
+ public string RelationshipPricingDescription { get; set; }
+ public int PreviousRelationshipPricingLevel { get; set; }
+ public string LastRelationshipPricingLevelAnalysisDate { get; set; }
+ public string LastRelationshipPricingLevelChangeDate { get; set; }
+ public string InhibitActivity { get; set; }
+ public string WrittenOffLoan { get; set; }
+ public string LoanInCollection { get; set; }
+ public string PurgeMembership { get; set; }
+ public AddressDetail Address { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/OtherCollateral.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/OtherCollateral.cs
new file mode 100644
index 0000000..f5e1c03
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/OtherCollateral.cs
@@ -0,0 +1,10 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class OtherCollateral
+ {
+ public string MiscellaneousInformation { get; set; }
+ public AppraisalDetail Appraisal { get; set; }
+ public string OtherCollateralType { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/QueueResult.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/QueueResult.cs
new file mode 100644
index 0000000..6d8bf2e
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/QueueResult.cs
@@ -0,0 +1,11 @@
+
+using LCU.API.Internal.RepoApi.Repos.Models.Producer;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class QueueResult
+ {
+ public ulong DeliveryTag { get; set; }
+ public ProcessingReceipt Receipt { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/RepoRunInfo.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/RepoRunInfo.cs
new file mode 100644
index 0000000..6117430
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/RepoRunInfo.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using LCU.API.Internal.RepoApi.Repos.Models.Producer;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class RepoRunInfo
+ {
+ public RepoRunInfo()
+ {
+ StartDateTime = DateTime.Now;
+ Receipts = new List();
+ }
+
+ public DateTime StartDateTime { get; private set; }
+ public DateTime? CompleteDateTime { get; set; }
+
+ public List Receipts { get; private set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/Vehicle.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/Vehicle.cs
new file mode 100644
index 0000000..671af9f
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Consumer/Vehicle.cs
@@ -0,0 +1,20 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models.Consumer
+{
+ public class Vehicle
+ {
+ public string VIN { get; set; }
+ public int Year { get; set; }
+ public string Make { get; set; }
+ public string Model { get; set; }
+ public string LicensePlate { get; set; }
+ public string LicenseState { get; set; }
+ public string CountryLicensed { get; set; }
+ public int Mileage { get; set; }
+ public string BodyStyle { get; set; }
+ public string Color { get; set; }
+ public string KeyCode { get; set; }
+ public string SellerName { get; set; }
+ public decimal LowBookValue { get; set; }
+ public decimal HighBookValue { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/EnvironmentView.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/EnvironmentView.cs
new file mode 100644
index 0000000..ba205cc
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/EnvironmentView.cs
@@ -0,0 +1,33 @@
+using System;
+using System.Reflection;
+using Microsoft.AspNetCore.Hosting;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class EnvironmentView : IEnvironmentView
+ {
+ public string Application => _env.ApplicationName;
+ public DateTime CurrentDate => DateTime.Now;
+ public string BuildVersion => Assembly.GetExecutingAssembly().GetName().Version.ToString();
+ public DateTime BuildDate => AssemblyBuildDate();
+ public string Environment => _env.EnvironmentName;
+ private readonly IHostingEnvironment _env;
+
+ public EnvironmentView(IHostingEnvironment env)
+ {
+ _env = env;
+ }
+
+ public static DateTime AssemblyBuildDate()
+ {
+ //https://stackoverflow.com/a/804310/266594
+ //TODO #246: Look up this value at start up to avoid hitting the filesystem repeatedly
+ System.Reflection.Assembly assembly = System.Reflection.Assembly.GetExecutingAssembly();
+ System.IO.FileInfo fileInfo = new System.IO.FileInfo(assembly.Location);
+ DateTime lastModified = fileInfo.LastWriteTime;
+
+ return lastModified;
+ }
+
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/EventAlert.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/EventAlert.cs
new file mode 100644
index 0000000..ac09ecf
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/EventAlert.cs
@@ -0,0 +1,26 @@
+using System;
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class EventAlert
+ {
+ public int Id { get; set; }
+ public int? RepoId { get; set; }
+ [Required]
+ public string AccountNo { get; set; }
+ [Required]
+ public DateTime DateAdded { get; set; }
+ public DateTime? DateMarkedRead { get; set; }
+ [Required]
+ [MaxLength(25)]
+ public string CreatedBy { get; set; }
+ public string MarkedReadBy { get; set; }
+ [Required]
+ public string Message { get; set; }
+ public int? DayCount { get; set; }
+ public string SubMessage { get; set; }
+ public string EmailRecipient { get; set; }
+ public string EmailBody { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ExternalUser.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ExternalUser.cs
new file mode 100644
index 0000000..cc49724
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ExternalUser.cs
@@ -0,0 +1,19 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class ExternalUser
+ {
+ [Required]
+ public int Id { get; set; }
+
+ [Required]
+ public int ReferenceId { get; set; }
+
+ [Required]
+ public string Name { get; set; }
+
+ [Required]
+ public string Code { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationParams.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationParams.cs
new file mode 100644
index 0000000..2649e5f
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationParams.cs
@@ -0,0 +1,13 @@
+
+using System.Collections.Generic;
+using LCU.API.Internal.RepoApi.Repos.WebServices.NADA;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class FloorPriceCalculationParams
+ {
+ public ImsAutoFileData ImsAutoFileData { get; set; }
+ public CollateralValuation CollateralValuation { get; set; }
+ public IEnumerable VehicleFloorPricingParameters { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationResult.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationResult.cs
new file mode 100644
index 0000000..9f2abf9
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationResult.cs
@@ -0,0 +1,13 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class FloorPriceCalculationResult
+ {
+ public string StrategyName { get; set; }
+ public bool Success { get; set; }
+ public decimal FloorPrice { get; set; }
+ public int ResultWeight { get; set; }
+ public string FailureReason { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationResultSet.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationResultSet.cs
new file mode 100644
index 0000000..ffbc854
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceCalculationResultSet.cs
@@ -0,0 +1,11 @@
+using System.Collections.Generic;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class FloorPriceCalculationResultSet
+ {
+ public FloorPriceCalculationResult PrimaryResult { get; set; }
+ public IEnumerable AllResults { get; set; }
+ public FloorPriceValuesUsed FloorPriceValuesUsed { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceValuesUsed.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceValuesUsed.cs
new file mode 100644
index 0000000..fe4f58e
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/FloorPriceValuesUsed.cs
@@ -0,0 +1,37 @@
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+using LCU.API.Internal.RepoApi.Repos.WebServices.NADA;
+using Newtonsoft.Json;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class FloorPriceValuesUsed
+ {
+ [Required]
+ public int AuctionAssignmentId { get; set; }
+ [Required]
+ public int RepoId { get; set; }
+ [Required]
+ public int CollateralValuationId { get; set; }
+
+ public decimal? Condition { get; set; }
+ public decimal LowParam { get; set; }
+ public decimal HighParam { get; set; }
+ public decimal PercentageOf { get; set; }
+ public decimal? AuctionGuideBookPrice { get; set; }
+ public bool WasAuctionGuideBookPriceUsed { get; set; }
+ public decimal? MMRNationalAdjustedPrice { get; set; }
+ public decimal? MMRRegionalAdjustedPrice { get; set; }
+ public bool WasMMRNationalAdjustedPriceUsed { get; set; }
+ public bool WasMMRRegionalAdjustedPriceUsed { get; set; }
+ public int NADALowAdjustedAuctionValue { get; set; }
+ public int NADAAverageAdjustedAuctionValue { get; set; }
+ public int NADAHighAdjustedAuctionValue { get; set; }
+ public bool WasNADALowAdjustedAuctionValueUsed { get; set; }
+ public bool WasNADAAverageAdjustedAuctionValueUsed { get; set; }
+ public bool WasNADAHighAdjustedAuctionValueUsed { get; set; }
+ public decimal? NADAMMRFloorPrice { get; set; }
+
+ public CollateralValuation CollateralValuation { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/IEnvironmentView.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/IEnvironmentView.cs
new file mode 100644
index 0000000..addffee
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/IEnvironmentView.cs
@@ -0,0 +1,13 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public interface IEnvironmentView
+ {
+ string Application { get; }
+ DateTime CurrentDate { get; }
+ string BuildVersion { get; }
+ DateTime BuildDate { get; }
+ string Environment { get; }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ImsAutoFileData.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ImsAutoFileData.cs
new file mode 100644
index 0000000..5315130
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ImsAutoFileData.cs
@@ -0,0 +1,77 @@
+using System;
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class ImsAutoFileData
+ {
+ [Required]
+ public int RepoId { get; set; }
+ [Required]
+ public string VIN { get; set; }
+ [Required]
+ public int AuctionAssignmentId { get; set; }
+ [Required]
+ public string AuctionCustomerNo { get; set; }
+
+ public DateTime? AssignmentAccepted { get; set; }
+ public DateTime? DateReceivedFromAutoIMS { get; set; }
+ public DateTime? ScheduledSaleDate { get; set; }
+ public DateTime? SoldDate { get; set; }
+ public string AnnouncedConditions { get; set; }
+ public string ArbitrationReason { get; set; }
+ public bool? AsIs100KMiles { get; set; }
+ public int? AuctionAge { get; set; }
+ public decimal? AuctionGuideBookPrice { get; set; }
+ public string BuyerId { get; set; }
+ public string BuyerName { get; set; }
+ public decimal? ChargeAmount { get; set; }
+ public decimal? CheckAmount { get; set; }
+ public int? ClientAge { get; set; }
+ public DateTime? ClientCancelled { get; set; }
+ public string CollisionDamage { get; set; }
+ public DateTime? InspectedDate { get; set; }
+ public DateTime? DateofLoss { get; set; }
+ public DateTime? DatePickedUp { get; set; }
+ public DateTime? DateEnteredAutoIMS { get; set; }
+ public int? DaysRun { get; set; }
+ public string DaysRunHighestBidRecordedbyAuction { get; set; }
+ public int? DaystoDelivery { get; set; }
+ public string Description { get; set; }
+ public bool? IsDrivable { get; set; }
+ public decimal? FloorPriceAccepted { get; set; }
+ public DateTime? FundsSent { get; set; }
+ public decimal? GrossPercentFloor { get; set; }
+ public decimal? HighestBid { get; set; }
+ public int? StatedMileage { get; set; }
+ public decimal? NetPercentFloor { get; set; }
+ public decimal? OtherAdvanceFees { get; set; }
+ public string OTHERTotal { get; set; }
+ public string OTHERAdvancedOther { get; set; }
+ public string OTHERAdvancedStorage { get; set; }
+ public string OTHERAdvancedTow { get; set; }
+ public string OTHERMiscellaneous { get; set; }
+ public decimal? SalePrice { get; set; }
+ public string TitleNumber { get; set; }
+ public DateTime? TitleReceived { get; set; }
+ public DateTime? TitleReturned { get; set; }
+ public string TitleState { get; set; }
+ public string TitleStatus { get; set; }
+ public string TitleStatusfromAuction { get; set; }
+ public decimal? TotalCharges { get; set; }
+ public decimal? ApprovedVehicleGrade { get; set; }
+ public bool? IsOperable { get; set; }
+ public DateTime? ShipmentDate { get; set; }
+ public string Status { get; set; }
+ public decimal? StorageCost { get; set; }
+ public decimal? StorageRatePerDay { get; set; }
+ public decimal? TowCost { get; set; }
+ public decimal? VehicleDecimalGradeCode { get; set; }
+ public decimal? VehicleGrade { get; set; }
+ public decimal? MMRNationalAdjustedPrice { get; set; }
+ public decimal? MMRRegionalAdjustedPrice { get; set; }
+ public string MMR { get; set; }
+ public string ConditionReportLink { get; set; }
+ public string CollateralImagePath { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Letter.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Letter.cs
new file mode 100644
index 0000000..90f5f95
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Letter.cs
@@ -0,0 +1,20 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class Letter
+ {
+ public string ActionCode { get; set; }
+
+ // This is the eventual "This works and the code was written well" solution.
+ // Once letter codes are in place and agreed upon the alerts can be switched from ActionCode to LetterCode
+ public string? LetterCode { get; set; }
+ public string Description { get; set; }
+ public int? DaysToWait { get; set; }
+ public string WhenLetterIsSent { get; set; }
+
+ // This is currently used to match up descriptions from Temenos history/comments. Used to find if a specific
+ // ActionCode/LetterCode was sent.
+ public string LetterDescription { get; set; }
+
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/OwnershipType.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/OwnershipType.cs
new file mode 100644
index 0000000..4a997d8
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/OwnershipType.cs
@@ -0,0 +1,9 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public enum OwnershipType
+ {
+ Other = 1,
+ Coborrower = 3,
+ Borrower = 6
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ProcessingReceipt.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ProcessingReceipt.cs
new file mode 100644
index 0000000..e3865dd
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/ProcessingReceipt.cs
@@ -0,0 +1,37 @@
+using System;
+using System.ComponentModel.DataAnnotations;
+using LCU.API.Internal.RepoApi.Repos.Models.Producer;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class ProcessingReceipt
+ {
+ public ProcessingReceipt(string accountNo)
+ {
+ AccountNo = accountNo;
+ AccountId = "";
+ QueuedBy = "Unknown";
+ Message = "";
+ Outcome = RepoProcessingResult.Error;
+ Processed = DateTime.Now;
+ }
+
+ public string AccountNo { get; protected set; }
+
+ [Required]
+ public string AccountId { get; set; }
+ [Required]
+ public string CaseId { get; set; }
+ [Required]
+ [MaxLength(40)]
+ public string QueuedBy { get; set; }
+ public RepoProcessingResult Outcome { get; set; }
+ public string Message { get; set; }
+ public DateTime Processed { get; set; }
+
+ public string Pretty()
+ {
+ return $"Key: {AccountNo}|{AccountId}|{CaseId}|{QueuedBy} -> {Outcome} : {Message}";
+ }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Producer/ProcessingItem.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Producer/ProcessingItem.cs
new file mode 100644
index 0000000..87c6c88
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Producer/ProcessingItem.cs
@@ -0,0 +1,18 @@
+
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Producer
+{
+ public class ProcessingItem
+ {
+ public string AccountNo { get; set; }
+
+ public string AccountId { get; set; }
+ public string CaseId { get; set; }
+ public string QueuedBy { get; set; }
+ public string DetermineAuditItemKey()
+ {
+ return AccountNo + ":" + CaseId;
+ }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Producer/RepoProcessingResult.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Producer/RepoProcessingResult.cs
new file mode 100644
index 0000000..dce5cff
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Producer/RepoProcessingResult.cs
@@ -0,0 +1,13 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models.Producer
+{
+ public enum RepoProcessingResult
+ {
+ Autoclosed,
+ Unconverted,
+ Created,
+ Updated,
+ Ineligible,
+ MissingRequirement,
+ Error
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RefundStatus.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RefundStatus.cs
new file mode 100644
index 0000000..ea992e0
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RefundStatus.cs
@@ -0,0 +1,16 @@
+using System;
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class RefundStatus
+ {
+ [Required]
+ public int? RepoId { get; set; }
+ public string? WarrantyRefundStatus { get; set; }
+ public string? InsuranceRefundStatus { get; set; }
+ public string? PremiumDefiRefundStatus { get; set; }
+ public string? CPIRefundStatus { get; set; }
+ public DateTime? RefundsReceivedDate { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoAccount.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoAccount.cs
new file mode 100644
index 0000000..94f4653
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoAccount.cs
@@ -0,0 +1,58 @@
+using LCU.API.Internal.RepoApi.Repos.Models.Consumer;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class RepoAccount
+ {
+ public int RepoId { get; set; }
+ [Required]
+ public string AccountNo { get; set; }
+ [Required]
+ public string Status { get; set; }
+ public long MemberNo { get; set; }
+ public long LoanNo { get; set; }
+ public string AccountTypeCode { get; set; }
+ public string OrigAccountTypeCode { get; set; }
+ public int? Branch { get; set; }
+ public string Collector { get; set; }
+ public decimal? Balance { get; set; }
+ public DateTime? DueToPayDate { get; set; }
+ public DateTime? O4RDate { get; set; }
+ public DateTime? DateFirstDelinquent { get; set; }
+ public decimal? DelinquentAmount { get; set; }
+ public int? DaysDelinquent { get; set; }
+ public decimal? PaidSkipAmount { get; set; }
+ public string SubStatus { get; set; }
+ public decimal? RequiredPaymentAmount { get; set; }
+ public decimal? CurrentDelinquentAmount { get; set; }
+ public decimal? LstPmtAmt { get; set; }
+ public decimal? OrigAmount { get; set; }
+ public DateTime? LastPaymentDate { get; set; }
+ public DateTime? DateFirstIntellect { get; set; }
+ public string PrimaryIndividualId { get; set; }
+ public string Bankruptcy { get; set; }
+ public DateTime? ManualRedemptionDate { get; set; }
+ public DateTime? RedemptionExpiredDate { get; set; }
+ public ICollection Borrowers { get; set; }
+ public ICollection Collaterals { get; set; }
+ public ICollection RepoStatusChanges { get; set; }
+ [ForeignKey("RepoId")]
+ public RefundStatus RefundStatus { get; set; }
+ public DateTime? DateClosed { get; set; }
+ // This should reference
+ // a CaseId for Temenos.
+ public int? ReferenceId { get; set; }
+ public int? ReferenceCaseId { get; set; }
+ // This is the "Account Status" from Temenos so we can "Watch" it.
+ public string ReferenceStatus { get; set; }
+ public DateTime? AccountLastProcessed { get; set; }
+ public DateTime? WrittenOffDate { get; set; }
+ public int? SixtyPlusCollectorId { get; set; }
+ [ForeignKey("SixtyPlusCollectorId")]
+ public SixtyPlusCollector SixtyPlusCollector { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoCompany.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoCompany.cs
new file mode 100644
index 0000000..7e304c2
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoCompany.cs
@@ -0,0 +1,22 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class RepoCompany
+ {
+ public int ID { get; set; }
+
+ public int? ReferenceId { get; set; }
+ public string Name { get; set; }
+ public string? Email { get; set; }
+ public string? Address_Line_1 { get; set; }
+ public string? Address_Line_2 { get; set; }
+ public string? City { get; set; }
+ public string? State { get; set; }
+ public string? ZIP { get; set; }
+ public string? Country { get; set; }
+ public string? Phone { get; set; }
+ public string? Fax { get; set; }
+ public string? DisabledBy { get; set; }
+ public DateTime? DisabledDate { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoCompanySelection.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoCompanySelection.cs
new file mode 100644
index 0000000..32c192d
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoCompanySelection.cs
@@ -0,0 +1,48 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using LCU.API.Collections.CollectionsApiLib.Models;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class RepoCompanySelection : IValidatableObject
+ {
+ public int? Id { get; set; }
+
+ [Required]
+ public int? CollateralId { get; set; }
+
+ public RepoType RepoType { get; set; }
+
+ public int? RepoCompanyId { get; set; }
+
+ public DateTime? RepoCompanyAssignmentDate { get; set; }
+
+ public DateTime? DateRepoed { get; set; }
+
+ public DateTime? DateTimeCreated { get; set; }
+
+ public IEnumerable Validate(ValidationContext validationContext)
+ {
+ var failedValidations = new List();
+
+ // This cannot be a required field on account of it resulting in a SQL error
+ if (RepoType == null)
+ {
+ failedValidations.Add(new ValidationResult("Repo Company Selection: The RepoType cannot be blank"));
+ }
+
+ if (RepoCompanyAssignmentDate > DateRepoed)
+ {
+ failedValidations.Add(new ValidationResult("Repo Company Selection: The date repoed cannot come before the date assigned."));
+ }
+
+ if (RepoCompanyId != null && RepoCompanyAssignmentDate == null)
+ {
+ failedValidations.Add(new ValidationResult("Repo Company Selection: The Repo Company Assignment date cannot be null when a Repo Company is set."));
+ }
+
+ return failedValidations;
+ }
+ }
+}
\ No newline at end of file
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoLetter.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoLetter.cs
new file mode 100644
index 0000000..c0894d9
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoLetter.cs
@@ -0,0 +1,14 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class RepoLetter
+ {
+ public string NoticeType { get; set; }
+ public DateTime DateSent { get; set; }
+ public DateTime DateExpired { get; set; }
+ public int DaysToRedeem { get; set; }
+ public string ActionCode { get; set; }
+
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoManualStatus.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoManualStatus.cs
new file mode 100644
index 0000000..a20d045
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoManualStatus.cs
@@ -0,0 +1,16 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class RepoManualStatus
+ {
+ [Required]
+ public int ID { get; set; }
+ [Required]
+ public string Description { get; set; }
+ [Required]
+ public bool IsActiveStatus { get; set; }
+ [Required]
+ public bool WatchForStatusChanges { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoStatusChange.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoStatusChange.cs
new file mode 100644
index 0000000..eaec16f
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/RepoStatusChange.cs
@@ -0,0 +1,28 @@
+using System;
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+using Newtonsoft.Json;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class RepoStatusChange
+ {
+ [Required]
+ [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
+ public int Id { get; set; }
+ [Required]
+ public int RepoId { get; set; }
+ [Required]
+ public string StatusFrom { get; set; }
+ [Required]
+ public string StatusTo { get; set; }
+ [Required]
+ public string ChangedBy { get; set; }
+ [Required]
+ public DateTime ChangedDate { get; set; }
+
+ [ForeignKey("RepoId")]
+ [JsonIgnore]
+ public RepoAccount RepoAccount { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/LandmarkReportAccountEntry.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/LandmarkReportAccountEntry.cs
new file mode 100644
index 0000000..f10a4eb
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/LandmarkReportAccountEntry.cs
@@ -0,0 +1,47 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Reporting
+{
+ public class LandmarkReportAccountEntry
+ {
+ // Repo
+ public int RepoId { get; set; }
+ public string AccountNo { get; set; }
+ public decimal? Balance { get; set; }
+ public int? DaysDelinquent { get; set; }
+ public DateTime? LastPaymentDate { get; set; }
+ public decimal? LastPaymentAmount { get; set; }
+ public string AccountTypeCode { get; set; }
+ public string Bankruptcy { get; set; }
+ public decimal? DelinquentAmount { get; set; }
+ public string Collector { get; set; }
+ public DateTime? DateClosed { get; set; }
+ // Borrower
+ public string IndividualName { get; set; }
+ // Collateral
+ public string Make { get; set; }
+ public string Model { get; set; }
+ public int? Year { get; set; }
+ // RepoCompanySelection
+ public string RepoCompany { get; set; }
+ public DateTime? DateRepoed { get; set; }
+ public string RepoType { get; set; }
+ public DateTime? DateAssigned { get; set; }
+ // RepoStatusChange
+ public string Status { get; set; }
+ public int? DaysInStatus { get; set; }
+ // IMSAutoFile Data
+ public DateTime? SoldDate { get; set; }
+ public DateTime? DateEnteredAutoIMS { get; set; }
+ public DateTime? ScheduledSaleDate { get; set; }
+ public decimal? FloorPrice { get; set; }
+ public decimal? Grade { get; set; }
+ // Auction and AuctionAssignments
+ public string AuctionHouse { get; set; }
+ public DateTime? AuctionDate { get; set; }
+ public decimal? TotalCharges { get; set; }
+ public decimal? GrossPercentFloor { get; set; }
+ public decimal? NetPercentFloor { get; set; }
+ public decimal? GrossSalePrice { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/DataTable.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/DataTable.cs
new file mode 100644
index 0000000..26ae1b7
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/DataTable.cs
@@ -0,0 +1,10 @@
+using System.Collections.Generic;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Reporting.Responses
+{
+ public class DataTable
+ {
+ public string[] Headers { get; set; }
+ public IEnumerable Rows { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/RepoAccountReferenceRow.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/RepoAccountReferenceRow.cs
new file mode 100644
index 0000000..cc7b7c8
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/RepoAccountReferenceRow.cs
@@ -0,0 +1,8 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models.Reporting.Responses
+{
+ public class RepoAccountReferenceRow
+ {
+ public int RepoId { get; set; }
+ public ReportCell[] Cells { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportCell.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportCell.cs
new file mode 100644
index 0000000..fd7176b
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportCell.cs
@@ -0,0 +1,8 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models.Reporting.Responses
+{
+ public class ReportCell
+ {
+ public string Display { get; set; }
+ public object Value { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportTable.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportTable.cs
new file mode 100644
index 0000000..cc2867e
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportTable.cs
@@ -0,0 +1,8 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models.Reporting.Responses
+{
+ public class ReportTable
+ {
+ public string[] Headers { get; set; }
+ public ReportCell[,] Cells { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportTableResponse.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportTableResponse.cs
new file mode 100644
index 0000000..52d8264
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/Responses/ReportTableResponse.cs
@@ -0,0 +1,8 @@
+namespace LCU.API.Internal.RepoApi.Repos.Models.Reporting.Responses
+{
+ public class ReportTableResponse
+ {
+ public ReportTable ReportTable { get; set; }
+ public DataTable DataTable { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/StdReportEntry.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/StdReportEntry.cs
new file mode 100644
index 0000000..899cb61
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Reporting/StdReportEntry.cs
@@ -0,0 +1,53 @@
+using System;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Reporting
+{
+ public class StdReportEntry
+ {
+ // Repo
+ public int RepoId { get; set; }
+ public string AccountNo { get; set; }
+ public string AccountTypeCode { get; set; }
+ public decimal Balance { get; set; }
+ public string Status { get; set; }
+ public int DaysInStatus { get; set; }
+ public string Bankruptcy { get; set; }
+ public string Collector { get; set; }
+ public int? DaysCurrentDelq { get; set; }
+ public int? DaysDelqWhenAdded { get; set; }
+ public decimal? DelinquentAmount { get; set; }
+ public decimal? LastPaymentAmount { get; set; }
+ public DateTime? LastPaymentDate { get; set; }
+ public string FilteredStatus { get; set; }
+ public DateTime? FilteredStatusChangeDate { get; set; }
+ public DateTime? O4RDate { get; set; }
+ // Auction Assignment
+ public string AuctionId { get; set; }
+ public string AuctionName { get; set; }
+ // Collateral
+ public int CollateralId { get; set; }
+ public int? RepoCompanyId { get; set; }
+ public string RepoCompany { get; set; }
+ public string RepoType { get; set; }
+ public DateTime? RepoCompanyAssignmentDate { get; set; }
+ public DateTime? DateRepoed { get; set; }
+ public int? RepoDuration { get; set; }
+ public int? Year { get; set; }
+ public string Make { get; set; }
+ public string Model { get; set; }
+ // IMSAutoFile Data
+ public string AutoImsStatus { get; set; }
+ public DateTime? SoldDate { get; set; }
+ public DateTime? DateEnteredAutoIMS { get; set; }
+ public DateTime? ScheduledSaleDate { get; set; }
+ public decimal? GrossPercentFloor { get; set; }
+ public decimal? NetPercentFloor { get; set; }
+ public decimal? TotalCharges { get; set; }
+ public decimal? Grade { get; set; }
+ public decimal? FloorPrice { get; set; }
+ public decimal? GrossSalePrice { get; set; }
+ // Borrower
+ public string IndividualName { get; set; }
+ }
+
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/AuctionData.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/AuctionData.cs
new file mode 100644
index 0000000..64632fb
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/AuctionData.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Results
+{
+ public class AuctionData
+ {
+ public int LowAuction { get; set; }
+ public int AvgAuction { get; set; }
+ public int HighAuction { get; set; }
+ public string DateRange { get; set; }
+ public object AuctionAccessories { get; set; }
+ public string AcceptableMileage { get; set; }
+ public string RatePerMile { get; set; }
+ public string MileageAdjust { get; set; }
+ public string MinAuctionValue { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/AuctionInformation.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/AuctionInformation.cs
new file mode 100644
index 0000000..b1c5ae1
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/AuctionInformation.cs
@@ -0,0 +1,13 @@
+using System.Collections.Generic;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Results
+{
+ public class AuctionInformation
+ {
+ public string RequestId { get; set; }
+ public List Result { get; set; }
+ public string Userinfo { get; set; }
+ public string Error { get; set; }
+ public string AuthId { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/PagedResult.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/PagedResult.cs
new file mode 100644
index 0000000..71cd7d3
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/PagedResult.cs
@@ -0,0 +1,10 @@
+using System.Collections.Generic;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Results
+{
+ public class PagedResult where T : class
+ {
+ public IEnumerable Items { get; set; }
+ public int Total { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/VehicleData.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/VehicleData.cs
new file mode 100644
index 0000000..1749963
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/VehicleData.cs
@@ -0,0 +1,60 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Results
+{
+ public class VehicleData
+ {
+ public int Modelyear { get; set; }
+ public string Make { get; set; }
+ public string Model { get; set; }
+ public string Body { get; set; }
+ public int Ucgvehicleid { get; set; }
+ public string Vehicletype { get; set; }
+ public string Mileageclass { get; set; }
+ public string Basemsrp { get; set; }
+ public string Bodytype { get; set; }
+ public string Doors { get; set; }
+ public string Trim { get; set; }
+ public string Trim2 { get; set; }
+ public string Drivetype { get; set; }
+ public string Liters { get; set; }
+ public string Engineconfiguration { get; set; }
+ public string Cylinders { get; set; }
+ public string Inductiontype { get; set; }
+ public string Transmission { get; set; }
+ public string Fueltype { get; set; }
+ public string Wheels { get; set; }
+ public string Curbweight { get; set; }
+ public string Gvw { get; set; }
+ public string Gcw { get; set; }
+ public string Ucgsubsegment { get; set; }
+ public string Modelnumber { get; set; }
+ public int Rollupvehicleid { get; set; }
+ public int Basecleantrade { get; set; }
+ public int Baseaveragetrade { get; set; }
+ public int Baseroughtrade { get; set; }
+ public int Basecleanretail { get; set; }
+ public int Baseloan { get; set; }
+ public int Averagemileage { get; set; }
+ public int Mileageadjustment { get; set; }
+ public int Vinoptionstrade { get; set; }
+ public int Vinoptionsretail { get; set; }
+ public int Vinoptionsloan { get; set; }
+ public int Adjustedcleantrade { get; set; }
+ public int Adjustedaveragetrade { get; set; }
+ public int Adjustedroughtrade { get; set; }
+ public int Adjustedcleanretail { get; set; }
+ public int Adjustedloan { get; set; }
+ public int Maxmileageadj { get; set; }
+ public int Minmileageadj { get; set; }
+ public int Minadjretail { get; set; }
+ public int Minadjcleantrade { get; set; }
+ public int Minadjaveragetrade { get; set; }
+ public int Minadjroughtrade { get; set; }
+ public int Minadjloan { get; set; }
+ public int Minadjretailforloan { get; set; }
+ public int Vid { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/VehicleInformation.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/VehicleInformation.cs
new file mode 100644
index 0000000..53e5678
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Results/VehicleInformation.cs
@@ -0,0 +1,13 @@
+using System.Collections.Generic;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Results
+{
+ public class VehicleInformation
+ {
+ public string RequestId { get; set; }
+ public List Result { get; set; }
+ public string Userinfo { get; set; }
+ private string AdjustedMileage { get; set; }
+ private string AuthId { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/SavedLocation.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/SavedLocation.cs
new file mode 100644
index 0000000..fc3e91a
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/SavedLocation.cs
@@ -0,0 +1,35 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class SavedLocation
+ {
+ public int ID { get; set; }
+
+ [Required]
+ public string Name { get; set; }
+
+ [Required]
+ public int? LocationType { get; set; }
+
+ [Required]
+ public string Address_Line_1 { get; set; }
+
+ public string Address_Line_2 { get; set; }
+
+ [Required]
+ public string City { get; set; }
+
+ [Required]
+ public string State { get; set; }
+
+ [Required]
+ public string ZIP { get; set; }
+
+ public string Country { get; set; }
+
+ public string Phone { get; set; }
+
+ public string Fax { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/AccountType.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/AccountType.cs
new file mode 100644
index 0000000..84ec45c
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/AccountType.cs
@@ -0,0 +1,23 @@
+using System.ComponentModel.DataAnnotations.Schema;
+using System.ComponentModel.DataAnnotations;
+using System.Text.Json.Serialization;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class AccountType
+ {
+ [Required]
+ public int ID { get; set; }
+ [Required]
+ public string AccountTypeCode { get; set; }
+ [Required]
+ public string Description { get; set; }
+ [Required]
+ public bool IsVisible { get; set; }
+ public int? CategoryId { get; set; }
+
+ [ForeignKey("ID")]
+ [JsonIgnore]
+ public LoanCategory LoanCategories { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/AllowedStatusChange.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/AllowedStatusChange.cs
new file mode 100644
index 0000000..61ee301
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/AllowedStatusChange.cs
@@ -0,0 +1,14 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class AllowedStatusChange
+ {
+ [Required]
+ public int ID { get; set; }
+ [Required]
+ public string CurrentStatus { get; set; }
+ [Required]
+ public string AllowedChangeStatus { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/BodyStylesCodes.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/BodyStylesCodes.cs
new file mode 100644
index 0000000..e42aa8d
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/BodyStylesCodes.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class BodyStyle
+ {
+ [Required]
+ public string Code { get; set; }
+ [Required]
+ public string Description { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/BranchEntry.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/BranchEntry.cs
new file mode 100644
index 0000000..ec3bbd9
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/BranchEntry.cs
@@ -0,0 +1,9 @@
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class BranchEntry
+ {
+ public string BranchId { get; set; }
+ public string BranchName { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CleaningLevel.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CleaningLevel.cs
new file mode 100644
index 0000000..e8e8fb9
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CleaningLevel.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class CleaningLevel
+ {
+ [Required]
+ public int Code { get; set; }
+ [Required]
+ public string Description { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CleaningLevelCodes_NN.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CleaningLevelCodes_NN.cs
new file mode 100644
index 0000000..5aea6ef
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CleaningLevelCodes_NN.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class CleaningLevelCodes_NN
+ {
+ [Required]
+ public int Code { get; set; }
+ [Required]
+ public string Description { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CodeDescriptionPairs.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CodeDescriptionPairs.cs
new file mode 100644
index 0000000..80b5fce
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CodeDescriptionPairs.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class CodeDescriptionPairs
+ {
+ [Required]
+ public int Code { get; set; }
+ [Required]
+ public string Description { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CollateralType.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CollateralType.cs
new file mode 100644
index 0000000..1d7b912
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CollateralType.cs
@@ -0,0 +1,14 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class CollateralType
+ {
+ [Required]
+ public int ID { get; set; }
+ [Required]
+ public string Description { get; set; }
+ [Required]
+ public string LookupHandler { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CollateralTypeToVehicleType.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CollateralTypeToVehicleType.cs
new file mode 100644
index 0000000..c475613
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/CollateralTypeToVehicleType.cs
@@ -0,0 +1,14 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class CollateralTypeToVehicleType
+ {
+ [Required]
+ public int ID { get; set; }
+ [Required]
+ public int CollateralTypeId { get; set; }
+ [Required]
+ public int VehicleTypeId { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/HoldStatus.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/HoldStatus.cs
new file mode 100644
index 0000000..e4eb49d
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/HoldStatus.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class HoldStatus
+ {
+ [Required]
+ public int Code { get; set; }
+ [Required]
+ public string Description { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/LoanCategory.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/LoanCategory.cs
new file mode 100644
index 0000000..87d8cf4
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/LoanCategory.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class LoanCategory
+ {
+ [Required]
+ public int ID { get; set; }
+ [Required]
+ public string CategoryName { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/LocationType.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/LocationType.cs
new file mode 100644
index 0000000..39cac9d
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/LocationType.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class LocationType
+ {
+ [Required]
+ public int Code { get; set; }
+ [Required]
+ public string Description { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/Settings.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/Settings.cs
new file mode 100644
index 0000000..82f28d0
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/Settings.cs
@@ -0,0 +1,26 @@
+using System.Collections.Generic;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class Settings
+ {
+ public IEnumerable AccountTypes { get; set; }
+ public IEnumerable AllowedStatusChanges { get; set; }
+ public IEnumerable BodyStyles { get; set; }
+ public IEnumerable CleaningLevels { get; set; }
+ public IEnumerable CollateralTypes { get; set; }
+ public IEnumerable CollateralTypesToVehicleTypes { get; set; }
+ public IEnumerable HoldStatuses { get; set; }
+ public IEnumerable LoanCategories { get; set; }
+ public IEnumerable LocationTypes { get; set; }
+ public IEnumerable VehicleTypes { get; set; }
+ public IEnumerable BranchSet { get; set; }
+ public IReadOnlyCollection ExternalUsers { get; set; }
+ public IReadOnlyCollection RepoCompanies { get; set; }
+ public IReadOnlyCollection TransactionTypeCodes { get; set; }
+ public string TransactionTypeCodeQueryPrefix { get; set; }
+ public string TransactionHistoryParameterDateFormat { get; set; }
+ public int TransactionHistoryStartDateOffset { get; set; }
+ public IReadOnlyDictionary RepoTypeMap { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/VehicleType.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/VehicleType.cs
new file mode 100644
index 0000000..e493192
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/Settings/VehicleType.cs
@@ -0,0 +1,12 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models.Settings
+{
+ public class VehicleType
+ {
+ [Required]
+ public string Code { get; set; }
+ [Required]
+ public string Description { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/SixtyPlusCollector.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/SixtyPlusCollector.cs
new file mode 100644
index 0000000..90fbc1a
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/SixtyPlusCollector.cs
@@ -0,0 +1,15 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class SixtyPlusCollector
+ {
+ [Required]
+ public int SixtyPlusCollectorId { get; set; }
+ [Required]
+ public string SixtyPlusCollectorName { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/VehicleFloorPricingParameters.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/VehicleFloorPricingParameters.cs
new file mode 100644
index 0000000..353cab5
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Models/VehicleFloorPricingParameters.cs
@@ -0,0 +1,17 @@
+using System.ComponentModel.DataAnnotations;
+
+namespace LCU.API.Internal.RepoApi.Repos.Models
+{
+ public class VehicleFloorPricingParameters
+ {
+ [Required]
+ public int Id { get; set; }
+ public decimal LowCondition { get; set; }
+ public decimal HighCondition { get; set; }
+ public string NADAFirstValue { get; set; }
+ public string NADASecondValue { get; set; }
+ public string MMRAdjustedValue { get; set; }
+ public decimal PercentageOf { get; set; }
+ public int ValuationServiceType { get; set; }
+ }
+}
diff --git a/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Persistence/AppDbContext.cs b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Persistence/AppDbContext.cs
new file mode 100644
index 0000000..e97cacb
--- /dev/null
+++ b/LCU.API.Internal.RepoApi/LCU.API.Internal.RepoApi.Repos/Persistence/AppDbContext.cs
@@ -0,0 +1,412 @@
+using Microsoft.EntityFrameworkCore;
+using LCU.API.Internal.RepoApi.Repos.Models.Settings;
+using LCU.API.Internal.RepoApi.Repos.Models;
+using LCU.API.Collections.CollectionsApiLib.Models;
+using LCU.API.Internal.RepoApi.Repos.Models.Producer;
+using LCU.API.Internal.RepoApi.Repos.Models.Reporting;
+using System.Data.Entity.Infrastructure;
+using LCU.Library.Internal.RepoApiModels.Models;
+
+
+namespace LCU.API.Internal.RepoApi.Repos.Persistence
+{
+ public class AppDbContext : DbContext
+ {
+ public DbSet AccountTypeCodes { get; set; }
+ public DbSet AllowedStatusChanges { get; set; }
+ public DbSet Auctions { get; set; }
+ public DbSet AuctionAssignments { get; set; }
+ public DbSet AuctionAssignmentNotes { get; set; }
+ public DbSet AuditRecords { get; set; }
+ public DbSet BodyStyleCodes { get; set; }
+ public DbSet Borrowers { get; set; }
+ public DbSet CleaningLevelCodes { get; set; }
+ public DbSet Collaterals { get; set; }
+ public DbSet CollateralTypes { get; set; }
+ public DbSet CollateralTypesToVehicleTypes { get; set; }
+ public DbSet EventAlerts { get; set; }
+ public DbSet FloorPriceValuesUsed { get; set; }
+ public DbSet HoldStatusCodes { get; set; }
+ public DbSet ImsAutoFileData { get; set; }
+ public DbSet Letters { get; set; }
+ public DbSet LoanCategories { get; set; }
+ public DbSet LocationTypeCodes { get; set; }
+ public DbSet ProcessingReceipts { get; set; }
+ public DbSet RepoAccounts { get; set; }
+ public DbSet RepoCompanies { get; set; }
+ public DbSet RepoManualStatuses { get; set; }
+ public DbSet RepoStatusChanges { get; set; }
+ public DbSet VehicleTypeCodes { get; set; }
+ public DbSet VehicleFloorPricingParameters { get; set; }
+ public DbSet RefundStatuses { get; set; }
+ public DbSet AuctionAssignmentToCollaterals { get; set; }
+ public DbSet RepoCompanySelections { get; set; }
+ public DbSet SavedLocations { get; set; }
+
+ public DbSet ExternalUsers { get; set; }
+ public DbSet SixtyPLusCollectors { get; set; }
+
+ public DbSet RepoSyncRunInfo { get; set; }
+ public DbSet RepoSyncBatch { get; set; }
+
+ // Queries for Reporting / etc
+ //TODO REMOVING FOR testing
+ //public DbQuery StandardReportEntries { get; set; }
+ //public DbQuery ActiveAccountEntries { get; set; }
+
+ public AppDbContext(DbContextOptions options) : base(options)
+ {
+ }
+
+ protected override void OnModelCreating(ModelBuilder builder)
+ {
+ base.OnModelCreating(builder);
+
+ builder.Entity().ToTable("EventAlert");
+ builder.Entity().HasKey(p => p.Id);
+ builder.Entity().Property(p => p.Id).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.AccountNo).IsRequired();
+ builder.Entity().Property(p => p.DateAdded).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.CreatedBy).IsRequired().HasMaxLength(25);
+ builder.Entity().Property(p => p.Message).IsRequired();
+ builder.Entity().Property(p => p.EmailRecipient);
+ builder.Entity().Property(p => p.EmailBody);
+
+ builder.Entity().ToTable("Borrowers");
+ builder.Entity().HasKey(p => new { p.RepoId, p.IndividualId });
+ builder.Entity().Property(p => p.IndividualName).IsRequired();
+ builder.Entity().Property(p => p.OwnershipType).IsRequired();
+
+ builder.Entity().ToTable("ProcessingReceipt");
+ builder.Entity().HasKey(p => new { p.AccountNo, p.AccountId, p.CaseId });
+ builder.Entity().Property(p => p.AccountId);
+ builder.Entity().Property(p => p.CaseId);
+ builder.Entity().Property(p => p.QueuedBy);
+ builder.Entity().Property(p => p.Message);
+ //TODO: DO this for repocompanyselection repo type
+ builder.Entity().Property(p => p.Outcome)
+ .HasConversion(x => x.ToString(),
+ x => (RepoProcessingResult)Enum.Parse(typeof(RepoProcessingResult), x));
+ builder.Entity().Property(p => p.Processed);
+
+ builder.Entity().ToTable("Repos");
+ builder.Entity().HasKey(p => p.RepoId);
+ builder.Entity().Property(p => p.RepoId).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.AccountNo).IsRequired();
+ builder.Entity().Property(p => p.Status).IsRequired();
+ builder.Entity().Property(p => p.SubStatus);
+ builder.Entity().HasMany(p => p.Borrowers);
+ builder.Entity().HasMany(p => p.Collaterals);
+ builder.Entity().HasMany(p => p.RepoStatusChanges);
+ builder.Entity().HasOne(p => p.RefundStatus).WithOne().IsRequired(false);
+ builder.Entity().Property(p => p.RedemptionExpiredDate);
+ builder.Entity().HasOne(p => p.SixtyPlusCollector);
+
+ builder.Entity().ToTable("RepoStatusChanges");
+ builder.Entity().HasKey(p => new { p.RepoId, p.Id });
+ builder.Entity().Property(p => p.RepoId).IsRequired();
+ builder.Entity().Property(p => p.StatusFrom).IsRequired();
+ builder.Entity().Property(p => p.StatusTo).IsRequired();
+ builder.Entity().Property(p => p.ChangedBy).IsRequired();
+ builder.Entity().Property(p => p.ChangedDate).IsRequired().ValueGeneratedOnAdd();
+
+ builder.Entity().ToTable("AuditTable");
+ builder.Entity().HasKey(p => p.ID);
+ builder.Entity().Property(p => p.DatePerformed).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.Description).IsRequired();
+ builder.Entity().Property(p => p.Action).IsRequired();
+ builder.Entity().Property(p => p.ClassName).IsRequired();
+ builder.Entity().Property(p => p.PerformedBy).IsRequired();
+ builder.Entity().Property(p => p.KeyRepresentation).IsRequired();
+ builder.Entity().Property(p => p.PropertyValues);
+
+ builder.Entity().ToTable("Collaterals");
+ builder.Entity().HasKey(p => p.CollateralId);
+ builder.Entity().Property(p => p.CollateralId).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.RepoId).IsRequired();
+ builder.Entity().Property(p => p.Vin);
+ builder.Entity().Property(p => p.Make);
+ builder.Entity().Property(p => p.Model);
+ builder.Entity().Property(p => p.Year);
+ builder.Entity().Property(p => p.Description);
+ builder.Entity().Property(p => p.VehicleType);
+ builder.Entity().Property(p => p.BodyStyle);
+ builder.Entity().Property(p => p.Inoperable);
+ builder.Entity().Property(p => p.CollateralTypeId);
+ builder.Entity().Property(p => p.RetitledInLandmarkName);
+ builder.Entity().Property(p => p.RefCollateralId);
+ builder.Entity().HasMany(p => p.AuctionAssignmentToCollaterals);
+ builder.Entity().HasMany(p => p.RepoCompanySelections);
+
+ builder.Entity().ToTable("RepoManualStatus");
+ builder.Entity().HasKey(p => p.ID);
+ builder.Entity().Property(p => p.ID).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.Description).IsRequired();
+ builder.Entity().Property(p => p.IsActiveStatus).IsRequired();
+ builder.Entity().Property(p => p.WatchForStatusChanges).IsRequired();
+
+ builder.Entity().ToTable("AccountTypeCodes");
+ builder.Entity().HasKey(p => p.ID);
+ builder.Entity().Property(p => p.ID).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.Description).IsRequired();
+ builder.Entity().Property(p => p.IsVisible).IsRequired();
+ builder.Entity().Property(p => p.CategoryId);
+
+ builder.Entity().ToTable("AllowedStatusChanges");
+ builder.Entity().HasKey(p => p.ID);
+ builder.Entity().Property(p => p.ID).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.CurrentStatus).IsRequired();
+ builder.Entity().Property(p => p.AllowedChangeStatus).IsRequired();
+
+ builder.Entity().ToTable("BodyStyleCodes");
+ builder.Entity().HasKey(p => p.Code);
+ builder.Entity().Property(p => p.Code).IsRequired();
+ builder.Entity().Property(p => p.Description).IsRequired();
+
+ builder.Entity().ToTable("CleaningLevelCodes");
+ builder.Entity().HasKey(p => p.Code);
+ builder.Entity().Property(p => p.Code).IsRequired();
+ builder.Entity().Property(p => p.Description).IsRequired();
+
+ builder.Entity().ToTable("CollateralTypes");
+ builder.Entity().HasKey(p => p.ID);
+ builder.Entity().Property(p => p.ID).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.Description).IsRequired();
+ builder.Entity().Property(p => p.LookupHandler).IsRequired();
+
+ builder.Entity().ToTable("HoldStatusCodes");
+ builder.Entity().HasKey(p => p.Code);
+ builder.Entity().Property(p => p.Code).IsRequired();
+ builder.Entity().Property(p => p.Description).IsRequired();
+
+ builder.Entity().ToTable("LoanCategories");
+ builder.Entity().HasKey(p => p.ID);
+ builder.Entity().Property(p => p.ID).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity().Property(p => p.CategoryName).IsRequired();
+
+ builder.Entity().ToTable("LocationTypeCodes");
+ builder.Entity().HasKey(p => p.Code);
+ builder.Entity().Property(p => p.Code).IsRequired();
+ builder.Entity().Property(p => p.Description).IsRequired();
+
+ builder.Entity().ToTable("VehicleTypeCodes");
+ builder.Entity().HasKey(p => p.Code);
+ builder.Entity().Property(p => p.Code).IsRequired();
+ builder.Entity().Property(p => p.Description).IsRequired();
+
+ builder.Entity().ToTable("CollateralTypesToVehicleTypes");
+ builder.Entity().HasKey(p => p.ID);
+ builder.Entity().Property(p => p.ID).IsRequired().ValueGeneratedOnAdd();
+ builder.Entity