Issue:
[BUG] Bug in merchant connector account create - delete flows

### Bug Description

There is a problem with how the `configs` table is updated. The problem arises when a user deletes a connector and then adds the same one, the config isn't cleaned from the connector when it's deleted, and the new connector (with the same type) is appended to the array.
It looks something like this:
```json
[{"connector":"adyen","merchant_connector_id":"mca_123XXX"}, //old one, already deleted
{"connector":"adyen","merchant_connector_id":"mca_456XXX"}] //new one
``` 
When a payment (or payout or anything else connector related) is being created the router looks at the first occurrence of the connector (which is already deleted) and then looks at the `merchant_connector_account` table for an already deleted `merchant_connector_id`, unsurprisingly does not find it and throws an error. Affects both payment and payout processors


### Expected Behavior

I think either the payment connector delete function should clean the config array of the deleted connector, or the update function should prepend the config instead of appending. 

### Actual Behavior

The delete function does not clean the config and then just appends it when new creator of same type is added

### Steps To Reproduce

To reproduce: 
1. Create a merchant connector account of any type
2. Delete it
3. Create the same connector 
4. Try to make a payment with that connector
5. Get error 404:
```json
{
    "error": {
        "type": "invalid_request",
        "message": "Merchant connector account does not exist in our records",
        "code": "HE_02",
        "reason": "mca_123XXX does not exist"
    }
}
```

### Context For The Bug

Trace for update config:

```sh
at crates/diesel_models/src/query/generics.rs:247
    in router::db::configs::update_config_in_database
    in storage_impl::redis::cache::publish_and_redact
    in router::db::configs::update_config_by_key
    in core::routing::helpers::update_merchant_default_config
    in router::core::retrieve_and_update_default_fallback_routing_algorithm_if_routable_connector_exists
```


### Environment

Are you using hyperswitch hosted version? No

If not (or if building/running locally), please provide the following details:
1. Operating System or Linux distribution: Ubuntu 22.04
2. Rust version (output of `rustc --version`): `rustc 1.80.1 (3f5fd8dd4 2024-08-06)`
3. App version (output of `cargo r --features vergen -- --version`): `2024.08.27` (not running the latest version but checked the functions responsible and there weren't any changes)


### Have you spent some time checking if this bug has been raised before?

- [x] I checked and didn't find a similar issue

### Have you read the Contributing Guidelines?

- [X] I have read the [Contributing Guidelines](https://github.com/juspay/hyperswitch/blob/main/docs/CONTRIBUTING.md)

### Are you willing to submit a PR?

Yes, I am willing to submit a PR!

Resolution:
<think>
PR Context:
- Title: fix(connector): add config cleanup on payment connector deletion
- Merged: 2024-12-06T08:36:24Z
- Files changed: 2 files
- Commits: 7 commits

Implementation approach:
## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [x] Bugfix
- [ ] New feature
- [ ] Enhancement
- [ ] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
Fixes #5966 (in both v1 and v2). Now the router cleans up the configs table (or business_profile in v2) when a connector is deleted.


### Additional Changes

- [ ] This PR modifies the API contract
- [ ] This PR modifies the database schema
- [ ] This PR modifies application c
</think>

To implement this, you'll need to modify:


**Detailed Implementation:**


**Commit 1:** fix(connector): add config cleanup on payment connector deletion (#5998)
Files to modify:


**crates/common_enums/src/enums.rs**
  Add:
    - function: private::from
    - impl: impl From<ConnectorType> for TransactionType

**crates/router/src/core/admin.rs**
  Add:
    - function: private::retrieve_and_delete_from_default_fallback_routing_algorithm_if_routable_connector_exists
    - function: private::retrieve_and_delete_from_default_fallback_routing_algorithm_if_routable_connector_exists