방선주 방선주 2023-03-03
230303 방선주 대상자 수정페이지 적용
@ceba5282d32e7da2d263b376f984ef39bf087b91
client/views/pages/AppRoute.jsx
--- client/views/pages/AppRoute.jsx
+++ client/views/pages/AppRoute.jsx
@@ -22,7 +22,7 @@
 import Main_guardian from "./main/Main_guardian.jsx";
 import Main_agency from "./main/Main_agency.jsx";
 import Main from "./main/Main.jsx";
-import SeniorInsert from "./senior_management/SeniorEdit.jsx";
+import SeniorEdit from "./senior_management/SeniorEdit.jsx";
 import SeniorSelectOne from "./senior_management/SeniorSelectOne.jsx";
 import MedicineCareSelectOne from "./healthcare/medicinecare/MedicineCareSelectOne.jsx";
 import TemperatureManagementSelectOne from "./healthcare/temperature/TemperatureManagementSelectOne.jsx";
@@ -266,7 +266,7 @@
       <Route path="/QuestionSelect" element={<QuestionSelect />}></Route>
       <Route path="/Main_agency" element={<Main_agency />}></Route>
       <Route path="/UserAuthoriySelect_agency" element={<UserAuthoriySelect_agency />}></Route>
-      <Route path="/SeniorInsert" element={<SeniorInsert />}></Route>
+      <Route path="/SeniorEdit/:seniorId" element={<SeniorEdit />}></Route>
       <Route path="/SeniorSelectOne/:seniorId" element={<SeniorSelectOne />}></Route>      
       <Route
         path="/MedicineCareSelectOne"
@@ -329,7 +329,7 @@
       <Route path="/QandAConfirm" element={<QandAConfirm />}></Route>
       <Route path="/QandAInsert" element={<QandAInsert />}></Route>
       <Route path="/ProtectorSelect" element={<ProtectorSelect />}></Route>
-      <Route path="/SeniorInsert" element={<SeniorInsert />}></Route>
+      <Route path="/SeniorEdit/:seniorId" element={<SeniorEdit />}></Route>
       <Route path="/AgencyInsert" element={<AgencyInsert />}></Route>
       <Route path="/Join" element={<Join />}></Route>
       <Route path="/Test" element={<Test />}></Route>
@@ -559,7 +559,7 @@
       <Route path="/QandAConfirm" element={<QandAConfirm />}></Route>
       <Route path="/QandAInsert" element={<QandAInsert />}></Route>
       <Route path="/ProtectorSelect" element={<ProtectorSelect />}></Route>
-      <Route path="/SeniorInsert" element={<SeniorInsert />}></Route>
+      <Route path="/SeniorEdit/:seniorId" element={<SeniorEdit />}></Route>
       <Route path="/AgencyInsert" element={<AgencyInsert />}></Route>
       <Route path="/Join" element={<Join />}></Route>
     </Routes>
@@ -628,8 +628,8 @@
       
       <Route path="/Main_agency" element={<Main_agency />}></Route>
       <Route path="/UserAuthoriySelect_agency" element={<UserAuthoriySelect_agency />}></Route>
-      <Route path="/SeniorInsert" element={<SeniorInsert />}></Route>
-      <Route path="/SeniorSelectOne" element={<SeniorSelectOne />}></Route>
+      <Route path="/SeniorEdit/:seniorId" element={<SeniorEdit />}></Route>
+      <Route path="/SeniorSelectOne/:seniorId" element={<SeniorSelectOne />}></Route>
       <Route
         path="/MedicineCareSelectOne"
         element={<MedicineCareSelectOne />}
client/views/pages/senior_management/SeniorEdit.jsx
--- client/views/pages/senior_management/SeniorEdit.jsx
+++ client/views/pages/senior_management/SeniorEdit.jsx
@@ -3,18 +3,40 @@
 import ContentTitle from "../../component/ContentTitle.jsx";
 import { useNavigate } from "react-router";
 import SubTitle from "../../component/SubTitle.jsx";
-import { useLocation } from 'react-router-dom';
+import { useParams } from "react-router";
 
