geek-custom-api-core 0.0.38 → 0.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.history/{package_20260110204712.json → package_20260210020932.json} +4 -2
- package/.history/sql/common_20241128183330.sql +253 -0
- package/.history/sql/common_20260126143943.sql +253 -0
- package/.history/sql/common_20260126143948.sql +253 -0
- package/.history/sql/common_20260126143949.sql +253 -0
- package/.history/sql/common_20260126143955.sql +253 -0
- package/.history/sql/common_20260126143958.sql +253 -0
- package/.history/sql/common_20260126144005.sql +253 -0
- package/.history/sql/common_20260126144016.sql +253 -0
- package/.history/sql/common_20260126144026.sql +253 -0
- package/.history/sql/common_20260126144112.sql +253 -0
- package/.history/sql/common_20260126144114.sql +253 -0
- package/dist/api/app/deposit/deposit.service.js +17 -4
- package/dist/api/app/deposit/deposit.service.js.map +1 -1
- package/dist/api/app/deposit/dto/depositCouponCodeSearch.dto.d.ts +1 -0
- package/dist/api/app/deposit/dto/depositCouponCodeSearch.dto.js +7 -0
- package/dist/api/app/deposit/dto/depositCouponCodeSearch.dto.js.map +1 -1
- package/dist/common/filter/GlobalExceptionFilter.js +1 -1
- package/dist/common/filter/GlobalExceptionFilter.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/sql/common.sql +11 -11
- package/.history/package_20251223012145.json +0 -95
- package/.history/package_20251223014705.json +0 -95
- package/.history/package_20251227175929.json +0 -95
- package/.history/package_20251227180247.json +0 -95
- package/.history/package_20251227180408.json +0 -95
- package/.history/package_20251227180410.json +0 -95
- package/.history/package_20251227180445.json +0 -95
- package/.history/package_20251227180736.json +0 -95
- package/.history/package_20251227180744.json +0 -95
- package/.history/package_20260102105348.json +0 -95
- package/.history/package_20260109172555.json +0 -95
- package/.history/package_20260110202938.json +0 -98
- package/.history/package_20260110203455.json +0 -94
- package/.history/package_20260110203642.json +0 -94
- package/.history/package_20260110203647.json +0 -94
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "geek-custom-api-core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.39",
|
|
4
4
|
"description": "",
|
|
5
5
|
"author": "",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -45,7 +45,8 @@
|
|
|
45
45
|
"reflect-metadata": "^0.1.13",
|
|
46
46
|
"rxjs": "^7.8.1",
|
|
47
47
|
"typeorm": "^0.3.17",
|
|
48
|
-
"uuid": "^9.0.1"
|
|
48
|
+
"uuid": "^9.0.1",
|
|
49
|
+
"xlsx": "^0.18.5"
|
|
49
50
|
},
|
|
50
51
|
"devDependencies": {
|
|
51
52
|
"@nestjs/cli": "^10.0.0",
|
|
@@ -53,6 +54,7 @@
|
|
|
53
54
|
"@types/bcrypt": "^5.0.0",
|
|
54
55
|
"@types/express": "^4.17.13",
|
|
55
56
|
"@types/jest": "^29.5.0",
|
|
57
|
+
"@types/multer": "^2.0.0",
|
|
56
58
|
"@types/node": "^18.19.0",
|
|
57
59
|
"@types/passport-jwt": "^3.0.9",
|
|
58
60
|
"@types/supertest": "^2.0.12",
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
-- 고객사 테이블
|
|
2
|
+
CREATE TABLE gs_partner(
|
|
3
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
4
|
+
partnerName VARCHAR(50) NOT NULL COMMENT '고객사명',
|
|
5
|
+
siteUrl VARCHAR(300) NULL COMMENT 'siteUrl',
|
|
6
|
+
ceoName VARCHAR(20) NOT NULL COMMENT '대표자명',
|
|
7
|
+
companyTel VARCHAR(13) NULL COMMENT '전화번호',
|
|
8
|
+
companyNo VARCHAR(12) NULL COMMENT '사업자번호',
|
|
9
|
+
companyNoFile VARCHAR(500) NULL COMMENT '사업자번호 파일',
|
|
10
|
+
bankCode VARCHAR(12) NULL COMMENT '은행',
|
|
11
|
+
accountNo VARCHAR(50) NULL COMMENT '계좌번호',
|
|
12
|
+
accountFile VARCHAR(500) NULL COMMENT '계좌번호 파일',
|
|
13
|
+
zipcode CHAR(5) NULL COMMENT '우편번호',
|
|
14
|
+
address VARCHAR(200) NULL COMMENT '주소',
|
|
15
|
+
addressSub VARCHAR(200) NULL COMMENT '주소상세',
|
|
16
|
+
managerName VARCHAR(10) NULL COMMENT '담당자이름',
|
|
17
|
+
managerTel VARCHAR(13) NULL COMMENT '담당자 전화번호',
|
|
18
|
+
managerEmail VARCHAR(200) NULL COMMENT '담당자 이메일',
|
|
19
|
+
solution ENUM('shopby', 'cafe24', 'si') DEFAULT 'shopby' COMMENT '사용 솔루션',
|
|
20
|
+
apiUrl VARCHAR(200) NULL COMMENT '연동 API URL',
|
|
21
|
+
serverKey VARCHAR(50) NULL COMMENT 'serverKey',
|
|
22
|
+
secretKey VARCHAR(50) NULL COMMENT 'secretKey',
|
|
23
|
+
systemKey VARCHAR(50) NULL COMMENT 'systemKey',
|
|
24
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
25
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
26
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
ALTER TABLE gs_partner ADD COLUMN longLivedToken VARCHAR(500) NULL COMMENT 'ShopBy용 장기토큰' AFTER systemKey;
|
|
30
|
+
ALTER TABLE gs_partner ADD COLUMN appToken VARCHAR(500) NULL COMMENT '프론트에서 사용 할 장기토큰' AFTER systemKey;
|
|
31
|
+
-- 관리자 테이블
|
|
32
|
+
CREATE TABLE gs_manager(
|
|
33
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
34
|
+
id VARCHAR(20) NOT NULL COMMENT '아이디',
|
|
35
|
+
pwd VARCHAR(100) NOT NULL COMMENT '비밀번호',
|
|
36
|
+
managerType ENUM ('admin', 'partner') DEFAULT 'partner' COMMENT '관리자티입',
|
|
37
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
38
|
+
managerName VARCHAR(100) NOT NULL COMMENT '관리자 이름',
|
|
39
|
+
managerTel VARCHAR(100) NOT NULL COMMENT '관리자 전화번호',
|
|
40
|
+
managerEmail VARCHAR(100) NOT NULL COMMENT '관리자 이메일',
|
|
41
|
+
status ENUM('Y','N') DEFAULT 'N' COMMENT '승인여부',
|
|
42
|
+
authority VARCHAR(500) NULL COMMENT '권한',
|
|
43
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
44
|
+
accessToken varchar(500) NULL COMMENT 'accessToken',
|
|
45
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
46
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
47
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno)
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
-- 코드 관리
|
|
51
|
+
CREATE TABLE gs_code (
|
|
52
|
+
codeKey varchar(255) PRIMARY KEY,
|
|
53
|
+
parentKey varchar(255) NULL,
|
|
54
|
+
codeName varchar(255) NOT NULL,
|
|
55
|
+
codeValue varchar(255) NULL,
|
|
56
|
+
rootFl enum('Y','N') DEFAULT 'N',
|
|
57
|
+
displayFl enum('Y','N') DEFAULT 'N',
|
|
58
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
59
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
60
|
+
);
|
|
61
|
+
|
|
62
|
+
-- 앱 관리
|
|
63
|
+
CREATE TABLE gs_appManager(
|
|
64
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
65
|
+
managerSno INT NOT NULL COMMENT '관리자 번호',
|
|
66
|
+
appName VARCHAR(50) NOT NULL COMMENT '앱 이름',
|
|
67
|
+
appUrl VARCHAR(200) NOT NULL COMMENT '앱 호출 url',
|
|
68
|
+
appDesc TEXT NULL COMMENT '앱 설명',
|
|
69
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
70
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
71
|
+
FOREIGN Key(managerSno)REFERENCES gs_manager(sno)
|
|
72
|
+
);
|
|
73
|
+
|
|
74
|
+
CREATE TABLE gs_appPartnerManager(
|
|
75
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
76
|
+
appSno INT,
|
|
77
|
+
partnerSno INT,
|
|
78
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
79
|
+
FOREIGN Key(appSno)REFERENCES gs_appManager(sno),
|
|
80
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno)
|
|
81
|
+
);
|
|
82
|
+
-- App
|
|
83
|
+
-- 매장관리 테이블
|
|
84
|
+
CREATE TABLE gs_shopManager(
|
|
85
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
86
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
87
|
+
shopName VARCHAR(100) NOT NULL COMMENT '매장명',
|
|
88
|
+
shopTel VARCHAR(13) NULL COMMENT '매장 전화번호',
|
|
89
|
+
shopCode VARCHAR(50) NULL COMMENT '매장코드',
|
|
90
|
+
zipcode CHAR(5) NULL COMMENT '우편번호',
|
|
91
|
+
address VARCHAR(200) NULL COMMENT '주소',
|
|
92
|
+
addressSub VARCHAR(200) NULL COMMENT '주소',
|
|
93
|
+
city VARCHAR(10) NULL COMMENT '시/도 - 코드 연동',
|
|
94
|
+
gu VARCHAR(10) NULL COMMENT '구 - 코드 연동',
|
|
95
|
+
lat VARCHAR(50) NULL COMMENT '위도',
|
|
96
|
+
lng VARCHAR(50) NULL COMMENT '경도',
|
|
97
|
+
officeHour VARCHAR(20) NULL COMMENT '업무시간',
|
|
98
|
+
description TEXT NULL COMMENT '매장설명',
|
|
99
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
100
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
101
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
102
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno)
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
-- 1.0
|
|
106
|
+
-- deprecated
|
|
107
|
+
CREATE TABLE gs_brandManager(
|
|
108
|
+
brandNo INT NOT NULL,
|
|
109
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
110
|
+
brandNameKo VARCHAR(200) NOT NULL COMMENT '브랜드명',
|
|
111
|
+
brandNameEn VARCHAR(200) NULL COMMENT '영문 브랜드명',
|
|
112
|
+
displayBrandNo INT NULL COMMENT '몰별 전시브랜드 번호',
|
|
113
|
+
brandNameType enum('NAME_KO', 'NAME_EN') DEFAULT 'NAME_KO' COMMENT '브랜드명 타입',
|
|
114
|
+
brandLogoImage VARCHAR(500) NULL COMMENT '브랜드 로고 이미지',
|
|
115
|
+
brandImage Text NULL COMMENT '브랜드 메인 이미지 ex)imgPath||linkUrl!!imgPath||linkUrl',
|
|
116
|
+
brandDesc Text NULL COMMENT '브랜드 설명',
|
|
117
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
118
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
119
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
120
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno),
|
|
121
|
+
PRIMARY KEY(brandNo, partnerSno)
|
|
122
|
+
)
|
|
123
|
+
|
|
124
|
+
-- 2.0
|
|
125
|
+
CREATE TABLE gs_brandManager(
|
|
126
|
+
brandNo INT NOT NULL,
|
|
127
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
128
|
+
parentNo INT DEFAULT 0 COMMENT '상위 브랜드 번호(없으면 0)',
|
|
129
|
+
mainName VARCHAR(30) NOT NULL COMMENT '브랜드명',
|
|
130
|
+
subName VARCHAR(30) NULL COMMENT '부가 브랜드명',
|
|
131
|
+
description TEXT NULL COMMENT '브랜드설명',
|
|
132
|
+
displayAreaContentUrl VARCHAR(500) NULL COMMENT '브랜드 이미지 또는 브랜드 관련 동영상 url',
|
|
133
|
+
brandLogoImage VARCHAR(500) NULL COMMENT '브랜드 로고 이미지',
|
|
134
|
+
brandExtraImage TEXT NULL COMMENT '브랜드 추가 이미지',
|
|
135
|
+
extraInfo TEXT NULL COMMENT '추가정보',
|
|
136
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
137
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
138
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno),
|
|
139
|
+
PRIMARY KEY(brandNo, partnerSno)
|
|
140
|
+
);
|
|
141
|
+
ALTER TABLE gs_brandManager ADD COLUMN orderIndex INT NULL COMMENT '노출순서' AFTER extraInfo;
|
|
142
|
+
-- 고객사 별 알림톡 서비스회사/계정/키 관리 테이블
|
|
143
|
+
CREATE TABLE gs_alimtalkManager(
|
|
144
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
145
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
146
|
+
serviceProvider ENUM('INFOBANK','NHNCLOUD') COMMENT '알림톡 서비스 제공 업체',
|
|
147
|
+
clientKey VARCHAR(200) NOT NULL COMMENT '클라이언트 키',
|
|
148
|
+
clientPwd VARCHAR(200) NOT NULL COMMENT '클라이언트 패스워드',
|
|
149
|
+
profileKey VARCHAR(200) NOT NULL COMMENT '발신 프로필 키',
|
|
150
|
+
senderInfo VARCHAR(50) NULL COMMENT '전송자 정보',
|
|
151
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
152
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
153
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
154
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno)
|
|
155
|
+
);
|
|
156
|
+
-- 알림톡 템플릿
|
|
157
|
+
CREATE TABLE gs_alimtalkTemplate(
|
|
158
|
+
templateCode varchar(100) COMMENT '템플릿코드',
|
|
159
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
160
|
+
templateTitle varchar(100) NOT NULL COMMENT '템플릿제목',
|
|
161
|
+
msg text NOT NULL COMMENT '메시지',
|
|
162
|
+
useButton enum('Y','N') default 'N' COMMENT '버튼 사용 여부',
|
|
163
|
+
attachment text NULL COMMENT '버튼JSON',
|
|
164
|
+
regDt datetime DEFAULT (now()),
|
|
165
|
+
PRIMARY KEY(templateCode, partnerSno)
|
|
166
|
+
);
|
|
167
|
+
-- admin log
|
|
168
|
+
|
|
169
|
+
-- exception log
|
|
170
|
+
CREATE TABLE gs_exception(
|
|
171
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
172
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
173
|
+
url varchar(500) NULL COMMENT '호출 url',
|
|
174
|
+
request text NULL COMMENT 'request parameter',
|
|
175
|
+
message TEXT NULL COMMENT 'exception message',
|
|
176
|
+
errorCode varchar(10) NULL COMMENT 'errorCode',
|
|
177
|
+
regDt datetime DEFAULT (now())
|
|
178
|
+
);
|
|
179
|
+
ALTER TABLE gs_exception MODIFY COLUMN message TEXT NULL COMMENT 'exception message';
|
|
180
|
+
-- 초기 데이터 생성
|
|
181
|
+
insert into gs_partner set partnerName='GeekStudio', ceoName='GeekStudio';
|
|
182
|
+
insert into gs_manager set id='geekstudio', pwd='$2b$10$CqTELzVPqUhFyTgPtssnBOqRtWogoJKLim0fJX5faYqsJNGNyHBO6', partnerSno=1,
|
|
183
|
+
managerName='긱스튜디오', managerTel='070-5055-3400', managerEmail='biz@geekstudio.co.kr', status='Y';
|
|
184
|
+
|
|
185
|
+
CREATE TABLE gs_brand_like(
|
|
186
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
187
|
+
memNo INT NOT NULL COMMENT '회원번호',
|
|
188
|
+
brandNo INT NOT NULL COMMENT '브랜드 번호',
|
|
189
|
+
PRIMARY KEY(partnerSno, memNo, brandNo)
|
|
190
|
+
);
|
|
191
|
+
|
|
192
|
+
CREATE TABLE gs_category_like(
|
|
193
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
194
|
+
memNo INT NOT NULL COMMENT '회원번호',
|
|
195
|
+
categoryNo INT NOT NULL COMMENT '카테고리 번호',
|
|
196
|
+
PRIMARY KEY(partnerSno, memNo, categoryNo)
|
|
197
|
+
);
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
CREATE TABLE gs_logs(
|
|
201
|
+
sno int PRIMARY KEY AUTO_INCREMENT,
|
|
202
|
+
logType VARCHAR(100) NULL COMMENT '로그 구분',
|
|
203
|
+
request text NULL COMMENT 'request',
|
|
204
|
+
response text NULL COMMENT 'response',
|
|
205
|
+
regDt datetime DEFAULT (now()),
|
|
206
|
+
updateDt datetime DEFAULT (now())
|
|
207
|
+
);
|
|
208
|
+
|
|
209
|
+
CREATE TABLE gs_memberSyncLog(
|
|
210
|
+
sno int PRIMARY KEY AUTO_INCREMENT,
|
|
211
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
212
|
+
memberId VARCHAR(200) NOT NULL COMMENT '회원아이디',
|
|
213
|
+
request TEXT NOT NULL COMMENT 'request data',
|
|
214
|
+
successFl ENUM('Y','N') DEFAULT 'Y' COMMENT '성공여부',
|
|
215
|
+
message VARCHAR(500) NULL COMMENT '메시지',
|
|
216
|
+
regDt datetime DEFAULT (now()),
|
|
217
|
+
updateDt datetime DEFAULT (now())
|
|
218
|
+
);
|
|
219
|
+
|
|
220
|
+
ALTER TABLE gs_exception ADD COLUMN trace TEXT NULL COMMENT 'trace' AFTER message;
|
|
221
|
+
|
|
222
|
+
CREATE TABLE gs_magazine(
|
|
223
|
+
sno int PRIMARY KEY AUTO_INCREMENT,
|
|
224
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
225
|
+
managerSno INT NOT NULL COMMENT '작성자 번호',
|
|
226
|
+
category VARCHAR(50) NULL COMMENT '카테고리',
|
|
227
|
+
title VARCHAR(100) NOT NULL COMMENT '제목',
|
|
228
|
+
subTitle VARCHAR(100) NULL COMMENT '소제목',
|
|
229
|
+
contents TEXT NOT NULL COMMENT '컨텐츠',
|
|
230
|
+
tag VARCHAR(200) NULL COMMENT '태그',
|
|
231
|
+
displayFl BOOLEAN DEFAULT TRUE COMMENT '노출여부',
|
|
232
|
+
displayType ENUM('ALWAYS', 'PERIOD') DEFAULT 'ALWAYS' COMMENT '노출타입',
|
|
233
|
+
startDt VARCHAR(30) NULL COMMENT '노출 시작일',
|
|
234
|
+
endDt VARCHAR(30) NULL COMMENT '노출 종료일',
|
|
235
|
+
useComment BOOLEAN NOT NULL DEFAULT false COMMENT '댓글 사용 여부',
|
|
236
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
237
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
238
|
+
);
|
|
239
|
+
ALTER TABLE gs_magazine ADD COLUMN mainImg VARCHAR(500) NOT NULL COMMENT '대표이미지' AFTER category;
|
|
240
|
+
|
|
241
|
+
CREATE TABLE gs_comment(
|
|
242
|
+
sno int PRIMARY KEY AUTO_INCREMENT,
|
|
243
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
244
|
+
parentSno INT NULL COMMENT '상위글 번호 (대댓글은 지원 안함)',
|
|
245
|
+
contentType ENUM('MAGAZINE', 'BOARD') NOT NULL COMMENT '코멘트 적용 타입',
|
|
246
|
+
contentSno INT NOT NULL COMMENT '매거진/게시글 번호',
|
|
247
|
+
memberId VARCHAR(50) NOT NULL COMMENT '작성자 아이디 (마스킹 처리)',
|
|
248
|
+
memberNo INT NOT NULL COMMENT '작성자 회원번호',
|
|
249
|
+
comment VARCHAR(200) NOT NULL COMMENT '댓글',
|
|
250
|
+
attachment VARCHAR(500) NULL COMMENT '첨부파일',
|
|
251
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
252
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
253
|
+
);
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
-- 고객사 테이블
|
|
2
|
+
CREATE TABLE gs_partner(
|
|
3
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
4
|
+
partnerName VARCHAR(50) NOT NULL COMMENT '고객사명',
|
|
5
|
+
siteUrl VARCHAR(300) NULL COMMENT 'siteUrl',
|
|
6
|
+
ceoName VARCHAR(20) NOT NULL COMMENT '대표자명',
|
|
7
|
+
companyTel VARCHAR(13) NULL COMMENT '전화번호',
|
|
8
|
+
companyNo VARCHAR(12) NULL COMMENT '사업자번호',
|
|
9
|
+
companyNoFile VARCHAR(500) NULL COMMENT '사업자번호 파일',
|
|
10
|
+
bankCode VARCHAR(12) NULL COMMENT '은행',
|
|
11
|
+
accountNo VARCHAR(50) NULL COMMENT '계좌번호',
|
|
12
|
+
accountFile VARCHAR(500) NULL COMMENT '계좌번호 파일',
|
|
13
|
+
zipcode CHAR(5) NULL COMMENT '우편번호',
|
|
14
|
+
address VARCHAR(200) NULL COMMENT '주소',
|
|
15
|
+
addressSub VARCHAR(200) NULL COMMENT '주소상세',
|
|
16
|
+
managerName VARCHAR(10) NULL COMMENT '담당자이름',
|
|
17
|
+
managerTel VARCHAR(13) NULL COMMENT '담당자 전화번호',
|
|
18
|
+
managerEmail VARCHAR(200) NULL COMMENT '담당자 이메일',
|
|
19
|
+
solution ENUM('shopby', 'cafe24', 'si') DEFAULT 'shopby' COMMENT '사용 솔루션',
|
|
20
|
+
apiUrl VARCHAR(200) NULL COMMENT '연동 API URL',
|
|
21
|
+
serverKey VARCHAR(50) NULL COMMENT 'serverKey',
|
|
22
|
+
secretKey VARCHAR(50) NULL COMMENT 'secretKey',
|
|
23
|
+
systemKey VARCHAR(50) NULL COMMENT 'systemKey',
|
|
24
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
25
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
26
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
27
|
+
)ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;;
|
|
28
|
+
|
|
29
|
+
ALTER TABLE gs_partner ADD COLUMN longLivedToken VARCHAR(500) NULL COMMENT 'ShopBy용 장기토큰' AFTER systemKey;
|
|
30
|
+
ALTER TABLE gs_partner ADD COLUMN appToken VARCHAR(500) NULL COMMENT '프론트에서 사용 할 장기토큰' AFTER systemKey;
|
|
31
|
+
-- 관리자 테이블
|
|
32
|
+
CREATE TABLE gs_manager(
|
|
33
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
34
|
+
id VARCHAR(20) NOT NULL COMMENT '아이디',
|
|
35
|
+
pwd VARCHAR(100) NOT NULL COMMENT '비밀번호',
|
|
36
|
+
managerType ENUM ('admin', 'partner') DEFAULT 'partner' COMMENT '관리자티입',
|
|
37
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
38
|
+
managerName VARCHAR(100) NOT NULL COMMENT '관리자 이름',
|
|
39
|
+
managerTel VARCHAR(100) NOT NULL COMMENT '관리자 전화번호',
|
|
40
|
+
managerEmail VARCHAR(100) NOT NULL COMMENT '관리자 이메일',
|
|
41
|
+
status ENUM('Y','N') DEFAULT 'N' COMMENT '승인여부',
|
|
42
|
+
authority VARCHAR(500) NULL COMMENT '권한',
|
|
43
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
44
|
+
accessToken varchar(500) NULL COMMENT 'accessToken',
|
|
45
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
46
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
47
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno)
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
-- 코드 관리
|
|
51
|
+
CREATE TABLE gs_code (
|
|
52
|
+
codeKey varchar(255) PRIMARY KEY,
|
|
53
|
+
parentKey varchar(255) NULL,
|
|
54
|
+
codeName varchar(255) NOT NULL,
|
|
55
|
+
codeValue varchar(255) NULL,
|
|
56
|
+
rootFl enum('Y','N') DEFAULT 'N',
|
|
57
|
+
displayFl enum('Y','N') DEFAULT 'N',
|
|
58
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
59
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
60
|
+
);
|
|
61
|
+
|
|
62
|
+
-- 앱 관리
|
|
63
|
+
CREATE TABLE gs_appManager(
|
|
64
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
65
|
+
managerSno INT NOT NULL COMMENT '관리자 번호',
|
|
66
|
+
appName VARCHAR(50) NOT NULL COMMENT '앱 이름',
|
|
67
|
+
appUrl VARCHAR(200) NOT NULL COMMENT '앱 호출 url',
|
|
68
|
+
appDesc TEXT NULL COMMENT '앱 설명',
|
|
69
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
70
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
71
|
+
FOREIGN Key(managerSno)REFERENCES gs_manager(sno)
|
|
72
|
+
);
|
|
73
|
+
|
|
74
|
+
CREATE TABLE gs_appPartnerManager(
|
|
75
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
76
|
+
appSno INT,
|
|
77
|
+
partnerSno INT,
|
|
78
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
79
|
+
FOREIGN Key(appSno)REFERENCES gs_appManager(sno),
|
|
80
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno)
|
|
81
|
+
);
|
|
82
|
+
-- App
|
|
83
|
+
-- 매장관리 테이블
|
|
84
|
+
CREATE TABLE gs_shopManager(
|
|
85
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
86
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
87
|
+
shopName VARCHAR(100) NOT NULL COMMENT '매장명',
|
|
88
|
+
shopTel VARCHAR(13) NULL COMMENT '매장 전화번호',
|
|
89
|
+
shopCode VARCHAR(50) NULL COMMENT '매장코드',
|
|
90
|
+
zipcode CHAR(5) NULL COMMENT '우편번호',
|
|
91
|
+
address VARCHAR(200) NULL COMMENT '주소',
|
|
92
|
+
addressSub VARCHAR(200) NULL COMMENT '주소',
|
|
93
|
+
city VARCHAR(10) NULL COMMENT '시/도 - 코드 연동',
|
|
94
|
+
gu VARCHAR(10) NULL COMMENT '구 - 코드 연동',
|
|
95
|
+
lat VARCHAR(50) NULL COMMENT '위도',
|
|
96
|
+
lng VARCHAR(50) NULL COMMENT '경도',
|
|
97
|
+
officeHour VARCHAR(20) NULL COMMENT '업무시간',
|
|
98
|
+
description TEXT NULL COMMENT '매장설명',
|
|
99
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
100
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
101
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
102
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno)
|
|
103
|
+
);
|
|
104
|
+
|
|
105
|
+
-- 1.0
|
|
106
|
+
-- deprecated
|
|
107
|
+
CREATE TABLE gs_brandManager(
|
|
108
|
+
brandNo INT NOT NULL,
|
|
109
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
110
|
+
brandNameKo VARCHAR(200) NOT NULL COMMENT '브랜드명',
|
|
111
|
+
brandNameEn VARCHAR(200) NULL COMMENT '영문 브랜드명',
|
|
112
|
+
displayBrandNo INT NULL COMMENT '몰별 전시브랜드 번호',
|
|
113
|
+
brandNameType enum('NAME_KO', 'NAME_EN') DEFAULT 'NAME_KO' COMMENT '브랜드명 타입',
|
|
114
|
+
brandLogoImage VARCHAR(500) NULL COMMENT '브랜드 로고 이미지',
|
|
115
|
+
brandImage Text NULL COMMENT '브랜드 메인 이미지 ex)imgPath||linkUrl!!imgPath||linkUrl',
|
|
116
|
+
brandDesc Text NULL COMMENT '브랜드 설명',
|
|
117
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
118
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
119
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
120
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno),
|
|
121
|
+
PRIMARY KEY(brandNo, partnerSno)
|
|
122
|
+
)
|
|
123
|
+
|
|
124
|
+
-- 2.0
|
|
125
|
+
CREATE TABLE gs_brandManager(
|
|
126
|
+
brandNo INT NOT NULL,
|
|
127
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
128
|
+
parentNo INT DEFAULT 0 COMMENT '상위 브랜드 번호(없으면 0)',
|
|
129
|
+
mainName VARCHAR(30) NOT NULL COMMENT '브랜드명',
|
|
130
|
+
subName VARCHAR(30) NULL COMMENT '부가 브랜드명',
|
|
131
|
+
description TEXT NULL COMMENT '브랜드설명',
|
|
132
|
+
displayAreaContentUrl VARCHAR(500) NULL COMMENT '브랜드 이미지 또는 브랜드 관련 동영상 url',
|
|
133
|
+
brandLogoImage VARCHAR(500) NULL COMMENT '브랜드 로고 이미지',
|
|
134
|
+
brandExtraImage TEXT NULL COMMENT '브랜드 추가 이미지',
|
|
135
|
+
extraInfo TEXT NULL COMMENT '추가정보',
|
|
136
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
137
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
138
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno),
|
|
139
|
+
PRIMARY KEY(brandNo, partnerSno)
|
|
140
|
+
);
|
|
141
|
+
ALTER TABLE gs_brandManager ADD COLUMN orderIndex INT NULL COMMENT '노출순서' AFTER extraInfo;
|
|
142
|
+
-- 고객사 별 알림톡 서비스회사/계정/키 관리 테이블
|
|
143
|
+
CREATE TABLE gs_alimtalkManager(
|
|
144
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
145
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
146
|
+
serviceProvider ENUM('INFOBANK','NHNCLOUD') COMMENT '알림톡 서비스 제공 업체',
|
|
147
|
+
clientKey VARCHAR(200) NOT NULL COMMENT '클라이언트 키',
|
|
148
|
+
clientPwd VARCHAR(200) NOT NULL COMMENT '클라이언트 패스워드',
|
|
149
|
+
profileKey VARCHAR(200) NOT NULL COMMENT '발신 프로필 키',
|
|
150
|
+
senderInfo VARCHAR(50) NULL COMMENT '전송자 정보',
|
|
151
|
+
additionalInfo VARCHAR(500) NULL COMMENT '추가정보',
|
|
152
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
153
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
154
|
+
FOREIGN Key(partnerSno)REFERENCES gs_partner(sno)
|
|
155
|
+
);
|
|
156
|
+
-- 알림톡 템플릿
|
|
157
|
+
CREATE TABLE gs_alimtalkTemplate(
|
|
158
|
+
templateCode varchar(100) COMMENT '템플릿코드',
|
|
159
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
160
|
+
templateTitle varchar(100) NOT NULL COMMENT '템플릿제목',
|
|
161
|
+
msg text NOT NULL COMMENT '메시지',
|
|
162
|
+
useButton enum('Y','N') default 'N' COMMENT '버튼 사용 여부',
|
|
163
|
+
attachment text NULL COMMENT '버튼JSON',
|
|
164
|
+
regDt datetime DEFAULT (now()),
|
|
165
|
+
PRIMARY KEY(templateCode, partnerSno)
|
|
166
|
+
);
|
|
167
|
+
-- admin log
|
|
168
|
+
|
|
169
|
+
-- exception log
|
|
170
|
+
CREATE TABLE gs_exception(
|
|
171
|
+
sno INT PRIMARY KEY AUTO_INCREMENT,
|
|
172
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
173
|
+
url varchar(500) NULL COMMENT '호출 url',
|
|
174
|
+
request text NULL COMMENT 'request parameter',
|
|
175
|
+
message TEXT NULL COMMENT 'exception message',
|
|
176
|
+
errorCode varchar(10) NULL COMMENT 'errorCode',
|
|
177
|
+
regDt datetime DEFAULT (now())
|
|
178
|
+
);
|
|
179
|
+
ALTER TABLE gs_exception MODIFY COLUMN message TEXT NULL COMMENT 'exception message';
|
|
180
|
+
-- 초기 데이터 생성
|
|
181
|
+
insert into gs_partner set partnerName='GeekStudio', ceoName='GeekStudio';
|
|
182
|
+
insert into gs_manager set id='geekstudio', pwd='$2b$10$CqTELzVPqUhFyTgPtssnBOqRtWogoJKLim0fJX5faYqsJNGNyHBO6', partnerSno=1,
|
|
183
|
+
managerName='긱스튜디오', managerTel='070-5055-3400', managerEmail='biz@geekstudio.co.kr', status='Y';
|
|
184
|
+
|
|
185
|
+
CREATE TABLE gs_brand_like(
|
|
186
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
187
|
+
memNo INT NOT NULL COMMENT '회원번호',
|
|
188
|
+
brandNo INT NOT NULL COMMENT '브랜드 번호',
|
|
189
|
+
PRIMARY KEY(partnerSno, memNo, brandNo)
|
|
190
|
+
);
|
|
191
|
+
|
|
192
|
+
CREATE TABLE gs_category_like(
|
|
193
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
194
|
+
memNo INT NOT NULL COMMENT '회원번호',
|
|
195
|
+
categoryNo INT NOT NULL COMMENT '카테고리 번호',
|
|
196
|
+
PRIMARY KEY(partnerSno, memNo, categoryNo)
|
|
197
|
+
);
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
CREATE TABLE gs_logs(
|
|
201
|
+
sno int PRIMARY KEY AUTO_INCREMENT,
|
|
202
|
+
logType VARCHAR(100) NULL COMMENT '로그 구분',
|
|
203
|
+
request text NULL COMMENT 'request',
|
|
204
|
+
response text NULL COMMENT 'response',
|
|
205
|
+
regDt datetime DEFAULT (now()),
|
|
206
|
+
updateDt datetime DEFAULT (now())
|
|
207
|
+
);
|
|
208
|
+
|
|
209
|
+
CREATE TABLE gs_memberSyncLog(
|
|
210
|
+
sno int PRIMARY KEY AUTO_INCREMENT,
|
|
211
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
212
|
+
memberId VARCHAR(200) NOT NULL COMMENT '회원아이디',
|
|
213
|
+
request TEXT NOT NULL COMMENT 'request data',
|
|
214
|
+
successFl ENUM('Y','N') DEFAULT 'Y' COMMENT '성공여부',
|
|
215
|
+
message VARCHAR(500) NULL COMMENT '메시지',
|
|
216
|
+
regDt datetime DEFAULT (now()),
|
|
217
|
+
updateDt datetime DEFAULT (now())
|
|
218
|
+
);
|
|
219
|
+
|
|
220
|
+
ALTER TABLE gs_exception ADD COLUMN trace TEXT NULL COMMENT 'trace' AFTER message;
|
|
221
|
+
|
|
222
|
+
CREATE TABLE gs_magazine(
|
|
223
|
+
sno int PRIMARY KEY AUTO_INCREMENT,
|
|
224
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
225
|
+
managerSno INT NOT NULL COMMENT '작성자 번호',
|
|
226
|
+
category VARCHAR(50) NULL COMMENT '카테고리',
|
|
227
|
+
title VARCHAR(100) NOT NULL COMMENT '제목',
|
|
228
|
+
subTitle VARCHAR(100) NULL COMMENT '소제목',
|
|
229
|
+
contents TEXT NOT NULL COMMENT '컨텐츠',
|
|
230
|
+
tag VARCHAR(200) NULL COMMENT '태그',
|
|
231
|
+
displayFl BOOLEAN DEFAULT TRUE COMMENT '노출여부',
|
|
232
|
+
displayType ENUM('ALWAYS', 'PERIOD') DEFAULT 'ALWAYS' COMMENT '노출타입',
|
|
233
|
+
startDt VARCHAR(30) NULL COMMENT '노출 시작일',
|
|
234
|
+
endDt VARCHAR(30) NULL COMMENT '노출 종료일',
|
|
235
|
+
useComment BOOLEAN NOT NULL DEFAULT false COMMENT '댓글 사용 여부',
|
|
236
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
237
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
238
|
+
);
|
|
239
|
+
ALTER TABLE gs_magazine ADD COLUMN mainImg VARCHAR(500) NOT NULL COMMENT '대표이미지' AFTER category;
|
|
240
|
+
|
|
241
|
+
CREATE TABLE gs_comment(
|
|
242
|
+
sno int PRIMARY KEY AUTO_INCREMENT,
|
|
243
|
+
partnerSno INT NOT NULL COMMENT '고객사 번호',
|
|
244
|
+
parentSno INT NULL COMMENT '상위글 번호 (대댓글은 지원 안함)',
|
|
245
|
+
contentType ENUM('MAGAZINE', 'BOARD') NOT NULL COMMENT '코멘트 적용 타입',
|
|
246
|
+
contentSno INT NOT NULL COMMENT '매거진/게시글 번호',
|
|
247
|
+
memberId VARCHAR(50) NOT NULL COMMENT '작성자 아이디 (마스킹 처리)',
|
|
248
|
+
memberNo INT NOT NULL COMMENT '작성자 회원번호',
|
|
249
|
+
comment VARCHAR(200) NOT NULL COMMENT '댓글',
|
|
250
|
+
attachment VARCHAR(500) NULL COMMENT '첨부파일',
|
|
251
|
+
regDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
|
252
|
+
updateDt TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
|
|
253
|
+
);
|