Issue:
Bug: Refactor(customer) : Return redacted customer instead of error.



Instead of returning error for querying deleted customer, we should return Customer with redacted values to help in frontend.

Pull request description:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [ ] New feature
- [ ] Enhancement
- [x] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
Return redacted customer response instead of error when querying deleted customers.


## Motivation and Context
Upon merging this PR, the API will return deleted Customer with redacted values instead of error.
https://github.com/juspay/hyperswitch/issues/7126 


## How did you test it?
- Create Customer API Call
```
curl --location 'http://localhost:8080/customers' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data-raw '{
    "email": "guest@example.com",
    "name": "John Doe",
    "phone": "999999999",
    "phone_country_code": "+65",
    "description": "First customer",
    "address": {
        "line1": "1467",
        "line2": "Harrison Street",
        "line3": "Harrison Street",
        "city": "San Fransico",
        "state": "California",
        "zip": "94122",
        "country": "US",
        "first_name": "joseph",
        "last_name": "Doe"
    },
    "metadata": {
        "udf1": "value1",
        "new_customer": "true",
        "login_date": "2019-09-10T10:11:12Z"
    }
}'
```

- Delete API Call for same customer
```
curl --location --request DELETE 'http://localhost:8080/customers/cus_vl2xIM4vJGaOVanI9rLl' \
--header 'Accept: application/json' \
--header 'api-key: *****'
```

- Retrieve Customer API call for the same customer
```
curl --location 'http://localhost:8080/customers/cus_PEkI9z16lQRq2xAXOol5' \
--header 'Accept: application/json' \
--header 'api-key: dev_CN6BIH4qBtQTtH3smdKKJEwcyuaxiQgu9Yv6houFWmaOmgjhLtSNOGFLEDagthEZ'
```

- Response from the above API Call
```
{"customer_id":"cus_PEkI9z16lQRq2xAXOol5","name":"Redacted","email":"Redacted","phone":"Redacted","phone_country_code":"Redacted","description":"Redacted","address":{"city":"Redacted","country":"US","line1":"Redacted","line2":"Redacted","line3":"Redacted","zip":"Redacted","state":"Redacted","first_name":"Redacted","last_name":"Redacted"},"created_at":"2025-01-28T07:15:35.740Z","metadata":{"udf1":"value1","new_customer":"true","login_date":"2019-09-10T10:11:12Z"},"default_payment_method_id":null}
```

## Checklist
<!-- Put an `x` in the boxes that apply -->

- [x] I formatted the code `cargo +nightly fmt --all`
- [x] I addressed lints thrown by `cargo clippy`
- [x] I reviewed the submitted code
- [ ] I added unit tests for my changes where possible


Testing:
- Create Customer API Call
```
curl --location 'http://localhost:8080/customers' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data-raw '{
    "email": "guest@example.com",
    "name": "John Doe",
    "phone": "999999999",
    "phone_country_code": "+65",
    "description": "First customer",
    "address": {
        "line1": "1467",
        "line2": "Harrison Street",
        "line3": "Harrison Street",
        "city": "San Fransico",
        "state": "California",
        "zip": "94122",
        "country": "US",
        "first_name": "joseph",
        "last_name": "Doe"
    },
    "metadata": {
        "udf1": "value1",
        "new_customer": "true",
        "login_date": "2019-09-10T10:11:12Z"
    }
}'
```

- Delete API Call for same customer
```
curl --location --request DELETE 'http://localhost:8080/customers/cus_vl2xIM4vJGaOVanI9rLl' \
--header 'Accept: application/json' \
--header 'api-key: *****'
```

- Retrieve Customer API call for the same customer
```
curl --location 'http://localhost:8080/customers/cus_PEkI9z16lQRq2xAXOol5' \
--header 'Accept: application/json' \
--header 'api-key: dev_CN6BIH4qBtQTtH3smdKKJEwcyuaxiQgu9Yv6houFWmaOmgjhLtSNOGFLEDagthEZ'
```

- Response from the above API Call
```
{"customer_id":"cus_PEkI9z16lQRq2xAXOol5","name":"Redacted","email":"Redacted","phone":"Redacted","phone_country_code":"Redacted","description":"Redacted","address":{"city":"Redacted","country":"US","line1":"Redacted","line2":"Redacted","line3":"Redacted","zip":"Redacted","state":"Redacted","first_name":"Redacted","last_name":"Redacted"},"created_at":"2025-01-28T07:15:35.740Z","metadata":{"udf1":"value1","new_customer":"true","login_date":"2019-09-10T10:11:12Z"},"default_payment_method_id":null}
```

Patch:
diff --git a/crates/router/src/core/customers.rs b/crates/router/src/core/customers.rs
index 4f69cf41963..dabc9d37086 100644
--- a/crates/router/src/core/customers.rs
+++ b/crates/router/src/core/customers.rs
@@ -463,7 +463,7 @@ pub async fn retrieve_customer(
     let key_manager_state = &(&state).into();
 
     let response = db
-        .find_customer_by_customer_id_merchant_id(
+        .find_customer_optional_with_redacted_customer_details_by_customer_id_merchant_id(
             key_manager_state,
             &customer_id,
             merchant_account.get_id(),
@@ -471,7 +471,9 @@ pub async fn retrieve_customer(
             merchant_account.storage_scheme,
         )
         .await
-        .switch()?;
+        .switch()?
+        .ok_or(errors::CustomersErrorResponse::CustomerNotFound)?;
+
     let address = match &response.address_id {
         Some(address_id) => Some(api_models::payments::AddressDetails::from(
             db.find_address_by_address_id(key_manager_state, address_id, &key_store)