-export default function SeniorInsert() {
-  const seniorInfo = useLocation();
-  console.log(seniorInfo);
-
+export default function SeniorEdit() {
   const navigate = useNavigate();
+  let { seniorId } = useParams();
+
+  const [seniortOne, setSeniorOne] = React.useState([]);
+
+  //-------- 상세페이지 선택된 대상자의 정보 불러오기 --------//
+  const getSeniorDataOne = () => {
+    fetch("/user/selectSeniorOne.json", {
+      method: "POST",
+      headers: {
+        'Content-Type': 'application/json; charset=UTF-8'
+      },
+      body: JSON.stringify({
+        user_id: seniorId
+      }),
+    }).then((response) => response.json()).then((data) => {
+      setSeniorOne(data[0]);
+      setTelNum(data[0].user_phonenumber)
+      setHomeAddress(data[0].user_address)
+      setMedicineM(data[0].breakfast_medication_check)
+      setMedicineL(data[0].lunch_medication_check)
+      setMedicineD(data[0].dinner_medication_check)
+      setMedication(data[0].medication_pill)
+      setNote(data[0].user_phonenumber)
+
+    }).catch((error) => {
+      console.log('getSeniorDataOne() /user/selectSeniorOne.json error : ', error);
+    });
+  };
 
   //초기값 세팅
-  const [userName, setUserName] = React.useState("");
-  const [gender, setGender] = React.useState("");
-  const [brith, setBrith] = React.useState("");
   const [telNum, setTelNum] = React.useState("");
   const [homeAddress, setHomeAddress] = React.useState("");
   const [medicineM, setMedicineM] = React.useState(false);
@@ -24,15 +46,6 @@
   const [note, setNote] = React.useState("");
 
   //-------- 변경되는 데이터 Handler 설정 --------//
-  const handleUserName = (e) => {
-    setUserName(e.target.value);
-  };
-  const handleGender = (e) => {
-    setGender(e.target.value);
-  };
-  const handleBrithday = (e) => {
-    setBrith(e.target.value);
-  };
   const handleTelNum = (e) => {
     e.target.value = e.target.value.replace(/[^0-9]/g, '').replace(/^(\d{2,3})(\d{3,4})(\d{4})$/, `$1-$2-$3`);
     setTelNum(e.target.value);
@@ -55,42 +68,41 @@
   const handleNote = (e) => {
     setNote(e.target.value);
   };
-  const handleSelectUserCode = (e) => {
-    console.log("e.target.value : ", e.target.value)
-    setSelectUserCode(e.target.value);
-  };
-  const handleSelectUserData = (e) => {
-    console.log("e.target.value : ", e.target.value)
-    setSelectUserData(e.target.value);
-  };
 
-  const seniorInsert = () => {
-    console.log("userName : ", userName);
-    console.log("gender : ", gender);
-    console.log("brith : ", brith);
+  const updateSeniorData = () => {
     console.log("telNum : ", telNum);
     console.log("homeAddress : ", homeAddress);
     console.log("note : ", note);
     console.log("medicineM : ", medicineM);
     console.log("medicineL : ", medicineL);
     console.log("medicineD : ", medicineD);
-  //   fetch("", {
-  //     method: "POST",
-  //     headers: {
-  //       'Content-Type': 'application/json; charset=UTF-8'
-  //     },
-  //     body: JSON.stringify({
-  //       category: selectCategory,
-  //       title: inputTitle,
-  //       writer: writer,
-  //     }),
-  //   }).then((response) => response.json()).then((data) => {
-  //     alert("등록 되었습니다.");
-  //   }).catch((error) => {
-  //     console.log('selectNotice() /Notice/selectNotice.json error : ', error);
-  //   });
+    fetch("/user/updateSeniorMadication.json", {
+      method: "POST",
+      headers: {
+        'Content-Type': 'application/json; charset=UTF-8'
+      },
+      body: JSON.stringify({
+        user_id: seniorId,
+        user_phonenumber: telNum,
+        user_address: homeAddress,
+        breakfast_medication_check: medicineM,
+        lunch_medication_check: medicineL,
+        dinner_medication_check: medicineD,
+        medication_pill: medication ,
+        senior_note: note ,
+      }),
+    }).then((response) => response.json()).then((data) => {
+      alert("수정 되었습니다.");
+      navigate(`/SeniorSelectOne/${seniorId}`);
+    }).catch((error) => {
+      console.log('updateSeniorData() /user/updateSeniorMadication.json error : ', error);
+    });
   };
-    
+
+  React.useEffect(() => {
+    getSeniorDataOne();
+
+  }, [])
   return (
     <main>
       <div className="board-wrap">
@@ -107,34 +119,26 @@
               </td>
             </tr> */}
             <tr>
-              <th>이름</th>
+              <th>아이디</th>
               <td>
-                <input type="text" value={userName} onChange={handleUserName} />
-              </td>
-              <th>성별</th>
-              <td className="flex-start gender">
-                <div className="flex-start">
-                  <input type="radio" name="genderSelect" value="남" onChange={handleGender} />
-                  <label for="gender">남</label>
-                </div>
-                <div className="flex-start">
-                  <input type="radio" name="genderSelect" value="여" onChange={handleGender} />
-                  <label for="gender">여</label>
-                </div>
+                <span>{seniortOne.user_id}</span>
               </td>
             </tr>
             <tr>
-              <th>생년월일</th>
+            <th>이름</th>
               <td>
-                <div className="flex">
-                  <input type='date' value={brith} onChange={handleBrithday} />
-                </div>
+                <span>{seniortOne.user_name}</span>
               </td>
-              {/* <th>요양등급</th>
+              <th>성별</th>
               <td>
-              <input type="text" />
-              </td> */}
-
+                <span>{seniortOne.user_gender}</span>
+              </td>
+            </tr>
+            <tr>
+            <th>생년월일</th>
+              <td>
+                <span>{seniortOne.user_birth}</span>
+              </td>
             </tr>
             <tr>
               <th>연락처</th>
@@ -189,7 +193,7 @@
               className={"btn-small gray-btn"}
               btnName={"수정"}
               onClick={() => {
-                InsertSenior(userName, gender, brith, telNum, homeAddress, note, medicineM, medicineL, medicineD)
+                updateSeniorData();
               }}
             />
           </div>
client/views/pages/senior_management/SeniorSelectOne.jsx
--- client/views/pages/senior_management/SeniorSelectOne.jsx
+++ client/views/pages/senior_management/SeniorSelectOne.jsx
@@ -43,6 +43,12 @@
       <div>
         <table className="margin-bottom senior-detail">
           <tbody>
+          <tr>
+              <th>아이디</th>
+              <td>
+                <span>{seniortOne.user_id}</span>
+              </td>             
+            </tr>
             <tr>
               <th>이름</th>
               <td>
@@ -104,7 +110,7 @@
             className={"btn-large green-btn"}
             btnName={"수정"}
             onClick={() => {
-              navigate("/Seniorinsert");
+              navigate(`/SeniorEdit/${seniorId}`);
             }}
           />
         </div>
Add a comment
List