곰픽(dpi) 채점 결과 업데이트
This commit is contained in:
BIN
00_DPI_2504B_TEST.xlsx
Normal file
BIN
00_DPI_2504B_TEST.xlsx
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
250507_DIC_2504B_채점결과.xlsx
Normal file
BIN
250507_DIC_2504B_채점결과.xlsx
Normal file
Binary file not shown.
BIN
250507_DPI_2504B_채점결과.xlsx
Normal file
BIN
250507_DPI_2504B_채점결과.xlsx
Normal file
Binary file not shown.
@@ -459,7 +459,7 @@
|
|||||||
},
|
},
|
||||||
"4": {
|
"4": {
|
||||||
"type": "multiValue",
|
"type": "multiValue",
|
||||||
"ele": "//Layer[Name[@value='{layer}']]/Effects/Item",
|
"ele": "//Layer[Name[@value='{layer}']]/Effects/Item[EffectData/{option}]/Name/@value | //Layer[Name[@value='{layer}']]/Effects/Item/EffectData/{option}/@value",
|
||||||
"layer": "Flower",
|
"layer": "Flower",
|
||||||
"option": "VibranceValue",
|
"option": "VibranceValue",
|
||||||
"value": [
|
"value": [
|
||||||
@@ -492,8 +492,8 @@
|
|||||||
"type": "size",
|
"type": "size",
|
||||||
"ele": "//Layer//op_points",
|
"ele": "//Layer//op_points",
|
||||||
"value": {
|
"value": {
|
||||||
"width": 80,
|
"width": 120,
|
||||||
"height": 80
|
"height": 120
|
||||||
},
|
},
|
||||||
"point": 3,
|
"point": 3,
|
||||||
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
"desc": "레이어 쉐이프 X, Y 좌표를 가지고 너비, 높이 계산하여 정답 채점"
|
||||||
@@ -633,7 +633,7 @@
|
|||||||
"16": {
|
"16": {
|
||||||
"type": "exists",
|
"type": "exists",
|
||||||
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
"ele": "//Layer/Shapes/Shape/shape_type/@value",
|
||||||
"value": "RACTANGLE",
|
"value": "RECTANGLE",
|
||||||
"point": 3
|
"point": 3
|
||||||
},
|
},
|
||||||
"17": {
|
"17": {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import unicodedata
|
|||||||
def copy_dic_subdirs(source_root, target_root_a, target_root_b, target_root_c, target_root_d, target_root_e):
|
def copy_dic_subdirs(source_root, target_root_a, target_root_b, target_root_c, target_root_d, target_root_e):
|
||||||
for root, dirs, files in os.walk(source_root):
|
for root, dirs, files in os.walk(source_root):
|
||||||
for dir_name in dirs:
|
for dir_name in dirs:
|
||||||
if dir_name.lower() == 'dic': # DIC 디렉토리 탐색
|
if dir_name.lower() == 'dic' or dir_name.lower() == 'dpi': # DIC 디렉토리 탐색
|
||||||
parent_dir = os.path.basename(os.path.dirname(os.path.join(root, dir_name)))
|
parent_dir = os.path.basename(os.path.dirname(os.path.join(root, dir_name)))
|
||||||
target_root = None
|
target_root = None
|
||||||
parent_dir = unicodedata.normalize('NFC', parent_dir)
|
parent_dir = unicodedata.normalize('NFC', parent_dir)
|
||||||
|
|||||||
@@ -404,7 +404,7 @@ function getGpdpScore(gpdpData, scoringJson, index) {
|
|||||||
else {
|
else {
|
||||||
const result = xpath.select(ele, gpdpXmlDoc);
|
const result = xpath.select(ele, gpdpXmlDoc);
|
||||||
const result2 = null;
|
const result2 = null;
|
||||||
const isCheck = false;
|
let isCheck = false;
|
||||||
|
|
||||||
if (ele === 'none') {
|
if (ele === 'none') {
|
||||||
scoringResult[key] = "확인필요";
|
scoringResult[key] = "확인필요";
|
||||||
|
|||||||
@@ -12,11 +12,12 @@ const getToday = require('./getToday.js');
|
|||||||
const todayDate = getToday();
|
const todayDate = getToday();
|
||||||
|
|
||||||
const examRound = '2504';
|
const examRound = '2504';
|
||||||
const dic_or_dpi = 'DIC'
|
// const dic_or_dpi = 'DIC'
|
||||||
|
const dic_or_dpi = 'DPI'
|
||||||
const examTypes = [
|
const examTypes = [
|
||||||
'A',
|
// 'A',
|
||||||
'B',
|
'B',
|
||||||
'C',
|
// 'C',
|
||||||
// 'D'
|
// 'D'
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -55,17 +56,20 @@ examTypes.forEach(type => {
|
|||||||
// 맥에서 한글 디렉토리 이름을 읽어서 엑셀에 저장 할 시 자소 분리가 되어 저장되는 문제 노말라이즈해서 해결
|
// 맥에서 한글 디렉토리 이름을 읽어서 엑셀에 저장 할 시 자소 분리가 되어 저장되는 문제 노말라이즈해서 해결
|
||||||
const name = student.normalize('NFC');
|
const name = student.normalize('NFC');
|
||||||
const studentDir = path.join(answerFilesDir, student);
|
const studentDir = path.join(answerFilesDir, student);
|
||||||
const psdFiles = fs.readdirSync(studentDir).filter(file => file.endsWith('.psd'));
|
// const psdFiles = fs.readdirSync(studentDir).filter(file => file.endsWith('.psd'));
|
||||||
|
const psdFiles = fs.readdirSync(studentDir).filter(file => file.toLowerCase().endsWith('.psd'));
|
||||||
|
|
||||||
// DIAT시험 프로젝트로 생성시 gmep확장자로
|
// DIAT시험 프로젝트로 생성시 gmep확장자로
|
||||||
// 교육용 프로젝프로 생성시 gmdp확장자로 생성됨
|
// 교육용 프로젝프로 생성시 gmdp확장자로 생성됨
|
||||||
// 두 경우 모두 처리
|
// 두 경우 모두 처리
|
||||||
const gmepFile = fs.readdirSync(studentDir).filter(
|
const gmepFile = fs.readdirSync(studentDir).filter(
|
||||||
file => file.endsWith('.gmep') || file.endsWith('.gmdp')
|
file => file.toLowerCase().endsWith('.gmep')
|
||||||
|
|| file.toLowerCase().endsWith('.gmdp')
|
||||||
);
|
);
|
||||||
|
|
||||||
// 곰픽 파일 gpdp 파일 이거나 xml 파일
|
// 곰픽 파일 gpdp 파일 이거나 xml 파일
|
||||||
const gpdpFiles = fs.readdirSync(studentDir).filter(
|
const gpdpFiles = fs.readdirSync(studentDir).filter(
|
||||||
file => file.endsWith('.xml')
|
file => file.toLowerCase().endsWith('.xml')
|
||||||
);
|
);
|
||||||
|
|
||||||
// 학생 이름을 key로 하는 객체 생성
|
// 학생 이름을 key로 하는 객체 생성
|
||||||
|
|||||||
Reference in New Issue
Block a user