{"version":3,"sources":["config/database.js","pages/Signin.js","components/Topics.js","Headers.js","pages/MonthList.js","pages/AddMonth.js","pages/EditMonth.js","pages/PersonalDeveloper.js","pages/AddPersonalDeveloper.js","pages/EditPersonalDeveloper.js","Headers_NoTopics.js","pages/Personal.js","pages/AddPersonal.js","pages/EditPersonal.js","pages/WatchList.js","pages/AddWatch.js","pages/EditWatch.js","pages/Analyze_HeartRate.js","pages/Analyze_Stress.js","pages/Analyze_Sleep.js","pages/Analyze.js","Picture/A.png","Picture/B.png","pages/Picture_Box.js","pages/Picture.js","App.js","config/database_ER.js","pages_ER/Signin_ER.js","components/Topics_ER.js","Headers_ER.js","pages_ER/MonthList_ER.js","pages_ER/AddMonth_ER.js","pages_ER/EditMonth_ER.js","pages_ER/PersonalDeveloper_ER.js","pages_ER/AddPersonalDeveloper_ER.js","pages_ER/EditPersonalDeveloper_ER.js","pages_ER/Personal_ER.js","pages_ER/AddPersonal_ER.js","pages_ER/EditPersonal_ER.js","pages_ER/WatchList_ER.js","pages_ER/AddWatch_ER.js","pages_ER/EditWatch_ER.js","pages_ER/Analyze_HeartRate_ER.js","pages_ER/Analyze_Stress_ER.js","pages_ER/Analyze_Sleep_ER.js","pages_ER/Analyze_ER.js","pages_ER/Picture_Box_ER.js","pages_ER/Picture_ER.js","App_ER.js","config/database_AR.js","pages_AR/Signin_AR.js","components/Topics_AR.js","Headers_AR.js","pages_AR/MonthList_AR.js","pages_AR/AddMonth_AR.js","pages_AR/EditMonth_AR.js","pages_AR/PersonalDeveloper_AR.js","pages_AR/AddPersonalDeveloper_AR.js","pages_AR/EditPersonalDeveloper_AR.js","pages_AR/Personal_AR.js","pages_AR/AddPersonal_AR.js","pages_AR/EditPersonal_AR.js","pages_AR/WatchList_AR.js","pages_AR/AddWatch_AR.js","pages_AR/EditWatch_AR.js","pages_AR/Analyze_HeartRate_AR.js","pages_AR/Analyze_Stress_AR.js","pages_AR/Analyze_Sleep_AR.js","pages_AR/Analyze_AR.js","pages_AR/Picture_Box_AR.js","pages_AR/Picture_AR.js","App_AR.js","pages_N/Signin_N.js","components/Topics_N.js","Headers_N.js","pages_N/MonthList_N.js","pages_N/AddMonth_N.js","pages_N/EditMonth_N.js","pages_N/PersonalDeveloper_N.js","pages_N/AddPersonalDeveloper_N.js","pages_N/EditPersonalDeveloper_N.js","pages_N/Personal_N.js","pages_N/AddPersonal_N.js","pages_N/EditPersonal_N.js","pages_N/WatchList_N.js","pages_N/AddWatch_N.js","pages_N/EditWatch_N.js","pages_N/Analyze_HeartRate_N.js","pages_N/Analyze_Stress_N.js","pages_N/Analyze_Sleep_N.js","pages_N/Analyze_N.js","pages_N/Picture_Box_N.js","pages_N/Picture_N.js","App_N.js","pages_NER/Signin_NER.js","components/Topics_NER.js","Headers_NER.js","pages_NER/MonthList_NER.js","pages_NER/AddMonth_NER.js","pages_NER/EditMonth_NER.js","pages_NER/PersonalDeveloper_NER.js","pages_NER/AddPersonalDeveloper_NER.js","pages_NER/EditPersonalDeveloper_NER.js","pages_NER/Personal_NER.js","pages_NER/AddPersonal_NER.js","pages_NER/EditPersonal_NER.js","pages_NER/WatchList_NER.js","pages_NER/AddWatch_NER.js","pages_NER/EditWatch_NER.js","pages_NER/Analyze_HeartRate_NER.js","pages_NER/Analyze_Stress_NER.js","pages_NER/Analyze_Sleep_NER.js","pages_NER/Analyze_NER.js","pages_NER/Picture_Box_NER.js","pages_NER/Picture_NER.js","App_NER.js","pages_NAR/Signin_NAR.js","components/Topics_NAR.js","Headers_NAR.js","pages_NAR/MonthList_NAR.js","pages_NAR/AddMonth_NAR.js","pages_NAR/EditMonth_NAR.js","pages_NAR/PersonalDeveloper_NAR.js","pages_NAR/AddPersonalDeveloper_NAR.js","pages_NAR/EditPersonalDeveloper_NAR.js","pages_NAR/Personal_NAR.js","pages_NAR/AddPersonal_NAR.js","pages_NAR/EditPersonal_NAR.js","pages_NAR/WatchList_NAR.js","pages_NAR/AddWatch_NAR.js","pages_NAR/EditWatch_NAR.js","pages_NAR/Analyze_HeartRate_NAR.js","pages_NAR/Analyze_Stress_NAR.js","pages_NAR/Analyze_Sleep_NAR.js","pages_NAR/Analyze_NAR.js","pages_NAR/Picture_Box_NAR.js","pages_NAR/Picture_NAR.js","App_NAR.js","index.js"],"names":["Firebase","firebase","initializeApp","apiKey","authDomain","databaseURL","projectId","storageBucket","messagingSenderId","appId","measurementId","Signin","_Component","_inherits","_super","_createSuper","props","_this","_classCallCheck","call","state","account","password","_createClass","key","value","e","this","setState","target","handleSubmit","bind","window","location","replace","_this2","auth","signInWithEmailAndPassword","then","uri","encodeURIComponent","catch","error","alert","h4","fontSize","fontWeight","h4a","li","float","display","color","textAlign","padding","textDecoration","_jsxs","children","Navbar","bg","_jsx","Brand","style","Nav","Link","onClick","handlechangeER","handlechangeAR","handlechangeN","Container","Form","Group","Label","Control","type","onChange","handleChangeAccount","placeholder","handleChangePassword","Button","margin","backgroundColor","borderColor","Component","Topics","List","listStyleType","overflow","Item","as","to","className","active","Headers","Menu","ref","firestore","collection","MonthList","_useState","useState","_useState2","_slicedToArray","months","setMonths","useEffect","getMonths","deleteMonth","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","firebaseid","wrap","_context","prev","next","doc","delete","setTimeout","reload","stop","_x","apply","arguments","_ref2","_callee2","monthData","monthId","_context2","orderBy","get","items","forEach","push","id","data","i","length","update","fluid","Row","Col","paddingTop","height","borderTop","variant","size","marginBottom","Table","striped","bordered","hover","map","Month","index","watchid","shift","workhour","overhour","leave","createdTime","editedTime","AddMonth","Account","selectShiftOptions","shift_id","shift_name","selectWatchOptions","watch_id","watch_watchid","uat","_getWatchOptions","watchData","watchId","watchoptions","Watch","_getShiftOptions","_this3","onSnapshot","querySnapshot","shiftoptions","Shiftmenu","name","_this4","label","userAccessToken","today","Date","date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","preventDefault","set","console","log","getWatchOptions","getShiftOptions","h2","p","line","md","Select","options","handleChangeWatch","handleChangeShift","handleChangeWorkhovr","handleChangeOverhovr","handleChangeLeave","EditMonth","monthid","_getMonthById","watchidvalue","shiftvalue","workhourvalue","overhourvalue","leavevalue","_callee3","_context3","getMonthById","match","params","PersonalList","personals","setPersonals","getPersonals","personalsData","personalsId","deletePersonal","blue","button","Personal","sex","age","marriage","education","department","position","salary","AddPersonal","selectSexOptions","sex_name","selectAgeOptions","age_name","selectMarriageOptions","marriage_name","selectChildrenOptions","children_name","selectPositionOptions","position_name","selectEducationOptions","education_name","selectDepartmentOptions","department_name","selectSalaryOptions","salary_name","_getAccount","_getSexOptions","sexoptions","Sex","_getAgeOptions","_callee4","_context4","ageoptions","Age","_getMarriageOptions","_callee5","_this5","_context5","marriageoptions","Marriage","_getChildrenOptions","_callee6","_this6","_context6","childrenoptions","Children","_getPositionOptions","_callee7","_this7","_context7","positionoptions","Position","_getDepartmentOptions","_callee8","_this8","_context8","departmentoptions","Department","_getEducationOptions","_callee9","_this9","_context9","educationoptions","Education","_getSalaryOptions","_callee10","_this10","_context10","salaryoptions","Salary","_this11","getSexOptions","getAgeOptions","getMarriageOptions","getChildrenOptions","getDepartmentOptions","getEducationOptions","getPositionOptions","getSalaryOptions","handleChangeSex","handleChangeAge","handleChangeMarriage","handleChangeChildren","handleChangeEducation","handleChangeDepartment","handleChangePosition","handleChangeSalary","EditPersonal","personalid","_getPersonalById","agevalue","sexvalue","marriagevalue","childrenvalue","educationvalue","positionvalue","departmentvalue","salaryvalue","getPersonalById","decodeURIComponent","db","getAccount","WatchList","watch","setWatch","getWatch","deleteWatch","userAccessTokenSecret","AddWatch","maxid","_getMaxWatchNum","Number","getMaxWatchNum","handleChangeID","handleChangeWatchId","handleChangeUserAccessToken","handleChangeUserAccessTokenSecret","EditWatch","Watchsid","useraccesstoken","useraccesstokensecret","_getWatchById","accountvalue","passwordvalue","useraccesstokenvalue","useraccesstokensecretvalue","getWatchById","xs","HeartRateAnalyze","_PureComponent","watch_UAT","HeartRateData","selectCalendarOptions","calendar_id","calendar_Date","_getCalendarOptions","response","calendarArray","calendaroptions","axios","sent","Calendar","calendar","_getHeartRateData","post","_x2","_x3","_x4","getCalendarOptions","getHeartRateData","h3","marginTop","textCenter","handleChangeCalendar","ResponsiveContainer","width","AreaChart","top","right","left","bottom","CartesianGrid","strokeDasharray","XAxis","dataKey","YAxis","Tooltip","Area","connectNulls","stroke","fill","HeartRate","HeartRateLevel","Watch_id","Time","PureComponent","StressAnalyze","StressData","_getStressOptions","t0","getStressOptions","Stress","StressLevel","SleepsAnalyze","SleepData","_getSleepsOptions","getSleepsOptions","minPointSize","Sleep","sleepType","Analyze","gender","changeGender","_assertThisInitialized","event","concat","text","SleepAnalyze","Grid","Column","Header","class","PictureBox","Picture","changePicture","src","A","alt","option","B","App","BrowserRouter","Switch","Route","path","exact","component","PersonalDeveloper","AddPersonalDeveloper","EditPersonalDeveloper","AnalyzeHeartRate","AnalyzeSleep","AnalyzeStress","FirebaseER","firebase_ER","Signin_ER","firebaseER","handlechange","handlechangeNER","Topics_ER","HeartRateAnalyze_ER","StressAnalyze_ER","SleepAnalyze_ER","App_ER","MonthList_ER","AddMonth_ER","EditMonth_ER","PersonalDeveloper_ER","AddPersonalDeveloper_ER","EditPersonalDeveloper_ER","Personal_ER","AddPersonal_ER","EditPersonal_ER","Analyze_ER","Picture_ER","AnalyzeHeartRate_ER","AnalyzeSleep_ER","AnalyzeStress_ER","PictureBox_ER","WatchList_ER","AddWatch_ER","EditWatch_ER","FirebaseAR","firebase_AR","firebaseAR","handlechangeNAR","Topics_AR","EditPersonal_AR","HeartRateAnalyze_AR","StressAnalyze_AR","SleepsAnalyze_AR","Analyze_AR","SleepAnalyze_AR","PictureBox_AR","Picture_AR","App_AR","Signin_AR","MonthList_AR","AddMonth_AR","EditMonth_AR","PersonalDeveloper_AR","AddPersonalDeveloper_AR","EditPersonalDeveloper_AR","Personal_AR","AddPersonal_AR","AnalyzeHeartRate_AR","AnalyzeSleep_AR","AnalyzeStress_AR","WatchList_AR","AddWatch_AR","EditWatch_AR","Topics_N","App_N","Signin_N","MonthList_N","AddMonth_N","EditMonth_N","PersonalDeveloper_N","AddPersonalDeveloper_N","EditPersonalDeveloper_N","Personal_N","AddPersonal_N","EditPersonal_N","Analyze_N","Picture_N","AnalyzeHeartRate_N","AnalyzeSleep_N","AnalyzeStress_N","PictureBox_N","WatchList_N","AddWatch_N","EditWatch_N","Topics_NER","App_NER","Signin_NER","MonthList_NER","AddMonth_NER","EditMonth_NER","PersonalDeveloper_NER","AddPersonalDeveloper_NER","EditPersonalDeveloper_NER","Personal_NER","AddPersonal_NER","EditPersonal_NER","Analyze_NER","Picture_NER","AnalyzeHeartRate_NER","AnalyzeSleep_NER","AnalyzeStress_NER","PictureBox_NER","WatchList_NER","AddWatch_NER","EditWatch_NER","Topics_NAR","App_NAR","Signin_NAR","MonthList_NAR","AddMonth_NAR","EditMonth_NAR","PersonalDeveloper_NAR","AddPersonalDeveloper_NAR","EditPersonalDeveloper_NAR","Personal_NAR","AddPersonal_NAR","EditPersonal_NAR","Analyze_NAR","Picture_NAR","AnalyzeHeartRate_NAR","AnalyzeSleep_NAR","AnalyzeStress_NAR","PictureBox_NAR","WatchList_NAR","AddWatch_NAR","EditWatch_NAR","ReactDOM","render","React","StrictMode","document","getElementById"],"mappings":"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","file":"static/js/main.4fde3ea9.chunk.js","sourcesContent":["import firebase from 'firebase/compat/app';\n\n\nconst firebaseConfig = {\n apiKey: \"AIzaSyBhMq2YQnsdDfPMHsEUO2n-42xQLR1MsXM\",\n authDomain: \"fir-web-d11ce.firebaseapp.com\",\n databaseURL: \"https://fir-web-d11ce-default-rtdb.firebaseio.com\",\n projectId: \"fir-web-d11ce\",\n storageBucket: \"fir-web-d11ce.appspot.com\",\n messagingSenderId: \"910674546570\",\n appId: \"1:910674546570:web:ba26a451f64a42ba4e4273\",\n measurementId: \"G-XMBN5MKQWP\"\n};\n\nconst Firebase = firebase.initializeApp(firebaseConfig,'[DEFAULT]');\n\nexport default Firebase;\n\n\n\n\n\n","import React, { Component } from 'react';\n// bootstrap\nimport { Form, Button, Container, Navbar, Nav ,Dropdown } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport {Link} from 'react-router-dom';\n\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/auth';\n\n\nclass Signin extends Component{\n constructor(props){\n super(props)\n this.state = {\n account : '',\n password :''\n }\n }\n\n handleChangeAccount(e){\n this.setState({account:e.target.value})\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangePassword(e){\n this.setState({password:e.target.value})\n } \n handlechangeER()\n {\n window.location.replace(\"/er\")\n }\n handlechangeAR()\n {\n window.location.replace(\"/ar\")\n }\n handlechangeN()\n {\n window.location.replace(\"/n\")\n }\n handleSubmit() {\n firebase\n .auth()\n .signInWithEmailAndPassword(this.state.account, this.state.password)\n .then(() => {\n // 判斷如果是護理長或後端管理者登入的帳號 overworkdeveloper@gmail.com,則畫面跳轉到路徑 /personalDeveloper 檔案\n if (this.state.account === 'overworkdeveloper@gmail.com') {\n // console.log('登入');\n window.location.replace(\"/personalDeveloper\");\n }\n // 如果是護理師登入的帳號,則畫面跳轉到路徑 /personal/(每位護理師不同的帳號)\n else {\n const uri = \"/personal/\" + encodeURIComponent(this.state.account);\n // alert(uri);\n window.location.replace(uri);\n }\n })\n // 如果輸入的帳號及密碼沒有在 Firebase 的 Authentication 中時,跳出錯誤訊息\n .catch((error)=>{\n alert('帳號密碼錯誤!!');\n });\n }\n\n\n render() {\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const h4a={\n fontSize: '1.5rem',\n }\n const h1={\n fontSize: '3rem',\n }\n const buttom={\n margin:'10px',\n fontSize: '20px',\n color: 'green',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n }\n const buttom_change={\n margin:'10px',\n fontSize: '20px',\n color: 'black',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n attached:'right'\n \n }\n const li={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n }\n return (\n
\n \n 台中榮總_外科部\n 急診室\n 安寧病房\n 切換模式\n\n \n \n \n \n
\n 帳號\n \n \n
\n \n 密碼\n \n \n \n \n \n
\n );\n }\n}\n\nexport default Signin;\n","//下載semantic-ui-react套件,在終端機打上\"npm install semantic-ui-react semantic-ui-css\"\n//使用semantic-ui-react套件裡的List\nimport {List,Dropdown,Menu,Button} from 'semantic-ui-react';\n//下載react-router-dom套件,在終端機打上\"npm i react-router-dom\"\n//使用react-router-dom套件裡的Link\nimport {Link} from 'react-router-dom';\n//引入用npm載下來的React\nimport React from 'react';\n\n//命名一個新function叫做Topics\n//這裡本來是左邊欄,後來變成放在上方欄上\nfunction Topics(){ \n //CSS\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li2={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n backgroundColor:'#333'\n \n }\n return (\n //關於List請參考:https://react.semantic-ui.com/elements/list/\n \n \n \n 基本資料\n \n \n 出缺勤資料\n \n {/* \n 手錶資料\n */}\n \n 數據分析\n \n {/* \n 分析結果\n */}\n
\n );\n}\n\n//輸出Topics函式\nexport default Topics;\n","import {Menu} from 'semantic-ui-react';\nimport {Link} from 'react-router-dom';\nimport React from 'react';\nimport Topics from \"./components/Topics\";\n\nfunction Headers(){\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightgreen',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const a={\n float: 'right',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n return(\n \n );\n}\nexport default Headers;\n\n","import { useState,useEffect } from \"react\";\nimport axios from \"axios\";\nimport { Link } from \"react-router-dom\";\nimport Headers from '../Headers.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// ref 路徑連到 Month 資料庫\nconst ref = firebase.firestore().collection('Month');\n\nconst MonthList = () => {\n const [months, setMonths] = useState([]);\n useEffect(()=>{\n getMonths();\n }, []);\n \n // 刪除 Month 資料\n const deleteMonth = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n\n // 取得 Month 所有的資料\n const getMonths = async () =>{\n const monthData = [];\n const monthId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n monthId.push(doc.id);\n monthData.push(doc.data());\n });\n for (let i = 0; i < monthData.length; i++){\n ref.doc(monthId[i]).update({\n \"firebaseid\": monthId[i]\n });\n monthData[i].firebaseid = monthId[i];\n }\n setMonths(monthData);\n });\n }\n \n \n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter ={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n 外科部 出缺勤資料
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 輪班班別 | \n 工作時數 | \n 加班時數 | \n 請假天數 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {months.map((Month,index)=> {\n return(\n \n {index + 1} | \n {Month.watchid} | \n {Month.shift} | \n {Month.workhour} | \n {Month.overhour} | \n {Month.leave} | \n {Month.createdTime} | \n {Month.editedTime} | \n \n {' '}\n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default MonthList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n//新增月更資料頁\nclass AddMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Account: \"\", // 帳號\n selectShiftOptions : [], //輪班別\n shift_id: \"\", //輪班_id\n shift_name: '', //輪班_選項\n selectWatchOptions : [], //手錶使用者\n watch_id: '', //手錶使用者_id\n watch_watchid: '', //手錶使用者_選項\n //以下為使用者輸入資料\n watchid:'', //手錶使用者\n shift:'', //輪班\n workhour:'', //工作時數\n overhour:'', //加班時數\n leave: '', //請假天數\n uat:'', // userAccessToken\n }\n }\n\n // 取得手錶使用者\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫得到的資料存進watchoption下拉選單\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別 資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n\n\n // handleChange...(e) 用於儲存變動的變數資料\n handleChangeWatch(e){\n this.setState({ watch_id: e.value, watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n // 找到目前選擇手錶的資料\n if (e.label == watchData[i].watchid) {\n this.setState({ uat: watchData[i].userAccessToken });\n this.setState({ Account: watchData[i].account });\n }\n }\n });\n }\n handleChangeShift(e){\n this.setState({ shift_id: e.value, shift_name: e.label });\n }\n handleChangeWorkhovr(e){\n this.setState({ workhour: e.target.value });\n }\n handleChangeOverhovr(e){\n this.setState({ overhour: e.target.value });\n }\n handleChangeLeave(e){\n this.setState({ leave: e.target.value });\n }\n //將新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n \n if (this.state.watch_watchid == '' || this.state.shift_name == '' || this.state.workhour == '' || this.state.overhour == '' || this.state.leave == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Month').doc().set({\n \"account\": this.state.Account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶編號\n \"shift\":this.state.shift_name, // 輪班別\n \"workhour\":this.state.workhour, // 工作時數\n \"overhour\":this.state.overhour, // 加班天數\n \"leave\": this.state.leave, // 請假天數\n \"firebaseid\": \"\", // firebase id\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n });\n console.log('新增成功');\n }\n }\n //進入頁面自動執行\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增出缺勤資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default AddMonth; //將AddMonth 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n// 修改 月更新資料\nclass EditMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n monthid:\"\",\n selectShiftOptions : [],\n shift_id: \"\",\n shift_name: '',\n selectWatchOptions : [],\n watch_id: '',\n watch_watchid: '',\n workhour:'',\n overhour:'',\n leave:'',\n }\n }\n\n // 取得 其中一筆 月更新資料\n async getMonthById(firebaseid) {\n ref.collection('Month').doc(firebaseid).get().then(items => {\n const data = items.data(); // 所有資料\n\n const watchidvalue = data.watchid; // 手錶資料\n const shiftvalue = data.shift; // 輪班別\n const workhourvalue = data.workhour; // 工作時數\n const overhourvalue = data.overhour; // 加班天數\n const leavevalue = data.leave; // 請假天數\n this.setState({monthid:firebaseid,watch_watchid:watchidvalue,shift_name:shiftvalue,workhour: workhourvalue ,overhour: overhourvalue,leave:leavevalue})\n })\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n // 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n \n handleChangeWatch(e){\n this.setState({watch_id:e.value, watch_watchid:e.label})\n }\n handleChangeShift(e){\n this.setState({shift_id:e.value, shift_name:e.label})\n }\n handleChangeWorkhovr(e){\n this.setState({workhour:e.target.value})\n }\n handleChangeOverhovr(e){\n this.setState({overhour:e.target.value})\n }\n handleChangeLeave(e){\n this.setState({leave:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Month').doc(this.state.monthid).update({\n \"shift\":this.state.shift_name,\n \"workhour\":this.state.workhour,\n \"overhour\":this.state.overhour,\n \"leave\":this.state.leave,\n \"editedTime\": date\n });\n console.log('修改成功');\n }\n\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n this.getMonthById(this.props.match.params.firebaseid)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改出缺勤紀錄
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditMonth;\n","// ! 給護理長看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Personal');\n\nconst PersonalList = () => {\n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals();\n },[]);\n\n // 取得所有 基本資料\n // 取得所有 基本資料\n const getPersonals = async () =>{\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n personalsId.push(doc.id);\n personalsData.push(doc.data());\n });\n setPersonals(personalsData);\n });\n };\n\n // 刪除 單筆基本資料\n const deletePersonal = async (account) =>{\n ref.doc(account).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n \n return(\n \n
\n
\n \n \n 外科部 基本資料
\n [手環從No.1號(GarminWatch1)~No.20號(GarminWatch22)為第一梯次]
\n [手環從No.21號(GarminWatch61)~No.40號(GarminWatch80)為第二梯次]
\n \n {/* */}\n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 部門(科別) | \n 職稱 | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n // const { account } = this.props.match.params;\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","import {Menu} from 'semantic-ui-react';\nimport {Link} from 'react-router-dom';\nimport React from 'react';\n\nfunction Headers(){\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: '#333',\n }\n const li={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n }\n const a={\n float: 'right',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n }\n return(\n \n );\n}\nexport default Headers;\n\n","// ! 給護理師看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nconst PersonalList = (props) => {\n \n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals(props);\n },[]);\n\n // 取得所有 基本資料\n const getPersonals = async (props) => {\n // 取得 Route 傳過來 path 的 :account\n // alert(props.match.params.account);\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n const db = ref.collection('Personal');\n const id = decodeURIComponent(props.match.params.account);\n \n db.get().then(items => {\n items.forEach(doc => {\n if (doc.id === id) {\n db.doc(id).get().then(data => {\n personalsId.push(data.id);\n personalsData.push(data.data());\n setPersonals(personalsData);\n })\n }\n });\n });\n };\n\n // 刪除 單筆基本資料\n // const deletePersonal = async (firebaseid) =>{\n // ref.doc(firebaseid).delete().then(() => {\n // alert('刪除成功!');\n // });\n // window.setTimeout(( () => window.location.reload() ), 1250);\n // }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n 外科部 基本資料
\n \n \n \n
\n \n \n {/* 基本資料
\n */}\n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 職稱 | \n 部門(科別) | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n {/* */}\n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getAccount(decodeURIComponent(this.props.match.params.account))\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","import { useState,useEffect } from \"react\";\nimport { Link } from \"react-router-dom\";\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nimport Headers from '../Headers.js';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Watch');\nconst WatchList = () => {\n const [watch, setWatch] = useState([]);\n useEffect(()=>{\n getWatch();\n }, []);\n \n const deleteWatch = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n console.log('delete ',firebaseid,' successful');\n });\n window.setTimeout(( () => window.location.reload() ), 1300);\n }\n const getWatch = async () =>{\n // const response = await axios.get('http://localhost:5000/watch');\n // const resData = response.data; // 包含了 firebaseid 與 \"資料\" 內容\n // setWatch(resData);\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n // console.log(watchData[i]);\n }\n setWatch(watchData);\n });\n }\n\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n Garmin Watch 手錶
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 帳號 | \n 密碼 | \n userAccessToken | \n userAccessTokenSecret | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {watch.map((Watch,index)=> {\n return(\n \n {Watch.id} | \n {Watch.watchid} | \n {Watch.account} | \n {Watch.password} | \n {Watch.userAccessToken} | \n {Watch.userAccessTokenSecret} | \n {Watch.createdTime} | \n {Watch.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default WatchList;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\n//新增手錶頁(僅後端使用者可讀寫)\nclass AddWatch extends Component {\n constructor(props) {\n super(props)\n this.state = {\n id: '',\n watchid: 'GarminWatch',\n account: '',\n password: '',\n userAccessToken: '',\n userAccessTokenSecret: '',\n maxid: '',\n };\n }\n\n async getMaxWatchNum() {\n const watchNumData = [];\n // const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('MaxWatchNum').doc('MaxWatchId').get().then(items => {\n this.setState({ maxid: items.data().maxid });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n };\n \n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeID(e){\n this.setState({ id: e.target.value });\n // this.handleSubmit = this.handleSubmit.bind(this);\n };\n handleChangeAccount(e){\n this.setState({ account: e.target.value });\n };\n handleChangeWatchId(e){\n this.setState({ watchid: e.target.value });\n }\n handleChangePassword(e){\n this.setState({ password: e.target.value });\n }\n handleChangeUserAccessToken(e){\n this.setState({ userAccessToken: e.target.value });\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({ userAccessTokenSecret: e.target.value });\n }\n\n\n handleSubmit(e){\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if (this.state.id == '' || this.state.watchid == 'GarminWatch' || this.state.account == '' || this.state.password == '' || this.state.userAccessToken == '' || this.state.userAccessTokenSecret == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Watch').doc().set({\n \"id\": this.state.id,\n \"watchid\": this.state.watchid, // 手錶編號\n \"account\": this.state.account, // 輪班別\n \"password\": this.state.password, // 工作時數\n \"userAccessToken\": this.state.userAccessToken, // 加班天數\n \"userAccessTokenSecret\": this.state.userAccessTokenSecret, // 請假天數\n \"firebaseid\": \"\",\n \"createdTime\": date\n });\n console.log('新增成功');\n ref.collection('MaxWatchNum').doc('MaxWatchId').set({\n \"maxid\": Number(this.state.id)\n });\n }\n }\n\n componentDidMount(){\n this.getMaxWatchNum()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增手錶資料
\n \n 目前手錶數量 : {this.state.maxid}
\n
\n \n \n \n
\n );\n };\n \n};\nexport default AddWatch;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nclass EditWatch extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Watchsid:\"\",\n watchid:\"\",\n account:\"\",\n password:\"\",\n useraccesstoken:\"\",\n useraccesstokensecret:\"\",\n }\n }\n async getWatchById(firebaseid){\n\n ref.collection('Watch').doc(firebaseid).get().then(items => {\n const data = items.data();\n const watchidvalue = data.watchid;\n const accountvalue = data.account;\n const passwordvalue = data.password;\n const useraccesstokenvalue = data.userAccessToken;\n const useraccesstokensecretvalue = data.userAccessTokenSecret;\n this.setState({ Watchsid: firebaseid, watchid: watchidvalue, account: accountvalue, password: passwordvalue, useraccesstoken: useraccesstokenvalue, useraccesstokensecret: useraccesstokensecretvalue });\n });\n\n \n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangeAccount(e){\n this.setState({ account: e.target.value })\n // this.handleSubmit = this.handleSubmit.bind(this);\n }\n handleChangePassword(e){\n this.setState({password:e.target.value})\n }\n handleChangeUserAccessToken(e){\n this.setState({useraccesstoken:e.target.value})\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({useraccesstokensecret:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Watch').doc(this.state.Watchsid).update({\n \"account\":this.state.account,\n \"password\":this.state.password,\n \"userAccessToken\":this.state.useraccesstoken,\n \"userAccessTokenSecret\":this.state.useraccesstokensecret,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n componentDidMount(){\n const { firebaseid } = this.props.match.params;\n this.getWatchById(firebaseid)\n }\n\n \n\n render() {\n // console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改手錶資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditWatch;\n","// 數據分析 - 心率指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\nimport axios from \"axios\";\n// bootstrap\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class HeartRateAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n HeartRateData:[], //此陣列存放完整的心率資料\n selectCalendarOptions: [], //此陣列存放日期陣列\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n // 取得日期\n async getCalendarOptions(uat) {\n console.log(uat);\n const response = await axios.get('https://imow.nutc.edu.tw:8001/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log('+++' + calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n \n // 取得 心率 資料\n async getHeartRateData(uat, watchid, calendar) {\n console.log(uat, watchid, calendar);\n // 到後端抓取 心率 的資料\n const response = await axios.post('https://imow.nutc.edu.tw:8001/heartrateanalyze', { uat, watchid, calendar });\n // const response = await axios.post('https://localhost:8080/heartrateanalyze', { uat, watchid, calendar });\n // 如果沒有資料\n if (response.data == '') {\n this.setState({ HeartRateData: response.data }); //將內部陣列存入外層陣列\n console.log(response.data);\n // 跳出通知\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({HeartRateData: response.data}); //將內部陣列存入外層陣列\n }\n }\n\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n this.getCalendarOptions(e.value);\n \n }\n\n handleChangeCalendar(e) {\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n this.getHeartRateData(this.state.watch_UAT,this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 心率指數(秒/bmp)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n \n \n
\n \n < 60:心跳過慢 \n 60 ~ 100:心跳正常 \n > 100:心跳過快 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Heart Rate | \n Heart Rate Level | \n
\n \n \n {this.state.HeartRateData.map((HeartRate, index) => {\n if (HeartRate.HeartRateLevel == '過快') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '過慢') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '正常') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class StressAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n StressData:[], //完整的 壓力 資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n // ! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8001/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n // ! 取得 Stress 所有資料,uat = userAccessToken\n async getStressOptions(uat, watchid, calendar){\n console.log(uat, watchid, calendar);\n try{\n const response = await axios.post('https://imow.nutc.edu.tw:8001/stressanalyze', {uat, watchid, calendar});\n // const response = await axios.post('https://localhost:8080/stressanalyze', {uat, watchid, calendar});\n if(response.data == ''){\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getStressOptions\n this.getStressOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n { this.state.calendar_Date } 壓力指數
\n \n \n \n \n \n \n \n \n \n \n
\n \n -2:運動量過大 \n -1:無資料 \n 1 ~ 25:休息 \n 26 ~ 50:輕度壓力 \n 51 ~ 75:中度壓力 \n 76 ~ 100:重度壓力 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Stress | \n Stress Level | \n
\n \n \n {this.state.StressData.map((Stress, index) => {\n if (Stress.Stress == -2) {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '休息') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '輕度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '中度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '重度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 睡眠狀態\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class SleepsAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '', // 手錶 UserAccessToken\n watch_id: '', // 手錶編號 GarminWatch01\n SleepData:[], //完整的睡眠資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8001/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n //! 取得 Sleeps 的所有資料,uat = userAccessToken\n async getSleepsOptions(uat, watchid , calendar) {\n console.log(uat, watchid, calendar);\n try{\n // const response = await axios.post('https://localhost:8080/sleepsanalyze',{uat, watchid, calendar});\n const response = await axios.post('https://imow.nutc.edu.tw:8001/sleepsanalyze',{uat, watchid, calendar});\n if (response.data == '') {\n console.log(response.data);\n this.setState({ SleepData: response.data }); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({SleepData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n // 改變 this.state.watch 的資料\n handleChangeWatch(e) {\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n \n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getSleepsOptions\n this.getSleepsOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 睡眠狀態(秒)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n
\n \n 1:深層睡眠 \n 2:淺層睡眠 \n 3:REM 快速動眼期 \n 4:清醒 \n
\n 資料顯示
\n {/* 表格 */}\n \n \n \n NO | \n User | \n Calendar | \n Time | \n ID | \n SleepType | \n
\n \n \n {this.state.SleepData.map((Sleep, index) => {\n if (Sleep.sleepType == '清醒') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == 'REM 快速動眼期') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '淺層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '深層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nimport HeartRateAnalyze from './Analyze_HeartRate.js';\nimport StressAnalyze from './Analyze_Stress.js';\nimport SleepAnalyze from './Analyze_Sleep.js';\n// import 'bootstrap/dist/css/bootstrap.min.css';\n\n\nconst ref = firebase.firestore();\n\nexport default class Analyze extends PureComponent {\n\n constructor(props){\n super(props)\n this.state = ({gender : ''})\n this.changeGender = this.changeGender.bind(this)\n }\n //宣告事件時傳入參數event取得觸發事件變數\n changeGender(event){\n //將觸發事件的DOM從event內的target屬性取出\n // console.log(event.target)\n //指定選擇的選項給state.gender\n this.setState({gender:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.gender變動為:${this.state.gender}`)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n }\n const margin={\n margin: '10px',\n }\n const h5={\n fontSize: '1.25rem',\n }\n const buttom={\n fontSize: '20px',\n color: 'green',\n margin: '10px',\n }\n\n //在render()中宣告一個text變數\n let text;\n //之後去判斷使用者選擇的是哪個\n if(this.state.gender === \"heartrate\")\n //用變數儲存組件\n text = \n else if(this.state.gender === \"stress\")\n text = \n else if(this.state.gender === \"sleep\")\n text = \n else\n text = \"\"\n\n return (\n \n \n \n \n \n \n
\n {/*\n \n */}\n {/*下拉式選單*/}\n \n {/*上面所設的text變數呈現在這裡*/}\n {text}\n \n \n \n \n );\n }\n}\n","export default __webpack_public_path__ + \"static/media/A.44c8263e.png\";","export default __webpack_public_path__ + \"static/media/B.d9d49e1c.png\";","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\n// import { Image } from 'semantic-ui-react'\nimport A from '../Picture/A.png';\nimport B from '../Picture/B.png';\n\n\n\n\n\nexport default class PictureBox extends PureComponent {\n \n constructor(props){\n super(props)\n this.state = ({Picture : ''})\n this.changePicture = this.changePicture.bind(this)\n }\n changePicture(event){\n \n this.setState({Picture:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.Picture變動為:${this.state.Picture}`)\n }\n \n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n const h5={\n fontSize: '1.25rem',\n }\n let text\n if(this.state.gender === \"Age\")\n text=< img src={A} alt=\"A\"/>\n else if(this.state.gender === \"Banbie\")\n text = ''\n else if(this.state.gender === \"Salary\")\n text = ''\n else\n text = \"\"\n\n return (\n \n
\n
\n \n \n \n \n \n \n \n \n
\n 圖片展示
\n \n {text}\n
\n
\n \n \n \n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\r\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\r\nimport Select from 'react-select';\r\nimport { Link } from 'react-router-dom';\r\nimport Headers from '../Headers.js';\r\nimport firebase from '../config/database.js';\r\nimport 'firebase/compat/firestore';\r\nimport HeartRateAnalyze from './Analyze_HeartRate.js';\r\nimport StressAnalyze from './Analyze_Stress.js';\r\nimport SleepAnalyze from './Analyze_Sleep.js';\r\nimport PictureBox from './Picture_Box.js';\r\n// import 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\n\r\nconst ref = firebase.firestore();\r\n\r\nexport default class Picture extends PureComponent {\r\n\r\n constructor(props){\r\n super(props)\r\n this.state = ({gender : ''})\r\n this.changeGender = this.changeGender.bind(this)\r\n }\r\n //宣告事件時傳入參數event取得觸發事件變數\r\n changeGender(event){\r\n //將觸發事件的DOM從event內的target屬性取出\r\n // console.log(event.target)\r\n //指定選擇的選項給state.gender\r\n this.setState({gender:event.target.value})\r\n }\r\n componentDidUpdate(){\r\n console.log(`已將state.gender變動為:${this.state.gender}`)\r\n }\r\n\r\n render() {\r\n const h2={\r\n fontSize: '2rem',\r\n fontWeight: 'bold',\r\n }\r\n const line={\r\n height: '1px',\r\n borderTop: 'solid gray 1px',\r\n }\r\n const margin={\r\n margin: '10px',\r\n }\r\n const h5={\r\n fontSize: '1.25rem',\r\n }\r\n const buttom={\r\n fontSize: '20px',\r\n color: 'green',\r\n margin: '10px',\r\n }\r\n\r\n //在render()中宣告一個text變數\r\n let text;\r\n //之後去判斷使用者選擇的是哪個\r\n if(this.state.gender === \"PictureBox\")\r\n //用變數儲存組件\r\n text = \r\n else if(this.state.gender === \"stress\")\r\n text = \r\n else if(this.state.gender === \"sleep\")\r\n text = \r\n else\r\n text = \"\"\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {/*\r\n \r\n */}\r\n {/*下拉式選單*/}\r\n \r\n {/*上面所設的text變數呈現在這裡*/}\r\n {text}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n","import {BrowserRouter,Switch,Route} from 'react-router-dom';\nimport Signin from \"./pages/Signin.js\";\n// 月更新資料\nimport MonthList from \"./pages/MonthList.js\";\nimport AddMonth from \"./pages/AddMonth.js\";\nimport EditMonth from \"./pages/EditMonth.js\";\n// 基本資料\n// 護理長\nimport PersonalDeveloper from './pages/PersonalDeveloper.js';\nimport AddPersonalDeveloper from './pages/AddPersonalDeveloper.js';\nimport EditPersonalDeveloper from './pages/EditPersonalDeveloper.js';\n// 護理師\nimport Personal from './pages/Personal.js';\nimport AddPersonal from './pages/AddPersonal.js';\nimport EditPersonal from './pages/EditPersonal.js';\n// 手錶資料\nimport WatchList from './pages/WatchList.js';\nimport AddWatch from \"./pages/AddWatch.js\";\nimport EditWatch from \"./pages/EditWatch.js\";\n// 數據分析\nimport Analyze from './pages/Analyze.js';\nimport AnalyzeHeartRate from './pages/Analyze_HeartRate.js';\nimport AnalyzeSleep from './pages/Analyze_Sleep.js';\nimport AnalyzeStress from './pages/Analyze_Stress.js';\nimport Picture from './pages/Picture.js';\nimport PictureBox from './pages/Picture_Box.js';\n\nfunction App() {\n return (\n \n \n {/* 登入 */}\n \n \n \n {/* 月更新資料 */}\n \n \n \n \n \n \n \n {/* 基本資料 */}\n {/* 護理長看到畫面 */}\n \n \n \n \n \n \n \n {/* 護理師看到畫面 */}\n \n \n \n {/* 數據分析 */}\n \n \n \n \n \n \n {/* 心率指數 */}\n \n \n \n {/* 睡眠狀態 */}\n \n \n \n {/* 壓力指數 */}\n \n \n \n \n \n \n {/* 手錶資料 */}\n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App;\n","import firebase_ER from 'firebase/compat/app';\n\nconst firebaseConfig_ER = {\n apiKey: \"AIzaSyCZMiM5gB0nmQgTVBvG0lJc5ioovLRoix4\",\n authDomain: \"fir-weber.firebaseapp.com\",\n databaseURL: \"https://fir-weber-default-rtdb.firebaseio.com\",\n projectId: \"fir-weber\",\n storageBucket: \"fir-weber.appspot.com\",\n messagingSenderId: \"19575722155\",\n appId: \"1:19575722155:web:4518059d3d6de6496be7ee\",\n measurementId: \"G-2XZ49YKXQB\"\n};\n\nconst FirebaseER = firebase_ER.initializeApp(firebaseConfig_ER,'other');\n\n\nexport default FirebaseER;\n","import React, { Component } from 'react';\n// bootstrap\nimport { Form, Button, Container, Navbar, Nav } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport {Link} from 'react-router-dom';\n\n// 連接 Firebase\nimport firebaseER from '../config/database_ER.js';\nimport 'firebase/compat/auth';\n\n\nclass Signin_ER extends Component{\n constructor(props){\n super(props)\n this.state = {\n account : '',\n password :''\n }\n }\n\n handleChangeAccount(e){\n this.setState({account:e.target.value})\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangePassword(e){\n this.setState({password:e.target.value})\n } \n handlechange()\n {\n window.location.replace(\"/\")\n }\n handlechangeAR()\n {\n window.location.replace(\"/ar\")\n }\n handlechangeNER()\n {\n window.location.replace(\"/ner\")\n }\n handleSubmit() {\n firebaseER\n .auth()\n .signInWithEmailAndPassword(this.state.account, this.state.password)\n .then(() => {\n // 判斷如果是護理長或後端管理者登入的帳號 eroverworkdeveloper@gmail.com,則畫面跳轉到路徑 /er/personalDeveloper 檔案\n if (this.state.account == 'eroverworkdeveloper@gmail.com') {\n alert('ER Developer登入');\n window.location.replace(\"/er/personalDeveloper\");\n }\n // 如果是護理師登入的帳號,則畫面跳轉到路徑 /er/personal/(每位護理師不同的帳號)\n else {\n const uri = \"/er/personal/\" + encodeURIComponent(this.state.account);\n alert(uri);\n window.location.replace(uri);\n }\n })\n // 如果輸入的帳號及密碼沒有在 Firebase 的 Authentication 中時,跳出錯誤訊息\n .catch((error)=>{\n alert('ER 帳號密碼錯誤!!');\n });\n }\n\n\n render() {\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const h4a={\n fontSize: '1.5rem',\n }\n const buttom={\n margin:'10px',\n fontSize: '20px',\n color: 'green',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n }\n const buttom_change={\n margin:'10px',\n fontSize: '20px',\n color: 'black',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n \n }\n const li={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n }\n return (\n \n \n 台中榮總_急診室\n 外科部\n 安寧病房\n 切換模式\n \n \n \n \n \n
\n 帳號\n \n \n
\n \n 密碼\n \n \n \n \n \n
\n );\n }\n}\n\nexport default Signin_ER;\n","//下載semantic-ui-react套件,在終端機打上\"npm install semantic-ui-react semantic-ui-css\"\n//使用semantic-ui-react套件裡的List\nimport {List,Dropdown,Menu,Button} from 'semantic-ui-react';\n//下載react-router-dom套件,在終端機打上\"npm i react-router-dom\"\n//使用react-router-dom套件裡的Link\nimport {Link} from 'react-router-dom';\n//引入用npm載下來的React\nimport React from 'react';\n\n//命名一個新function叫做Topics\n//這裡本來是左邊欄,後來變成放在上方欄上\nfunction Topics_ER(){ \n //CSS\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li2={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n backgroundColor:'#333'\n }\n return (\n //關於List請參考:https://react.semantic-ui.com/elements/list/\n \n \n \n 基本資料\n \n \n 出缺勤資料\n \n {/*\n 手錶資料\n */}\n \n 數據分析\n \n {/*\n 分析結果\n */}\n
\n );\n}\n\n//輸出Topics函式\nexport default Topics_ER;\n","import {Menu} from 'semantic-ui-react';\nimport {Link} from 'react-router-dom';\nimport React from 'react';\nimport Topics from \"./components/Topics_ER\";\n\nfunction Headers(){\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const a={\n float: 'right',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n return(\n \n );\n}\nexport default Headers;\n\n","import { useState,useEffect } from \"react\";\nimport axios from \"axios\";\nimport { Link } from \"react-router-dom\";\nimport Headers from '../Headers_ER.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// ref 路徑連到 Month 資料庫\nconst ref = firebase.firestore().collection('Month');\n\nconst MonthList = () => {\n const [months, setMonths] = useState([]);\n useEffect(()=>{\n getMonths();\n }, []);\n \n // 刪除 Month 資料\n const deleteMonth = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n\n // 取得 Month 所有的資料\n const getMonths = async () =>{\n const monthData = [];\n const monthId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n monthId.push(doc.id);\n monthData.push(doc.data());\n });\n for (let i = 0; i < monthData.length; i++){\n ref.doc(monthId[i]).update({\n \"firebaseid\": monthId[i]\n });\n monthData[i].firebaseid = monthId[i];\n }\n setMonths(monthData);\n });\n }\n \n \n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter ={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n 急診室 出缺勤資料
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 輪班班別 | \n 工作時數 | \n 加班時數 | \n 請假天數 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {months.map((Month,index)=> {\n return(\n \n {index + 1} | \n {Month.watchid} | \n {Month.shift} | \n {Month.workhour} | \n {Month.overhour} | \n {Month.leave} | \n {Month.createdTime} | \n {Month.editedTime} | \n \n {' '}\n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default MonthList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n//新增月更資料頁\nclass AddMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Account: \"\", // 帳號\n selectShiftOptions : [], //輪班別\n shift_id: \"\", //輪班_id\n shift_name: '', //輪班_選項\n selectWatchOptions : [], //手錶使用者\n watch_id: '', //手錶使用者_id\n watch_watchid: '', //手錶使用者_選項\n //以下為使用者輸入資料\n watchid:'', //手錶使用者\n shift:'', //輪班\n workhour:'', //工作時數\n overhour:'', //加班時數\n leave: '', //請假天數\n uat:'', // userAccessToken\n }\n }\n\n // 取得手錶使用者\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫得到的資料存進watchoption下拉選單\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別 資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n\n\n // handleChange...(e) 用於儲存變動的變數資料\n handleChangeWatch(e){\n this.setState({ watch_id: e.value, watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n // 找到目前選擇手錶的資料\n if (e.label == watchData[i].watchid) {\n this.setState({ uat: watchData[i].userAccessToken });\n this.setState({ Account: watchData[i].account });\n }\n }\n });\n }\n handleChangeShift(e){\n this.setState({ shift_id: e.value, shift_name: e.label });\n }\n handleChangeWorkhovr(e){\n this.setState({ workhour: e.target.value });\n }\n handleChangeOverhovr(e){\n this.setState({ overhour: e.target.value });\n }\n handleChangeLeave(e){\n this.setState({ leave: e.target.value });\n }\n //將新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n \n if (this.state.watch_watchid == '' || this.state.shift_name == '' || this.state.workhour == '' || this.state.overhour == '' || this.state.leave == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Month').doc().set({\n \"account\": this.state.Account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶編號\n \"shift\":this.state.shift_name, // 輪班別\n \"workhour\":this.state.workhour, // 工作時數\n \"overhour\":this.state.overhour, // 加班天數\n \"leave\": this.state.leave, // 請假天數\n \"firebaseid\": \"\", // firebase id\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n });\n console.log('新增成功');\n }\n }\n //進入頁面自動執行\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增出缺勤資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default AddMonth; //將AddMonth 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n// 修改 月更新資料\nclass EditMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n monthid:\"\",\n selectShiftOptions : [],\n shift_id: \"\",\n shift_name: '',\n selectWatchOptions : [],\n watch_id: '',\n watch_watchid: '',\n workhour:'',\n overhour:'',\n leave:'',\n }\n }\n\n // 取得 其中一筆 月更新資料\n async getMonthById(firebaseid) {\n ref.collection('Month').doc(firebaseid).get().then(items => {\n const data = items.data(); // 所有資料\n\n const watchidvalue = data.watchid; // 手錶資料\n const shiftvalue = data.shift; // 輪班別\n const workhourvalue = data.workhour; // 工作時數\n const overhourvalue = data.overhour; // 加班天數\n const leavevalue = data.leave; // 請假天數\n this.setState({monthid:firebaseid,watch_watchid:watchidvalue,shift_name:shiftvalue,workhour: workhourvalue ,overhour: overhourvalue,leave:leavevalue})\n })\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n // 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n \n handleChangeWatch(e){\n this.setState({watch_id:e.value, watch_watchid:e.label})\n }\n handleChangeShift(e){\n this.setState({shift_id:e.value, shift_name:e.label})\n }\n handleChangeWorkhovr(e){\n this.setState({workhour:e.target.value})\n }\n handleChangeOverhovr(e){\n this.setState({overhour:e.target.value})\n }\n handleChangeLeave(e){\n this.setState({leave:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Month').doc(this.state.monthid).update({\n \"shift\":this.state.shift_name,\n \"workhour\":this.state.workhour,\n \"overhour\":this.state.overhour,\n \"leave\":this.state.leave,\n \"editedTime\": date\n });\n console.log('修改成功');\n }\n\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n this.getMonthById(this.props.match.params.firebaseid)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改出缺勤紀錄
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditMonth;\n","// ! 給護理長看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_ER.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Personal');\n\nconst PersonalList = () => {\n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals();\n },[]);\n\n // 取得所有 基本資料\n // 取得所有 基本資料\n const getPersonals = async () =>{\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n personalsId.push(doc.id);\n personalsData.push(doc.data());\n });\n setPersonals(personalsData);\n });\n };\n\n // 刪除 單筆基本資料\n const deletePersonal = async (account) =>{\n ref.doc(account).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n 急診室 基本資料
\n [手環從No.1號(GarminWatch31)~No.20號(GarminWatch50)為第一梯次第1部分]
\n [手環從No.21號(GarminWatch91)~No.40號(GarminWatch110)為第一梯次第2部分]
\n \n {/* */}\n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 部門(科別) | \n 職稱 | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n // const { account } = this.props.match.params;\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","// ! 給護理師看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nconst PersonalList = (props) => {\n \n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals(props);\n },[]);\n\n // 取得所有 基本資料\n const getPersonals = async (props) => {\n // 取得 Route 傳過來 path 的 :account\n // alert(props.match.params.account);\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n const db = ref.collection('Personal');\n const id = decodeURIComponent(props.match.params.account);\n \n db.get().then(items => {\n items.forEach(doc => {\n if (doc.id === id) {\n db.doc(id).get().then(data => {\n personalsId.push(data.id);\n personalsData.push(data.data());\n setPersonals(personalsData);\n })\n }\n });\n });\n };\n\n // 刪除 單筆基本資料\n // const deletePersonal = async (firebaseid) =>{\n // ref.doc(firebaseid).delete().then(() => {\n // alert('刪除成功!');\n // });\n // window.setTimeout(( () => window.location.reload() ), 1250);\n // }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n 基本資料
\n \n \n \n
\n \n \n {/* 基本資料
\n */}\n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 職稱 | \n 部門(科別) | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n {/* */}\n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getAccount(decodeURIComponent(this.props.match.params.account))\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","import { useState,useEffect } from \"react\";\nimport { Link } from \"react-router-dom\";\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nimport Headers from '../Headers_ER.js';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Watch');\nconst WatchList = () => {\n const [watch, setWatch] = useState([]);\n useEffect(()=>{\n getWatch();\n }, []);\n \n const deleteWatch = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n console.log('delete ',firebaseid,' successful');\n });\n window.setTimeout(( () => window.location.reload() ), 1300);\n }\n const getWatch = async () =>{\n // const response = await axios.get('http://localhost:5000/watch');\n // const resData = response.data; // 包含了 firebaseid 與 \"資料\" 內容\n // setWatch(resData);\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n // console.log(watchData[i]);\n }\n setWatch(watchData);\n });\n }\n\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n Garmin Watch 手錶
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 帳號 | \n 密碼 | \n userAccessToken | \n userAccessTokenSecret | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {watch.map((Watch,index)=> {\n return(\n \n {Watch.id} | \n {Watch.watchid} | \n {Watch.account} | \n {Watch.password} | \n {Watch.userAccessToken} | \n {Watch.userAccessTokenSecret} | \n {Watch.createdTime} | \n {Watch.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default WatchList;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\n//新增手錶頁(僅後端使用者可讀寫)\nclass AddWatch extends Component {\n constructor(props) {\n super(props)\n this.state = {\n id: '',\n watchid: 'GarminWatch',\n account: '',\n password: '',\n userAccessToken: '',\n userAccessTokenSecret: '',\n maxid: '',\n };\n }\n\n async getMaxWatchNum() {\n const watchNumData = [];\n // const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('MaxWatchNum').doc('MaxWatchId').get().then(items => {\n this.setState({ maxid: items.data().maxid });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n };\n \n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeID(e){\n this.setState({ id: e.target.value });\n // this.handleSubmit = this.handleSubmit.bind(this);\n };\n handleChangeAccount(e){\n this.setState({ account: e.target.value });\n };\n handleChangeWatchId(e){\n this.setState({ watchid: e.target.value });\n }\n handleChangePassword(e){\n this.setState({ password: e.target.value });\n }\n handleChangeUserAccessToken(e){\n this.setState({ userAccessToken: e.target.value });\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({ userAccessTokenSecret: e.target.value });\n }\n\n\n handleSubmit(e){\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if (this.state.id == '' || this.state.watchid == 'GarminWatch' || this.state.account == '' || this.state.password == '' || this.state.userAccessToken == '' || this.state.userAccessTokenSecret == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Watch').doc().set({\n \"id\": this.state.id,\n \"watchid\": this.state.watchid, // 手錶編號\n \"account\": this.state.account, // 輪班別\n \"password\": this.state.password, // 工作時數\n \"userAccessToken\": this.state.userAccessToken, // 加班天數\n \"userAccessTokenSecret\": this.state.userAccessTokenSecret, // 請假天數\n \"firebaseid\": \"\",\n \"createdTime\": date\n });\n console.log('新增成功');\n ref.collection('MaxWatchNum').doc('MaxWatchId').set({\n \"maxid\": Number(this.state.id)\n });\n }\n }\n\n componentDidMount(){\n this.getMaxWatchNum()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增手錶資料
\n \n 目前手錶數量 : {this.state.maxid}
\n
\n \n \n \n
\n );\n };\n \n};\nexport default AddWatch;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nclass EditWatch extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Watchsid:\"\",\n watchid:\"\",\n account:\"\",\n password:\"\",\n useraccesstoken:\"\",\n useraccesstokensecret:\"\",\n }\n }\n async getWatchById(firebaseid){\n\n ref.collection('Watch').doc(firebaseid).get().then(items => {\n const data = items.data();\n const watchidvalue = data.watchid;\n const accountvalue = data.account;\n const passwordvalue = data.password;\n const useraccesstokenvalue = data.userAccessToken;\n const useraccesstokensecretvalue = data.userAccessTokenSecret;\n this.setState({ Watchsid: firebaseid, watchid: watchidvalue, account: accountvalue, password: passwordvalue, useraccesstoken: useraccesstokenvalue, useraccesstokensecret: useraccesstokensecretvalue });\n });\n\n \n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangeAccount(e){\n this.setState({ account: e.target.value })\n // this.handleSubmit = this.handleSubmit.bind(this);\n }\n handleChangePassword(e){\n this.setState({password:e.target.value})\n }\n handleChangeUserAccessToken(e){\n this.setState({useraccesstoken:e.target.value})\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({useraccesstokensecret:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Watch').doc(this.state.Watchsid).update({\n \"account\":this.state.account,\n \"password\":this.state.password,\n \"userAccessToken\":this.state.useraccesstoken,\n \"userAccessTokenSecret\":this.state.useraccesstokensecret,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n componentDidMount(){\n const { firebaseid } = this.props.match.params;\n this.getWatchById(firebaseid)\n }\n\n \n\n render() {\n // console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改手錶資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditWatch;\n","// 數據分析 - 心率指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\nimport axios from \"axios\";\n// bootstrap\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class HeartRateAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n HeartRateData:[], //此陣列存放完整的心率資料\n selectCalendarOptions: [], //此陣列存放日期陣列\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n // 取得日期\n async getCalendarOptions(uat) {\n console.log(uat);\n const response = await axios.get('https://imow.nutc.edu.tw:8008/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log('+++' + calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n \n // 取得 心率 資料\n async getHeartRateData(uat, watchid, calendar) {\n console.log(uat, watchid, calendar);\n // 到後端抓取 心率 的資料\n const response = await axios.post('https://imow.nutc.edu.tw:8008/heartrateanalyze', { uat, watchid, calendar });\n // const response = await axios.post('https://localhost:8080/heartrateanalyze', { uat, watchid, calendar });\n // 如果沒有資料\n if (response.data == '') {\n this.setState({ HeartRateData: response.data }); //將內部陣列存入外層陣列\n console.log(response.data);\n // 跳出通知\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({HeartRateData: response.data}); //將內部陣列存入外層陣列\n }\n }\n\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n this.getCalendarOptions(e.value);\n \n }\n\n handleChangeCalendar(e) {\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n this.getHeartRateData(this.state.watch_UAT,this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 心率指數(秒/bmp)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n \n \n
\n \n < 60:心跳過慢 \n 60 ~ 100:心跳正常 \n > 100:心跳過快 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Heart Rate | \n Heart Rate Level | \n
\n \n \n {this.state.HeartRateData.map((HeartRate, index) => {\n if (HeartRate.HeartRateLevel == '過快') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '過慢') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '正常') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class StressAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n StressData:[], //完整的 壓力 資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n // ! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8008/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n // ! 取得 Stress 所有資料,uat = userAccessToken\n async getStressOptions(uat, watchid, calendar){\n console.log(uat, watchid, calendar);\n try{\n const response = await axios.post('https://imow.nutc.edu.tw:8008/stressanalyze', {uat, watchid, calendar});\n // const response = await axios.post('https://localhost:8080/stressanalyze', {uat, watchid, calendar});\n if(response.data == ''){\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getStressOptions\n this.getStressOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n { this.state.calendar_Date } 壓力指數
\n \n \n \n \n \n \n \n \n \n \n
\n \n -2:運動量過大 \n -1:無資料 \n 1 ~ 25:休息 \n 26 ~ 50:輕度壓力 \n 51 ~ 75:中度壓力 \n 76 ~ 100:重度壓力 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Stress | \n Stress Level | \n
\n \n \n {this.state.StressData.map((Stress, index) => {\n if (Stress.Stress == -2) {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '休息') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '輕度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '中度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '重度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 睡眠狀態\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class SleepsAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '', // 手錶 UserAccessToken\n watch_id: '', // 手錶編號 GarminWatch01\n SleepData:[], //完整的睡眠資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8008/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n //! 取得 Sleeps 的所有資料,uat = userAccessToken\n async getSleepsOptions(uat, watchid , calendar) {\n console.log(uat, watchid, calendar);\n try{\n // const response = await axios.post('https://localhost:8080/sleepsanalyze',{uat, watchid, calendar});\n const response = await axios.post('https://imow.nutc.edu.tw:8008/sleepsanalyze',{uat, watchid, calendar});\n if (response.data == '') {\n console.log(response.data);\n this.setState({ SleepData: response.data }); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({SleepData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n // 改變 this.state.watch 的資料\n handleChangeWatch(e) {\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n \n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getSleepsOptions\n this.getSleepsOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 睡眠狀態(秒)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n
\n \n 1:深層睡眠 \n 2:淺層睡眠 \n 3:REM 快速動眼期 \n 4:清醒 \n
\n 資料顯示
\n {/* 表格 */}\n \n \n \n NO | \n User | \n Calendar | \n Time | \n ID | \n SleepType | \n
\n \n \n {this.state.SleepData.map((Sleep, index) => {\n if (Sleep.sleepType == '清醒') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == 'REM 快速動眼期') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '淺層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '深層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nimport HeartRateAnalyze_ER from './Analyze_HeartRate_ER.js';\nimport StressAnalyze_ER from './Analyze_Stress_ER.js';\nimport SleepAnalyze_ER from './Analyze_Sleep_ER.js';\n// import 'bootstrap/dist/css/bootstrap.min.css';\n\n\nconst ref = firebase.firestore();\n\nexport default class Analyze extends PureComponent {\n\n constructor(props){\n super(props)\n this.state = ({gender : ''})\n this.changeGender = this.changeGender.bind(this)\n }\n //宣告事件時傳入參數event取得觸發事件變數\n changeGender(event){\n //將觸發事件的DOM從event內的target屬性取出\n // console.log(event.target)\n //指定選擇的選項給state.gender\n this.setState({gender:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.gender變動為:${this.state.gender}`)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n }\n const margin={\n margin: '10px',\n }\n const h5={\n fontSize: '1.25rem',\n }\n const buttom={\n fontSize: '20px',\n color: 'green',\n margin: '10px',\n }\n\n //在render()中宣告一個text變數\n let text;\n //之後去判斷使用者選擇的是哪個\n if(this.state.gender === \"heartrate\")\n //用變數儲存組件\n text = \n else if(this.state.gender === \"stress\")\n text = \n else if(this.state.gender === \"sleep\")\n text = \n else\n text = \"\"\n\n return (\n \n \n \n \n \n \n
\n {/*\n \n */}\n {/*下拉式選單*/}\n \n {/*上面所設的text變數呈現在這裡*/}\n {text}\n \n \n \n \n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_ER.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\n// import { Image } from 'semantic-ui-react'\nimport A from '../Picture/A.png';\nimport B from '../Picture/B.png';\n\n\n\n\n\nexport default class PictureBox extends PureComponent {\n \n constructor(props){\n super(props)\n this.state = ({Picture : ''})\n this.changePicture = this.changePicture.bind(this)\n }\n changePicture(event){\n \n this.setState({Picture:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.Picture變動為:${this.state.Picture}`)\n }\n \n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n const h5={\n fontSize: '1.25rem',\n }\n let text\n if(this.state.gender === \"Age\")\n text=< img src={A} alt=\"A\"/>\n else if(this.state.gender === \"Banbie\")\n text = ''\n else if(this.state.gender === \"Salary\")\n text = ''\n else\n text = \"\"\n\n return (\n \n
\n
\n \n \n \n \n \n \n \n \n
\n 圖片展示
\n \n {text}\n
\n
\n \n \n \n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\r\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\r\nimport Select from 'react-select';\r\nimport { Link } from 'react-router-dom';\r\nimport Headers from '../Headers_ER.js';\r\nimport firebase from '../config/database_ER.js';\r\nimport 'firebase/compat/firestore';\r\nimport HeartRateAnalyze from './Analyze_HeartRate_ER.js';\r\nimport StressAnalyze from './Analyze_Stress_ER.js';\r\nimport SleepAnalyze from './Analyze_Sleep_ER.js';\r\nimport PictureBox from './Picture_Box_ER.js';\r\n// import 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\n\r\nconst ref = firebase.firestore();\r\n\r\nexport default class Picture extends PureComponent {\r\n\r\n constructor(props){\r\n super(props)\r\n this.state = ({gender : ''})\r\n this.changeGender = this.changeGender.bind(this)\r\n }\r\n //宣告事件時傳入參數event取得觸發事件變數\r\n changeGender(event){\r\n //將觸發事件的DOM從event內的target屬性取出\r\n // console.log(event.target)\r\n //指定選擇的選項給state.gender\r\n this.setState({gender:event.target.value})\r\n }\r\n componentDidUpdate(){\r\n console.log(`已將state.gender變動為:${this.state.gender}`)\r\n }\r\n\r\n render() {\r\n const h2={\r\n fontSize: '2rem',\r\n fontWeight: 'bold',\r\n }\r\n const line={\r\n height: '1px',\r\n borderTop: 'solid gray 1px',\r\n }\r\n const margin={\r\n margin: '10px',\r\n }\r\n const h5={\r\n fontSize: '1.25rem',\r\n }\r\n const buttom={\r\n fontSize: '20px',\r\n color: 'green',\r\n margin: '10px',\r\n }\r\n\r\n //在render()中宣告一個text變數\r\n let text;\r\n //之後去判斷使用者選擇的是哪個\r\n if(this.state.gender === \"PictureBox\")\r\n //用變數儲存組件\r\n text = \r\n else if(this.state.gender === \"stress\")\r\n text = \r\n else if(this.state.gender === \"sleep\")\r\n text = \r\n else\r\n text = \"\"\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {/*\r\n \r\n */}\r\n {/*下拉式選單*/}\r\n \r\n {/*上面所設的text變數呈現在這裡*/}\r\n {text}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n"," import {BrowserRouter,Switch,Route} from 'react-router-dom';\n import Signin_ER from \"./pages_ER/Signin_ER.js\";\n// 月更新資料\n import MonthList_ER from \"./pages_ER/MonthList_ER.js\";\n import AddMonth_ER from \"./pages_ER/AddMonth_ER.js\";\n import EditMonth_ER from \"./pages_ER/EditMonth_ER\";\n// 基本資料\n// 護理長\n import PersonalDeveloper_ER from './pages_ER/PersonalDeveloper_ER.js';\n import AddPersonalDeveloper_ER from './pages_ER/AddPersonalDeveloper_ER.js';\n import EditPersonalDeveloper_ER from './pages_ER/EditPersonalDeveloper_ER.js';\n// 護理師\n import Personal_ER from './pages_ER/Personal_ER.js';\n import AddPersonal_ER from './pages_ER/AddPersonal_ER.js';\n import EditPersonal_ER from './pages_ER/EditPersonal_ER.js';\n// 手錶資料\n import WatchList_ER from './pages_ER/WatchList_ER.js';\n import AddWatch_ER from \"./pages_ER/AddWatch_ER.js\";\n import EditWatch_ER from \"./pages_ER/EditWatch_ER.js\";\n// 數據分析\n import Analyze_ER from './pages_ER/Analyze_ER.js';\n import AnalyzeHeartRate_ER from './pages_ER/Analyze_HeartRate_ER.js';\n import AnalyzeSleep_ER from './pages_ER/Analyze_Sleep_ER.js';\n import AnalyzeStress_ER from './pages_ER/Analyze_Stress_ER.js';\n import Picture_ER from './pages_ER/Picture_ER.js';\n import PictureBox_ER from './pages_ER/Picture_Box_ER.js';\n\nfunction App_ER() {\n return (\n \n \n {/* 登入 */}\n \n \n \n\n {/* 月更新資料 */}\n \n \n \n \n \n \n \n \n\n {/* 基本資料 */}\n {/* 護理長看到畫面 */}\n \n \n \n \n \n \n \n\n {/* 護理師看到畫面 */}\n \n \n \n\n {/* 數據分析 */}\n \n \n \n \n \n \n {/* 心率指數 */}\n \n \n \n {/* 睡眠狀態 */}\n \n \n \n {/* 壓力指數 */}\n \n \n \n \n \n \n \n {/* 手錶資料 */}\n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App_ER;\n","import firebase_AR from 'firebase/compat/app';\n\nconst firebaseConfig_AR = {\n apiKey: \"AIzaSyCTt9K-SvRbMn5g1QN_Uhy7nhgYZcLOKg4\",\n authDomain: \"firevbase-webrr.firebaseapp.com\",\n databaseURL: \"https://firevbase-webrr-default-rtdb.firebaseio.com\",\n projectId: \"firevbase-webrr\",\n storageBucket: \"firevbase-webrr.appspot.com\",\n messagingSenderId: \"802050092714\",\n appId: \"1:802050092714:web:eb3991b105f20036442ad3\",\n measurementId: \"G-G1L64FX1X0\"\n};\n\nconst FirebaseAR = firebase_AR.initializeApp(firebaseConfig_AR,'another');\n\n\nexport default FirebaseAR;\n","import React, { Component } from 'react';\n// bootstrap\nimport { Form, Button, Container, Navbar, Nav,Dropdown } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport {Link} from 'react-router-dom';\n\n// 連接 Firebase\nimport firebaseAR from '../config/database_AR.js';\nimport 'firebase/compat/auth';\n\n\nclass Signin extends Component{\n constructor(props){\n super(props)\n this.state = {\n account : '',\n password :''\n }\n }\n\n handleChangeAccount(e){\n this.setState({account:e.target.value})\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangePassword(e){\n this.setState({password:e.target.value})\n }\n handlechange()\n {\n window.location.replace(\"/\")\n } \n handlechangeER()\n {\n window.location.replace(\"/er\")\n }\n handlechangeNAR()\n {\n window.location.replace(\"/nar\")\n }\n handleSubmit() {\n firebaseAR\n .auth()\n .signInWithEmailAndPassword(this.state.account, this.state.password)\n .then(() => {\n // 判斷如果是護理長或後端管理者登入的帳號 eroverworkdeveloper@gmail.com,則畫面跳轉到路徑 /er/personalDeveloper 檔案\n if (this.state.account == 'aroverworkdeveloper@gmail.com') {\n alert('AR Developer登入');\n window.location.replace(\"/ar/personalDeveloper\");\n }\n // 如果是護理師登入的帳號,則畫面跳轉到路徑 /er/personal/(每位護理師不同的帳號)\n else {\n const uri = \"/ar/personal/\" + encodeURIComponent(this.state.account);\n alert(uri);\n window.location.replace(uri);\n }\n })\n // 如果輸入的帳號及密碼沒有在 Firebase 的 Authentication 中時,跳出錯誤訊息\n .catch((error)=>{\n alert('AR 帳號密碼錯誤!!');\n });\n }\n\n\n render() {\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const h4a={\n fontSize: '1.5rem',\n }\n const buttom={\n margin:'10px',\n fontSize: '20px',\n color: 'green',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n }\n const buttom_change={\n margin:'10px',\n fontSize: '20px',\n color: 'black',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n \n }\n const li={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n }\n return (\n \n \n 台中榮總_安寧病房\n 外科部\n 急診室\n 切換模式\n \n \n \n \n \n
\n 帳號\n \n \n
\n \n 密碼\n \n \n \n \n \n
\n );\n }\n}\n\nexport default Signin;\n","//下載semantic-ui-react套件,在終端機打上\"npm install semantic-ui-react semantic-ui-css\"\n//使用semantic-ui-react套件裡的List\nimport {List,Dropdown,Menu,Button} from 'semantic-ui-react';\n//下載react-router-dom套件,在終端機打上\"npm i react-router-dom\"\n//使用react-router-dom套件裡的Link\nimport {Link} from 'react-router-dom';\n//引入用npm載下來的React\nimport React from 'react';\n\n//命名一個新function叫做Topics\n//這裡本來是左邊欄,後來變成放在上方欄上\nfunction Topics_AR(){ \n //CSS\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li2={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n backgroundColor:'#333'\n }\n return (\n //關於List請參考:https://react.semantic-ui.com/elements/list/\n \n \n \n 基本資料\n \n \n 出缺勤資料\n \n {/*\n 手錶資料\n */}\n \n 數據分析\n \n {/*\n 分析結果\n */}\n
\n );\n}\n\n//輸出Topics函式\nexport default Topics_AR;\n","import {Menu} from 'semantic-ui-react';\nimport {Link} from 'react-router-dom';\nimport React from 'react';\nimport Topics from \"./components/Topics_AR\";\n\nfunction Headers(){\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const a={\n float: 'right',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n return(\n \n );\n}\nexport default Headers;\n\n","import { useState,useEffect } from \"react\";\nimport axios from \"axios\";\nimport { Link } from \"react-router-dom\";\nimport Headers from '../Headers_AR.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// ref 路徑連到 Month 資料庫\nconst ref = firebase.firestore().collection('Month');\n\nconst MonthList = () => {\n const [months, setMonths] = useState([]);\n useEffect(()=>{\n getMonths();\n }, []);\n \n // 刪除 Month 資料\n const deleteMonth = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n\n // 取得 Month 所有的資料\n const getMonths = async () =>{\n const monthData = [];\n const monthId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n monthId.push(doc.id);\n monthData.push(doc.data());\n });\n for (let i = 0; i < monthData.length; i++){\n ref.doc(monthId[i]).update({\n \"firebaseid\": monthId[i]\n });\n monthData[i].firebaseid = monthId[i];\n }\n setMonths(monthData);\n });\n }\n \n \n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter ={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n 安寧病房 出缺勤資料
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 輪班班別 | \n 工作時數 | \n 加班時數 | \n 請假天數 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {months.map((Month,index)=> {\n return(\n \n {index + 1} | \n {Month.watchid} | \n {Month.shift} | \n {Month.workhour} | \n {Month.overhour} | \n {Month.leave} | \n {Month.createdTime} | \n {Month.editedTime} | \n \n {' '}\n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default MonthList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n//新增月更資料頁\nclass AddMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Account: \"\", // 帳號\n selectShiftOptions : [], //輪班別\n shift_id: \"\", //輪班_id\n shift_name: '', //輪班_選項\n selectWatchOptions : [], //手錶使用者\n watch_id: '', //手錶使用者_id\n watch_watchid: '', //手錶使用者_選項\n //以下為使用者輸入資料\n watchid:'', //手錶使用者\n shift:'', //輪班\n workhour:'', //工作時數\n overhour:'', //加班時數\n leave: '', //請假天數\n uat:'', // userAccessToken\n }\n }\n\n // 取得手錶使用者\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫得到的資料存進watchoption下拉選單\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別 資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n\n\n // handleChange...(e) 用於儲存變動的變數資料\n handleChangeWatch(e){\n this.setState({ watch_id: e.value, watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n // 找到目前選擇手錶的資料\n if (e.label == watchData[i].watchid) {\n this.setState({ uat: watchData[i].userAccessToken });\n this.setState({ Account: watchData[i].account });\n }\n }\n });\n }\n handleChangeShift(e){\n this.setState({ shift_id: e.value, shift_name: e.label });\n }\n handleChangeWorkhovr(e){\n this.setState({ workhour: e.target.value });\n }\n handleChangeOverhovr(e){\n this.setState({ overhour: e.target.value });\n }\n handleChangeLeave(e){\n this.setState({ leave: e.target.value });\n }\n //將新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n \n if (this.state.watch_watchid == '' || this.state.shift_name == '' || this.state.workhour == '' || this.state.overhour == '' || this.state.leave == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Month').doc().set({\n \"account\": this.state.Account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶編號\n \"shift\":this.state.shift_name, // 輪班別\n \"workhour\":this.state.workhour, // 工作時數\n \"overhour\":this.state.overhour, // 加班天數\n \"leave\": this.state.leave, // 請假天數\n \"firebaseid\": \"\", // firebase id\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n });\n console.log('新增成功');\n }\n }\n //進入頁面自動執行\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增出缺勤資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default AddMonth; //將AddMonth 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n// 修改 月更新資料\nclass EditMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n monthid:\"\",\n selectShiftOptions : [],\n shift_id: \"\",\n shift_name: '',\n selectWatchOptions : [],\n watch_id: '',\n watch_watchid: '',\n workhour:'',\n overhour:'',\n leave:'',\n }\n }\n\n // 取得 其中一筆 月更新資料\n async getMonthById(firebaseid) {\n ref.collection('Month').doc(firebaseid).get().then(items => {\n const data = items.data(); // 所有資料\n\n const watchidvalue = data.watchid; // 手錶資料\n const shiftvalue = data.shift; // 輪班別\n const workhourvalue = data.workhour; // 工作時數\n const overhourvalue = data.overhour; // 加班天數\n const leavevalue = data.leave; // 請假天數\n this.setState({monthid:firebaseid,watch_watchid:watchidvalue,shift_name:shiftvalue,workhour: workhourvalue ,overhour: overhourvalue,leave:leavevalue})\n })\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n // 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n \n handleChangeWatch(e){\n this.setState({watch_id:e.value, watch_watchid:e.label})\n }\n handleChangeShift(e){\n this.setState({shift_id:e.value, shift_name:e.label})\n }\n handleChangeWorkhovr(e){\n this.setState({workhour:e.target.value})\n }\n handleChangeOverhovr(e){\n this.setState({overhour:e.target.value})\n }\n handleChangeLeave(e){\n this.setState({leave:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Month').doc(this.state.monthid).update({\n \"shift\":this.state.shift_name,\n \"workhour\":this.state.workhour,\n \"overhour\":this.state.overhour,\n \"leave\":this.state.leave,\n \"editedTime\": date\n });\n console.log('修改成功');\n }\n\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n this.getMonthById(this.props.match.params.firebaseid)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改出缺勤紀錄
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditMonth;\n","// ! 給護理長看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_AR.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Personal');\n\nconst PersonalList = () => {\n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals();\n },[]);\n\n // 取得所有 基本資料\n // 取得所有 基本資料\n const getPersonals = async () =>{\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n personalsId.push(doc.id);\n personalsData.push(doc.data());\n });\n setPersonals(personalsData);\n });\n };\n\n // 刪除 單筆基本資料\n const deletePersonal = async (account) =>{\n ref.doc(account).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n 安寧病房 基本資料
\n [手環從No.1號(GarminWatch31)~No.20號(GarminWatch50)為第一梯次第1部分]
\n [手環從No.21號(GarminWatch91)~No.40號(GarminWatch110)為第一梯次第2部分]
\n \n {/* */}\n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 部門(科別) | \n 職稱 | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal_AR extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n // const { account } = this.props.match.params;\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","// ! 給護理師看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nconst PersonalList = (props) => {\n \n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals(props);\n },[]);\n\n // 取得所有 基本資料\n const getPersonals = async (props) => {\n // 取得 Route 傳過來 path 的 :account\n // alert(props.match.params.account);\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n const db = ref.collection('Personal');\n const id = decodeURIComponent(props.match.params.account);\n \n db.get().then(items => {\n items.forEach(doc => {\n if (doc.id === id) {\n db.doc(id).get().then(data => {\n personalsId.push(data.id);\n personalsData.push(data.data());\n setPersonals(personalsData);\n })\n }\n });\n });\n };\n\n // 刪除 單筆基本資料\n // const deletePersonal = async (firebaseid) =>{\n // ref.doc(firebaseid).delete().then(() => {\n // alert('刪除成功!');\n // });\n // window.setTimeout(( () => window.location.reload() ), 1250);\n // }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n {/* 基本資料
\n \n */}\n \n
\n \n \n 基本資料
\n \n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 職稱 | \n 部門(科別) | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n {/* */}\n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getAccount(decodeURIComponent(this.props.match.params.account))\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal_AR extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","import { useState,useEffect } from \"react\";\nimport { Link } from \"react-router-dom\";\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nimport Headers from '../Headers_AR.js';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Watch');\nconst WatchList = () => {\n const [watch, setWatch] = useState([]);\n useEffect(()=>{\n getWatch();\n }, []);\n \n const deleteWatch = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n console.log('delete ',firebaseid,' successful');\n });\n window.setTimeout(( () => window.location.reload() ), 1300);\n }\n const getWatch = async () =>{\n // const response = await axios.get('http://localhost:5000/watch');\n // const resData = response.data; // 包含了 firebaseid 與 \"資料\" 內容\n // setWatch(resData);\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n // console.log(watchData[i]);\n }\n setWatch(watchData);\n });\n }\n\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n Garmin Watch 手錶
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 帳號 | \n 密碼 | \n userAccessToken | \n userAccessTokenSecret | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {watch.map((Watch,index)=> {\n return(\n \n {Watch.id} | \n {Watch.watchid} | \n {Watch.account} | \n {Watch.password} | \n {Watch.userAccessToken} | \n {Watch.userAccessTokenSecret} | \n {Watch.createdTime} | \n {Watch.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default WatchList;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\n//新增手錶頁(僅後端使用者可讀寫)\nclass AddWatch extends Component {\n constructor(props) {\n super(props)\n this.state = {\n id: '',\n watchid: 'GarminWatch',\n account: '',\n password: '',\n userAccessToken: '',\n userAccessTokenSecret: '',\n maxid: '',\n };\n }\n\n async getMaxWatchNum() {\n const watchNumData = [];\n // const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('MaxWatchNum').doc('MaxWatchId').get().then(items => {\n this.setState({ maxid: items.data().maxid });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n };\n \n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeID(e){\n this.setState({ id: e.target.value });\n // this.handleSubmit = this.handleSubmit.bind(this);\n };\n handleChangeAccount(e){\n this.setState({ account: e.target.value });\n };\n handleChangeWatchId(e){\n this.setState({ watchid: e.target.value });\n }\n handleChangePassword(e){\n this.setState({ password: e.target.value });\n }\n handleChangeUserAccessToken(e){\n this.setState({ userAccessToken: e.target.value });\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({ userAccessTokenSecret: e.target.value });\n }\n\n\n handleSubmit(e){\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if (this.state.id == '' || this.state.watchid == 'GarminWatch' || this.state.account == '' || this.state.password == '' || this.state.userAccessToken == '' || this.state.userAccessTokenSecret == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Watch').doc().set({\n \"id\": this.state.id,\n \"watchid\": this.state.watchid, // 手錶編號\n \"account\": this.state.account, // 輪班別\n \"password\": this.state.password, // 工作時數\n \"userAccessToken\": this.state.userAccessToken, // 加班天數\n \"userAccessTokenSecret\": this.state.userAccessTokenSecret, // 請假天數\n \"firebaseid\": \"\",\n \"createdTime\": date\n });\n console.log('新增成功');\n ref.collection('MaxWatchNum').doc('MaxWatchId').set({\n \"maxid\": Number(this.state.id)\n });\n }\n }\n\n componentDidMount(){\n this.getMaxWatchNum()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增手錶資料
\n \n 目前手錶數量 : {this.state.maxid}
\n
\n \n \n \n
\n );\n };\n \n};\nexport default AddWatch;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nclass EditWatch extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Watchsid:\"\",\n watchid:\"\",\n account:\"\",\n password:\"\",\n useraccesstoken:\"\",\n useraccesstokensecret:\"\",\n }\n }\n async getWatchById(firebaseid){\n\n ref.collection('Watch').doc(firebaseid).get().then(items => {\n const data = items.data();\n const watchidvalue = data.watchid;\n const accountvalue = data.account;\n const passwordvalue = data.password;\n const useraccesstokenvalue = data.userAccessToken;\n const useraccesstokensecretvalue = data.userAccessTokenSecret;\n this.setState({ Watchsid: firebaseid, watchid: watchidvalue, account: accountvalue, password: passwordvalue, useraccesstoken: useraccesstokenvalue, useraccesstokensecret: useraccesstokensecretvalue });\n });\n\n \n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangeAccount(e){\n this.setState({ account: e.target.value })\n // this.handleSubmit = this.handleSubmit.bind(this);\n }\n handleChangePassword(e){\n this.setState({password:e.target.value})\n }\n handleChangeUserAccessToken(e){\n this.setState({useraccesstoken:e.target.value})\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({useraccesstokensecret:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Watch').doc(this.state.Watchsid).update({\n \"account\":this.state.account,\n \"password\":this.state.password,\n \"userAccessToken\":this.state.useraccesstoken,\n \"userAccessTokenSecret\":this.state.useraccesstokensecret,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n componentDidMount(){\n const { firebaseid } = this.props.match.params;\n this.getWatchById(firebaseid)\n }\n\n \n\n render() {\n // console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改手錶資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditWatch;\n","// 數據分析 - 心率指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\nimport axios from \"axios\";\n// bootstrap\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class HeartRateAnalyze_AR extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n HeartRateData:[], //此陣列存放完整的心率資料\n selectCalendarOptions: [], //此陣列存放日期陣列\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n // 取得日期\n async getCalendarOptions(uat) {\n console.log(uat);\n const response = await axios.get('https://imow.nutc.edu.tw:8090/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log('+++' + calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n \n // 取得 心率 資料\n async getHeartRateData(uat, watchid, calendar) {\n console.log(uat, watchid, calendar);\n // 到後端抓取 心率 的資料\n const response = await axios.post('https://imow.nutc.edu.tw:8090/heartrateanalyze', { uat, watchid, calendar });\n // const response = await axios.post('https://localhost:8080/heartrateanalyze', { uat, watchid, calendar });\n // 如果沒有資料\n if (response.data == '') {\n this.setState({ HeartRateData: response.data }); //將內部陣列存入外層陣列\n console.log(response.data);\n // 跳出通知\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({HeartRateData: response.data}); //將內部陣列存入外層陣列\n }\n }\n\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n this.getCalendarOptions(e.value);\n \n }\n\n handleChangeCalendar(e) {\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n this.getHeartRateData(this.state.watch_UAT,this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 心率指數(秒/bmp)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n \n \n
\n \n < 60:心跳過慢 \n 60 ~ 100:心跳正常 \n > 100:心跳過快 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Heart Rate | \n Heart Rate Level | \n
\n \n \n {this.state.HeartRateData.map((HeartRate, index) => {\n if (HeartRate.HeartRateLevel == '過快') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '過慢') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '正常') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class StressAnalyze_AR extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n StressData:[], //完整的 壓力 資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n // ! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8090/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n // ! 取得 Stress 所有資料,uat = userAccessToken\n async getStressOptions(uat, watchid, calendar){\n console.log(uat, watchid, calendar);\n try{\n const response = await axios.post('https://imow.nutc.edu.tw:8090/stressanalyze', {uat, watchid, calendar});\n // const response = await axios.post('https://localhost:8080/stressanalyze', {uat, watchid, calendar});\n if(response.data == ''){\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getStressOptions\n this.getStressOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n { this.state.calendar_Date } 壓力指數
\n \n \n \n \n \n \n \n \n \n \n
\n \n -2:運動量過大 \n -1:無資料 \n 1 ~ 25:休息 \n 26 ~ 50:輕度壓力 \n 51 ~ 75:中度壓力 \n 76 ~ 100:重度壓力 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Stress | \n Stress Level | \n
\n \n \n {this.state.StressData.map((Stress, index) => {\n if (Stress.Stress == -2) {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '休息') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '輕度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '中度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '重度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 睡眠狀態\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class SleepsAnalyze_AR extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '', // 手錶 UserAccessToken\n watch_id: '', // 手錶編號 GarminWatch01\n SleepData:[], //完整的睡眠資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8090/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n //! 取得 Sleeps 的所有資料,uat = userAccessToken\n async getSleepsOptions(uat, watchid , calendar) {\n console.log(uat, watchid, calendar);\n try{\n // const response = await axios.post('https://localhost:8080/sleepsanalyze',{uat, watchid, calendar});\n const response = await axios.post('https://imow.nutc.edu.tw:8090/sleepsanalyze',{uat, watchid, calendar});\n if (response.data == '') {\n console.log(response.data);\n this.setState({ SleepData: response.data }); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({SleepData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n // 改變 this.state.watch 的資料\n handleChangeWatch(e) {\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n \n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getSleepsOptions\n this.getSleepsOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 睡眠狀態(秒)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n
\n \n 1:深層睡眠 \n 2:淺層睡眠 \n 3:REM 快速動眼期 \n 4:清醒 \n
\n 資料顯示
\n {/* 表格 */}\n \n \n \n NO | \n User | \n Calendar | \n Time | \n ID | \n SleepType | \n
\n \n \n {this.state.SleepData.map((Sleep, index) => {\n if (Sleep.sleepType == '清醒') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == 'REM 快速動眼期') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '淺層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '深層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nimport HeartRateAnalyze_AR from './Analyze_HeartRate_AR.js';\nimport StressAnalyze_AR from './Analyze_Stress_AR.js';\nimport SleepAnalyze_AR from './Analyze_Sleep_AR.js';\n// import 'bootstrap/dist/css/bootstrap.min.css';\n\n\nconst ref = firebase.firestore();\n\nexport default class Analyze_AR extends PureComponent {\n\n constructor(props){\n super(props)\n this.state = ({gender : ''})\n this.changeGender = this.changeGender.bind(this)\n }\n //宣告事件時傳入參數event取得觸發事件變數\n changeGender(event){\n //將觸發事件的DOM從event內的target屬性取出\n // console.log(event.target)\n //指定選擇的選項給state.gender\n this.setState({gender:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.gender變動為:${this.state.gender}`)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n }\n const margin={\n margin: '10px',\n }\n const h5={\n fontSize: '1.25rem',\n }\n const buttom={\n fontSize: '20px',\n color: 'green',\n margin: '10px',\n }\n\n //在render()中宣告一個text變數\n let text;\n //之後去判斷使用者選擇的是哪個\n if(this.state.gender === \"heartrate\")\n //用變數儲存組件\n text = \n else if(this.state.gender === \"stress\")\n text = \n else if(this.state.gender === \"sleep\")\n text = \n else\n text = \"\"\n\n return (\n \n \n \n \n \n \n
\n {/*\n \n */}\n {/*下拉式選單*/}\n \n {/*上面所設的text變數呈現在這裡*/}\n {text}\n \n \n \n \n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_AR.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\n// import { Image } from 'semantic-ui-react'\nimport A from '../Picture/A.png';\nimport B from '../Picture/B.png';\n\n\n\n\n\nexport default class PictureBox_AR extends PureComponent {\n \n constructor(props){\n super(props)\n this.state = ({Picture : ''})\n this.changePicture = this.changePicture.bind(this)\n }\n changePicture(event){\n \n this.setState({Picture:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.Picture變動為:${this.state.Picture}`)\n }\n \n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n const h5={\n fontSize: '1.25rem',\n }\n let text\n if(this.state.gender === \"Age\")\n text=< img src={A} alt=\"A\"/>\n else if(this.state.gender === \"Banbie\")\n text = ''\n else if(this.state.gender === \"Salary\")\n text = ''\n else\n text = \"\"\n\n return (\n \n
\n
\n \n \n \n \n \n \n \n \n
\n 圖片展示
\n \n {text}\n
\n
\n \n \n \n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\r\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\r\nimport Select from 'react-select';\r\nimport { Link } from 'react-router-dom';\r\nimport Headers from '../Headers_AR.js';\r\nimport firebase from '../config/database_AR.js';\r\nimport 'firebase/compat/firestore';\r\nimport HeartRateAnalyze from './Analyze_HeartRate_AR.js';\r\nimport StressAnalyze from './Analyze_Stress_AR.js';\r\nimport SleepAnalyze from './Analyze_Sleep_AR.js';\r\nimport PictureBox from './Picture_Box_AR.js';\r\n// import 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\n\r\nconst ref = firebase.firestore();\r\n\r\nexport default class Picture_AR extends PureComponent {\r\n\r\n constructor(props){\r\n super(props)\r\n this.state = ({gender : ''})\r\n this.changeGender = this.changeGender.bind(this)\r\n }\r\n //宣告事件時傳入參數event取得觸發事件變數\r\n changeGender(event){\r\n //將觸發事件的DOM從event內的target屬性取出\r\n // console.log(event.target)\r\n //指定選擇的選項給state.gender\r\n this.setState({gender:event.target.value})\r\n }\r\n componentDidUpdate(){\r\n console.log(`已將state.gender變動為:${this.state.gender}`)\r\n }\r\n\r\n render() {\r\n const h2={\r\n fontSize: '2rem',\r\n fontWeight: 'bold',\r\n }\r\n const line={\r\n height: '1px',\r\n borderTop: 'solid gray 1px',\r\n }\r\n const margin={\r\n margin: '10px',\r\n }\r\n const h5={\r\n fontSize: '1.25rem',\r\n }\r\n const buttom={\r\n fontSize: '20px',\r\n color: 'green',\r\n margin: '10px',\r\n }\r\n\r\n //在render()中宣告一個text變數\r\n let text;\r\n //之後去判斷使用者選擇的是哪個\r\n if(this.state.gender === \"PictureBox\")\r\n //用變數儲存組件\r\n text = \r\n else if(this.state.gender === \"stress\")\r\n text = \r\n else if(this.state.gender === \"sleep\")\r\n text = \r\n else\r\n text = \"\"\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {/*\r\n \r\n */}\r\n {/*下拉式選單*/}\r\n \r\n {/*上面所設的text變數呈現在這裡*/}\r\n {text}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n"," import {BrowserRouter,Switch,Route} from 'react-router-dom';\n import Signin_AR from \"./pages_AR/Signin_AR.js\";\n// 月更新資料\n import MonthList_AR from \"./pages_AR/MonthList_AR.js\";\n import AddMonth_AR from \"./pages_AR/AddMonth_AR.js\";\n import EditMonth_AR from \"./pages_AR/EditMonth_AR.js\";\n// 基本資料\n// 護理長\n import PersonalDeveloper_AR from './pages_AR/PersonalDeveloper_AR.js';\n import AddPersonalDeveloper_AR from './pages_AR/AddPersonalDeveloper_AR.js';\n import EditPersonalDeveloper_AR from './pages_AR/EditPersonalDeveloper_AR.js';\n// 護理師\n import Personal_AR from './pages_AR/Personal_AR.js';\n import AddPersonal_AR from './pages_AR/AddPersonal_AR.js';\n import EditPersonal_AR from './pages_AR/EditPersonal_AR.js';\n// 手錶資料\n import WatchList_AR from './pages_AR/WatchList_AR.js';\n import AddWatch_AR from \"./pages_AR/AddWatch_AR.js\";\n import EditWatch_AR from \"./pages_AR/EditWatch_AR.js\";\n// 數據分析\n import Analyze_AR from './pages_AR/Analyze_AR.js';\n import AnalyzeHeartRate_AR from './pages_AR/Analyze_HeartRate_AR.js';\n import AnalyzeSleep_AR from './pages_AR/Analyze_Sleep_AR.js';\n import AnalyzeStress_AR from './pages_AR/Analyze_Stress_AR.js';\n import Picture_AR from './pages_AR/Picture_AR.js';\n import PictureBox_AR from './pages_AR/Picture_Box_AR.js';\n\nfunction App_AR() {\n return (\n \n \n {/* 登入 */}\n \n \n \n\n {/* 月更新資料 */}\n \n \n \n \n \n \n \n \n\n {/* 基本資料 */}\n {/* 護理長看到畫面 */}\n \n \n \n \n \n \n \n\n {/* 護理師看到畫面 */}\n \n \n \n\n {/* 數據分析 */}\n \n \n \n \n \n \n {/* 心率指數 */}\n \n \n \n {/* 睡眠狀態 */}\n \n \n \n {/* 壓力指數 */}\n \n \n \n \n \n \n \n {/* 手錶資料 */}\n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App_AR;\n","import React, { Component } from 'react';\n// bootstrap\nimport { Form, Button, Container, Navbar, Nav ,Dropdown } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport {Link} from 'react-router-dom';\n\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/auth';\n\n\nclass Signin extends Component{\n constructor(props){\n super(props)\n this.state = {\n account : '',\n password :''\n }\n }\n\n handleChangeAccount(e){\n this.setState({account:e.target.value})\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangePassword(e){\n this.setState({password:e.target.value})\n } \n handlechangeNER()\n {\n window.location.replace(\"/ner\")\n }\n handlechangeNAR()\n {\n window.location.replace(\"/nar\")\n }\n handlechange()\n {\n window.location.replace(\"/\")\n }\n handleSubmit() {\n firebase\n .auth()\n .signInWithEmailAndPassword(this.state.account, this.state.password)\n .then(() => {\n // 判斷如果是護理長或後端管理者登入的帳號 overworkdeveloper@gmail.com,則畫面跳轉到路徑 /n/personalDeveloper 檔案\n if (this.state.account === 'overworkdeveloper@gmail.com') {\n // console.log('登入');\n window.location.replace(\"/n/personalDeveloper\");\n }\n // 如果是護理師登入的帳號,則畫面跳轉到路徑 /n/personal/(每位護理師不同的帳號)\n else {\n const uri = \"/n/personal/\" + encodeURIComponent(this.state.account);\n // alert(uri);\n window.location.replace(uri);\n }\n })\n // 如果輸入的帳號及密碼沒有在 Firebase 的 Authentication 中時,跳出錯誤訊息\n .catch((error)=>{\n alert('帳號密碼錯誤!!');\n });\n }\n\n\n render() {\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const h4a={\n fontSize: '1.5rem',\n }\n const h1={\n fontSize: '3rem',\n }\n const buttom={\n margin:'10px',\n fontSize: '20px',\n color: 'green',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n }\n const buttom_change={\n margin:'10px',\n fontSize: '20px',\n color: 'black',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n attached:'right'\n \n }\n const li={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n }\n return (\n \n \n 代理伺服器_外科部\n 代理_急診室\n 代理_安寧病房\n 切換模式\n \n \n \n \n
\n 帳號\n \n \n
\n \n 密碼\n \n \n \n \n \n
\n );\n }\n}\n\nexport default Signin;\n","//下載semantic-ui-react套件,在終端機打上\"npm install semantic-ui-react semantic-ui-css\"\n//使用semantic-ui-react套件裡的List\nimport {List,Dropdown,Menu,Button} from 'semantic-ui-react';\n//下載react-router-dom套件,在終端機打上\"npm i react-router-dom\"\n//使用react-router-dom套件裡的Link\nimport {Link} from 'react-router-dom';\n//引入用npm載下來的React\nimport React from 'react';\n\n//命名一個新function叫做Topics\n//這裡本來是左邊欄,後來變成放在上方欄上\nfunction Topics_N(){ \n //CSS\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li2={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n backgroundColor:'#333'\n \n }\n return (\n //關於List請參考:https://react.semantic-ui.com/elements/list/\n \n \n \n 基本資料\n \n \n 出缺勤資料\n \n {/* \n 手錶資料\n */}\n \n 數據分析\n \n {/* \n 分析結果\n */}\n
\n );\n}\n\n//輸出Topics函式\nexport default Topics_N;\n","import {Menu} from 'semantic-ui-react';\nimport {Link} from 'react-router-dom';\nimport React from 'react';\nimport Topics from \"./components/Topics_N\";\n\nfunction Headers(){\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightgreen',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const a={\n float: 'right',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n return(\n \n );\n}\nexport default Headers;\n\n","import { useState,useEffect } from \"react\";\nimport axios from \"axios\";\nimport { Link } from \"react-router-dom\";\nimport Headers from '../Headers_N.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// ref 路徑連到 Month 資料庫\nconst ref = firebase.firestore().collection('Month');\n\nconst MonthList = () => {\n const [months, setMonths] = useState([]);\n useEffect(()=>{\n getMonths();\n }, []);\n \n // 刪除 Month 資料\n const deleteMonth = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n\n // 取得 Month 所有的資料\n const getMonths = async () =>{\n const monthData = [];\n const monthId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n monthId.push(doc.id);\n monthData.push(doc.data());\n });\n for (let i = 0; i < monthData.length; i++){\n ref.doc(monthId[i]).update({\n \"firebaseid\": monthId[i]\n });\n monthData[i].firebaseid = monthId[i];\n }\n setMonths(monthData);\n });\n }\n \n \n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter ={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n 外科部 出缺勤資料
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 輪班班別 | \n 工作時數 | \n 加班時數 | \n 請假天數 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {months.map((Month,index)=> {\n return(\n \n {index + 1} | \n {Month.watchid} | \n {Month.shift} | \n {Month.workhour} | \n {Month.overhour} | \n {Month.leave} | \n {Month.createdTime} | \n {Month.editedTime} | \n \n {' '}\n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default MonthList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n//新增月更資料頁\nclass AddMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Account: \"\", // 帳號\n selectShiftOptions : [], //輪班別\n shift_id: \"\", //輪班_id\n shift_name: '', //輪班_選項\n selectWatchOptions : [], //手錶使用者\n watch_id: '', //手錶使用者_id\n watch_watchid: '', //手錶使用者_選項\n //以下為使用者輸入資料\n watchid:'', //手錶使用者\n shift:'', //輪班\n workhour:'', //工作時數\n overhour:'', //加班時數\n leave: '', //請假天數\n uat:'', // userAccessToken\n }\n }\n\n // 取得手錶使用者\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫得到的資料存進watchoption下拉選單\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別 資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n\n\n // handleChange...(e) 用於儲存變動的變數資料\n handleChangeWatch(e){\n this.setState({ watch_id: e.value, watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n // 找到目前選擇手錶的資料\n if (e.label == watchData[i].watchid) {\n this.setState({ uat: watchData[i].userAccessToken });\n this.setState({ Account: watchData[i].account });\n }\n }\n });\n }\n handleChangeShift(e){\n this.setState({ shift_id: e.value, shift_name: e.label });\n }\n handleChangeWorkhovr(e){\n this.setState({ workhour: e.target.value });\n }\n handleChangeOverhovr(e){\n this.setState({ overhour: e.target.value });\n }\n handleChangeLeave(e){\n this.setState({ leave: e.target.value });\n }\n //將新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n \n if (this.state.watch_watchid == '' || this.state.shift_name == '' || this.state.workhour == '' || this.state.overhour == '' || this.state.leave == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Month').doc().set({\n \"account\": this.state.Account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶編號\n \"shift\":this.state.shift_name, // 輪班別\n \"workhour\":this.state.workhour, // 工作時數\n \"overhour\":this.state.overhour, // 加班天數\n \"leave\": this.state.leave, // 請假天數\n \"firebaseid\": \"\", // firebase id\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n });\n console.log('新增成功');\n }\n }\n //進入頁面自動執行\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增出缺勤資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default AddMonth; //將AddMonth 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n// 修改 月更新資料\nclass EditMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n monthid:\"\",\n selectShiftOptions : [],\n shift_id: \"\",\n shift_name: '',\n selectWatchOptions : [],\n watch_id: '',\n watch_watchid: '',\n workhour:'',\n overhour:'',\n leave:'',\n }\n }\n\n // 取得 其中一筆 月更新資料\n async getMonthById(firebaseid) {\n ref.collection('Month').doc(firebaseid).get().then(items => {\n const data = items.data(); // 所有資料\n\n const watchidvalue = data.watchid; // 手錶資料\n const shiftvalue = data.shift; // 輪班別\n const workhourvalue = data.workhour; // 工作時數\n const overhourvalue = data.overhour; // 加班天數\n const leavevalue = data.leave; // 請假天數\n this.setState({monthid:firebaseid,watch_watchid:watchidvalue,shift_name:shiftvalue,workhour: workhourvalue ,overhour: overhourvalue,leave:leavevalue})\n })\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n // 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n \n handleChangeWatch(e){\n this.setState({watch_id:e.value, watch_watchid:e.label})\n }\n handleChangeShift(e){\n this.setState({shift_id:e.value, shift_name:e.label})\n }\n handleChangeWorkhovr(e){\n this.setState({workhour:e.target.value})\n }\n handleChangeOverhovr(e){\n this.setState({overhour:e.target.value})\n }\n handleChangeLeave(e){\n this.setState({leave:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Month').doc(this.state.monthid).update({\n \"shift\":this.state.shift_name,\n \"workhour\":this.state.workhour,\n \"overhour\":this.state.overhour,\n \"leave\":this.state.leave,\n \"editedTime\": date\n });\n console.log('修改成功');\n }\n\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n this.getMonthById(this.props.match.params.firebaseid)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改出缺勤紀錄
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditMonth;\n","// ! 給護理長看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_N.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Personal');\n\nconst PersonalList = () => {\n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals();\n },[]);\n\n // 取得所有 基本資料\n // 取得所有 基本資料\n const getPersonals = async () =>{\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n personalsId.push(doc.id);\n personalsData.push(doc.data());\n });\n setPersonals(personalsData);\n });\n };\n\n // 刪除 單筆基本資料\n const deletePersonal = async (account) =>{\n ref.doc(account).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n \n return(\n \n
\n
\n \n \n 外科部 基本資料
\n [手環從No.1號(GarminWatch1)~No.20號(GarminWatch22)為第一梯次]
\n [手環從No.21號(GarminWatch61)~No.40號(GarminWatch80)為第二梯次]
\n \n {/* */}\n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 部門(科別) | \n 職稱 | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_N.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_N.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n // const { account } = this.props.match.params;\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","// ! 給護理師看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nconst PersonalList = (props) => {\n \n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals(props);\n },[]);\n\n // 取得所有 基本資料\n const getPersonals = async (props) => {\n // 取得 Route 傳過來 path 的 :account\n // alert(props.match.params.account);\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n const db = ref.collection('Personal');\n const id = decodeURIComponent(props.match.params.account);\n \n db.get().then(items => {\n items.forEach(doc => {\n if (doc.id === id) {\n db.doc(id).get().then(data => {\n personalsId.push(data.id);\n personalsData.push(data.data());\n setPersonals(personalsData);\n })\n }\n });\n });\n };\n\n // 刪除 單筆基本資料\n // const deletePersonal = async (firebaseid) =>{\n // ref.doc(firebaseid).delete().then(() => {\n // alert('刪除成功!');\n // });\n // window.setTimeout(( () => window.location.reload() ), 1250);\n // }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n 外科部 基本資料
\n \n \n \n
\n \n \n {/* 基本資料
\n */}\n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 職稱 | \n 部門(科別) | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n {/* */}\n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getAccount(decodeURIComponent(this.props.match.params.account))\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","import { useState,useEffect } from \"react\";\nimport { Link } from \"react-router-dom\";\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nimport Headers from '../Headers_N.js';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Watch');\nconst WatchList = () => {\n const [watch, setWatch] = useState([]);\n useEffect(()=>{\n getWatch();\n }, []);\n \n const deleteWatch = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n console.log('delete ',firebaseid,' successful');\n });\n window.setTimeout(( () => window.location.reload() ), 1300);\n }\n const getWatch = async () =>{\n // const response = await axios.get('http://localhost:5000/watch');\n // const resData = response.data; // 包含了 firebaseid 與 \"資料\" 內容\n // setWatch(resData);\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n // console.log(watchData[i]);\n }\n setWatch(watchData);\n });\n }\n\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n Garmin Watch 手錶
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 帳號 | \n 密碼 | \n userAccessToken | \n userAccessTokenSecret | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {watch.map((Watch,index)=> {\n return(\n \n {Watch.id} | \n {Watch.watchid} | \n {Watch.account} | \n {Watch.password} | \n {Watch.userAccessToken} | \n {Watch.userAccessTokenSecret} | \n {Watch.createdTime} | \n {Watch.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default WatchList;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\n//新增手錶頁(僅後端使用者可讀寫)\nclass AddWatch extends Component {\n constructor(props) {\n super(props)\n this.state = {\n id: '',\n watchid: 'GarminWatch',\n account: '',\n password: '',\n userAccessToken: '',\n userAccessTokenSecret: '',\n maxid: '',\n };\n }\n\n async getMaxWatchNum() {\n const watchNumData = [];\n // const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('MaxWatchNum').doc('MaxWatchId').get().then(items => {\n this.setState({ maxid: items.data().maxid });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n };\n \n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeID(e){\n this.setState({ id: e.target.value });\n // this.handleSubmit = this.handleSubmit.bind(this);\n };\n handleChangeAccount(e){\n this.setState({ account: e.target.value });\n };\n handleChangeWatchId(e){\n this.setState({ watchid: e.target.value });\n }\n handleChangePassword(e){\n this.setState({ password: e.target.value });\n }\n handleChangeUserAccessToken(e){\n this.setState({ userAccessToken: e.target.value });\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({ userAccessTokenSecret: e.target.value });\n }\n\n\n handleSubmit(e){\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if (this.state.id == '' || this.state.watchid == 'GarminWatch' || this.state.account == '' || this.state.password == '' || this.state.userAccessToken == '' || this.state.userAccessTokenSecret == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Watch').doc().set({\n \"id\": this.state.id,\n \"watchid\": this.state.watchid, // 手錶編號\n \"account\": this.state.account, // 輪班別\n \"password\": this.state.password, // 工作時數\n \"userAccessToken\": this.state.userAccessToken, // 加班天數\n \"userAccessTokenSecret\": this.state.userAccessTokenSecret, // 請假天數\n \"firebaseid\": \"\",\n \"createdTime\": date\n });\n console.log('新增成功');\n ref.collection('MaxWatchNum').doc('MaxWatchId').set({\n \"maxid\": Number(this.state.id)\n });\n }\n }\n\n componentDidMount(){\n this.getMaxWatchNum()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增手錶資料
\n \n 目前手錶數量 : {this.state.maxid}
\n
\n \n \n \n
\n );\n };\n \n};\nexport default AddWatch;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nclass EditWatch extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Watchsid:\"\",\n watchid:\"\",\n account:\"\",\n password:\"\",\n useraccesstoken:\"\",\n useraccesstokensecret:\"\",\n }\n }\n async getWatchById(firebaseid){\n\n ref.collection('Watch').doc(firebaseid).get().then(items => {\n const data = items.data();\n const watchidvalue = data.watchid;\n const accountvalue = data.account;\n const passwordvalue = data.password;\n const useraccesstokenvalue = data.userAccessToken;\n const useraccesstokensecretvalue = data.userAccessTokenSecret;\n this.setState({ Watchsid: firebaseid, watchid: watchidvalue, account: accountvalue, password: passwordvalue, useraccesstoken: useraccesstokenvalue, useraccesstokensecret: useraccesstokensecretvalue });\n });\n\n \n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangeAccount(e){\n this.setState({ account: e.target.value })\n // this.handleSubmit = this.handleSubmit.bind(this);\n }\n handleChangePassword(e){\n this.setState({password:e.target.value})\n }\n handleChangeUserAccessToken(e){\n this.setState({useraccesstoken:e.target.value})\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({useraccesstokensecret:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Watch').doc(this.state.Watchsid).update({\n \"account\":this.state.account,\n \"password\":this.state.password,\n \"userAccessToken\":this.state.useraccesstoken,\n \"userAccessTokenSecret\":this.state.useraccesstokensecret,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n componentDidMount(){\n const { firebaseid } = this.props.match.params;\n this.getWatchById(firebaseid)\n }\n\n \n\n render() {\n // console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改手錶資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditWatch;\n","// 數據分析 - 心率指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\nimport axios from \"axios\";\n// bootstrap\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class HeartRateAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n HeartRateData:[], //此陣列存放完整的心率資料\n selectCalendarOptions: [], //此陣列存放日期陣列\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n // 取得日期\n async getCalendarOptions(uat) {\n console.log(uat);\n const response = await axios.get('https://imow.nutc.edu.tw:8002/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log('+++' + calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n \n // 取得 心率 資料\n async getHeartRateData(uat, watchid, calendar) {\n console.log(uat, watchid, calendar);\n // 到後端抓取 心率 的資料\n const response = await axios.post('https://imow.nutc.edu.tw:8002/heartrateanalyze', { uat, watchid, calendar });\n // const response = await axios.post('https://localhost:8080/heartrateanalyze', { uat, watchid, calendar });\n // 如果沒有資料\n if (response.data == '') {\n this.setState({ HeartRateData: response.data }); //將內部陣列存入外層陣列\n console.log(response.data);\n // 跳出通知\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({HeartRateData: response.data}); //將內部陣列存入外層陣列\n }\n }\n\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n this.getCalendarOptions(e.value);\n \n }\n\n handleChangeCalendar(e) {\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n this.getHeartRateData(this.state.watch_UAT,this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 心率指數(秒/bmp)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n \n \n
\n \n < 60:心跳過慢 \n 60 ~ 100:心跳正常 \n > 100:心跳過快 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Heart Rate | \n Heart Rate Level | \n
\n \n \n {this.state.HeartRateData.map((HeartRate, index) => {\n if (HeartRate.HeartRateLevel == '過快') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '過慢') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '正常') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class StressAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n StressData:[], //完整的 壓力 資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n // ! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8002/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n // ! 取得 Stress 所有資料,uat = userAccessToken\n async getStressOptions(uat, watchid, calendar){\n console.log(uat, watchid, calendar);\n try{\n const response = await axios.post('https://imow.nutc.edu.tw:8002/stressanalyze', {uat, watchid, calendar});\n // const response = await axios.post('https://localhost:8080/stressanalyze', {uat, watchid, calendar});\n if(response.data == ''){\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getStressOptions\n this.getStressOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n { this.state.calendar_Date } 壓力指數
\n \n \n \n \n \n \n \n \n \n \n
\n \n -2:運動量過大 \n -1:無資料 \n 1 ~ 25:休息 \n 26 ~ 50:輕度壓力 \n 51 ~ 75:中度壓力 \n 76 ~ 100:重度壓力 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Stress | \n Stress Level | \n
\n \n \n {this.state.StressData.map((Stress, index) => {\n if (Stress.Stress == -2) {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '休息') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '輕度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '中度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '重度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 睡眠狀態\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class SleepsAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '', // 手錶 UserAccessToken\n watch_id: '', // 手錶編號 GarminWatch01\n SleepData:[], //完整的睡眠資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8002/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n //! 取得 Sleeps 的所有資料,uat = userAccessToken\n async getSleepsOptions(uat, watchid , calendar) {\n console.log(uat, watchid, calendar);\n try{\n // const response = await axios.post('https://localhost:8080/sleepsanalyze',{uat, watchid, calendar});\n const response = await axios.post('https://imow.nutc.edu.tw:8002/sleepsanalyze',{uat, watchid, calendar});\n if (response.data == '') {\n console.log(response.data);\n this.setState({ SleepData: response.data }); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({SleepData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n // 改變 this.state.watch 的資料\n handleChangeWatch(e) {\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n \n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getSleepsOptions\n this.getSleepsOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 睡眠狀態(秒)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n
\n \n 1:深層睡眠 \n 2:淺層睡眠 \n 3:REM 快速動眼期 \n 4:清醒 \n
\n 資料顯示
\n {/* 表格 */}\n \n \n \n NO | \n User | \n Calendar | \n Time | \n ID | \n SleepType | \n
\n \n \n {this.state.SleepData.map((Sleep, index) => {\n if (Sleep.sleepType == '清醒') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == 'REM 快速動眼期') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '淺層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '深層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\nimport firebase from '../config/database.js';\nimport 'firebase/compat/firestore';\nimport HeartRateAnalyze from './Analyze_HeartRate_N.js';\nimport StressAnalyze from './Analyze_Stress_N.js';\nimport SleepAnalyze from './Analyze_Sleep_N.js';\n// import 'bootstrap/dist/css/bootstrap.min.css';\n\n\nconst ref = firebase.firestore();\n\nexport default class Analyze extends PureComponent {\n\n constructor(props){\n super(props)\n this.state = ({gender : ''})\n this.changeGender = this.changeGender.bind(this)\n }\n //宣告事件時傳入參數event取得觸發事件變數\n changeGender(event){\n //將觸發事件的DOM從event內的target屬性取出\n // console.log(event.target)\n //指定選擇的選項給state.gender\n this.setState({gender:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.gender變動為:${this.state.gender}`)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n }\n const margin={\n margin: '10px',\n }\n const h5={\n fontSize: '1.25rem',\n }\n const buttom={\n fontSize: '20px',\n color: 'green',\n margin: '10px',\n }\n\n //在render()中宣告一個text變數\n let text;\n //之後去判斷使用者選擇的是哪個\n if(this.state.gender === \"heartrate\")\n //用變數儲存組件\n text = \n else if(this.state.gender === \"stress\")\n text = \n else if(this.state.gender === \"sleep\")\n text = \n else\n text = \"\"\n\n return (\n \n \n \n \n \n \n
\n {/*\n \n */}\n {/*下拉式選單*/}\n \n {/*上面所設的text變數呈現在這裡*/}\n {text}\n \n \n \n \n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_N.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\n// import { Image } from 'semantic-ui-react'\nimport A from '../Picture/A.png';\nimport B from '../Picture/B.png';\n\n\n\n\n\nexport default class PictureBox extends PureComponent {\n \n constructor(props){\n super(props)\n this.state = ({Picture : ''})\n this.changePicture = this.changePicture.bind(this)\n }\n changePicture(event){\n \n this.setState({Picture:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.Picture變動為:${this.state.Picture}`)\n }\n \n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n const h5={\n fontSize: '1.25rem',\n }\n let text\n if(this.state.gender === \"Age\")\n text=< img src={A} alt=\"A\"/>\n else if(this.state.gender === \"Banbie\")\n text = ''\n else if(this.state.gender === \"Salary\")\n text = ''\n else\n text = \"\"\n\n return (\n \n
\n
\n \n \n \n \n \n \n \n \n
\n 圖片展示
\n \n {text}\n
\n
\n \n \n \n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\r\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\r\nimport Select from 'react-select';\r\nimport { Link } from 'react-router-dom';\r\nimport Headers from '../Headers_N.js';\r\nimport firebase from '../config/database.js';\r\nimport 'firebase/compat/firestore';\r\nimport HeartRateAnalyze from './Analyze_HeartRate_N.js';\r\nimport StressAnalyze from './Analyze_Stress_N.js';\r\nimport SleepAnalyze from './Analyze_Sleep_N.js';\r\nimport PictureBox from './Picture_Box_N.js';\r\n// import 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\n\r\nconst ref = firebase.firestore();\r\n\r\nexport default class Picture extends PureComponent {\r\n\r\n constructor(props){\r\n super(props)\r\n this.state = ({gender : ''})\r\n this.changeGender = this.changeGender.bind(this)\r\n }\r\n //宣告事件時傳入參數event取得觸發事件變數\r\n changeGender(event){\r\n //將觸發事件的DOM從event內的target屬性取出\r\n // console.log(event.target)\r\n //指定選擇的選項給state.gender\r\n this.setState({gender:event.target.value})\r\n }\r\n componentDidUpdate(){\r\n console.log(`已將state.gender變動為:${this.state.gender}`)\r\n }\r\n\r\n render() {\r\n const h2={\r\n fontSize: '2rem',\r\n fontWeight: 'bold',\r\n }\r\n const line={\r\n height: '1px',\r\n borderTop: 'solid gray 1px',\r\n }\r\n const margin={\r\n margin: '10px',\r\n }\r\n const h5={\r\n fontSize: '1.25rem',\r\n }\r\n const buttom={\r\n fontSize: '20px',\r\n color: 'green',\r\n margin: '10px',\r\n }\r\n\r\n //在render()中宣告一個text變數\r\n let text;\r\n //之後去判斷使用者選擇的是哪個\r\n if(this.state.gender === \"PictureBox\")\r\n //用變數儲存組件\r\n text = \r\n else if(this.state.gender === \"stress\")\r\n text = \r\n else if(this.state.gender === \"sleep\")\r\n text = \r\n else\r\n text = \"\"\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {/*\r\n \r\n */}\r\n {/*下拉式選單*/}\r\n \r\n {/*上面所設的text變數呈現在這裡*/}\r\n {text}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n","import {BrowserRouter,Switch,Route} from 'react-router-dom';\nimport Signin_N from \"./pages_N/Signin_N.js\";\n// 月更新資料\nimport MonthList_N from \"./pages_N/MonthList_N.js\";\nimport AddMonth_N from \"./pages_N/AddMonth_N.js\";\nimport EditMonth_N from \"./pages_N/EditMonth_N.js\";\n// 基本資料\n// 護理長\nimport PersonalDeveloper_N from './pages_N/PersonalDeveloper_N.js';\nimport AddPersonalDeveloper_N from './pages_N/AddPersonalDeveloper_N.js';\nimport EditPersonalDeveloper_N from './pages_N/EditPersonalDeveloper_N.js';\n// 護理師\nimport Personal_N from './pages_N/Personal_N.js';\nimport AddPersonal_N from './pages_N/AddPersonal_N.js';\nimport EditPersonal_N from './pages_N/EditPersonal_N.js';\n// 手錶資料\nimport WatchList_N from './pages_N/WatchList_N.js';\nimport AddWatch_N from \"./pages_N/AddWatch_N.js\";\nimport EditWatch_N from \"./pages_N/EditWatch_N.js\";\n// 數據分析\nimport Analyze_N from './pages_N/Analyze_N.js';\nimport AnalyzeHeartRate_N from './pages_N/Analyze_HeartRate_N.js';\nimport AnalyzeSleep_N from './pages_N/Analyze_Sleep_N.js';\nimport AnalyzeStress_N from './pages_N/Analyze_Stress_N.js';\nimport Picture_N from './pages_N/Picture_N.js';\nimport PictureBox_N from './pages_N/Picture_Box_N.js';\n\nfunction App_N() {\n return (\n \n \n {/* 登入 */}\n \n \n \n {/* 月更新資料 */}\n \n \n \n \n \n \n \n {/* 基本資料 */}\n {/* 護理長看到畫面 */}\n \n \n \n \n \n \n \n {/* 護理師看到畫面 */}\n \n \n \n {/* 數據分析 */}\n \n \n \n \n \n \n {/* 心率指數 */}\n \n \n \n {/* 睡眠狀態 */}\n \n \n \n {/* 壓力指數 */}\n \n \n \n \n \n \n {/* 手錶資料 */}\n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App_N;\n","import React, { Component } from 'react';\n// bootstrap\nimport { Form, Button, Container, Navbar, Nav } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport {Link} from 'react-router-dom';\n\n// 連接 Firebase\nimport firebaseER from '../config/database_ER.js';\nimport 'firebase/compat/auth';\n\n\nclass Signin_ER extends Component{\n constructor(props){\n super(props)\n this.state = {\n account : '',\n password :''\n }\n }\n\n handleChangeAccount(e){\n this.setState({account:e.target.value})\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangePassword(e){\n this.setState({password:e.target.value})\n } \n handlechangeN()\n {\n window.location.replace(\"/n\")\n }\n handlechangeNAR()\n {\n window.location.replace(\"/nar\")\n }\n handlechangeER()\n {\n window.location.replace(\"/er\")\n }\n handleSubmit() {\n firebaseER\n .auth()\n .signInWithEmailAndPassword(this.state.account, this.state.password)\n .then(() => {\n // 判斷如果是護理長或後端管理者登入的帳號 eroverworkdeveloper@gmail.com,則畫面跳轉到路徑 /ner/personalDeveloper 檔案\n if (this.state.account == 'eroverworkdeveloper@gmail.com') {\n alert('ER Developer登入');\n window.location.replace(\"/ner/personalDeveloper\");\n }\n // 如果是護理師登入的帳號,則畫面跳轉到路徑 /ner/personal/(每位護理師不同的帳號)\n else {\n const uri = \"/ner/personal/\" + encodeURIComponent(this.state.account);\n alert(uri);\n window.location.replace(uri);\n }\n })\n // 如果輸入的帳號及密碼沒有在 Firebase 的 Authentication 中時,跳出錯誤訊息\n .catch((error)=>{\n alert('ER 帳號密碼錯誤!!');\n });\n }\n\n\n render() {\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const h4a={\n fontSize: '1.5rem',\n }\n const buttom={\n margin:'10px',\n fontSize: '20px',\n color: 'green',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n }\n const buttom_change={\n margin:'10px',\n fontSize: '20px',\n color: 'black',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n \n }\n const li={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n }\n return (\n \n \n 代理伺服器_急診室\n 代理_外科部\n 代理_安寧病房\n 切換模式\n \n \n \n \n \n
\n 帳號\n \n \n
\n \n 密碼\n \n \n \n \n \n
\n );\n }\n}\n\nexport default Signin_ER;\n","//下載semantic-ui-react套件,在終端機打上\"npm install semantic-ui-react semantic-ui-css\"\n//使用semantic-ui-react套件裡的List\nimport {List,Dropdown,Menu,Button} from 'semantic-ui-react';\n//下載react-router-dom套件,在終端機打上\"npm i react-router-dom\"\n//使用react-router-dom套件裡的Link\nimport {Link} from 'react-router-dom';\n//引入用npm載下來的React\nimport React from 'react';\n\n//命名一個新function叫做Topics\n//這裡本來是左邊欄,後來變成放在上方欄上\nfunction Topics_NER(){ \n //CSS\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li2={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n backgroundColor:'#333'\n }\n return (\n //關於List請參考:https://react.semantic-ui.com/elements/list/\n \n \n \n 基本資料\n \n \n 出缺勤資料\n \n {/*\n 手錶資料\n */}\n \n 數據分析\n \n {/*\n 分析結果\n */}\n
\n );\n}\n\n//輸出Topics函式\nexport default Topics_NER;\n","import {Menu} from 'semantic-ui-react';\nimport {Link} from 'react-router-dom';\nimport React from 'react';\nimport Topics from \"./components/Topics_NER\";\n\nfunction Headers(){\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const a={\n float: 'right',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n return(\n \n );\n}\nexport default Headers;\n\n","import { useState,useEffect } from \"react\";\nimport axios from \"axios\";\nimport { Link } from \"react-router-dom\";\nimport Headers from '../Headers_NER.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// ref 路徑連到 Month 資料庫\nconst ref = firebase.firestore().collection('Month');\n\nconst MonthList = () => {\n const [months, setMonths] = useState([]);\n useEffect(()=>{\n getMonths();\n }, []);\n \n // 刪除 Month 資料\n const deleteMonth = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n\n // 取得 Month 所有的資料\n const getMonths = async () =>{\n const monthData = [];\n const monthId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n monthId.push(doc.id);\n monthData.push(doc.data());\n });\n for (let i = 0; i < monthData.length; i++){\n ref.doc(monthId[i]).update({\n \"firebaseid\": monthId[i]\n });\n monthData[i].firebaseid = monthId[i];\n }\n setMonths(monthData);\n });\n }\n \n \n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter ={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n 急診室 出缺勤資料
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 輪班班別 | \n 工作時數 | \n 加班時數 | \n 請假天數 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {months.map((Month,index)=> {\n return(\n \n {index + 1} | \n {Month.watchid} | \n {Month.shift} | \n {Month.workhour} | \n {Month.overhour} | \n {Month.leave} | \n {Month.createdTime} | \n {Month.editedTime} | \n \n {' '}\n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default MonthList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n//新增月更資料頁\nclass AddMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Account: \"\", // 帳號\n selectShiftOptions : [], //輪班別\n shift_id: \"\", //輪班_id\n shift_name: '', //輪班_選項\n selectWatchOptions : [], //手錶使用者\n watch_id: '', //手錶使用者_id\n watch_watchid: '', //手錶使用者_選項\n //以下為使用者輸入資料\n watchid:'', //手錶使用者\n shift:'', //輪班\n workhour:'', //工作時數\n overhour:'', //加班時數\n leave: '', //請假天數\n uat:'', // userAccessToken\n }\n }\n\n // 取得手錶使用者\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫得到的資料存進watchoption下拉選單\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別 資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n\n\n // handleChange...(e) 用於儲存變動的變數資料\n handleChangeWatch(e){\n this.setState({ watch_id: e.value, watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n // 找到目前選擇手錶的資料\n if (e.label == watchData[i].watchid) {\n this.setState({ uat: watchData[i].userAccessToken });\n this.setState({ Account: watchData[i].account });\n }\n }\n });\n }\n handleChangeShift(e){\n this.setState({ shift_id: e.value, shift_name: e.label });\n }\n handleChangeWorkhovr(e){\n this.setState({ workhour: e.target.value });\n }\n handleChangeOverhovr(e){\n this.setState({ overhour: e.target.value });\n }\n handleChangeLeave(e){\n this.setState({ leave: e.target.value });\n }\n //將新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n \n if (this.state.watch_watchid == '' || this.state.shift_name == '' || this.state.workhour == '' || this.state.overhour == '' || this.state.leave == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Month').doc().set({\n \"account\": this.state.Account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶編號\n \"shift\":this.state.shift_name, // 輪班別\n \"workhour\":this.state.workhour, // 工作時數\n \"overhour\":this.state.overhour, // 加班天數\n \"leave\": this.state.leave, // 請假天數\n \"firebaseid\": \"\", // firebase id\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n });\n console.log('新增成功');\n }\n }\n //進入頁面自動執行\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增出缺勤資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default AddMonth; //將AddMonth 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n// 修改 月更新資料\nclass EditMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n monthid:\"\",\n selectShiftOptions : [],\n shift_id: \"\",\n shift_name: '',\n selectWatchOptions : [],\n watch_id: '',\n watch_watchid: '',\n workhour:'',\n overhour:'',\n leave:'',\n }\n }\n\n // 取得 其中一筆 月更新資料\n async getMonthById(firebaseid) {\n ref.collection('Month').doc(firebaseid).get().then(items => {\n const data = items.data(); // 所有資料\n\n const watchidvalue = data.watchid; // 手錶資料\n const shiftvalue = data.shift; // 輪班別\n const workhourvalue = data.workhour; // 工作時數\n const overhourvalue = data.overhour; // 加班天數\n const leavevalue = data.leave; // 請假天數\n this.setState({monthid:firebaseid,watch_watchid:watchidvalue,shift_name:shiftvalue,workhour: workhourvalue ,overhour: overhourvalue,leave:leavevalue})\n })\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n // 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n \n handleChangeWatch(e){\n this.setState({watch_id:e.value, watch_watchid:e.label})\n }\n handleChangeShift(e){\n this.setState({shift_id:e.value, shift_name:e.label})\n }\n handleChangeWorkhovr(e){\n this.setState({workhour:e.target.value})\n }\n handleChangeOverhovr(e){\n this.setState({overhour:e.target.value})\n }\n handleChangeLeave(e){\n this.setState({leave:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Month').doc(this.state.monthid).update({\n \"shift\":this.state.shift_name,\n \"workhour\":this.state.workhour,\n \"overhour\":this.state.overhour,\n \"leave\":this.state.leave,\n \"editedTime\": date\n });\n console.log('修改成功');\n }\n\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n this.getMonthById(this.props.match.params.firebaseid)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改出缺勤紀錄
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditMonth;\n","// ! 給護理長看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_NER.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Personal');\n\nconst PersonalList = () => {\n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals();\n },[]);\n\n // 取得所有 基本資料\n // 取得所有 基本資料\n const getPersonals = async () =>{\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n personalsId.push(doc.id);\n personalsData.push(doc.data());\n });\n setPersonals(personalsData);\n });\n };\n\n // 刪除 單筆基本資料\n const deletePersonal = async (account) =>{\n ref.doc(account).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n 急診室 基本資料
\n [手環從No.1號(GarminWatch31)~No.20號(GarminWatch50)為第一梯次第1部分]
\n [手環從No.21號(GarminWatch91)~No.40號(GarminWatch110)為第一梯次第2部分]
\n \n {/* */}\n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 部門(科別) | \n 職稱 | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n // const { account } = this.props.match.params;\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","// ! 給護理師看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nconst PersonalList = (props) => {\n \n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals(props);\n },[]);\n\n // 取得所有 基本資料\n const getPersonals = async (props) => {\n // 取得 Route 傳過來 path 的 :account\n // alert(props.match.params.account);\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n const db = ref.collection('Personal');\n const id = decodeURIComponent(props.match.params.account);\n \n db.get().then(items => {\n items.forEach(doc => {\n if (doc.id === id) {\n db.doc(id).get().then(data => {\n personalsId.push(data.id);\n personalsData.push(data.data());\n setPersonals(personalsData);\n })\n }\n });\n });\n };\n\n // 刪除 單筆基本資料\n // const deletePersonal = async (firebaseid) =>{\n // ref.doc(firebaseid).delete().then(() => {\n // alert('刪除成功!');\n // });\n // window.setTimeout(( () => window.location.reload() ), 1250);\n // }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n 基本資料
\n \n \n \n
\n \n \n {/* 基本資料
\n */}\n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 職稱 | \n 部門(科別) | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n {/* */}\n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getAccount(decodeURIComponent(this.props.match.params.account))\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","import { useState,useEffect } from \"react\";\nimport { Link } from \"react-router-dom\";\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nimport Headers from '../Headers_NER.js';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Watch');\nconst WatchList = () => {\n const [watch, setWatch] = useState([]);\n useEffect(()=>{\n getWatch();\n }, []);\n \n const deleteWatch = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n console.log('delete ',firebaseid,' successful');\n });\n window.setTimeout(( () => window.location.reload() ), 1300);\n }\n const getWatch = async () =>{\n // const response = await axios.get('http://localhost:5000/watch');\n // const resData = response.data; // 包含了 firebaseid 與 \"資料\" 內容\n // setWatch(resData);\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n // console.log(watchData[i]);\n }\n setWatch(watchData);\n });\n }\n\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n Garmin Watch 手錶
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 帳號 | \n 密碼 | \n userAccessToken | \n userAccessTokenSecret | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {watch.map((Watch,index)=> {\n return(\n \n {Watch.id} | \n {Watch.watchid} | \n {Watch.account} | \n {Watch.password} | \n {Watch.userAccessToken} | \n {Watch.userAccessTokenSecret} | \n {Watch.createdTime} | \n {Watch.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default WatchList;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\n//新增手錶頁(僅後端使用者可讀寫)\nclass AddWatch extends Component {\n constructor(props) {\n super(props)\n this.state = {\n id: '',\n watchid: 'GarminWatch',\n account: '',\n password: '',\n userAccessToken: '',\n userAccessTokenSecret: '',\n maxid: '',\n };\n }\n\n async getMaxWatchNum() {\n const watchNumData = [];\n // const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('MaxWatchNum').doc('MaxWatchId').get().then(items => {\n this.setState({ maxid: items.data().maxid });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n };\n \n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeID(e){\n this.setState({ id: e.target.value });\n // this.handleSubmit = this.handleSubmit.bind(this);\n };\n handleChangeAccount(e){\n this.setState({ account: e.target.value });\n };\n handleChangeWatchId(e){\n this.setState({ watchid: e.target.value });\n }\n handleChangePassword(e){\n this.setState({ password: e.target.value });\n }\n handleChangeUserAccessToken(e){\n this.setState({ userAccessToken: e.target.value });\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({ userAccessTokenSecret: e.target.value });\n }\n\n\n handleSubmit(e){\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if (this.state.id == '' || this.state.watchid == 'GarminWatch' || this.state.account == '' || this.state.password == '' || this.state.userAccessToken == '' || this.state.userAccessTokenSecret == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Watch').doc().set({\n \"id\": this.state.id,\n \"watchid\": this.state.watchid, // 手錶編號\n \"account\": this.state.account, // 輪班別\n \"password\": this.state.password, // 工作時數\n \"userAccessToken\": this.state.userAccessToken, // 加班天數\n \"userAccessTokenSecret\": this.state.userAccessTokenSecret, // 請假天數\n \"firebaseid\": \"\",\n \"createdTime\": date\n });\n console.log('新增成功');\n ref.collection('MaxWatchNum').doc('MaxWatchId').set({\n \"maxid\": Number(this.state.id)\n });\n }\n }\n\n componentDidMount(){\n this.getMaxWatchNum()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增手錶資料
\n \n 目前手錶數量 : {this.state.maxid}
\n
\n \n \n \n
\n );\n };\n \n};\nexport default AddWatch;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nclass EditWatch extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Watchsid:\"\",\n watchid:\"\",\n account:\"\",\n password:\"\",\n useraccesstoken:\"\",\n useraccesstokensecret:\"\",\n }\n }\n async getWatchById(firebaseid){\n\n ref.collection('Watch').doc(firebaseid).get().then(items => {\n const data = items.data();\n const watchidvalue = data.watchid;\n const accountvalue = data.account;\n const passwordvalue = data.password;\n const useraccesstokenvalue = data.userAccessToken;\n const useraccesstokensecretvalue = data.userAccessTokenSecret;\n this.setState({ Watchsid: firebaseid, watchid: watchidvalue, account: accountvalue, password: passwordvalue, useraccesstoken: useraccesstokenvalue, useraccesstokensecret: useraccesstokensecretvalue });\n });\n\n \n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangeAccount(e){\n this.setState({ account: e.target.value })\n // this.handleSubmit = this.handleSubmit.bind(this);\n }\n handleChangePassword(e){\n this.setState({password:e.target.value})\n }\n handleChangeUserAccessToken(e){\n this.setState({useraccesstoken:e.target.value})\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({useraccesstokensecret:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Watch').doc(this.state.Watchsid).update({\n \"account\":this.state.account,\n \"password\":this.state.password,\n \"userAccessToken\":this.state.useraccesstoken,\n \"userAccessTokenSecret\":this.state.useraccesstokensecret,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n componentDidMount(){\n const { firebaseid } = this.props.match.params;\n this.getWatchById(firebaseid)\n }\n\n \n\n render() {\n // console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改手錶資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditWatch;\n","// 數據分析 - 心率指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\nimport axios from \"axios\";\n// bootstrap\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class HeartRateAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n HeartRateData:[], //此陣列存放完整的心率資料\n selectCalendarOptions: [], //此陣列存放日期陣列\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n // 取得日期\n async getCalendarOptions(uat) {\n console.log(uat);\n const response = await axios.get('https://imow.nutc.edu.tw:8009/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log('+++' + calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n \n // 取得 心率 資料\n async getHeartRateData(uat, watchid, calendar) {\n console.log(uat, watchid, calendar);\n // 到後端抓取 心率 的資料\n const response = await axios.post('https://imow.nutc.edu.tw:8009/heartrateanalyze', { uat, watchid, calendar });\n // const response = await axios.post('https://localhost:8080/heartrateanalyze', { uat, watchid, calendar });\n // 如果沒有資料\n if (response.data == '') {\n this.setState({ HeartRateData: response.data }); //將內部陣列存入外層陣列\n console.log(response.data);\n // 跳出通知\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({HeartRateData: response.data}); //將內部陣列存入外層陣列\n }\n }\n\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n this.getCalendarOptions(e.value);\n \n }\n\n handleChangeCalendar(e) {\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n this.getHeartRateData(this.state.watch_UAT,this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 心率指數(秒/bmp)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n \n \n
\n \n < 60:心跳過慢 \n 60 ~ 100:心跳正常 \n > 100:心跳過快 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Heart Rate | \n Heart Rate Level | \n
\n \n \n {this.state.HeartRateData.map((HeartRate, index) => {\n if (HeartRate.HeartRateLevel == '過快') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '過慢') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '正常') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class StressAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n StressData:[], //完整的 壓力 資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n // ! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8009/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n // ! 取得 Stress 所有資料,uat = userAccessToken\n async getStressOptions(uat, watchid, calendar){\n console.log(uat, watchid, calendar);\n try{\n const response = await axios.post('https://imow.nutc.edu.tw:8009/stressanalyze', {uat, watchid, calendar});\n // const response = await axios.post('https://localhost:8080/stressanalyze', {uat, watchid, calendar});\n if(response.data == ''){\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getStressOptions\n this.getStressOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n { this.state.calendar_Date } 壓力指數
\n \n \n \n \n \n \n \n \n \n \n
\n \n -2:運動量過大 \n -1:無資料 \n 1 ~ 25:休息 \n 26 ~ 50:輕度壓力 \n 51 ~ 75:中度壓力 \n 76 ~ 100:重度壓力 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Stress | \n Stress Level | \n
\n \n \n {this.state.StressData.map((Stress, index) => {\n if (Stress.Stress == -2) {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '休息') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '輕度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '中度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '重度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 睡眠狀態\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class SleepsAnalyze extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '', // 手錶 UserAccessToken\n watch_id: '', // 手錶編號 GarminWatch01\n SleepData:[], //完整的睡眠資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8009/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n //! 取得 Sleeps 的所有資料,uat = userAccessToken\n async getSleepsOptions(uat, watchid , calendar) {\n console.log(uat, watchid, calendar);\n try{\n // const response = await axios.post('https://localhost:8080/sleepsanalyze',{uat, watchid, calendar});\n const response = await axios.post('https://imow.nutc.edu.tw:8009/sleepsanalyze',{uat, watchid, calendar});\n if (response.data == '') {\n console.log(response.data);\n this.setState({ SleepData: response.data }); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({SleepData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n // 改變 this.state.watch 的資料\n handleChangeWatch(e) {\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n \n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getSleepsOptions\n this.getSleepsOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 睡眠狀態(秒)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n
\n \n 1:深層睡眠 \n 2:淺層睡眠 \n 3:REM 快速動眼期 \n 4:清醒 \n
\n 資料顯示
\n {/* 表格 */}\n \n \n \n NO | \n User | \n Calendar | \n Time | \n ID | \n SleepType | \n
\n \n \n {this.state.SleepData.map((Sleep, index) => {\n if (Sleep.sleepType == '清醒') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == 'REM 快速動眼期') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '淺層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '深層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\nimport firebase from '../config/database_ER.js';\nimport 'firebase/compat/firestore';\nimport HeartRateAnalyze_ER from './Analyze_HeartRate_NER.js';\nimport StressAnalyze_ER from './Analyze_Stress_NER.js';\nimport SleepAnalyze_ER from './Analyze_Sleep_NER.js';\n// import 'bootstrap/dist/css/bootstrap.min.css';\n\n\nconst ref = firebase.firestore();\n\nexport default class Analyze extends PureComponent {\n\n constructor(props){\n super(props)\n this.state = ({gender : ''})\n this.changeGender = this.changeGender.bind(this)\n }\n //宣告事件時傳入參數event取得觸發事件變數\n changeGender(event){\n //將觸發事件的DOM從event內的target屬性取出\n // console.log(event.target)\n //指定選擇的選項給state.gender\n this.setState({gender:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.gender變動為:${this.state.gender}`)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n }\n const margin={\n margin: '10px',\n }\n const h5={\n fontSize: '1.25rem',\n }\n const buttom={\n fontSize: '20px',\n color: 'green',\n margin: '10px',\n }\n\n //在render()中宣告一個text變數\n let text;\n //之後去判斷使用者選擇的是哪個\n if(this.state.gender === \"heartrate\")\n //用變數儲存組件\n text = \n else if(this.state.gender === \"stress\")\n text = \n else if(this.state.gender === \"sleep\")\n text = \n else\n text = \"\"\n\n return (\n \n \n \n \n \n \n
\n {/*\n \n */}\n {/*下拉式選單*/}\n \n {/*上面所設的text變數呈現在這裡*/}\n {text}\n \n \n \n \n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NER.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\n// import { Image } from 'semantic-ui-react'\nimport A from '../Picture/A.png';\nimport B from '../Picture/B.png';\n\n\n\n\n\nexport default class PictureBox extends PureComponent {\n \n constructor(props){\n super(props)\n this.state = ({Picture : ''})\n this.changePicture = this.changePicture.bind(this)\n }\n changePicture(event){\n \n this.setState({Picture:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.Picture變動為:${this.state.Picture}`)\n }\n \n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n const h5={\n fontSize: '1.25rem',\n }\n let text\n if(this.state.gender === \"Age\")\n text=< img src={A} alt=\"A\"/>\n else if(this.state.gender === \"Banbie\")\n text = ''\n else if(this.state.gender === \"Salary\")\n text = ''\n else\n text = \"\"\n\n return (\n \n
\n
\n \n \n \n \n \n \n \n \n
\n 圖片展示
\n \n {text}\n
\n
\n \n \n \n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\r\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\r\nimport Select from 'react-select';\r\nimport { Link } from 'react-router-dom';\r\nimport Headers from '../Headers_NER.js';\r\nimport firebase from '../config/database_ER.js';\r\nimport 'firebase/compat/firestore';\r\nimport HeartRateAnalyze from './Analyze_HeartRate_NER.js';\r\nimport StressAnalyze from './Analyze_Stress_NER.js';\r\nimport SleepAnalyze from './Analyze_Sleep_NER.js';\r\nimport PictureBox from './Picture_Box_NER.js';\r\n// import 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\n\r\nconst ref = firebase.firestore();\r\n\r\nexport default class Picture extends PureComponent {\r\n\r\n constructor(props){\r\n super(props)\r\n this.state = ({gender : ''})\r\n this.changeGender = this.changeGender.bind(this)\r\n }\r\n //宣告事件時傳入參數event取得觸發事件變數\r\n changeGender(event){\r\n //將觸發事件的DOM從event內的target屬性取出\r\n // console.log(event.target)\r\n //指定選擇的選項給state.gender\r\n this.setState({gender:event.target.value})\r\n }\r\n componentDidUpdate(){\r\n console.log(`已將state.gender變動為:${this.state.gender}`)\r\n }\r\n\r\n render() {\r\n const h2={\r\n fontSize: '2rem',\r\n fontWeight: 'bold',\r\n }\r\n const line={\r\n height: '1px',\r\n borderTop: 'solid gray 1px',\r\n }\r\n const margin={\r\n margin: '10px',\r\n }\r\n const h5={\r\n fontSize: '1.25rem',\r\n }\r\n const buttom={\r\n fontSize: '20px',\r\n color: 'green',\r\n margin: '10px',\r\n }\r\n\r\n //在render()中宣告一個text變數\r\n let text;\r\n //之後去判斷使用者選擇的是哪個\r\n if(this.state.gender === \"PictureBox\")\r\n //用變數儲存組件\r\n text = \r\n else if(this.state.gender === \"stress\")\r\n text = \r\n else if(this.state.gender === \"sleep\")\r\n text = \r\n else\r\n text = \"\"\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {/*\r\n \r\n */}\r\n {/*下拉式選單*/}\r\n \r\n {/*上面所設的text變數呈現在這裡*/}\r\n {text}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n"," import {BrowserRouter,Switch,Route} from 'react-router-dom';\n import Signin_NER from \"./pages_NER/Signin_NER.js\";\n// 月更新資料\n import MonthList_NER from \"./pages_NER/MonthList_NER.js\";\n import AddMonth_NER from \"./pages_NER/AddMonth_NER.js\";\n import EditMonth_NER from \"./pages_NER/EditMonth_NER\";\n// 基本資料\n// 護理長\n import PersonalDeveloper_NER from './pages_NER/PersonalDeveloper_NER.js';\n import AddPersonalDeveloper_NER from './pages_NER/AddPersonalDeveloper_NER.js';\n import EditPersonalDeveloper_NER from './pages_NER/EditPersonalDeveloper_NER.js';\n// 護理師\n import Personal_NER from './pages_NER/Personal_NER.js';\n import AddPersonal_NER from './pages_NER/AddPersonal_NER.js';\n import EditPersonal_NER from './pages_NER/EditPersonal_NER.js';\n// 手錶資料\n import WatchList_NER from './pages_NER/WatchList_NER.js';\n import AddWatch_NER from \"./pages_NER/AddWatch_NER.js\";\n import EditWatch_NER from \"./pages_NER/EditWatch_NER.js\";\n// 數據分析\n import Analyze_NER from './pages_NER/Analyze_NER.js';\n import AnalyzeHeartRate_NER from './pages_NER/Analyze_HeartRate_NER.js';\n import AnalyzeSleep_NER from './pages_NER/Analyze_Sleep_NER.js';\n import AnalyzeStress_NER from './pages_NER/Analyze_Stress_NER.js';\n import Picture_NER from './pages_NER/Picture_NER.js';\n import PictureBox_NER from './pages_NER/Picture_Box_NER.js';\n\nfunction App_NER() {\n return (\n \n \n {/* 登入 */}\n \n \n \n\n {/* 月更新資料 */}\n \n \n \n \n \n \n \n \n\n {/* 基本資料 */}\n {/* 護理長看到畫面 */}\n \n \n \n \n \n \n \n\n {/* 護理師看到畫面 */}\n \n \n \n\n {/* 數據分析 */}\n \n \n \n \n \n \n {/* 心率指數 */}\n \n \n \n {/* 睡眠狀態 */}\n \n \n \n {/* 壓力指數 */}\n \n \n \n \n \n \n \n {/* 手錶資料 */}\n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App_NER;\n","import React, { Component } from 'react';\n// bootstrap\nimport { Form, Button, Container, Navbar, Nav,Dropdown } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport {Link} from 'react-router-dom';\n\n// 連接 Firebase\nimport firebaseAR from '../config/database_AR.js';\nimport 'firebase/compat/auth';\n\n\nclass Signin extends Component{\n constructor(props){\n super(props)\n this.state = {\n account : '',\n password :''\n }\n }\n\n handleChangeAccount(e){\n this.setState({account:e.target.value})\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangePassword(e){\n this.setState({password:e.target.value})\n }\n handlechangeN()\n {\n window.location.replace(\"/n\")\n } \n handlechangeNER()\n {\n window.location.replace(\"/ner\")\n }\n handlechangeAR()\n {\n window.location.replace(\"/ar\")\n }\n handleSubmit() {\n firebaseAR\n .auth()\n .signInWithEmailAndPassword(this.state.account, this.state.password)\n .then(() => {\n // 判斷如果是護理長或後端管理者登入的帳號 eroverworkdeveloper@gmail.com,則畫面跳轉到路徑 /er/personalDeveloper 檔案\n if (this.state.account == 'aroverworkdeveloper@gmail.com') {\n alert('AR Developer登入');\n window.location.replace(\"/nar/personalDeveloper\");\n }\n // 如果是護理師登入的帳號,則畫面跳轉到路徑 /er/personal/(每位護理師不同的帳號)\n else {\n const uri = \"/nar/personal/\" + encodeURIComponent(this.state.account);\n alert(uri);\n window.location.replace(uri);\n }\n })\n // 如果輸入的帳號及密碼沒有在 Firebase 的 Authentication 中時,跳出錯誤訊息\n .catch((error)=>{\n alert('AR 帳號密碼錯誤!!');\n });\n }\n\n\n render() {\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const h4a={\n fontSize: '1.5rem',\n }\n const buttom={\n margin:'10px',\n fontSize: '20px',\n color: 'green',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n }\n const buttom_change={\n margin:'10px',\n fontSize: '20px',\n color: 'black',\n fontWeight: 'bold',\n backgroundColor:'white',\n borderColor:'black',\n \n }\n const li={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n }\n return (\n \n \n 代理伺服器_安寧病房\n 代理_外科部\n 代理_急診室\n 切換模式\n \n \n \n \n \n
\n 帳號\n \n \n
\n \n 密碼\n \n \n \n \n \n
\n );\n }\n}\n\nexport default Signin;\n","//下載semantic-ui-react套件,在終端機打上\"npm install semantic-ui-react semantic-ui-css\"\n//使用semantic-ui-react套件裡的List\nimport {List,Dropdown,Menu,Button} from 'semantic-ui-react';\n//下載react-router-dom套件,在終端機打上\"npm i react-router-dom\"\n//使用react-router-dom套件裡的Link\nimport {Link} from 'react-router-dom';\n//引入用npm載下來的React\nimport React from 'react';\n\n//命名一個新function叫做Topics\n//這裡本來是左邊欄,後來變成放在上方欄上\nfunction Topics_NAR(){ \n //CSS\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const li2={\n float: 'left',\n display: 'block',\n color: 'white',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n backgroundColor:'#333'\n }\n return (\n //關於List請參考:https://react.semantic-ui.com/elements/list/\n \n \n \n 基本資料\n \n \n 出缺勤資料\n \n {/*\n 手錶資料\n */}\n \n 數據分析\n \n {/*\n 分析結果\n */}\n
\n );\n}\n\n//輸出Topics函式\nexport default Topics_NAR;\n","import {Menu} from 'semantic-ui-react';\nimport {Link} from 'react-router-dom';\nimport React from 'react';\nimport Topics from \"./components/Topics_NAR\";\n\nfunction Headers(){\n const ul={\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n overflow: 'hidden',\n backgroundColor: 'lightblue',\n }\n const li={\n float: 'left',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n const a={\n float: 'right',\n display: 'block',\n color: '#333',\n textAlign: 'center',\n padding: '14px 16px',\n textDecoration: 'none',\n fontSize: '25px',\n 'font-family': \"Helvetica, Arial, 'LiHei Pro', '黑體-繁', '微軟正黑體', sans-serif\"\n }\n return(\n \n );\n}\nexport default Headers;\n\n","import { useState,useEffect } from \"react\";\nimport axios from \"axios\";\nimport { Link } from \"react-router-dom\";\nimport Headers from '../Headers_NAR.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// ref 路徑連到 Month 資料庫\nconst ref = firebase.firestore().collection('Month');\n\nconst MonthList = () => {\n const [months, setMonths] = useState([]);\n useEffect(()=>{\n getMonths();\n }, []);\n \n // 刪除 Month 資料\n const deleteMonth = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n\n // 取得 Month 所有的資料\n const getMonths = async () =>{\n const monthData = [];\n const monthId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n monthId.push(doc.id);\n monthData.push(doc.data());\n });\n for (let i = 0; i < monthData.length; i++){\n ref.doc(monthId[i]).update({\n \"firebaseid\": monthId[i]\n });\n monthData[i].firebaseid = monthId[i];\n }\n setMonths(monthData);\n });\n }\n \n \n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter ={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n 安寧病房 出缺勤資料
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 輪班班別 | \n 工作時數 | \n 加班時數 | \n 請假天數 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {months.map((Month,index)=> {\n return(\n \n {index + 1} | \n {Month.watchid} | \n {Month.shift} | \n {Month.workhour} | \n {Month.overhour} | \n {Month.leave} | \n {Month.createdTime} | \n {Month.editedTime} | \n \n {' '}\n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default MonthList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n//新增月更資料頁\nclass AddMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Account: \"\", // 帳號\n selectShiftOptions : [], //輪班別\n shift_id: \"\", //輪班_id\n shift_name: '', //輪班_選項\n selectWatchOptions : [], //手錶使用者\n watch_id: '', //手錶使用者_id\n watch_watchid: '', //手錶使用者_選項\n //以下為使用者輸入資料\n watchid:'', //手錶使用者\n shift:'', //輪班\n workhour:'', //工作時數\n overhour:'', //加班時數\n leave: '', //請假天數\n uat:'', // userAccessToken\n }\n }\n\n // 取得手錶使用者\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫得到的資料存進watchoption下拉選單\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別 資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n\n\n // handleChange...(e) 用於儲存變動的變數資料\n handleChangeWatch(e){\n this.setState({ watch_id: e.value, watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n // 找到目前選擇手錶的資料\n if (e.label == watchData[i].watchid) {\n this.setState({ uat: watchData[i].userAccessToken });\n this.setState({ Account: watchData[i].account });\n }\n }\n });\n }\n handleChangeShift(e){\n this.setState({ shift_id: e.value, shift_name: e.label });\n }\n handleChangeWorkhovr(e){\n this.setState({ workhour: e.target.value });\n }\n handleChangeOverhovr(e){\n this.setState({ overhour: e.target.value });\n }\n handleChangeLeave(e){\n this.setState({ leave: e.target.value });\n }\n //將新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n \n if (this.state.watch_watchid == '' || this.state.shift_name == '' || this.state.workhour == '' || this.state.overhour == '' || this.state.leave == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Month').doc().set({\n \"account\": this.state.Account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶編號\n \"shift\":this.state.shift_name, // 輪班別\n \"workhour\":this.state.workhour, // 工作時數\n \"overhour\":this.state.overhour, // 加班天數\n \"leave\": this.state.leave, // 請假天數\n \"firebaseid\": \"\", // firebase id\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n });\n console.log('新增成功');\n }\n }\n //進入頁面自動執行\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增出缺勤資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default AddMonth; //將AddMonth 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\n// 修改 月更新資料\nclass EditMonth extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n monthid:\"\",\n selectShiftOptions : [],\n shift_id: \"\",\n shift_name: '',\n selectWatchOptions : [],\n watch_id: '',\n watch_watchid: '',\n workhour:'',\n overhour:'',\n leave:'',\n }\n }\n\n // 取得 其中一筆 月更新資料\n async getMonthById(firebaseid) {\n ref.collection('Month').doc(firebaseid).get().then(items => {\n const data = items.data(); // 所有資料\n\n const watchidvalue = data.watchid; // 手錶資料\n const shiftvalue = data.shift; // 輪班別\n const workhourvalue = data.workhour; // 工作時數\n const overhourvalue = data.overhour; // 加班天數\n const leavevalue = data.leave; // 請假天數\n this.setState({monthid:firebaseid,watch_watchid:watchidvalue,shift_name:shiftvalue,workhour: workhourvalue ,overhour: overhourvalue,leave:leavevalue})\n })\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n // 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n // 取得 輪班別資料\n async getShiftOptions(){\n const data = [];\n ref.collection('ShiftMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const shiftoptions = data.map(Shiftmenu => ({\n \"value\" : Shiftmenu.id,\n \"label\" : Shiftmenu.name\n }))\n // console.log(shiftoptions);\n this.handleSubmit = this.handleSubmit.bind(this);\n this.setState({selectShiftOptions: shiftoptions})\n });\n }\n \n handleChangeWatch(e){\n this.setState({watch_id:e.value, watch_watchid:e.label})\n }\n handleChangeShift(e){\n this.setState({shift_id:e.value, shift_name:e.label})\n }\n handleChangeWorkhovr(e){\n this.setState({workhour:e.target.value})\n }\n handleChangeOverhovr(e){\n this.setState({overhour:e.target.value})\n }\n handleChangeLeave(e){\n this.setState({leave:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Month').doc(this.state.monthid).update({\n \"shift\":this.state.shift_name,\n \"workhour\":this.state.workhour,\n \"overhour\":this.state.overhour,\n \"leave\":this.state.leave,\n \"editedTime\": date\n });\n console.log('修改成功');\n }\n\n componentDidMount(){\n this.getWatchOptions()\n this.getShiftOptions()\n this.getMonthById(this.props.match.params.firebaseid)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改出缺勤紀錄
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditMonth;\n","// ! 給護理長看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_NAR.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Personal');\n\nconst PersonalList = () => {\n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals();\n },[]);\n\n // 取得所有 基本資料\n // 取得所有 基本資料\n const getPersonals = async () =>{\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n personalsId.push(doc.id);\n personalsData.push(doc.data());\n });\n setPersonals(personalsData);\n });\n };\n\n // 刪除 單筆基本資料\n const deletePersonal = async (account) =>{\n ref.doc(account).delete().then(() => {\n alert('刪除成功!');\n });\n window.setTimeout(( () => window.location.reload() ), 1250);\n }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n 安寧病房測試 基本資料
\n [手環從No.1號(GarminWatch31)~No.20號(GarminWatch50)為第一梯次第1部分]
\n [手環從No.21號(GarminWatch91)~No.40號(GarminWatch110)為第一梯次第2部分]
\n \n {/* */}\n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 部門(科別) | \n 職稱 | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal_AR extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n // const { account } = this.props.match.params;\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const blue={\n fontSize: '1rem',\n fontWeight: 'bold',\n color: 'blue'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","// ! 給護理師看的畫面\nimport { useState, useEffect } from \"react\";\nimport { Link, useHistory } from \"react-router-dom\";\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nconst PersonalList = (props) => {\n \n const [personals, setPersonals] = useState([]);\n useEffect(()=>{\n getPersonals(props);\n },[]);\n\n // 取得所有 基本資料\n const getPersonals = async (props) => {\n // 取得 Route 傳過來 path 的 :account\n // alert(props.match.params.account);\n const personalsData = [];\n const personalsId = [];\n \n // 使用 get() 的方式,一次性讀取資料\n const db = ref.collection('Personal');\n const id = decodeURIComponent(props.match.params.account);\n \n db.get().then(items => {\n items.forEach(doc => {\n if (doc.id === id) {\n db.doc(id).get().then(data => {\n personalsId.push(data.id);\n personalsData.push(data.data());\n setPersonals(personalsData);\n })\n }\n });\n });\n };\n\n // 刪除 單筆基本資料\n // const deletePersonal = async (firebaseid) =>{\n // ref.doc(firebaseid).delete().then(() => {\n // alert('刪除成功!');\n // });\n // window.setTimeout(( () => window.location.reload() ), 1250);\n // }\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter = {\n textAlign: 'center',\n }\n return(\n \n
\n
\n \n \n {/* 基本資料
\n \n */}\n \n
\n \n \n 基本資料
\n \n 資料顯示
\n
\n \n \n \n No. | \n 使用者 | \n 性別 | \n 年齡 | \n 婚姻狀況 | \n 有無小孩 | \n 教育程度 | \n 職稱 | \n 部門(科別) | \n 薪資 | \n 建檔日期 | \n 修改日期 | \n 修改 | \n
\n \n \n {personals.map((Personal,index)=> {\n return (\n \n {index + 1} | \n {Personal.watchid} | \n {Personal.sex} | \n {Personal.age} | \n {Personal.marriage} | \n {Personal.children} | \n {Personal.education} | \n {Personal.department} | \n {Personal.position} | \n {Personal.salary} | \n {Personal.createdTime} | \n {Personal.editedTime} | \n \n \n {/* */}\n | \n
\n );\n })} \n \n
\n \n
\n \n
\n );\n \n}\nexport default PersonalList;\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nclass AddPersonal extends Component {\n constructor(props){\n super(props)\n this.state = {\n account:'',\n selectWatchOptions : [], // 手錶使用者選單 \n watch_watchid: '', // 手錶使用者選擇\n selectSexOptions : [], // 性別\n sex_name: '', // 性別選擇\n selectAgeOptions : [], // 年齡\n age_name: '', // 年齡選擇\n selectMarriageOptions : [], // 婚姻狀況\n marriage_name: '', // 婚姻狀況選擇\n selectChildrenOptions : [], // 有無小孩\n children_name: '', // 有無孩子選擇\n selectPositionOptions : [], // 職稱\n position_name: '', // 職稱選擇\n selectEducationOptions : [], // 教育程度\n education_name: '', //教育程度選擇\n selectDepartmentOptions : [], // 部門\n department_name: '', // 部門選擇\n selectSalaryOptions : [], // 薪資\n salary_name: '', // 薪資選擇\n //以下為使用者輸入資料變數\n watchid:'', //手錶使用者\n sex:'', //性別\n age:'', //年齡\n marriage:'', //婚姻狀態\n children:'', //孩子有無\n department:'', //部門\n education:'', //教育程度\n position:'', //職稱\n salary: '', //薪資\n uat: '' // userAccessToken\n }\n }\n//以下為從資料庫取得下拉選單\n async getAccount(Account) {\n this.setState({ account: Account });\n }\n //取得 手錶資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n //將從資料庫取得的資料存進watchoption陣列\n for (let i = 0; i < watchData.length; i++){\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n //需將selectWatchOptions資料為watchoptions,外層才可以使用\n this.setState({selectWatchOptions: watchoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get 性別\n async getSexOptions(){\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\" : Sex.id,\n \"label\" : Sex.name\n }))\n this.setState({selectSexOptions: sexoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n }\n\n // get 年齡\n async getAgeOptions(){ \n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\" : Age.id,\n \"label\" : Age.name\n }))\n this.setState({selectAgeOptions: ageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 婚姻狀況\n async getMarriageOptions(){\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\" : Marriage.id,\n \"label\" : Marriage.name\n }))\n this.setState({selectMarriageOptions: marriageoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 有無小孩\n async getChildrenOptions(){\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\" : Children.id,\n \"label\" : Children.name\n }))\n this.setState({selectChildrenOptions: childrenoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 職稱\n async getPositionOptions(){\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\" : Position.id,\n \"label\" : Position.name\n }))\n this.setState({selectPositionOptions: positionoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 部門\n async getDepartmentOptions(){\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\" : Department.id,\n \"label\" : Department.name\n }))\n this.setState({selectDepartmentOptions: departmentoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n }); \n }\n\n // get 教育程度\n async getEducationOptions(){\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\" : Education.id,\n \"label\" : Education.name\n }))\n this.setState({selectEducationOptions: educationoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // get 薪資\n async getSalaryOptions(){\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\" : Salary.id,\n \"label\" : Salary.name\n }))\n this.setState({selectSalaryOptions: salaryoptions});\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeWatch(e){\n this.setState({ watch_watchid: e.label });\n const watchData = [];\n // 取得 firebase 中的 Watch 資料,並存入 watchData 中\n ref.collection('Watch').get().then(items => {\n items.forEach(doc => {\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n if (e.label == watchData[i].watchid) {\n this.setState({uat: watchData[i].userAccessToken});\n }\n }\n });\n \n }\n handleChangeSex(e){\n this.setState({sex_name:e.label})\n }\n handleChangeAge(e){\n this.setState({age_name:e.label})\n }\n handleChangeMarriage(e){\n this.setState({marriage_name:e.label})\n }\n handleChangeChildren(e){\n this.setState({children_name:e.label})\n }\n handleChangeDepartment(e){\n this.setState({department_name:e.label})\n }\n handleChangePosition(e){\n this.setState({position_name:e.label})\n }\n handleChangeEducation(e){\n this.setState({education_name:e.label})\n }\n handleChangeSalary(e){\n this.setState({ salary_name: e.label })\n }\n \n //新增資料到資料庫\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if(this.state.watch_watchid == '' || this.state.sex_name == '' || this.state.age_name == '' || this.state.marriage_name == '' || this.state.children_name == '' || this.state.department_name == '' || this.state.education_name == '' || this.state.position_name == '' || this.state.salary_name == ''){\n alert('有資料未填寫!');\n e.preventDefault(); \n }else{\n ref.collection('Personal').doc(this.state.account).set({\n \"account\": this.state.account, // 帳號\n \"watchid\": this.state.watch_watchid, // 手錶\n \"sex\":this.state.sex_name, // 性別\n \"age\":this.state.age_name, // 年齡\n \"marriage\":this.state.marriage_name, // 婚姻狀況\n \"children\":this.state.children_name, // 有無小孩\n \"department\":this.state.department_name, // 部門\n \"education\":this.state.education_name, // 教育程度\n \"position\":this.state.position_name, // 職稱\n \"salary\": this.state.salary_name, // 薪資\n \"uat\":this.state.uat, // userAccessToken\n \"createdTime\": date, // 建檔日期\n })\n console.log(\"新增成功\");\n }\n }\n \n //進入頁面自動執行\n componentDidMount() {\n this.getAccount(decodeURIComponent(this.props.match.params.account))\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n }\n\n \n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增基本資料
\n \n
\n Link>\n \n \n
\n );\n }\n \n}\nexport default AddPersonal; //將AddPersonal 渲染出去\n","import React, { Component } from 'react';\nimport Select from 'react-select';\nimport axios from 'axios';\nimport { Link} from 'react-router-dom';\nimport Headers from '../Headers_NoTopics.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class EditPersonal_AR extends Component {\n constructor(props) {\n super(props)\n this.state = {\n Account:'',\n personalid: '',\n selectWatchOptions: [],\n watch_watchid: '',\n selectSexOptions: [],\n sex_name: '',\n selectAgeOptions: [],\n age_name: '',\n selectMarriageOptions: [],\n marriage_name: '',\n selectChildrenOptions: [],\n children_name: '',\n selectPositionOptions: [],\n position_name: '',\n selectEducationOptions: [],\n education_name: '',\n selectDepartmentOptions: [],\n department_name: '',\n selectSalaryOptions: [],\n salary_name: '',\n\n watchid: '',\n sex: '',\n age: '',\n marriage: '',\n children: '',\n department: '',\n education: '',\n position: '',\n salary: '',\n }\n }\n\n //get 單筆基本資料\n async getPersonalById(account) {\n ref.collection('Personal').doc(account).get().then(items => {\n // const account = items.id;\n const data = items.data();\n const watchidvalue = data.watchid;\n const agevalue = data.age;\n const sexvalue = data.sex;\n const marriagevalue = data.marriage;\n const childrenvalue = data.children;\n const educationvalue = data.education;\n const positionvalue = data.position;\n const departmentvalue = data.department;\n const salaryvalue = data.salary;\n\n \n this.setState({\n Account : account,\n watch_watchid: watchidvalue,\n age_name: agevalue,\n sex_name: sexvalue,\n marriage_name: marriagevalue,\n children_name: childrenvalue,\n education_name: educationvalue,\n position_name: positionvalue,\n department_name: departmentvalue,\n salary_name: salaryvalue\n })\n });\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n //get watch\n async getWatchOptions() {\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++) {\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.id,\n \"label\": Watch.watchid\n }));\n this.setState({ selectWatchOptions: watchoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n // console.log(watchData[i]);\n }\n });\n }\n\n //get sex\n async getSexOptions() {\n const data = [];\n ref.collection('SexMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const sexoptions = data.map(Sex => ({\n \"value\": Sex.id,\n \"label\": Sex.name\n }))\n this.setState({ selectSexOptions: sexoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 年齡\n async getAgeOptions() {\n const data = [];\n ref.collection('AgeMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const ageoptions = data.map(Age => ({\n \"value\": Age.id,\n \"label\": Age.name\n }))\n this.setState({ selectAgeOptions: ageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 婚姻狀況\n async getMarriageOptions() {\n const data = [];\n ref.collection('MarriageMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const marriageoptions = data.map(Marriage => ({\n \"value\": Marriage.id,\n \"label\": Marriage.name\n }))\n this.setState({ selectMarriageOptions: marriageoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 有無小孩\n async getChildrenOptions() {\n const data = [];\n ref.collection('ChildrenMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const childrenoptions = data.map(Children => ({\n \"value\": Children.id,\n \"label\": Children.name\n }))\n this.setState({ selectChildrenOptions: childrenoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 職稱\n async getPositionOptions() {\n const data = [];\n ref.collection('PositionMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const positionoptions = data.map(Position => ({\n \"value\": Position.id,\n \"label\": Position.name\n }))\n this.setState({ selectPositionOptions: positionoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 部門\n async getDepartmentOptions() {\n const data = [];\n ref.collection('DepartmentMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const departmentoptions = data.map(Department => ({\n \"value\": Department.id,\n \"label\": Department.name\n }))\n this.setState({ selectDepartmentOptions: departmentoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 教育程度\n async getEducationOptions() {\n const data = [];\n ref.collection('EducationMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const educationoptions = data.map(Education => ({\n \"value\": Education.id,\n \"label\": Education.name\n }))\n this.setState({ selectEducationOptions: educationoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n // 薪資\n async getSalaryOptions() {\n const data = [];\n ref.collection('SalaryMenu').orderBy('id').onSnapshot(querySnapshot => {\n querySnapshot.forEach(doc => {\n data.push(doc.data());\n });\n const salaryoptions = data.map(Salary => ({\n \"value\": Salary.id,\n \"label\": Salary.name\n }))\n this.setState({ selectSalaryOptions: salaryoptions });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n }\n\n\n handleChangeWatch(e) {\n this.setState({ watch_watchid: e.label })\n }\n handleChangeSex(e) {\n this.setState({ sex_name: e.label })\n }\n handleChangeAge(e) {\n this.setState({ age_name: e.label })\n }\n handleChangeMarriage(e) {\n this.setState({ marriage_name: e.label })\n }\n handleChangeChildren(e) {\n this.setState({ children_name: e.label })\n }\n handleChangeDepartment(e) {\n this.setState({ department_name: e.label })\n }\n handleChangePosition(e) {\n this.setState({ position_name: e.label })\n }\n handleChangeEducation(e) {\n this.setState({ education_name: e.label })\n }\n handleChangeSalary(e) {\n this.setState({ salary_name: e.label })\n }\n //update personal by account\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n\n ref.collection('Personal').doc(this.state.Account).update({\n \"age\": this.state.age_name,\n \"sex\": this.state.sex_name,\n \"marriage\": this.state.marriage_name,\n \"children\": this.state.children_name,\n \"education\": this.state.education_name,\n \"position\": this.state.position_name,\n \"department\": this.state.department_name,\n \"salary\": this.state.salary_name,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n\n componentDidMount() {\n this.getWatchOptions()\n this.getSexOptions()\n this.getAgeOptions()\n this.getMarriageOptions()\n this.getChildrenOptions()\n this.getDepartmentOptions()\n this.getEducationOptions()\n this.getPositionOptions()\n this.getSalaryOptions()\n this.getPersonalById(decodeURIComponent(this.props.match.params.account))\n }\n\n render() {\n //console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return (\n \n
\n
\n 修改基本資料
\n \n
\n \n \n \n
\n );\n }\n}\n","import { useState,useEffect } from \"react\";\nimport { Link } from \"react-router-dom\";\n// bootstrapt\nimport { Table, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nimport Headers from '../Headers_NAR.js';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore().collection('Watch');\nconst WatchList = () => {\n const [watch, setWatch] = useState([]);\n useEffect(()=>{\n getWatch();\n }, []);\n \n const deleteWatch = async (firebaseid) => {\n ref.doc(firebaseid).delete().then(() => {\n console.log('delete ',firebaseid,' successful');\n });\n window.setTimeout(( () => window.location.reload() ), 1300);\n }\n const getWatch = async () =>{\n // const response = await axios.get('http://localhost:5000/watch');\n // const resData = response.data; // 包含了 firebaseid 與 \"資料\" 內容\n // setWatch(resData);\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.orderBy('watchid').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n // console.log(watchData[i]);\n }\n setWatch(watchData);\n });\n }\n\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h3={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '50px',\n marginBottom: '-10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const button={\n margin: '5px',\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n
\n \n \n Garmin Watch 手錶
\n \n \n \n
\n \n \n 資料顯示
\n
\n \n \n \n No. | \n 手錶編號 | \n 帳號 | \n 密碼 | \n userAccessToken | \n userAccessTokenSecret | \n 建檔日期 | \n 修改日期 | \n 修改刪除 | \n
\n \n \n {watch.map((Watch,index)=> {\n return(\n \n {Watch.id} | \n {Watch.watchid} | \n {Watch.account} | \n {Watch.password} | \n {Watch.userAccessToken} | \n {Watch.userAccessTokenSecret} | \n {Watch.createdTime} | \n {Watch.editedTime} | \n \n \n \n | \n
\n );\n })} \n \n
\n \n
\n \n \n
\n );\n}\nexport default WatchList;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\n//新增手錶頁(僅後端使用者可讀寫)\nclass AddWatch extends Component {\n constructor(props) {\n super(props)\n this.state = {\n id: '',\n watchid: 'GarminWatch',\n account: '',\n password: '',\n userAccessToken: '',\n userAccessTokenSecret: '',\n maxid: '',\n };\n }\n\n async getMaxWatchNum() {\n const watchNumData = [];\n // const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('MaxWatchNum').doc('MaxWatchId').get().then(items => {\n this.setState({ maxid: items.data().maxid });\n this.handleSubmit = this.handleSubmit.bind(this);\n });\n \n };\n \n //handleChange...(e) 用於儲存變動的便數資料\n handleChangeID(e){\n this.setState({ id: e.target.value });\n // this.handleSubmit = this.handleSubmit.bind(this);\n };\n handleChangeAccount(e){\n this.setState({ account: e.target.value });\n };\n handleChangeWatchId(e){\n this.setState({ watchid: e.target.value });\n }\n handleChangePassword(e){\n this.setState({ password: e.target.value });\n }\n handleChangeUserAccessToken(e){\n this.setState({ userAccessToken: e.target.value });\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({ userAccessTokenSecret: e.target.value });\n }\n\n\n handleSubmit(e){\n const today = new Date();\n const date = today.getFullYear() + '/' + (today.getMonth() + 1) + '/' + today.getDate() + ' ' + today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() + ' ';\n if (this.state.id == '' || this.state.watchid == 'GarminWatch' || this.state.account == '' || this.state.password == '' || this.state.userAccessToken == '' || this.state.userAccessTokenSecret == '') {\n alert('有資料未填寫!');\n e.preventDefault(); \n }\n else {\n ref.collection('Watch').doc().set({\n \"id\": this.state.id,\n \"watchid\": this.state.watchid, // 手錶編號\n \"account\": this.state.account, // 輪班別\n \"password\": this.state.password, // 工作時數\n \"userAccessToken\": this.state.userAccessToken, // 加班天數\n \"userAccessTokenSecret\": this.state.userAccessTokenSecret, // 請假天數\n \"firebaseid\": \"\",\n \"createdTime\": date\n });\n console.log('新增成功');\n ref.collection('MaxWatchNum').doc('MaxWatchId').set({\n \"maxid\": Number(this.state.id)\n });\n }\n }\n\n componentDidMount(){\n this.getMaxWatchNum()\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 新增手錶資料
\n \n 目前手錶數量 : {this.state.maxid}
\n
\n \n \n \n
\n );\n };\n \n};\nexport default AddWatch;\n","import React, { Component } from 'react';\nimport axios from 'axios';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\n// bootstrapt\nimport { Form, Container, Row, Col, Button } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\n// 取得 Firebase 中的 Personal 資料表\nconst ref = firebase.firestore();\n\nclass EditWatch extends Component {\n\n constructor(props){\n super(props)\n this.state = {\n Watchsid:\"\",\n watchid:\"\",\n account:\"\",\n password:\"\",\n useraccesstoken:\"\",\n useraccesstokensecret:\"\",\n }\n }\n async getWatchById(firebaseid){\n\n ref.collection('Watch').doc(firebaseid).get().then(items => {\n const data = items.data();\n const watchidvalue = data.watchid;\n const accountvalue = data.account;\n const passwordvalue = data.password;\n const useraccesstokenvalue = data.userAccessToken;\n const useraccesstokensecretvalue = data.userAccessTokenSecret;\n this.setState({ Watchsid: firebaseid, watchid: watchidvalue, account: accountvalue, password: passwordvalue, useraccesstoken: useraccesstokenvalue, useraccesstokensecret: useraccesstokensecretvalue });\n });\n\n \n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChangeAccount(e){\n this.setState({ account: e.target.value })\n // this.handleSubmit = this.handleSubmit.bind(this);\n }\n handleChangePassword(e){\n this.setState({password:e.target.value})\n }\n handleChangeUserAccessToken(e){\n this.setState({useraccesstoken:e.target.value})\n }\n handleChangeUserAccessTokenSecret(e){\n this.setState({useraccesstokensecret:e.target.value})\n }\n handleSubmit(e) {\n const today = new Date();\n const date = today.getFullYear()+'/'+(today.getMonth()+1)+'/'+today.getDate()+' '+today.getHours()+':'+today.getMinutes()+':'+today.getSeconds()+' ';\n ref.collection('Watch').doc(this.state.Watchsid).update({\n \"account\":this.state.account,\n \"password\":this.state.password,\n \"userAccessToken\":this.state.useraccesstoken,\n \"userAccessTokenSecret\":this.state.useraccesstokensecret,\n \"editedTime\": date\n });\n console.log('修改成功')\n }\n\n componentDidMount(){\n const { firebaseid } = this.props.match.params;\n this.getWatchById(firebaseid)\n }\n\n \n\n render() {\n // console.log(this.state.selectShiftOptions)\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n }\n const p={\n fontSize: '1.5rem',\n color: '#50a9b9'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const margin={\n margin: '10px',\n }\n const button={\n margin: '5px',\n float:'right'\n }\n return(\n \n
\n
\n 修改手錶資料
\n \n
\n \n \n \n
\n );\n }\n \n}\nexport default EditWatch;\n","// 數據分析 - 心率指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\nimport axios from \"axios\";\n// bootstrap\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class HeartRateAnalyze_AR extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n HeartRateData:[], //此陣列存放完整的心率資料\n selectCalendarOptions: [], //此陣列存放日期陣列\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n // 取得日期\n async getCalendarOptions(uat) {\n console.log(uat);\n const response = await axios.get('https://imow.nutc.edu.tw:8091/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/heartratecalendar/'+ uat); // 到 heartratecalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log('+++' + calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n \n // 取得 心率 資料\n async getHeartRateData(uat, watchid, calendar) {\n console.log(uat, watchid, calendar);\n // 到後端抓取 心率 的資料\n const response = await axios.post('https://imow.nutc.edu.tw:8091/heartrateanalyze', { uat, watchid, calendar });\n // const response = await axios.post('https://localhost:8080/heartrateanalyze', { uat, watchid, calendar });\n // 如果沒有資料\n if (response.data == '') {\n this.setState({ HeartRateData: response.data }); //將內部陣列存入外層陣列\n console.log(response.data);\n // 跳出通知\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({HeartRateData: response.data}); //將內部陣列存入外層陣列\n }\n }\n\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n this.getCalendarOptions(e.value);\n \n }\n\n handleChangeCalendar(e) {\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n this.getHeartRateData(this.state.watch_UAT,this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 心率指數(秒/bmp)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n \n \n
\n \n < 60:心跳過慢 \n 60 ~ 100:心跳正常 \n > 100:心跳過快 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Heart Rate | \n Heart Rate Level | \n
\n \n \n {this.state.HeartRateData.map((HeartRate, index) => {\n if (HeartRate.HeartRateLevel == '過快') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '過慢') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n else if (HeartRate.HeartRateLevel == '正常') {\n return(\n \n {index + 1} | \n {HeartRate.Watch_id} | \n {HeartRate.Calendar} | \n {HeartRate.Time} | \n {HeartRate.HeartRate} | \n {HeartRate.HeartRateLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class StressAnalyze_AR extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '',\n watch_id: '',\n StressData:[], //完整的 壓力 資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n // ! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8091/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/stresscalendar/' + uat ); // 到 stresscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n // ! 取得 Stress 所有資料,uat = userAccessToken\n async getStressOptions(uat, watchid, calendar){\n console.log(uat, watchid, calendar);\n try{\n const response = await axios.post('https://imow.nutc.edu.tw:8091/stressanalyze', {uat, watchid, calendar});\n // const response = await axios.post('https://localhost:8080/stressanalyze', {uat, watchid, calendar});\n if(response.data == ''){\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({StressData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n handleChangeWatch(e){\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getStressOptions\n this.getStressOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n { this.state.calendar_Date } 壓力指數
\n \n \n \n \n \n \n \n \n \n \n
\n \n -2:運動量過大 \n -1:無資料 \n 1 ~ 25:休息 \n 26 ~ 50:輕度壓力 \n 51 ~ 75:中度壓力 \n 76 ~ 100:重度壓力 \n
\n {/* 表格 */}\n 資料顯示
\n \n \n \n NO | \n User | \n Calendar | \n Time | \n Stress | \n Stress Level | \n
\n \n \n {this.state.StressData.map((Stress, index) => {\n if (Stress.Stress == -2) {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '休息') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '輕度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '中度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n else if (Stress.StressLevel == '重度壓力') {\n return(\n \n {index + 1} | \n {Stress.Watch_id} | \n {Stress.Calendar} | \n {Stress.Time} | \n {Stress.Stress} | \n {Stress.StressLevel} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","// 數據分析 - 睡眠狀態\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\nimport 'bootstrap/dist/css/bootstrap.min.css';\n// 數線圖\nimport { AreaChart, Area, BarChart, Bar, Cell, Legend, LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, ResponsiveContainer, LabelList, } from 'recharts';\n// 連接 Firebase\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nconst ref = firebase.firestore();\n\nexport default class SleepsAnalyze_AR extends PureComponent {\n constructor(props){\n super(props)\n this.state = {\n selectWatchOptions : [],\n watch_UAT: '', // 手錶 UserAccessToken\n watch_id: '', // 手錶編號 GarminWatch01\n SleepData:[], //完整的睡眠資料\n selectCalendarOptions: [], //此陣列存放日期\n calendar_id: '',\n calendar_Date: '',\n }\n }\n\n //! 取得 watch 資料\n async getWatchOptions(){\n const watchData = [];\n const watchId = [];\n // 使用 get() 的方式,一次性讀取資料\n ref.collection('Watch').orderBy('account').get().then(items => {\n items.forEach(doc => {\n watchId.push(doc.id);\n watchData.push(doc.data());\n });\n for (let i = 0; i < watchData.length; i++){\n watchData[i].firebaseid = watchId[i];\n const watchoptions = watchData.map(Watch => ({\n \"value\": Watch.userAccessToken,\n \"label\": Watch.watchid\n }));\n this.setState({selectWatchOptions: watchoptions});\n }\n });\n }\n\n //! 取得日期\n async getCalendarOptions(uat) {\n const response = await axios.get('https://imow.nutc.edu.tw:8091/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n // const response = await axios.get('https://localhost:8080/sleepscalendar/'+ uat ); // 到 sleepscalendar 地址抓取 日期 陣列\n const calendarArray = response.data; // calendarArray 存放傳回來的 日期陣列\n // 將 日期陣列 中的資料放到 calendaroptions 中\n const calendaroptions = calendarArray.map(Calendar => ({\n \"value\" : Calendar.id,\n \"label\": Calendar.calendar,\n }));\n console.log(calendaroptions);\n this.setState({selectCalendarOptions: calendaroptions});\n }\n\n //! 取得 Sleeps 的所有資料,uat = userAccessToken\n async getSleepsOptions(uat, watchid , calendar) {\n console.log(uat, watchid, calendar);\n try{\n // const response = await axios.post('https://localhost:8080/sleepsanalyze',{uat, watchid, calendar});\n const response = await axios.post('https://imow.nutc.edu.tw:8091/sleepsanalyze',{uat, watchid, calendar});\n if (response.data == '') {\n console.log(response.data);\n this.setState({ SleepData: response.data }); //將內部陣列存入外層陣列\n alert('無資料');\n } else {\n console.log(response.data);\n this.setState({SleepData: response.data}); //將內部陣列存入外層陣列\n }\n }catch(error){\n console.log(error);\n }\n }\n\n // 改變 this.state.watch 的資料\n handleChangeWatch(e) {\n this.setState({ watch_UAT: e.value, watch_id: e.label });\n // 將使用者選擇的 userAccessToken 傳給 getCalendarOptions\n this.getCalendarOptions(e.value);\n \n }\n\n // 改變 this.state.calendar 的資料\n handleChangeCalendar(e){\n this.setState({ calendar_id: e.value, calendar_Date: e.label });\n // 將 userAccessToken 跟 calendar (使用者選擇的日期) 傳給 getSleepsOptions\n this.getSleepsOptions(this.state.watch_UAT, this.state.watch_id, e.label);\n }\n\n componentDidMount(){\n this.getWatchOptions();\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n return (\n \n
\n \n \n 手錶編號:
\n
\n \n \n 選擇日期:
\n
\n \n
\n {this.state.calendar_Date} 睡眠狀態(秒)
\n {/* 數線圖 */}\n \n \n \n \n \n \n \n \n {/* */}\n \n \n \n
\n \n 1:深層睡眠 \n 2:淺層睡眠 \n 3:REM 快速動眼期 \n 4:清醒 \n
\n 資料顯示
\n {/* 表格 */}\n \n \n \n NO | \n User | \n Calendar | \n Time | \n ID | \n SleepType | \n
\n \n \n {this.state.SleepData.map((Sleep, index) => {\n if (Sleep.sleepType == '清醒') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == 'REM 快速動眼期') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '淺層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n else if (Sleep.sleepType == '深層睡眠') {\n return(\n \n {index + 1} | \n {Sleep.Watch_id} | \n {Sleep.Calendar} | \n {Sleep.Time} | \n {Sleep.id} | \n {Sleep.sleepType} | \n
\n );\n }\n })} \n \n
\n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\nimport firebase from '../config/database_AR.js';\nimport 'firebase/compat/firestore';\nimport HeartRateAnalyze_AR from './Analyze_HeartRate_NAR.js';\nimport StressAnalyze_AR from './Analyze_Stress_NAR.js';\nimport SleepAnalyze_AR from './Analyze_Sleep_NAR.js';\n// import 'bootstrap/dist/css/bootstrap.min.css';\n\n\nconst ref = firebase.firestore();\n\nexport default class Analyze_AR extends PureComponent {\n\n constructor(props){\n super(props)\n this.state = ({gender : ''})\n this.changeGender = this.changeGender.bind(this)\n }\n //宣告事件時傳入參數event取得觸發事件變數\n changeGender(event){\n //將觸發事件的DOM從event內的target屬性取出\n // console.log(event.target)\n //指定選擇的選項給state.gender\n this.setState({gender:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.gender變動為:${this.state.gender}`)\n }\n\n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n }\n const margin={\n margin: '10px',\n }\n const h5={\n fontSize: '1.25rem',\n }\n const buttom={\n fontSize: '20px',\n color: 'green',\n margin: '10px',\n }\n\n //在render()中宣告一個text變數\n let text;\n //之後去判斷使用者選擇的是哪個\n if(this.state.gender === \"heartrate\")\n //用變數儲存組件\n text = \n else if(this.state.gender === \"stress\")\n text = \n else if(this.state.gender === \"sleep\")\n text = \n else\n text = \"\"\n\n return (\n \n \n \n \n \n \n
\n {/*\n \n */}\n {/*下拉式選單*/}\n \n {/*上面所設的text變數呈現在這裡*/}\n {text}\n \n \n \n \n );\n }\n}\n","// 數據分析 - 壓力指數\nimport React, { PureComponent } from 'react';\nimport Select from 'react-select';\nimport { Link } from 'react-router-dom';\nimport Headers from '../Headers_NAR.js';\nimport axios from \"axios\";\n// bootstrap\nimport { Table, Container, Row, Col } from 'react-bootstrap';\n// import { Image } from 'semantic-ui-react'\nimport A from '../Picture/A.png';\nimport B from '../Picture/B.png';\n\n\n\n\n\nexport default class PictureBox_AR extends PureComponent {\n \n constructor(props){\n super(props)\n this.state = ({Picture : ''})\n this.changePicture = this.changePicture.bind(this)\n }\n changePicture(event){\n \n this.setState({Picture:event.target.value})\n }\n componentDidUpdate(){\n console.log(`已將state.Picture變動為:${this.state.Picture}`)\n }\n \n render() {\n const h2={\n fontSize: '2rem',\n fontWeight: 'bold',\n paddingTop: '10px'\n }\n const h4={\n fontSize: '2rem',\n fontWeight: 'bold',\n marginTop: '30px',\n marginBottom: '20px'\n }\n const h3={\n fontSize: '1.5rem',\n fontWeight: 'bold',\n marginTop: '20px',\n marginBottom: '10px'\n }\n const line={\n height: '1px',\n borderTop: 'solid gray 1px',\n margin: '10px 0'\n }\n const textCenter={\n textAlign: 'center',\n }\n const h5={\n fontSize: '1.25rem',\n }\n let text\n if(this.state.gender === \"Age\")\n text=< img src={A} alt=\"A\"/>\n else if(this.state.gender === \"Banbie\")\n text = ''\n else if(this.state.gender === \"Salary\")\n text = ''\n else\n text = \"\"\n\n return (\n \n
\n
\n \n \n \n \n \n \n \n \n
\n 圖片展示
\n \n {text}\n
\n
\n \n \n \n \n
\n );\n }\n}\n","import React, { PureComponent } from 'react';\r\nimport{Grid,Container,Header,Form,Button} from 'semantic-ui-react';\r\nimport Select from 'react-select';\r\nimport { Link } from 'react-router-dom';\r\nimport Headers from '../Headers_NAR.js';\r\nimport firebase from '../config/database_AR.js';\r\nimport 'firebase/compat/firestore';\r\nimport HeartRateAnalyze from './Analyze_HeartRate_NAR.js';\r\nimport StressAnalyze from './Analyze_Stress_NAR.js';\r\nimport SleepAnalyze from './Analyze_Sleep_NAR.js';\r\nimport PictureBox from './Picture_Box_NAR.js';\r\n// import 'bootstrap/dist/css/bootstrap.min.css';\r\n\r\n\r\nconst ref = firebase.firestore();\r\n\r\nexport default class Picture_AR extends PureComponent {\r\n\r\n constructor(props){\r\n super(props)\r\n this.state = ({gender : ''})\r\n this.changeGender = this.changeGender.bind(this)\r\n }\r\n //宣告事件時傳入參數event取得觸發事件變數\r\n changeGender(event){\r\n //將觸發事件的DOM從event內的target屬性取出\r\n // console.log(event.target)\r\n //指定選擇的選項給state.gender\r\n this.setState({gender:event.target.value})\r\n }\r\n componentDidUpdate(){\r\n console.log(`已將state.gender變動為:${this.state.gender}`)\r\n }\r\n\r\n render() {\r\n const h2={\r\n fontSize: '2rem',\r\n fontWeight: 'bold',\r\n }\r\n const line={\r\n height: '1px',\r\n borderTop: 'solid gray 1px',\r\n }\r\n const margin={\r\n margin: '10px',\r\n }\r\n const h5={\r\n fontSize: '1.25rem',\r\n }\r\n const buttom={\r\n fontSize: '20px',\r\n color: 'green',\r\n margin: '10px',\r\n }\r\n\r\n //在render()中宣告一個text變數\r\n let text;\r\n //之後去判斷使用者選擇的是哪個\r\n if(this.state.gender === \"PictureBox\")\r\n //用變數儲存組件\r\n text = \r\n else if(this.state.gender === \"stress\")\r\n text = \r\n else if(this.state.gender === \"sleep\")\r\n text = \r\n else\r\n text = \"\"\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n {/*\r\n \r\n */}\r\n {/*下拉式選單*/}\r\n \r\n {/*上面所設的text變數呈現在這裡*/}\r\n {text}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n"," import {BrowserRouter,Switch,Route} from 'react-router-dom';\n import Signin_NAR from \"./pages_NAR/Signin_NAR.js\";\n// 月更新資料\n import MonthList_NAR from \"./pages_NAR/MonthList_NAR.js\";\n import AddMonth_NAR from \"./pages_NAR/AddMonth_NAR.js\";\n import EditMonth_NAR from \"./pages_NAR/EditMonth_NAR.js\";\n// 基本資料\n// 護理長\n import PersonalDeveloper_NAR from './pages_NAR/PersonalDeveloper_NAR.js';\n import AddPersonalDeveloper_NAR from './pages_NAR/AddPersonalDeveloper_NAR.js';\n import EditPersonalDeveloper_NAR from './pages_NAR/EditPersonalDeveloper_NAR.js';\n// 護理師\n import Personal_NAR from './pages_NAR/Personal_NAR.js';\n import AddPersonal_NAR from './pages_NAR/AddPersonal_NAR.js';\n import EditPersonal_NAR from './pages_NAR/EditPersonal_NAR.js';\n// 手錶資料\n import WatchList_NAR from './pages_NAR/WatchList_NAR.js';\n import AddWatch_NAR from \"./pages_NAR/AddWatch_NAR.js\";\n import EditWatch_NAR from \"./pages_NAR/EditWatch_NAR.js\";\n// 數據分析\n import Analyze_NAR from './pages_NAR/Analyze_NAR.js';\n import AnalyzeHeartRate_NAR from './pages_NAR/Analyze_HeartRate_NAR.js';\n import AnalyzeSleep_NAR from './pages_NAR/Analyze_Sleep_NAR.js';\n import AnalyzeStress_NAR from './pages_NAR/Analyze_Stress_NAR.js';\n import Picture_NAR from './pages_NAR/Picture_NAR.js';\n import PictureBox_NAR from './pages_NAR/Picture_Box_NAR.js';\n\nfunction App_NAR() {\n return (\n \n \n {/* 登入 */}\n \n \n \n\n {/* 月更新資料 */}\n \n \n \n \n \n \n \n \n\n {/* 基本資料 */}\n {/* 護理長看到畫面 */}\n \n \n \n \n \n \n \n\n {/* 護理師看到畫面 */}\n \n \n \n\n {/* 數據分析 */}\n \n \n \n \n \n \n {/* 心率指數 */}\n \n \n \n {/* 睡眠狀態 */}\n \n \n \n {/* 壓力指數 */}\n \n \n \n \n \n \n \n {/* 手錶資料 */}\n \n \n \n \n \n \n \n \n \n \n );\n}\n\nexport default App_NAR;\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport App from './App.js';\nimport App_ER from './App_ER.js';\nimport App_AR from './App_AR.js';\nimport App_N from './App_N.js';\nimport App_NER from './App_NER.js';\nimport App_NAR from './App_NAR.js';\nimport \"bulma/css/bulma.css\";\n\nReactDOM.render(\n \n \n \n \n \n \n \n ,\n document.getElementById('root')\n);\n\n\n"],"sourceRoot":""}