Compare commits

4 Commits

Author SHA1 Message Date
GotPPay
924ddaded1 remove rebase markings 2018-05-28 10:48:36 +02:00
GotPPay
d6301ebbf3 add datamodel ; check if zipcode is participating 2018-05-28 10:48:36 +02:00
GotPPay
78d6a45ebb remove debugging response 2018-05-28 10:48:36 +02:00
GotPPay
22a79cf658 custom elig. api error msg ; first check elig. then create user 2018-05-28 10:48:36 +02:00
3 changed files with 8 additions and 9 deletions

View File

@@ -92,12 +92,11 @@ func ResponseAPINotFoundError(c echo.Context) error {
return ResponseAPIError(c, http.StatusNotFound, "Not Found", false) return ResponseAPIError(c, http.StatusNotFound, "Not Found", false)
} }
//ResponseAPINotEligibleError returns a standard API not eligible to the response //ResponseAPINotEligible returns a standard API not eligible to the response
func ResponseAPINotEligibleError(c echo.Context) error { func ResponseAPINotEligibleError(c echo.Context) error {
return ResponseAPIError(c, http.StatusForbidden, "Member does not have active insurance coverage", false) return ResponseAPIError(c, http.StatusForbidden, "Eligibility Not Found or Error", false)
} }
//ResponseAPINotEligibleWithMessageError returns a standard API not eligible to the response with custom message
func ResponseAPINotEligibleWithMessageError(c echo.Context, message string) error { func ResponseAPINotEligibleWithMessageError(c echo.Context, message string) error {
return ResponseAPIError(c, http.StatusForbidden, message, false) return ResponseAPIError(c, http.StatusForbidden, message, false)
} }

View File

@@ -420,7 +420,7 @@ func (c *controller) handleMember(ctx echo.Context) error {
client := &http.Client{} client := &http.Client{}
eligibilityJson, err := json.Marshal(eligibility) eligibilityJson, err := json.Marshal(eligibility)
if err != nil { if err != nil {
return routeutils.ResponseAPINotEligibleError(ctx) return routeutils.HandleAPIError(ctx, err)
} }
req, _ := http.NewRequest("POST", c.cfg.Eligibility.Url, bytes.NewBuffer(eligibilityJson)) req, _ := http.NewRequest("POST", c.cfg.Eligibility.Url, bytes.NewBuffer(eligibilityJson))
req.Header.Add("App", c.cfg.HTTP.Auth.AppKey) req.Header.Add("App", c.cfg.HTTP.Auth.AppKey)
@@ -429,24 +429,24 @@ func (c *controller) handleMember(ctx echo.Context) error {
resp, err := client.Do(req) resp, err := client.Do(req)
if err != nil { if err != nil {
return routeutils.ResponseAPINotEligibleError(ctx) return routeutils.HandleAPIError(ctx, err)
} }
defer resp.Body.Close() defer resp.Body.Close()
if resp.StatusCode < 200 || resp.StatusCode > 300 { if resp.StatusCode < 200 || resp.StatusCode > 300 {
return routeutils.ResponseAPINotEligibleError(ctx) return routeutils.ResponseAPINotEligibleWithMessageError(ctx, "Cannot check eligibility")
} }
eligibilityResponse := viewmodel.Interchange271{} eligibilityResponse := viewmodel.Interchange271{}
decoder := json.NewDecoder(resp.Body) decoder := json.NewDecoder(resp.Body)
err = decoder.Decode(&eligibilityResponse) err = decoder.Decode(&eligibilityResponse)
if err != nil { if err != nil {
return routeutils.ResponseAPINotEligibleError(ctx) return routeutils.ResponseAPINotEligibleWithMessageError(ctx, "Cannot check eligibility")
} }
//================================================================ //================================================================
if len(eligibilityResponse.Division.HealthCareEligibilityResponse.LoopHL0030) < 1 { if len(eligibilityResponse.Division.HealthCareEligibilityResponse.LoopHL0030) < 1 {
return routeutils.ResponseAPINotEligibleError(ctx) return routeutils.ResponseAPINotEligibleWithMessageError(ctx, "Cannot check eligibility")
} }
address := viewmodel.Address{} address := viewmodel.Address{}