| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 |
- import { CurrentDot, RealRing, RingCommon, TargetRing } from "../components/Rings"
- const startArc = (time: number) => {
- var date = new Date(time);
- var hour = date.getHours();
- var minute = date.getMinutes();
- var second = date.getSeconds();
- return (hour * 3600 + minute * 60 + second) / (24 * 3600) * 2 * Math.PI - Math.PI / 2.0;
- }
- const durationArc = (start_time: number, end_time: number) => {
- var duration = (end_time - start_time) / 1000;
- return duration / (24 * 3600) * 2 * Math.PI;
- }
- export const haveSmallRing = (data: any) => {
- if (data.scenario == 'FAST_SLEEP')
- return true
- return false
- }
- export const getCommon = (data: any, isBigRing: boolean) => {
- const commonBig: RingCommon = {
- useCase: 'Record',
- radius: 50,
- lineWidth: 8,
- isFast: true,
- status: 'WAIT_FOR_START'
- }
- const commonSmall: RingCommon = {
- useCase: 'Record',
- radius: 40,
- lineWidth: 8,
- isFast: true,
- status: 'WAIT_FOR_START'
- }
- if (isBigRing) {
- return commonBig
- }
- return commonSmall
- }
- export const getBgRing = () => {
- return {
- color: '#767676'
- }
- }
- export const getDot = (data: any, isBigRing: boolean) => {
- const currentDotBig: CurrentDot = {
- color: '#AAFF00',
- lineWidth: 8,
- borderColor: 'black'
- }
-
- const currentDotSmall: CurrentDot = {
- color: '#00FFFF',
- lineWidth: 8,
- borderColor: 'black'
- }
- if (isBigRing) {
- if (data && data.scenario == 'SLEEP') {
- currentDotBig.color = '#00FFFF'
- }
- return currentDotBig
- }
- else {
- return currentDotSmall
- }
- }
- export const getTarget = (data: any, isBigRing: boolean) => {
- const targetRingBig: TargetRing = {
- color: '#FF0000',
- startArc: 0,
- durationArc: 0
- }
-
- const targetRingSmall: TargetRing = {
- color: '#FF0000',
- startArc: 0,
- durationArc: 0
- }
- if (isBigRing) {
- if (data.scenario == 'SLEEP') {
- targetRingBig.color = '#00FFFF'
- targetRingBig.startArc = startArc(data.sleep.target_start_time)
- targetRingBig.durationArc = durationArc(data.sleep.start_time, data.sleep.target_end_time)
- }
- else {
- targetRingBig.startArc = startArc(data.fast.target_start_time)
- targetRingBig.durationArc = durationArc(data.fast.target_start_time, data.fast.target_end_time)
- }
- return targetRingBig
- }
- else {
- targetRingSmall.startArc = startArc(data.sleep.target_start_time)
- targetRingSmall.durationArc = durationArc(data.sleep.target_start_time, data.sleep.target_end_time)
- return targetRingSmall
- }
- }
- export const getReal = (data: any, isBigRing: boolean, isRecord: boolean) => {
- const realRingBig: RealRing = {
- color: '#AAFF00',
- startArc: 0,
- durationArc: 0
- }
- const realRingSmall: RealRing = {
- color: '#00FFFF',
- startArc: 0,
- durationArc: 0
- }
- if (isBigRing) {
- if (data.scenario == 'SLEEP') {
- realRingBig.color = '#00FFFF'
- realRingBig.startArc = startArc(data.sleep.real_start_time)
- realRingBig.durationArc = durationArc(data.sleep.real_start_time, isRecord ? (data.sleep.real_end_time ? data.sleep.real_end_time : new Date().getTime()) : new Date().getTime())
- }
- else {
- realRingBig.startArc = startArc(data.fast.real_start_time)
- realRingBig.durationArc = durationArc(data.fast.real_start_time, isRecord ? (data.fast.real_end_time ? data.fast.real_end_time : new Date().getTime()) : new Date().getTime())
- }
- return realRingBig
- }
- else {
- realRingSmall.startArc = startArc(data.sleep.real_start_time)
- realRingSmall.durationArc = durationArc(data.sleep.real_start_time, isRecord ? (data.sleep.real_end_time ? data.sleep.real_end_time : new Date().getTime()) : new Date().getTime())
- // if (isRecord && !isBigRing){
- // debugger
- // }
- return realRingSmall
- }
- }
|