Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
students
Today KU
Commits
74e4b4db
Commit
74e4b4db
authored
Nov 05, 2021
by
Kim, Subin
Browse files
Plan 완성
parent
bb632885
Changes
5
Hide whitespace changes
Inline
Side-by-side
client/src/apis/plan.api.js
View file @
74e4b4db
...
@@ -7,20 +7,6 @@ const getDetail = async (planId) => {
...
@@ -7,20 +7,6 @@ const getDetail = async (planId) => {
return
data
return
data
}
}
// const addPlan = async (info, id) => {
// console.log('addPlan 확인', id)
// const url = `${baseUrl}/api/plan/addplan/${id}`
// const { data } = await axios.post(url, { info, id });
// return data
// }
// const editPlan = async (info, id) => {
// console.log('editPlan확인', id)
// const url = `${baseUrl}/api/plan/edit/${id}`
// const { data } = await axios.put(url, { info, id });
// return data
// }
const
submit
=
async
(
info
)
=>
{
const
submit
=
async
(
info
)
=>
{
const
url
=
`
${
baseUrl
}
/api/plan`
const
url
=
`
${
baseUrl
}
/api/plan`
const
{
data
}
=
await
axios
.
post
(
url
,
info
)
const
{
data
}
=
await
axios
.
post
(
url
,
info
)
...
@@ -41,8 +27,6 @@ const remove = async (planId) => {
...
@@ -41,8 +27,6 @@ const remove = async (planId) => {
const
planApi
=
{
const
planApi
=
{
getDetail
,
getDetail
,
// addPlan,
// editPlan,
submit
,
submit
,
edit
,
edit
,
remove
remove
...
...
client/src/components/Form/StudyPlanEditForm.js
View file @
74e4b4db
...
@@ -11,10 +11,8 @@ const StudyPlanEditForm = () => {
...
@@ -11,10 +11,8 @@ const StudyPlanEditForm = () => {
const
{
user
}
=
useAuth
();
const
{
user
}
=
useAuth
();
const
params
=
useParams
();
const
params
=
useParams
();
const
[
disabled
,
setDisabled
]
=
useState
(
true
)
const
[
disabled
,
setDisabled
]
=
useState
(
true
)
const
[
selected
,
setSelected
]
=
useState
(
""
);
const
[
error
,
setError
]
=
useState
(
""
);
const
[
error
,
setError
]
=
useState
(
""
);
const
[
success
,
setSuccess
]
=
useState
(
false
)
const
[
success
,
setSuccess
]
=
useState
(
false
)
const
[
subjectName
,
setSubjectName
]
=
useState
(
""
);
const
[
studyplan
,
setStudyplan
]
=
useState
({
const
[
studyplan
,
setStudyplan
]
=
useState
({
studyplanTitle
:
""
,
studyplanTitle
:
""
,
endDate
:
""
,
endDate
:
""
,
...
@@ -43,13 +41,8 @@ const StudyPlanEditForm = () => {
...
@@ -43,13 +41,8 @@ const StudyPlanEditForm = () => {
useEffect
(()
=>
{
useEffect
(()
=>
{
getSubject
(
user
.
id
)
getSubject
(
user
.
id
)
console
.
log
(
"
useEffect params 확인
"
,
params
)
if
(
params
.
subjectId
)
setStudyplan
({...
studyplan
,
selected
:
params
.
subjectId
})
if
(
params
.
subjectId
)
setStudyplan
({...
studyplan
,
selected
:
params
.
subjectId
})
else
if
(
params
.
planId
)
getInfo
(
params
.
planId
);
else
if
(
params
.
planId
)
getInfo
(
params
.
planId
);
// if (params.hasOwnProperty('planId')) {
// console.log('planId params확인');
// getInfo(params.planId);
// }
},
[])
},
[])
async
function
getSubject
(
id
)
{
async
function
getSubject
(
id
)
{
...
@@ -66,29 +59,7 @@ const StudyPlanEditForm = () => {
...
@@ -66,29 +59,7 @@ const StudyPlanEditForm = () => {
try
{
try
{
setError
(
""
)
setError
(
""
)
const
result
=
await
planApi
.
getDetail
(
planId
)
const
result
=
await
planApi
.
getDetail
(
planId
)
console
.
log
(
'
수정 getInfo result
'
,
result
)
setStudyplan
({
...
studyplan
,
...
result
})
setStudyplan
({
...
studyplan
,
...
result
})
// setSubjectName(result.subjectName)
// if (result.endTime) {
// setStudyplan({
// studyplanTitle: result.title,
// endDate: result.endDate,
// endTime: result.endTime,
// memo: result.memo,
// deadline: result.deadline,
// selected: result.subjectId
// })
// setSubjectName(result.subjectName)
// } else {
// setStudyplan({
// studyplanTitle: result.title,
// endDate: result.endDate,
// memo: result.memo,
// deadline: result.deadline,
// selected: result.subjectId
// })
// setSubjectName(result.subjectName)
// }
}
catch
(
error
)
{
}
catch
(
error
)
{
catchErrors
(
error
,
setError
)
catchErrors
(
error
,
setError
)
}
}
...
...
client/src/components/StudyPlan/PlanLineList.js
View file @
74e4b4db
import
{
Link
}
from
"
react-router-dom
"
;
import
{
Link
}
from
"
react-router-dom
"
;
import
styles
from
"
.
./Form/form
.module.scss
"
;
import
styles
from
"
.
/studyplan
.module.scss
"
;
const
PlanLineList
=
({
subjectId
,
planList
=
[]
})
=>
{
const
PlanLineList
=
({
subjectId
,
planList
=
[]
})
=>
{
return
(
return
(
<>
<>
{
planList
.
length
!==
0
?
planList
.
map
(
plan
=>
<
div
className
=
"
d-flex justify-content-between
"
>
{
planList
.
length
!==
0
?
planList
.
map
(
plan
=>
<
div
className
=
"
d-flex justify-content-between
"
>
<
p
className
=
"
card-text mb-1
"
>-
{
plan
.
title
}
<
/p
>
<
p
className
=
{
`
card-text mb-1
${
styles
.
text
}
`
}
>-
{
plan
.
title
}
<
/p
>
<
input
className
=
{
`form-check-input shadow-none
${
styles
.
checkBox
}
`
}
type
=
"
checkbox
"
/>
<
input
className
=
{
`form-check-input shadow-none
${
styles
.
checkBox
}
`
}
type
=
"
checkbox
"
/>
<
/div>
)
: <Link className="text-decoration-none link-dark" to={`/
studyplan
/
submit
/
$
{
subjectId
}
`}>
<
/div>
)
: <Link className="text-decoration-none link-dark" to={`/
studyplan
/
submit
/
$
{
subjectId
}
`}>
<div className="d-flex">
<div className="d-flex">
...
...
client/src/components/StudyPlan/studyplan.module.scss
View file @
74e4b4db
...
@@ -7,12 +7,18 @@
...
@@ -7,12 +7,18 @@
border-color
:
black
;
border-color
:
black
;
&
:focus
{
&
:focus
{
border-color
:
black
;
border-color
:
black
;
}
}
&
:checked
{
&
:checked
{
border-color
:
crimson
;
border-color
:
crimson
;
background-color
:
crimson
;
background-color
:
crimson
;
background-image
:
url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='currentColor' d='M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")
;
background-image
:
url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='currentColor' d='M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")
;
}
}
}
}
.text
{
white-space
:
nowrap
;
overflow
:
hidden
;
text-overflow
:
ellipsis
;
}
\ No newline at end of file
server/controllers/plan.controller.js
View file @
74e4b4db
import
{
Plan
,
Subject
}
from
"
../db/index.js
"
;
import
{
Plan
}
from
"
../db/index.js
"
;
import
*
as
ConvertDate
from
"
./schedule.controller.js
"
;
import
{
dateToString
}
from
"
./schedule.controller.js
"
;
// const addPlan = async (req, res) => {
// console.log('server/addPlan req.body', req.body)
// try {
// let end = null;
// let tf = false;
// const { info } = req.body
// const { studyplanTitle, endDate, endTime, deadline, memo, selected } = info
// console.log('제목확인', studyplanTitle)
// if (deadline === "on") {
// end = new Date(endDate + " " + endTime)
// tf = true
// } else {
// end = new Date(endDate)
// }
// const result = await Plan.create({
// subjectId: selected,
// title: studyplanTitle,
// deadline: end,
// memo: memo,
// timeChecked: tf,
// checked: false
// })
// return res.json(result)
// } catch (error) {
// console.log(error)
// return res.status(500).send(error.message || "계획저장 에러발생")
// }
// }
// const editPlan = async (req, res) => {
// const { info, id } = req.body
// console.log('editPlan info', info, '|', id)
// try {
// let result = null
// if (info.deadline === "on") {
// result = await Plan.update({
// subjectId: info.selected,
// title: info.studyplanTitle,
// deadline: new Date(info.endDate + " " + info.endTime),
// memo: info.memo,
// timeChecked: true,
// checked: false
// }, { where: { id: id } })
// res.send(200)
// } else {
// result = await Plan.update({
// subjectId: info.selected,
// title: info.studyplanTitle,
// deadline: new Date(info.endDate),
// memo: info.memo,
// timeChecked: false,
// checked: false
// }, {
// where: { id: id }
// })
// }
// if (!result) {
// throw new Error("과목정보 수정 에러발생")
// } else {
// return res.send(200)
// }
// } catch (error) {
// console.log(error)
// return res.status(500).send(error.message || "계획수정 에러발생")
// }
// }
// const getInfo = async (req, res) => {
// console.log('server/getInfo req.params', req.params)
// try {
// let deadlineStr = null
// let endTimeStr = null
// const { planId } = req.params;
// const findInfo = await Plan.findOne({ where: { id: planId } })
// const Info = findInfo.dataValues;
// const getSubTitle = await Subject.findAll({
// attributes: ['name'],
// where: { id: Info.subjectId }
// })
// deadlineStr = ConvertDate.dateToString(Info.deadline, "full")
// endTimeStr = ConvertDate.dateToString(Info.deadline, "time")
// if (Info.timeChecked) {
// res.json({
// subjectId: Info.subjectId,
// subjectName: getSubTitle[0].dataValues.name,
// title: Info.title,
// endDate: deadlineStr,
// endTime: endTimeStr,
// deadline: "on",
// memo: Info.memo
// })
// } else {
// res.json({
// subjectId: Info.subjectId,
// subjectName: getSubTitle[0].dataValues.name,
// title: Info.title,
// endDate: deadlineStr,
// deadline: "",
// memo: Info.memo
// })
// }
// } catch (error) {
// console.log(error)
// return res.status(500).send(error.message || "계획 가져오기 에러발생")
// }
// }
const
getOne
=
async
(
req
,
res
)
=>
{
const
getOne
=
async
(
req
,
res
)
=>
{
try
{
try
{
let
findPlan
=
null
let
sendPlan
=
null
const
{
planId
}
=
req
.
query
const
planId
=
req
.
planId
console
.
log
(
"
get One
"
,
planId
)
const
findPlan
=
await
Plan
.
findOne
({
where
:
{
id
:
planId
}
})
if
(
planId
)
findPlan
=
await
Plan
.
findOne
({
where
:
{
id
:
planId
}
})
if
(
!
findPlan
)
throw
new
Error
(
"
학업 계획 정보를 찾지 못했습니다.
"
)
if
(
!
findPlan
)
throw
new
Error
(
"
학업 계획 정보를 찾지 못했습니다.
"
)
return
res
.
json
(
find
)
else
{
const
{
id
,
title
,
deadline
,
memo
,
timeChecked
,
checked
,
subjectId
}
=
findPlan
const
endDate
=
dateToString
(
deadline
,
"
full
"
)
if
(
timeChecked
)
{
const
endTime
=
dateToString
(
deadline
,
"
time
"
)
sendPlan
=
{
id
:
id
,
studyplanTitle
:
title
,
endDate
:
endDate
,
endTime
:
endTime
,
deadline
:
timeChecked
?
"
on
"
:
"
off
"
,
memo
:
memo
,
selected
:
subjectId
}
}
else
sendPlan
=
{
id
:
id
,
studyplanTitle
:
title
,
endDate
:
endDate
,
deadline
:
timeChecked
?
"
on
"
:
"
off
"
,
memo
:
memo
,
selected
:
subjectId
}
}
return
res
.
json
(
sendPlan
)
}
catch
(
error
)
{
}
catch
(
error
)
{
return
res
.
status
(
500
).
send
(
error
.
message
||
"
학업계획 조회 중 에러 발생
"
)
return
res
.
status
(
500
).
send
(
error
.
message
||
"
학업계획 조회 중 에러 발생
"
)
}
}
...
@@ -151,7 +47,7 @@ const edit = async (req, res) => {
...
@@ -151,7 +47,7 @@ const edit = async (req, res) => {
date
=
new
Date
(
endDate
+
"
"
+
endTime
)
date
=
new
Date
(
endDate
+
"
"
+
endTime
)
check_v
=
true
check_v
=
true
}
else
date
=
new
Date
(
endDate
)
}
else
date
=
new
Date
(
endDate
)
const
updated
=
await
Plan
.
update
d
({
title
:
studyplanTitle
,
deadline
:
date
,
memo
:
memo
,
timeChecked
:
check_v
,
subjectId
:
selected
},
{
where
:
{
id
:
planId
}
})
const
updated
=
await
Plan
.
update
({
title
:
studyplanTitle
,
deadline
:
date
,
memo
:
memo
,
timeChecked
:
check_v
,
subjectId
:
selected
},
{
where
:
{
id
:
planId
}
})
if
(
!
updated
)
throw
new
Error
(
"
해당 학업계획의 일부 정보를 수정하는데 실패하였습니다.
"
)
if
(
!
updated
)
throw
new
Error
(
"
해당 학업계획의 일부 정보를 수정하는데 실패하였습니다.
"
)
else
return
res
.
send
(
200
)
else
return
res
.
send
(
200
)
}
catch
(
error
)
{
}
catch
(
error
)
{
...
@@ -186,7 +82,4 @@ export default {
...
@@ -186,7 +82,4 @@ export default {
edit
,
edit
,
remove
,
remove
,
getParams
getParams
// addPlan,
// editPlan,
// getInfo
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment