{"id":72,"date":"2025-10-20T03:24:50","date_gmt":"2025-10-20T03:24:50","guid":{"rendered":"https:\/\/codigoyconcreto.es\/?page_id=72"},"modified":"2025-10-20T23:42:56","modified_gmt":"2025-10-20T23:42:56","slug":"fasin-equipo","status":"publish","type":"page","link":"https:\/\/codigoyconcreto.es\/index.php\/fasin-equipo\/","title":{"rendered":"fasin-equipo"},"content":{"rendered":"\n<!DOCTYPE html>\n<html lang=\"es\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Equipo | FASIN IA Predictiva<\/title>\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\n    <script src=\"https:\/\/unpkg.com\/lucide@latest\/dist\/umd\/lucide.js\"><\/script>\n    <style>\n        body {\n            font-family: 'Inter', sans-serif;\n        }\n    <\/style>\n<\/head>\n<body class=\"bg-gray-100\">\n\n    <div class=\"flex h-screen\">\n        <!-- Barra de Navegaci\u00f3n Lateral (Sidebar) -->\n        <aside class=\"w-64 bg-white text-gray-800 flex flex-col shadow-lg\">\n            <div class=\"px-8 py-6 border-b\">\n                <h1 class=\"text-2xl font-bold text-indigo-600\">FASIN IA<\/h1>\n                <p class=\"text-sm text-gray-500\">An\u00e1lisis Predictivo<\/p>\n            <\/div>\n            <nav class=\"flex-1 px-6 py-4 space-y-2\">\n                <a href=\"https:\/\/codigoyconcreto.es\/index.php\/fasin\/\" class=\"flex items-center px-4 py-2 text-gray-600 hover:bg-indigo-50 rounded-lg\">\n                    <i data-lucide=\"layout-dashboard\" class=\"w-5 h-5 mr-3\"><\/i>\n                    Dashboard\n                <\/a>\n                <a href=\"https:\/\/codigoyconcreto.es\/index.php\/presupuesto-fasin\/\" class=\"flex items-center px-4 py-2 text-gray-600 hover:bg-indigo-50 rounded-lg\">\n                    <i data-lucide=\"dollar-sign\" class=\"w-5 h-5 mr-3\"><\/i>\n                    Presupuesto\n                <\/a>\n                <a href=\"https:\/\/codigoyconcreto.es\/index.php\/cronograma-fasin\/\" class=\"flex items-center px-4 py-2 text-gray-600 hover:bg-indigo-50 rounded-lg\">\n                    <i data-lucide=\"calendar-days\" class=\"w-5 h-5 mr-3\"><\/i>\n                    Cronograma\n                <\/a>\n                <a href=\"https:\/\/codigoyconcreto.es\/index.php\/fasin-riesgos\/\" class=\"flex items-center px-4 py-2 text-gray-600 hover:bg-indigo-50 rounded-lg\">\n                    <i data-lucide=\"alert-triangle\" class=\"w-5 h-5 mr-3\"><\/i>\n                    Riesgos\n                <\/a>\n                 <a href=\"https:\/\/codigoyconcreto.es\/index.php\/fasin-equipo\/\" class=\"flex items-center px-4 py-2 text-white bg-indigo-600 rounded-lg\">\n                    <i data-lucide=\"users\" class=\"w-5 h-5 mr-3\"><\/i>\n                    Equipo\n                <\/a>\n            <\/nav>\n            <div class=\"px-8 py-6 border-t\">\n                <div class=\"flex items-center\">\n                    <img decoding=\"async\" class=\"h-10 w-10 rounded-full object-cover\" src=\"https:\/\/placehold.co\/100x100\/667eea\/EBF4FF?text=JD\" alt=\"User avatar\">\n                    <div class=\"ml-3\">\n                        <p class=\"text-sm font-semibold\">Jos\u00e9 David<\/p>\n                        <p class=\"text-xs text-gray-500\">Arquitecto<\/p>\n                    <\/div>\n                <\/div>\n                 <button class=\"w-full mt-4 flex items-center justify-center px-4 py-2 text-sm text-gray-600 hover:bg-gray-100 rounded-lg\">\n                    <i data-lucide=\"log-out\" class=\"w-4 h-4 mr-2\"><\/i>\n                    Cerrar Sesi\u00f3n\n                <\/button>\n            <\/div>\n        <\/aside>\n\n        <!-- Contenido Principal -->\n        <main class=\"flex-1 p-8 overflow-y-auto\">\n            <!-- Cabecera de la Secci\u00f3n -->\n            <header class=\"mb-8\">\n                 <div class=\"flex justify-between items-center\">\n                    <div>\n                        <h2 class=\"text-3xl font-bold text-gray-800\">Gesti\u00f3n de Equipo del Proyecto<\/h2>\n                        <p class=\"text-gray-500\">Proyecto: Edificio Multifamiliar \u00abEl Sol\u00bb<\/p>\n                    <\/div>\n                    <div class=\"flex items-center space-x-2\">\n                         <button class=\"px-4 py-2 bg-indigo-600 text-white text-sm font-semibold rounded-lg shadow-md hover:bg-indigo-700\">\n                            <i data-lucide=\"user-plus\" class=\"inline w-4 h-4 mr-1\"><\/i>A\u00f1adir Miembro\n                        <\/button>\n                    <\/div>\n                <\/div>\n                 <!-- Pesta\u00f1as de Navegaci\u00f3n del Proyecto -->\n                 <div class=\"border-b border-gray-200 mt-6\">\n                    <nav class=\"-mb-px flex space-x-8\" aria-label=\"Tabs\">\n                        <a href=\"https:\/\/codigoyconcreto.es\/index.php\/fasin\/\" class=\"whitespace-nowrap py-4 px-1 border-b-2 border-transparent font-medium text-sm text-gray-500 hover:text-gray-700 hover:border-gray-300\">Dashboard<\/a>\n                        <a href=\"https:\/\/codigoyconcreto.es\/index.php\/presupuesto-fasin\/\" class=\"whitespace-nowrap py-4 px-1 border-b-2 border-transparent font-medium text-sm text-gray-500 hover:text-gray-700 hover:border-gray-300\">Presupuesto<\/a>\n                        <a href=\"https:\/\/codigoyconcreto.es\/index.php\/cronograma-fasin\/\" class=\"whitespace-nowrap py-4 px-1 border-b-2 border-transparent font-medium text-sm text-gray-500 hover:text-gray-700 hover:border-gray-300\">Cronograma<\/a>\n                        <a href=\"https:\/\/codigoyconcreto.es\/index.php\/fasin-riesgos\/\" class=\"whitespace-nowrap py-4 px-1 border-b-2 border-transparent font-medium text-sm text-gray-500 hover:text-gray-700 hover:border-gray-300\">Riesgos<\/a>\n                        <a href=\"https:\/\/codigoyconcreto.es\/index.php\/fasin-equipo\/\" class=\"whitespace-nowrap py-4 px-1 border-b-2 border-indigo-500 font-medium text-sm text-indigo-600\" aria-current=\"page\">Equipo<\/a>\n                    <\/nav>\n                <\/div>\n            <\/header>\n\n            <!-- Contenido de Gesti\u00f3n de Equipo -->\n            <div class=\"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8\">\n                <!-- Tarjeta de Miembro del Equipo 1 -->\n                <div class=\"bg-white p-6 rounded-lg shadow-md text-center\">\n                    <img decoding=\"async\" class=\"w-24 h-24 rounded-full mx-auto mb-4\" src=\"https:\/\/placehold.co\/150x150\/667eea\/EBF4FF?text=JD\" alt=\"Jos\u00e9 David\">\n                    <h3 class=\"text-lg font-semibold text-gray-800\">Jos\u00e9 David Rivero<\/h3>\n                    <p class=\"text-indigo-600 font-medium\">Arquitecto \/ Jefe de Proyecto<\/p>\n                    <div class=\"mt-4 flex justify-center items-center\">\n                        <span class=\"bg-green-100 text-green-800 text-xs font-medium px-2.5 py-0.5 rounded-full\">Online<\/span>\n                    <\/div>\n                    <p class=\"text-sm text-gray-500 mt-4\">jd.rivero@constructora.com<\/p>\n                <\/div>\n                \n                <!-- Tarjeta de Miembro del Equipo 2 -->\n                <div class=\"bg-white p-6 rounded-lg shadow-md text-center\">\n                    <img decoding=\"async\" class=\"w-24 h-24 rounded-full mx-auto mb-4\" src=\"https:\/\/placehold.co\/150x150\/9f7aea\/E9D8FD?text=AL\" alt=\"Anahy Campos\">\n                    <h3 class=\"text-lg font-semibold text-gray-800\">Anahy Campos<\/h3>\n                    <p class=\"text-indigo-600 font-medium\">Ing. Civil \/ Residente de Obra<\/p>\n                     <div class=\"mt-4 flex justify-center items-center\">\n                        <span class=\"bg-green-100 text-green-800 text-xs font-medium px-2.5 py-0.5 rounded-full\">Online<\/span>\n                    <\/div>\n                    <p class=\"text-sm text-gray-500 mt-4\">a.campos@constructora.com<\/p>\n                <\/div>\n\n                <!-- Tarjeta de Miembro del Equipo 3 -->\n                <div class=\"bg-white p-6 rounded-lg shadow-md text-center\">\n                    <img decoding=\"async\" class=\"w-24 h-24 rounded-full mx-auto mb-4\" src=\"https:\/\/placehold.co\/150x150\/f59e0b\/FEF3C7?text=VE\" alt=\"Vanina Johanson\">\n                    <h3 class=\"text-lg font-semibold text-gray-800\">Vanina Johanson<\/h3>\n                    <p class=\"text-indigo-600 font-medium\">Ing. Estructural<\/p>\n                     <div class=\"mt-4 flex justify-center items-center\">\n                        <span class=\"bg-gray-100 text-gray-800 text-xs font-medium px-2.5 py-0.5 rounded-full\">Offline<\/span>\n                    <\/div>\n                    <p class=\"text-sm text-gray-500 mt-4\">v.johanson@constructora.com<\/p>\n                <\/div>\n                 <!-- Tarjeta de Miembro del Equipo 4 -->\n                <div class=\"bg-white p-6 rounded-lg shadow-md text-center\">\n                    <img decoding=\"async\" class=\"w-24 h-24 rounded-full mx-auto mb-4\" src=\"https:\/\/placehold.co\/150x150\/10b981\/A7F3D0?text=MA\" alt=\"Miguel Angulo\">\n                    <h3 class=\"text-lg font-semibold text-gray-800\">Miguel Angulo<\/h3>\n                    <p class=\"text-indigo-600 font-medium\">Asesor \/ Supervisor<\/p>\n                     <div class=\"mt-4 flex justify-center items-center\">\n                        <span class=\"bg-green-100 text-green-800 text-xs font-medium px-2.5 py-0.5 rounded-full\">Online<\/span>\n                    <\/div>\n                    <p class=\"text-sm text-gray-500 mt-4\">m.angulo@supervisor.com<\/p>\n                <\/div>\n\n            <\/div>\n        <\/main>\n    <\/div>\n    \n    <!-- ======================================================= -->\n    <!-- ============ C\u00d3DIGO DEL CHATBOT (MODO DEMO) ============== -->\n    <!-- ======================================================= -->\n    <div id=\"chatbot-container\" class=\"fixed bottom-8 right-8 z-50\">\n        <div id=\"chatbot-window\" class=\"hidden bg-white w-96 h-[600px] rounded-2xl shadow-2xl flex flex-col transition-all duration-300 transform scale-95 opacity-0\">\n            <div class=\"bg-indigo-600 p-4 rounded-t-2xl flex justify-between items-center text-white\">\n                <div class=\"flex items-center\">\n                    <i data-lucide=\"bot\" class=\"w-7 h-7 mr-3\"><\/i>\n                    <div>\n                        <h3 class=\"font-bold text-lg\">Asistente IA FASIN<\/h3>\n                        <p class=\"text-xs text-indigo-200\">En l\u00ednea (Modo Demo)<\/p>\n                    <\/div>\n                <\/div>\n                <button id=\"close-chatbot\" class=\"hover:text-indigo-200\">\n                    <i data-lucide=\"x\" class=\"w-6 h-6\"><\/i>\n                <\/button>\n            <\/div>\n            <div id=\"chat-messages\" class=\"flex-1 p-6 overflow-y-auto bg-gray-50\">\n                <div class=\"flex mb-4\">\n                    <div class=\"bg-indigo-100 text-gray-800 p-3 rounded-lg max-w-xs\">\n                        <p class=\"text-sm\">\u00a1Hola! Estoy en modo demostraci\u00f3n. Haz clic en una de las preguntas de ejemplo para ver mi capacidad de respuesta.<\/p>\n                    <\/div>\n                <\/div>\n                <div class=\"my-4 space-y-2\">\n                    <button class=\"preset-question w-full text-left bg-white border border-gray-200 p-3 rounded-lg hover:bg-gray-50 text-sm text-indigo-700\">\u00bfCu\u00e1les son los mayores riesgos del proyecto?<\/button>\n                    <button class=\"preset-question w-full text-left bg-white border border-gray-200 p-3 rounded-lg hover:bg-gray-50 text-sm text-indigo-700\">Hazme un resumen del presupuesto actual<\/button>\n                    <button class=\"preset-question w-full text-left bg-white border border-gray-200 p-3 rounded-lg hover:bg-gray-50 text-sm text-indigo-700\">\u00bfCu\u00e1l es el estado del cronograma?<\/button>\n                <\/div>\n            <\/div>\n            <div class=\"p-4 border-t bg-white rounded-b-2xl\">\n                <div class=\"flex items-center\">\n                    <input type=\"text\" id=\"chat-input\" placeholder=\"Modo demostraci\u00f3n activado\" class=\"flex-1 px-4 py-2 border rounded-full bg-gray-100\" disabled>\n                    <button id=\"send-chat-message\" class=\"ml-3 bg-indigo-300 text-white p-3 rounded-full cursor-not-allowed\" disabled>\n                        <i data-lucide=\"send\" class=\"w-5 h-5\"><\/i>\n                    <\/button>\n                <\/div>\n            <\/div>\n        <\/div>\n        <button id=\"open-chatbot\" class=\"bg-indigo-600 text-white w-16 h-16 rounded-full flex items-center justify-center shadow-xl hover:bg-indigo-700 transition-transform hover:scale-110\">\n            <i data-lucide=\"bot\" class=\"w-8 h-8\"><\/i>\n        <\/button>\n    <\/div>\n\n    <script>\n        \/\/ Inicializar Lucide Icons\n        lucide.createIcons();\n\n        \/\/ ==========================================================\n        \/\/ ============ L\u00d3GICA JAVASCRIPT DEL CHATBOT (MODO DEMO) ====\n        \/\/ ==========================================================\n        const openChatbotBtn = document.getElementById('open-chatbot');\n        const closeChatbotBtn = document.getElementById('close-chatbot');\n        const chatbotWindow = document.getElementById('chatbot-window');\n        const chatMessages = document.getElementById('chat-messages');\n        const presetQuestions = document.querySelectorAll('.preset-question');\n\n        const demoResponses = {\n            \"\u00bfCu\u00e1les son los mayores riesgos del proyecto?\": \"He identificado tres riesgos principales:<br>1) Posible retraso en la entrega de acero estructural (Probabilidad: 65%).<br>2) Sobrecosto en acabados por variaci\u00f3n del tipo de cambio (Probabilidad: 50%).<br>3) Conflictos laborales menores (Probabilidad: 30%).<br>Recomiendo revisar el plan de mitigaci\u00f3n.\",\n            \"Hazme un resumen del presupuesto actual\": \"El presupuesto total es de S\/ 1,250,000. Se ha ejecutado el 45% (S\/ 562,500) y tenemos una desviaci\u00f3n positiva del 2% gracias a la optimizaci\u00f3n en la partida de cimentaci\u00f3n.\",\n            \"\u00bfCu\u00e1l es el estado del cronograma?\": \"El proyecto presenta un avance del 35%, lo cual est\u00e1 un 5% por delante de lo planificado. La fase de cimentaci\u00f3n ha concluido y estamos iniciando la estructura. No se prev\u00e9n retrasos en las pr\u00f3ximas dos semanas.\"\n        };\n\n        openChatbotBtn.addEventListener('click', () => {\n            chatbotWindow.classList.remove('hidden', 'scale-95', 'opacity-0');\n            chatbotWindow.classList.add('scale-100', 'opacity-100');\n            openChatbotBtn.classList.add('hidden');\n        });\n\n        closeChatbotBtn.addEventListener('click', () => {\n            chatbotWindow.classList.add('scale-95', 'opacity-0');\n            setTimeout(() => {\n                chatbotWindow.classList.add('hidden');\n                openChatbotBtn.classList.remove('hidden');\n            }, 300);\n        });\n\n        function addMessage(message, sender, isLoading = false) {\n            const messageWrapper = document.createElement('div');\n            messageWrapper.className = `flex mb-4 ${sender === 'user' ? 'justify-end' : ''}`;\n            \n            const messageBubble = document.createElement('div');\n            messageBubble.className = `p-3 rounded-lg max-w-xs text-sm ${sender === 'user' ? 'bg-indigo-600 text-white' : 'bg-indigo-100 text-gray-800'}`;\n            \n            if(isLoading) {\n                 messageBubble.innerHTML = `<div class=\"flex items-center justify-center space-x-2\">\n                    <div class=\"w-2 h-2 rounded-full bg-gray-500 animate-pulse\"><\/div>\n                    <div class=\"w-2 h-2 rounded-full bg-gray-500 animate-pulse\" style=\"animation-delay: 0.2s;\"><\/div>\n                    <div class=\"w-2 h-2 rounded-full bg-gray-500 animate-pulse\" style=\"animation-delay: 0.4s;\"><\/div>\n                 <\/div>`;\n                 messageBubble.id = 'loading-bubble';\n            } else {\n                messageBubble.innerHTML = `<p>${message}<\/p>`;\n            }\n            \n            messageWrapper.appendChild(messageBubble);\n            chatMessages.appendChild(messageWrapper);\n            chatMessages.scrollTop = chatMessages.scrollHeight;\n        }\n        \n        presetQuestions.forEach(button => {\n            button.addEventListener('click', () => {\n                const userMessage = button.textContent;\n                addMessage(userMessage, 'user');\n                addMessage('', 'bot', true);\n\n                setTimeout(() => {\n                    const loadingBubble = document.getElementById('loading-bubble');\n                    if (loadingBubble) loadingBubble.parentElement.remove();\n                    \n                    const botResponse = demoResponses[userMessage];\n                    addMessage(botResponse, 'bot');\n                }, 1200);\n            });\n        });\n    <\/script>\n<\/body>\n<\/html>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Equipo | FASIN IA Predictiva FASIN IA An\u00e1lisis Predictivo Dashboard Presupuesto Cronograma Riesgos Equipo Jos\u00e9 David Arquitecto Cerrar Sesi\u00f3n Gesti\u00f3n [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-72","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/codigoyconcreto.es\/index.php\/wp-json\/wp\/v2\/pages\/72","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/codigoyconcreto.es\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/codigoyconcreto.es\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/codigoyconcreto.es\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/codigoyconcreto.es\/index.php\/wp-json\/wp\/v2\/comments?post=72"}],"version-history":[{"count":2,"href":"https:\/\/codigoyconcreto.es\/index.php\/wp-json\/wp\/v2\/pages\/72\/revisions"}],"predecessor-version":[{"id":80,"href":"https:\/\/codigoyconcreto.es\/index.php\/wp-json\/wp\/v2\/pages\/72\/revisions\/80"}],"wp:attachment":[{"href":"https:\/\/codigoyconcreto.es\/index.php\/wp-json\/wp\/v2\/media?parent=72"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}