Add sample controller action
This commit is contained in:
parent
1813aa2795
commit
aac7282c34
1 changed files with 46 additions and 0 deletions
46
README.md
46
README.md
|
@ -1,2 +1,48 @@
|
||||||
# fcs-virk
|
# fcs-virk
|
||||||
|
|
||||||
|
Sample controller action
|
||||||
|
|
||||||
|
```
|
||||||
|
public async Task<IHttpActionResult> GetCvrData([FromUri] VrQuery query)
|
||||||
|
{
|
||||||
|
if (!ModelState.IsValid)
|
||||||
|
return BadRequest(ModelState);
|
||||||
|
|
||||||
|
if (!VrQueryValidator.ValidateVrQuery(query))
|
||||||
|
return BadRequest($"invalid request");
|
||||||
|
|
||||||
|
// cvr endpoint
|
||||||
|
var cvrLookupUrl = $"{Settings.CvrLookupUrl}";
|
||||||
|
|
||||||
|
// auth
|
||||||
|
var auth = $"{Settings.CvrCredentials}";
|
||||||
|
|
||||||
|
// initialize result object
|
||||||
|
var result = new List<CvrInfo>();
|
||||||
|
|
||||||
|
// map query to json object
|
||||||
|
var queryMapper = new VrQueryMapper();
|
||||||
|
var queryObject = queryMapper.VrMapQuery(query);
|
||||||
|
|
||||||
|
// execute request
|
||||||
|
var vrReqest = new VrHttpRequest();
|
||||||
|
var vrResponseView = await vrReqest.GetResponseAsync(cvrLookupUrl,
|
||||||
|
JsonConvert.SerializeObject(queryObject, Formatting.None), auth);
|
||||||
|
|
||||||
|
// intermediate parser
|
||||||
|
var vrParser = new VrResponseParser();
|
||||||
|
var vrVirksomheder = vrParser.ParseVrResponse(vrResponseView.Message);
|
||||||
|
|
||||||
|
// validate wheter to continue or return empty result
|
||||||
|
var found = vrVirksomheder.Any();
|
||||||
|
if (!found)
|
||||||
|
return Ok(result);
|
||||||
|
|
||||||
|
// final mapping
|
||||||
|
var cvrMapper = new VrCvrMapper();
|
||||||
|
result = vrVirksomheder.Select(c => cvrMapper.MapVrToCvr(c)).ToList();
|
||||||
|
|
||||||
|
// return result
|
||||||
|
return Ok(result);
|
||||||
|
}
|
||||||
|
```
|
Loading…
Reference in a new issue