Rev 5206 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
/* eslint-disable camelcase */
import React, { useEffect, useState } from 'react'
import { useDispatch } from 'react-redux'
import { addNotification } from '../../../redux/notification/notification.actions'
import { axios } from '../../../utils'
const DailyPulse = ({ routeDailyPulse }) => {
const [points, setPoints] = useState(0)
const [emojisHowAreYouFeel, setEmojisHowAreYouFeel] = useState([])
const [emojisClimateOnYourOrganization, setEmojisClimateOnYourOrganization] = useState([])
const dispatch = useDispatch()
const handleEmojiSave = (url) => {
if(url == '') {
return false;
}
axios.post(url)
.then(({ data }) => {
if (!data.success) {
return dispatch(addNotification({
style: 'danger',
msg: typeof data.data === 'string'
? data.data
: 'Ha ocurrido un error'
}))
}
return getData()
})
}
const getData = async (url = routeDailyPulse) => {
try {
const { data: response } = await axios.get(url)
if (response.success) {
setPoints(response.data.points)
setEmojisHowAreYouFeel(response.data.emojis_how_are_you_feel)
setEmojisClimateOnYourOrganization(response.data.emojis_climate_on_your_organization)
}
} catch (error) {
console.log(error)
}
}
useEffect(() => {
getData()
}, [])
return (
<div className='peopleYouMayKnow'>
<div className="sd-title d-flex align-items-center justify-content-between">
<h3>Pulso Diario</h3>
</div>
<div className='suggest-list'>
<div className="w-100 d-flex align-items-center" style={{ gap: '.5rem' }}>
<h3>Puntos acumulados</h3>
<h1> {points} </h1>
</div>
<div className="w-100 d-flex align-items-center" style={{ gap: '.5rem' }}>
<h3> Como te sientes hoy ? </h3>
</div>
<div className="w-100 d-flex align-items-center" style={{ gap: '.5rem' }}>
{emojisHowAreYouFeel.map(item =>
<a href="#" onClick={() => handleEmojiSave(item.link_save)}>
<img src={item.image} style={{ width: '32px', height: '32px' }} />
</a>
)}
</div>
<div className="w-100 d-flex align-items-center" style={{ gap: '.5rem' }}>
<h3> Como esta el clima en la organización ? </h3>
</div>
<div className="w-100 d-flex align-items-center" style={{ gap: '.5rem' }}>
{emojisClimateOnYourOrganization.map(item =>
<a href="#" onClick={() => handleEmojiSave(item.link_save)}>
<img src={item.image} style={{ width: '32px', height: '32px' }} />
</a>
)}
</div>
</div>
</div>
)
}
export default DailyPulse