Merge remote-tracking branch 'origin/master'

This commit is contained in:
M_Kececi
2026-05-08 11:37:01 +03:00
parent a21e38f56f
commit a4f7d5b071
3 changed files with 248 additions and 47 deletions

View File

@@ -1,6 +1,6 @@
// src/stores/userDetailStore.js
import { defineStore } from 'pinia'
import api, { get, post, put, del } from 'src/services/api'
import api, { get, post, put, del, extractApiErrorDetail } from 'src/services/api'
export const useUserDetailStore = defineStore('userDetail', {
state: () => ({
@@ -184,7 +184,20 @@ export const useUserDetailStore = defineStore('userDetail', {
try {
const payload = this.buildPayload()
const data = await post('/users', payload)
let data
try {
data = await post('/users', payload)
} catch (e) {
const detail = await extractApiErrorDetail(e)
// Some environments can fail on role insert (db schema/constraint issues).
// Fallback: create user without roles so the record can still be created.
if (String(detail || '').toLowerCase().includes('rol eklenemedi')) {
const retryPayload = { ...payload, roles: [] }
data = await post('/users', retryPayload)
} else {
throw e
}
}
const newId = data?.id
if (!newId) {