fix: migrate pending orders #121
|
@ -10,8 +10,8 @@ import { currency, formatDateTitle } from 'src/lib/filters.js';
|
|||
import { useVnConfirm } from 'src/composables/useVnConfirm.js';
|
||||
import useNotify from 'src/composables/useNotify.js';
|
||||
import { useAppStore } from 'stores/app';
|
||||
import { useUserStore } from 'stores/user';
|
||||
import { storeToRefs } from 'pinia';
|
||||
import { onUserId } from 'src/utils/onUserId';
|
||||
|
||||
const jApi = inject('jApi');
|
||||
const api = inject('api');
|
||||
|
@ -19,19 +19,16 @@ const { t } = useI18n();
|
|||
const { openConfirmationModal } = useVnConfirm();
|
||||
const { notify } = useNotify();
|
||||
const appStore = useAppStore();
|
||||
const userStore = useUserStore();
|
||||
const { isHeaderMounted } = storeToRefs(appStore);
|
||||
const router = useRouter();
|
||||
|
||||
const loading = ref(false);
|
||||
const orders = ref([]);
|
||||
|
||||
const getOrders = async () => {
|
||||
const getOrders = async (clientFk) => {
|
||||
try {
|
||||
loading.value = true;
|
||||
|
||||
const clientFk = userStore?.user?.id;
|
||||
|
||||
const filter = {
|
||||
where: {
|
||||
clientFk,
|
||||
|
@ -99,15 +96,7 @@ const loadOrder = orderId => {
|
|||
router.push({ name: 'catalog' });
|
||||
};
|
||||
|
||||
watch(
|
||||
() => userStore?.user?.id,
|
||||
async userId => {
|
||||
if (userId) {
|
||||
getOrders();
|
||||
}
|
||||
},
|
||||
{ immediate: true }
|
||||
);
|
||||
onUserId(getOrders);
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
import { watch } from 'vue';
|
||||
|
||||
import { useUserStore } from 'stores/user';
|
||||
|
||||
const userStore = useUserStore();
|
||||
|
||||
export const onUserId = (cb) => watch(
|
||||
() => userStore?.user?.id,
|
||||
async userId => {
|
||||
if (userId) {
|
||||
jsegarra
commented
Usando clausulas de guarda podemos quitar un nivel de indexación Usando clausulas de guarda podemos quitar un nivel de indexación
`
if (!userId) return;`
|
||||
try {
|
||||
await cb(userId);
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
}
|
||||
}
|
||||
},
|
||||
{ immediate: true }
|
||||
);
|
Loading…
Reference in New Issue
Entiendo que este watch es para cuando hacemos suplantar no¿?
Aquí me quedó pendiente poner el código de Lilium, que Willy compartió conmigo.
@jsegarra probé el código del FetchData component, pero usar un componente Vue para algo que no tienen nada visual no me parece lo ideal. A nivel patrones, para ese tipo de cosas son los data stores, hooks, etc.
Sí es cierto que, cual dijiste, esto será necesario en varios componentes (no todos), así que lo refactoricé para que sea un simple
onUserId
del lado de los componentes. Esa función vive en su propio archivo,src/utils/onuserId.js
. La estoy usando en este PR y https://gitea.verdnatura.es/verdnatura/hedera-web/pulls/124/files.oki