updated db structure
This commit is contained in:
@@ -33,9 +33,9 @@ export default defineComponent({
|
|||||||
await loadUsers();
|
await loadUsers();
|
||||||
}
|
}
|
||||||
usersForChatOptions.value = users.value
|
usersForChatOptions.value = users.value
|
||||||
.filter((u, index) => u.keycloakID !== user.value.keycloakID && index < 5)
|
.filter((u, index) => u.id !== user.value.id && index < 5)
|
||||||
.map((u) => {
|
.map((u) => {
|
||||||
return {label: u.firstName + ' ' + u.lastName, value: u.keycloakID};
|
return {label: u.firstName + ' ' + u.lastName, value: u.id};
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -106,17 +106,17 @@ export default defineComponent({
|
|||||||
<p>{{ user.firstName }}</p>
|
<p>{{ user.firstName }}</p>
|
||||||
<p>{{ user.lastName }}</p>
|
<p>{{ user.lastName }}</p>
|
||||||
<p>{{ user.username }}</p>
|
<p>{{ user.username }}</p>
|
||||||
<p>{{ user.keycloakID }}</p>
|
<p>{{ user.id }}</p>
|
||||||
</div>
|
</div>
|
||||||
<q-btn @click="logout()" label="Logout"/>
|
<q-btn @click="logout()" label="Logout"/>
|
||||||
<q-btn @click="loadUsers()" label="Print Users"/>
|
<q-btn @click="loadUsers()" label="Print Users"/>
|
||||||
<div v-if="usersLoaded">
|
<div v-if="usersLoaded">
|
||||||
<p>Users:</p>
|
<p>Users:</p>
|
||||||
<div v-for="user in users" :key="user.keycloakID">
|
<div v-for="user in users" :key="user.id">
|
||||||
<p>{{ user.firstName }}</p>
|
<p>{{ user.firstName }}</p>
|
||||||
<p>{{ user.lastName }}</p>
|
<p>{{ user.lastName }}</p>
|
||||||
<p>{{ user.username }}</p>
|
<p>{{ user.username }}</p>
|
||||||
<p>{{ user.keycloakID }}</p>
|
<p>{{ user.id }}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<br>
|
<br>
|
||||||
@@ -166,8 +166,8 @@ export default defineComponent({
|
|||||||
<p>Chats:</p>
|
<p>Chats:</p>
|
||||||
<div v-for="chat in chats" :key="chat.id">
|
<div v-for="chat in chats" :key="chat.id">
|
||||||
<h5>{{ chat.displayName }}</h5>
|
<h5>{{ chat.displayName }}</h5>
|
||||||
<div v-for="ptpUser in chat.members" :key="ptpUser.keycloakID">
|
<div v-for="ptpUser in chat.members" :key="ptpUser.id">
|
||||||
<p>{{ ptpUser.keycloakID }}</p>
|
<p>{{ ptpUser.id }}</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
11
src/main.ts
11
src/main.ts
@@ -18,14 +18,9 @@ const keycloak: Keycloak = await userStore.initKeycloak();
|
|||||||
// Anfrage ans Backend
|
// Anfrage ans Backend
|
||||||
|
|
||||||
if (keycloak.subject) {
|
if (keycloak.subject) {
|
||||||
userStore.keycloakId = keycloak.subject;
|
userStore.id = keycloak.subject;
|
||||||
//userStore.loadPtpUsersByKeycloakID(keycloak.subject);
|
await userStore.getPtpUserById(keycloak.subject);
|
||||||
await userStore.getPtpUserByKeycloakID(keycloak.subject);
|
userStore.loadPtpUsersById(keycloak.subject).then(user => {
|
||||||
/*console.log(userStore.userLoaded);
|
|
||||||
if(userStore.userLoaded) {
|
|
||||||
console.log("Hier ist der Bruder: " + JSON.stringify(userStore.user));
|
|
||||||
}*/
|
|
||||||
userStore.loadPtpUsersByKeycloakID(keycloak.subject).then(user => {
|
|
||||||
console.log(JSON.stringify(user));
|
console.log(JSON.stringify(user));
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
export interface ptpUser {
|
export interface ptpUser {
|
||||||
keycloakID: string;
|
id: string;
|
||||||
firstName: string;
|
firstName: string;
|
||||||
lastName: string;
|
lastName: string;
|
||||||
username: string;
|
username: string;
|
||||||
@@ -19,8 +19,7 @@ export interface chat{
|
|||||||
}
|
}
|
||||||
|
|
||||||
export interface user{
|
export interface user{
|
||||||
id: number;
|
id: string;
|
||||||
keycloakID: string;
|
|
||||||
firstName: string;
|
firstName: string;
|
||||||
lastName: string;
|
lastName: string;
|
||||||
username: string;
|
username: string;
|
||||||
|
|||||||
@@ -17,19 +17,17 @@ export const useChatStore = defineStore('chatStore',{
|
|||||||
return this.chats;
|
return this.chats;
|
||||||
},
|
},
|
||||||
async loadChatsByUser() : Promise<chat[]>{
|
async loadChatsByUser() : Promise<chat[]>{
|
||||||
this.chats = (await api.get("/users/chat/" + userStore.keycloakId)).data.response;
|
this.chats = (await api.get("/users/chat/" + userStore.id)).data.response;
|
||||||
return this.chats;
|
return this.chats;
|
||||||
},
|
},
|
||||||
async createChat(chatName: string, members: string[]){
|
async createChat(chatName: string, members: string[]){
|
||||||
if(userStore.keycloakId) {
|
if(userStore.id) {
|
||||||
console.log("keycloakId is defined");
|
if (!members.includes(userStore.id)) {
|
||||||
if (!members.includes(userStore.keycloakId)) {
|
members.push(userStore.id);
|
||||||
members.push(userStore.keycloakId);
|
|
||||||
}
|
}
|
||||||
}else if(userStore.user?.keycloakID){
|
}else if(userStore.user?.id){
|
||||||
console.log("user is defined");
|
if (! members.includes(userStore.user.id)) {
|
||||||
if (! members.includes(userStore.user.keycloakID)) {
|
members.push(userStore.user.id);
|
||||||
members.push(userStore.user.keycloakID);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
console.log(members);
|
console.log(members);
|
||||||
|
|||||||
@@ -31,18 +31,18 @@ export const useUserStore = defineStore('userStore', {
|
|||||||
user: null as ptpUser | null,
|
user: null as ptpUser | null,
|
||||||
userLoaded: false,
|
userLoaded: false,
|
||||||
keycloak: null as Keycloak | null,
|
keycloak: null as Keycloak | null,
|
||||||
keycloakId: "",
|
id: "",
|
||||||
users: [] as ptpUser[],
|
users: [] as ptpUser[],
|
||||||
}),
|
}),
|
||||||
actions: {
|
actions: {
|
||||||
async getPtpUserByKeycloakID(keycloakID : string) {
|
async getPtpUserById(id : string) {
|
||||||
await this.loadPtpUsersByKeycloakID(keycloakID).then((response : responseModel) => {
|
await this.loadPtpUsersById(id).then((response : responseModel) => {
|
||||||
this.user = response.response;
|
this.user = response.response;
|
||||||
this.userLoaded = true;
|
this.userLoaded = true;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
async loadPtpUsersByKeycloakID(keycloakID : string) : Promise<responseModel> {
|
async loadPtpUsersById(id : string) : Promise<responseModel> {
|
||||||
return (await api.get("/users/login/"+keycloakID)).data;
|
return (await api.get("/users/login/"+id)).data;
|
||||||
},
|
},
|
||||||
async loadAllUsers(): Promise<ptpUser[]> {
|
async loadAllUsers(): Promise<ptpUser[]> {
|
||||||
this.users = (await api.get("/users/user")).data;
|
this.users = (await api.get("/users/user")).data;
|
||||||
|
|||||||
Reference in New Issue
Block a user