diff --git a/src/assets/main.css b/src/assets/main.css
index 25b0209..2ed5f38 100644
--- a/src/assets/main.css
+++ b/src/assets/main.css
@@ -176,6 +176,14 @@ td {
border: none;
}
+.btn-row {
+ margin-top: 2rem;
+ display: flex;
+ flex-direction: row;
+ justify-content: end;
+ gap: 1rem;
+}
+
@media (max-width: 1024px) {
th {
font-size: 13px;
diff --git a/src/components/CardUser.vue b/src/components/CardUser.vue
new file mode 100644
index 0000000..981ee25
--- /dev/null
+++ b/src/components/CardUser.vue
@@ -0,0 +1,119 @@
+
+
+
+
+
+
+
Nombre de usuario: {{user.name}}
+
Número de registro: {{user.employee_id}}
+
Teléfono 1: {{user.phone}}
+
Teléfono 2: {{user.phone2}}
+
Email: {{user.email}}
+
+
+
Segmento: {{user._categories}}
+
Locaciones de carga por municipio: {{user._user_city}}
+
Locaciones de carga por estado: {{user._user_state}}
+
Tipos de transporte que utiliza: {{user._truck_types}}
+
Información adicional del usuario: {{user.user_description}}
+
Miembro desde: {{getDateMonthDay(user.createdAt)}}
+
Tipo de afiliación: {{user.company.membership}}
+
Rol del usuario: {{user.job_role}}
+
+
+
+ Editar
+ Eliminar
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/Sidebar.vue b/src/components/Sidebar.vue
index 2793688..8871946 100644
--- a/src/components/Sidebar.vue
+++ b/src/components/Sidebar.vue
@@ -7,13 +7,14 @@
const auth = useAuthStore();
const handleLogout = () => {
- auth.$patch({
- sesion: '',
- token: '',
- user: {},
- });
- localStorage.removeItem('session');
- router.push({name: 'login'});
+ // auth.$patch({
+ // sesion: '',
+ // token: '',
+ // user: {},
+ // });
+ // localStorage.removeItem('session');
+ // router.push({name: 'login'});
+ auth.logout();
}
diff --git a/src/components/ui/EditCompanyModal.vue b/src/components/ui/EditCompanyModal.vue
index 591c31a..f7de42d 100644
--- a/src/components/ui/EditCompanyModal.vue
+++ b/src/components/ui/EditCompanyModal.vue
@@ -17,19 +17,13 @@
const loading = ref(false);
const msgError = ref('');
- const msgSuccess = ref('');
const companyCategories = ref([]);
const companyStates = ref([]);
const companyCity = ref([]);
const companyTruckType = ref([]);
onMounted(() => {
- console.log('EditCompanyModal');
- console.log(companyStore.company)
if(companyStore.company){
- // companyCategories.value = companyStore.company.categories.map(m =>{
- // return { name: m.name };
- // });
companyCategories.value = companyStore.company.categories;
}
if(companyStore.company){
diff --git a/src/services/company.js b/src/services/company.js
index 69921ca..006cb4e 100644
--- a/src/services/company.js
+++ b/src/services/company.js
@@ -15,8 +15,18 @@ export const getCompany = async(companyId) => {
export const updateCompany = async(companyId, formData) => {
try {
const endpoint = `/companies/${companyId}`;
- console.log(endpoint);
const {data} = await api.patch(endpoint, formData);
+ return data;
+ } catch (error) {
+ console.log(error);
+ return null;
+ }
+}
+
+export const getUsers = async(companyId) => {
+ try {
+ const endpoint = `/users?company=${companyId}`;
+ const {data} = await api.get(endpoint);
console.log(data);
return data;
} catch (error) {
@@ -29,7 +39,7 @@ export const getBudgets = async(filter) => {
try {
const endpoint = `/budgets/${filter}`;
const {data} = await api.get(endpoint);
- console.log(data);
+ // console.log(data);
return data;
} catch (error) {
console.log(error);
diff --git a/src/stores/auth.js b/src/stores/auth.js
index 7b2bd4b..6b3ae09 100644
--- a/src/stores/auth.js
+++ b/src/stores/auth.js
@@ -52,15 +52,16 @@ export const useAuthStore = defineStore('auth', () => {
});
const logout = () => {
-
- localStorage.removeItem('session');
- localStorage.removeItem('access');
- localStorage.removeItem('id');
- company.clear();
- router.push({name: 'login'});
+ console.log('logoo....');
sesion.value = '';
token.value = '';
+ company.clear();
user.value = null;
+ console.log(company.company);
+ localStorage.removeItem('access');
+ localStorage.removeItem('id');
+ localStorage.removeItem('session');
+ router.push({name: 'login'});
}
return {
diff --git a/src/stores/company.js b/src/stores/company.js
index a212f34..175eadb 100644
--- a/src/stores/company.js
+++ b/src/stores/company.js
@@ -1,27 +1,41 @@
import { defineStore } from "pinia";
import { ref } from "vue";
-import { getBudgets, getCompany, updateBudget, updateCompany, deleteBudget, createBudget } from "../services/company";
+import { getBudgets, getCompany, updateBudget, updateCompany, deleteBudget, createBudget, getUsers } from "../services/company";
import api from "../lib/axios";
export const useCompanyStore = defineStore('company', () => {
- const companyid = localStorage.getItem('id');
const company = ref(null)
+ const users = ref([]);
const budgets = ref([]);
const proposals = ref([])
const loading = ref(false);
const getCompanyData = async() => {
+ const companyId = localStorage.getItem('id');
loading.value = true;
if(!company.value) {
loading.value = true;
- const resp = await getCompany(companyid);
+ const resp = await getCompany(companyId);
console.log(resp);
company.value = resp;
}
loading.value = false;
}
+ const getUsersCompany = async() => {
+ const companyId = localStorage.getItem('id');
+ if(users.value.length <= 0) {
+ const resp = await getUsers(companyId);
+ console.log(resp);
+ if(resp !== null && resp.total > 0) {
+ users.value = resp.data;
+ } else {
+ users.value = [];
+ }
+ }
+ }
+
const editCompany = async(formData) => {
const data = await updateCompany(company.value._id, formData);
if(data === null) {
@@ -32,14 +46,19 @@ export const useCompanyStore = defineStore('company', () => {
...formData,
};
- console.log(company.value);
return 'success';
}
}
const clear = () => {
company.value = null;
- companyid = null;
+ // companyid = null;
+ loading.value = false;
+ }
+
+ const $reset = () => {
+ company.value = null;
+ // companyid = null;
loading.value = false;
}
@@ -47,8 +66,9 @@ export const useCompanyStore = defineStore('company', () => {
///loads?company=64fa70c130d2650011ac4f3a&status[$ne]=Closed,posted_by_name[$regex]=ju&posted_by_name[$options]=i
const getProposalsCompany = async() => {
+ const companyId = localStorage.getItem('id');
try {
- const endpoint = `/proposals?carrier=${companyid}`;
+ const endpoint = `/proposals?carrier=${companyId}`;
const {data} = await api.get(endpoint);
proposals.value = data.data;
console.log(data);
@@ -137,12 +157,15 @@ export const useCompanyStore = defineStore('company', () => {
getCompanyData,
getProposalsCompany,
getBudgetsCompany,
+ getUsersCompany,
editCompany,
updateBudgetCompany,
createBudgetCompany,
deleteBudgetCompany,
budgets,
+ users,
clear,
+ $reset,
loading,
proposals,
company,
diff --git a/src/views/LoginView.vue b/src/views/LoginView.vue
index d818c2e..58676ae 100644
--- a/src/views/LoginView.vue
+++ b/src/views/LoginView.vue
@@ -42,6 +42,7 @@
localStorage.setItem('session', resp.data.session_token);
localStorage.setItem('access', resp.data.accessToken);
localStorage.setItem('id', resp.data.user.company);
+ console.log('id', resp.data.user.company)
router.push({name: 'home'});
auth.$patch({
sesion: resp.data.session_token,
diff --git a/src/views/MyCompanyView.vue b/src/views/MyCompanyView.vue
index 26aec44..763a5ef 100644
--- a/src/views/MyCompanyView.vue
+++ b/src/views/MyCompanyView.vue
@@ -106,7 +106,7 @@
}
.item-company {
- margin-bottom: 8px;
+ margin-bottom: 1rem;
font-size: 1.2rem;
color: #323030;
/* font-weight: bold; */
diff --git a/src/views/PublicUsersCompanyView.vue b/src/views/PublicUsersCompanyView.vue
index 7926441..b3746f2 100644
--- a/src/views/PublicUsersCompanyView.vue
+++ b/src/views/PublicUsersCompanyView.vue
@@ -2,8 +2,8 @@
import { onMounted, ref } from 'vue';
import Spiner from '../components/ui/Spiner.vue';
import { useRoute } from 'vue-router';
- import { getDateMonthDay } from '../helpers/date_formats';
import useDirectory from '../composables/useDirectory';
+ import CardUser from '../components/CardUser.vue';
const {loading, users, getUsersData} = useDirectory();
@@ -26,51 +26,14 @@
No hay registros
-
-
-
-
Nombre de usuario: {{user.name}}
-
Número de registro: {{user.employee_id}}
-
Teléfono 1: {{user.phone}}
-
Teléfono 2: {{user.phone2}}
-
Email: {{user.email}}
-
-
-
Segmento: {{user._categories}}
-
Locaciones de carga por municipio: {{user._user_city}}
-
Locaciones de carga por estado: {{user._user_state}}
-
Tipos de transporte que utiliza: {{user._truck_types}}
-
Información adicional del embarcador: {{user.user_description}}
-
Miembro desde: {{getDateMonthDay(user.createdAt)}}
-
Tipo de afiliación: {{user.company.membership}}
-
Rol del usuario: {{user.job_role}}
-
-
-
+
\ No newline at end of file
diff --git a/src/views/UsersView.vue b/src/views/UsersView.vue
index 6bf3930..fdda933 100644
--- a/src/views/UsersView.vue
+++ b/src/views/UsersView.vue
@@ -1,10 +1,37 @@
-
Usuarios
+
Usuarios
+
+
+
+