# Admin-Extension: Wie erstelle ich eine Datenbankabfrage anhand der KundenID in meiner vue.js Datei?

**URL:** <https://forum.shopware.com/t/admin-extension-wie-erstelle-ich-eine-datenbankabfrage-anhand-der-kundenid-in-meiner-vue-js-datei/72037>\
**Category:** Programmierung\
**Created:** [12. Januar 2021 um 11:34 UTC](https://forum.shopware.com/t/admin-extension-wie-erstelle-ich-eine-datenbankabfrage-anhand-der-kundenid-in-meiner-vue-js-datei/72037 "2021-01-12T11:34:05Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Revilo](https://avatars.discourse-cdn.com/v4/letter/r/bc8723/32.png) [@Revilo](https://forum.shopware.com/u/Revilo)\
**Post date:** [12. Januar 2021 um 11:34 UTC](https://forum.shopware.com/t/admin-extension-wie-erstelle-ich-eine-datenbankabfrage-anhand-der-kundenid-in-meiner-vue-js-datei/72037/1 "2021-01-12T11:34:05Z")

</div>

Hi Shopware Community,

ich möchte die Kundendetailseite im Administrationsbereich erweitern und anhand der KundenID&nbsp;Daten aus meiner Entität ausgeben.  
Die KundenID befindet sich ja im Objekt “customer”, welches ich im Twig-Template mittels {{ customer }} ausgeben kann.

**Frage 1: Wie kann ich in meiner vue.js Datei auf die KundenID zugreifen?**

Desweiteren würde ich gerne eine Datenbank-Abfrage bauen, die mir Feld “x” ausgibt, wenn&nbsp;Feld “customerId” = KundenID ist  
In PHP geht es ja über -\>addFilter(new EqualsFilter(…)). Ist das in vue.js so ähnlich?

**Frage 2: Wie sieht diese Abfrage aus? Hat jemand ein Beispiel?**  
Antwort -\> siehe \*EDIT\* weiter unten

Mein Code:

```
import { Locale } from 'src/core/shopware';
import template from './extension/sw-customer-detail-base.html.twig';
import deDE from './snippet/de-DE.json';
import enGB from './snippet/en-GB.json';

const { Component } = Shopware;
const { Criteria } = Shopware.Data;

Component.override('sw-customer-detail-base', {
    template,

    inject: [
        'repositoryFactory'
    ],

    data() {
        return {
            repository: null,
            customFile: null
        };
    },

    created() {
        this.createdOwnComponent()
    },

    methods: {
        createdOwnComponent() {
            this.repository = this.repositoryFactory.create('my_entity');

            // Wie baue ich hier eine Abfrage, nach dem Feld customerId = this.customerId ?
            this.repository.search(new Criteria(), Shopware.Context.api).then((result) => {
                this.customFile = result;
            })
        }
    }

});

Locale.extend('de-DE', deDE);
Locale.extend('en-GB', enGB);

```

&nbsp;

Liebe Grüße  
Oliver  
&nbsp;

&nbsp;

\*EDIT\*  
Frage 2 hat sich erledigt.

```
createdOwnComponent() {
            const criteria = new Criteria();
            var customerId = null;
            criteria.addFilter(Criteria.equals('customerId', customerId));

            this.repository = this.repositoryFactory.create('my_entity');

            this.repository.search(criteria, Shopware.Context.api).then((result) => {
                this.customFile = result;
            })
        }

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![Revilo](https://avatars.discourse-cdn.com/v4/letter/r/bc8723/32.png) [@Revilo](https://forum.shopware.com/u/Revilo)\
**Post date:** [12. Januar 2021 um 12:54 UTC](https://forum.shopware.com/t/admin-extension-wie-erstelle-ich-eine-datenbankabfrage-anhand-der-kundenid-in-meiner-vue-js-datei/72037/2 "2021-01-12T12:54:10Z")

</div>

Zu Frage 1:

In der Override Funktion nach dem inject: , einfach&nbsp;  
&nbsp;

```
props: {
        customer: {
            type: Object,
            required: true
        },

```

hinzufügen und dann über this.customer.id auf die ID zugreifen.  
Siehe auch:&nbsp;/platform/src/Administration/Resources/app/administration/src/module/sw-customer/view/sw-customer-detail-base

Hoffe es hilft jemandem.
