Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
1975859
Merge pull request #9 from jaypae95/feature/geteEventAdmin
KHS-kr Nov 30, 2020
fb26eb2
modify brace-style
KHS-kr Nov 30, 2020
ed6604a
add moment, moment-timezone for time, request for using nh api
KHS-kr Nov 30, 2020
3025140
eslint
KHS-kr Nov 30, 2020
84fb700
add event_hash column
KHS-kr Nov 30, 2020
47d15f5
add saltRounds
KHS-kr Nov 30, 2020
c7bf2ec
add event hash value
KHS-kr Nov 30, 2020
529d1cc
in put, add event id parameters, master check method
KHS-kr Nov 30, 2020
aef264a
response json localize, 회원가입된 핸드폰번호가 eventadmin에 있으면 user_id update
KHS-kr Nov 30, 2020
77bac78
modify event_hash in event model to unique
KHS-kr Nov 30, 2020
2bdc01e
delete start datetime, change end datetime to event datetime
KHS-kr Nov 30, 2020
fa63d82
remove moment, moment-timezone
KHS-kr Nov 30, 2020
2e3a9a1
odd in options /*, response event id in create event
KHS-kr Nov 30, 2020
f5dca3c
modify end_datetime -> event_datetime
KHS-kr Nov 30, 2020
8035d6b
Merge pull request #10 from jaypae95/khs
jaypae95 Nov 30, 2020
ec5e8c8
add nh api test.js, modify .gitignore
KHS-kr Dec 1, 2020
838ab39
add crypto module
KHS-kr Dec 1, 2020
977b506
modify algorithm for event hash value
KHS-kr Dec 1, 2020
a8be432
event_hash -> allow null
KHS-kr Dec 2, 2020
4dd8716
implement finAccount and transfer
ans2552 Dec 2, 2020
9e587ce
Merge pull request #11 from jaypae95/encryptSHA256
jaypae95 Dec 3, 2020
0fd5ba8
resolve khs review
ans2552 Dec 3, 2020
c7ee5f8
Merge pull request #12 from jaypae95/feature/finAcAndTransfer
jaypae95 Dec 3, 2020
2a7853a
test for fcm
KHS-kr Dec 3, 2020
41ab81a
event_hash allow null, update event_hash after create event
KHS-kr Dec 3, 2020
8c1366a
Merge pull request #13 from jaypae95/EventHash
KHS-kr Dec 3, 2020
75dc431
modified options string
jaypae95 Dec 3, 2020
28c87e3
Merge pull request #14 from jaypae95/options
jaypae95 Dec 3, 2020
48da32e
add user.firebase_token column size 200 for fire base token
KHS-kr Dec 4, 2020
6e87bd5
Merge pull request #15 from jaypae95/firebaseTest
KHS-kr Dec 4, 2020
2c3f481
eslint
KHS-kr Dec 4, 2020
2e3dc60
수정 필요한 목록 수정
ans2552 Dec 5, 2020
8cacab0
implement event invite
ans2552 Dec 6, 2020
4fe3fc4
Merge pull request #16 from jaypae95/feature/1207todo
KHS-kr Dec 7, 2020
15adec5
출금하기(출금한거 표시를 어디에다가?)
KHS-kr Dec 7, 2020
a8c4b11
내역조회(내가 보냈던거, 받았던거, 수기 입력)
KHS-kr Dec 7, 2020
e0db1b0
foreign key 설정
KHS-kr Dec 7, 2020
78e42e9
sender id default value 설정, sender_name column 추가
KHS-kr Dec 7, 2020
ee89303
breakdown 봉인해제
KHS-kr Dec 7, 2020
3dd5c48
Merge branch 'master' into khs
KHS-kr Dec 7, 2020
a1b3207
add send fcm function in utils.js, add serviceAccountKey for fcm, upd…
KHS-kr Dec 7, 2020
3284d30
Merge branch 'khs' of https://github.com/jaypae95/nh_back into khs
KHS-kr Dec 7, 2020
54f26a4
Merge pull request #17 from jaypae95/khs
jaypae95 Dec 7, 2020
71ec2fe
error modify
KHS-kr Dec 7, 2020
6b69ae7
Merge pull request #18 from jaypae95/khs
KHS-kr Dec 7, 2020
77029fd
수정사항 2,3번 구현
ans2552 Dec 8, 2020
1f532f8
Merge pull request #19 from jaypae95/feature/modify2and3
jaypae95 Dec 8, 2020
73c5f56
add 'is received'
KHS-kr Dec 8, 2020
2f6aafa
add send fcm function
KHS-kr Dec 8, 2020
e2f8a22
update event model when received money
KHS-kr Dec 8, 2020
4684ed9
add service account key sample and delelte original file
jaypae95 Dec 8, 2020
b217eaa
add file to gitignore
jaypae95 Dec 8, 2020
3bff059
return fin account info while success
jaypae95 Dec 8, 2020
b453aa7
add delete
KHS-kr Dec 8, 2020
e768ec2
HOTFIX fixed err
jaypae95 Dec 8, 2020
2f16e50
Merge pull request #20 from jaypae95/khs1208
KHS-kr Dec 9, 2020
4d2a899
if no firebase token, go to no User
KHS-kr Dec 9, 2020
0683aea
put event add category
KHS-kr Dec 9, 2020
f638632
event invite add user type
ans2552 Dec 9, 2020
67d771c
implement transaction
ans2552 Dec 9, 2020
5ad7b38
delete comment
ans2552 Dec 9, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
"no-unused-vars": 1,
"no-multiple-empty-lines": 0,
"space-before-function-paren": 0,
"eol-last": 0
"eol-last": 0,
"brace-style": ["error", "stroustrup"]
}
}
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ node_modules
.idea
package-lock.json
config/config.json
test.js
fcm.js
serviceAccountKey.json
22 changes: 20 additions & 2 deletions app.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,17 @@ const cookieParser = require('cookie-parser');
const logger = require('morgan');
const session = require('express-session');
const sequelize = require('./models').sequelize;
const util = require('./utils');

const indexRouter = require('./routes/index');
const authRouter = require('./routes/auth');
const usersRouter = require('./routes/users');

// TODO: not use yet
// const breakdownRouter = require('./routes/breakdown');
const breakdownRouter = require('./routes/breakdown');
const eventRouter = require('./routes/event');
const finRouter = require('./routes/fin');

// const guestRouter = require('./routes/guest');
// const organizerRouter = require('./routes/organizer');

Expand Down Expand Up @@ -47,8 +50,23 @@ app.use(express.static(path.join(__dirname, 'public')));
app.use('/', indexRouter);
app.use('/auth', authRouter);
app.use('/users', usersRouter);
// app.use('/breakdown', breakdownRouter);

// auth check
app.use('/*', function(req, res, next) {
if(req.method === 'OPTIONS') {
return next();
}
const result = util.getUser(req);
if(result.user === undefined) {
res.status(401).json('no auth');
return;
}
res.locals.user = result.user;
next();
});
app.use('/event', eventRouter);
app.use('/fin', finRouter);
app.use('/breakdown', breakdownRouter);
// app.use('/guest', guestRouter);
// app.use('/organizer', organizerRouter);

Expand Down
28 changes: 19 additions & 9 deletions config/config.json.sample
Original file line number Diff line number Diff line change
@@ -1,12 +1,22 @@
{
"development": {
"username": "root",
"password": "1234",
"database": "nh_db",
"host": "127.0.0.1",
"dialect": "mysql",
"operatorAliases" : false,
"logging": false,
"jwtSecret": "insert jwt secret key"
"development": {
"dbOptions": {
"username": "root",
"password": "1234",
"database": "nh_db",
"host": "127.0.0.1",
"dialect": "mysql",
"operatorAliases" : false,
"dialectOptions": {
"dateStrings": true,
"typeCast": true
},
"timezone": "+09:00",
"logging": false
},
"jwtSecret": "insert jwt secret key",
"iscd": "기관코드",
"accessToken": "액세스 토큰",
"BrdtBrno": "생년월일 or 사업자번호"
}
}
45 changes: 45 additions & 0 deletions models/breakdown.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
module.exports = (sequelize, DataTypes) => {
return sequelize.define('breakdown', {
id: {
type: DataTypes.INTEGER,
allowNull: false,
unique: true,
autoIncrement: true,
primaryKey: true,
},
event_id: {
type: DataTypes.INTEGER,
allowNull: false,
},
sender_id: {
type: DataTypes.INTEGER,
allowNull: false,
defaultValue: 0,
},
sender_name: {
type: DataTypes.STRING(20),
allowNull: true,
},
transfer_datetime: {
type: DataTypes.DATE,
allowNull: false,
},
message: {
type: DataTypes.STRING(45),
allowNull: true,
defaultValue: null,
},
money: {
type: DataTypes.INTEGER,
allowNull: false,
},
is_direct_input: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false,
},
},
{
timestamps: false,
});
};
14 changes: 10 additions & 4 deletions models/event.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ module.exports = (sequelize, DataTypes) => {
autoIncrement: true,
primaryKey: true,
},
event_hash: {
type: DataTypes.STRING(100),
unique: true,
allowNull: true,
},
user_id: {
type: DataTypes.INTEGER,
allowNull: false,
Expand All @@ -32,17 +37,18 @@ module.exports = (sequelize, DataTypes) => {
allowNull: true,
defaultValue: null,
},
start_datetime: {
event_datetime: {
type: DataTypes.DATE,
allowNull: false,
},
end_datetime: {
type: DataTypes.DATE,
is_activated: {
type: DataTypes.BOOLEAN,
allowNull: false,
},
is_activated: {
is_received: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false,
},
},
{
Expand Down
9 changes: 7 additions & 2 deletions models/index.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const path = require('path');
const Sequelize = require('sequelize');
const env = process.env.NODE_ENV || 'development';
const config = require(path.join(__dirname, '..', 'config', 'config.json'))[env];
const config = require(path.join(__dirname, '..', 'config', 'config.json'))[env]['dbOptions'];

const db = {};

Expand All @@ -13,6 +13,11 @@ db.User = require('./user')(sequelize, Sequelize);
db.Event = require('./event')(sequelize, Sequelize);
db.EventAdmin = require('./eventadmin')(sequelize, Sequelize);
db.Guest = require('./guest')(sequelize, Sequelize);
db.BreakDown = require('./breakdown')(sequelize, Sequelize);

db.Event.hasMany(db.Guest, {foreignKey: {name: 'event_id'}});
db.Event.hasMany(db.EventAdmin, {foreignKey: {name: 'event_id'}});
db.Event.hasMany(db.BreakDown, {foreignKey: {name: 'event_id'}});
db.User.hasMany(db.BreakDown, {foreignKey: {name: 'sender_id'}});

db.Event.hasMany(db.Guest, { foreignKey: { name: 'event_id'} });
module.exports = db;
5 changes: 5 additions & 0 deletions models/user.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,11 @@ module.exports = (sequelize, DataTypes) => {
allowNull: true,
unique: true,
},
firebase_token: {
type: DataTypes.STRING(200),
allowNull: true,
unique: true,
},
},
{
timestamps: false,
Expand Down
3 changes: 3 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,16 @@
"dev-node": "node ./bin/www"
},
"dependencies": {
"axios": "^0.21.0",
"bcrypt": "^5.0.0",
"cookie-parser": "~1.4.4",
"cors": "^2.8.5",
"crypto": "^1.0.1",
"debug": "~2.6.9",
"dotenv": "^8.2.0",
"express": "^4.16.4",
"express-session": "^1.17.1",
"firebase-admin": "^9.4.1",
"http-errors": "^1.8.0",
"jsonwebtoken": "^8.5.1",
"morgan": "~1.9.1",
Expand Down
14 changes: 9 additions & 5 deletions routes/auth.js
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,8 @@ router.get('/', function(req, res, next) {
const session = req.session;
if(session.name) {
res.json(session.name);
} else{
}
else{
res.json('login fail');
}
});
Expand All @@ -43,14 +44,15 @@ router.get('/', function(req, res, next) {
router.post('/login', async function(req, res, next) {
try {
const {body} = req;
const user = await User.findOne({attributes: ['id', 'password'], where: {username: body.username}});
const user = await User.findOne({attributes: ['id', 'password', 'fin_account','name'], where: {username: body.username}});

if(user === null) {
console.log('cannot find user');
res.status(404).json({
'detail': 'No user found.',
});
} else {
}
else {
console.log(user.dataValues);
const dbPassword = user.dataValues.password;
const inputPassword = body.password;
Expand All @@ -67,15 +69,17 @@ router.post('/login', async function(req, res, next) {
token: jwtSignUser(user),
user: user,
});
} else {
}
else {
console.log('pw incorrect');
res.status(401).json({
auth: false,
token: null,
});
}
}
} catch (error) {
}
catch (error) {
console.log('Login Error');
next(error);
}
Expand Down
Loading