forked from HANYANG/HANYANG_MES
parent
a4f95dd24a
commit
366cef22cd
|
|
@ -15,296 +15,98 @@ class Tb_main_class {
|
|||
this.removeBtn = this.container.querySelector(".remove-btn");
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
manageData(data) {
|
||||
// let tempGRP = new Object();
|
||||
// let tempQTY = new Object();
|
||||
let tempArr = new Array();
|
||||
// console.log(data);
|
||||
|
||||
// for(let key in result){
|
||||
//
|
||||
// for (let i = 0; i <= result[key].length-1; i++) {
|
||||
// let temp = result[key][i];
|
||||
// let tempGRP = {};
|
||||
// tempGRP['WRK_TEAM'] = temp.WRK_TEAM // 설비팀
|
||||
// tempGRP['PLAN_FACLT_CD'] = temp.PLAN_FACLT_CD // 설비 코드
|
||||
// tempGRP['PLAN_SEQ'] = temp.PLAN_SEQ // group id로 쓸 변수
|
||||
// let date = temp.PLAN_DT.date.slice(0, 10);
|
||||
// console.log(tempGRP['PLAN_SEQ']);
|
||||
//
|
||||
// if (temp?.AM_PLAN_QTY !== null) {
|
||||
// tempGRP[`AM_PLAN_QTY_${date}`] = temp.ITEM_GRP
|
||||
// }
|
||||
// if (temp?.PM_PLAN_QTY !== null) {
|
||||
// tempGRP[`PM_PLAN_QTY_${date}`] = temp.ITEM_GRP
|
||||
// }
|
||||
// if (temp?.NI_PLAN_QTY !== null) {
|
||||
// tempGRP[`NI_PLAN_QTY_${date}`] = temp.ITEM_GRP
|
||||
// }
|
||||
// tempGRP['SEPER_ID'] = 'GRP';
|
||||
// tempGRP['SEPER'] = '그룹';
|
||||
// tempArr.push(tempGRP);
|
||||
//
|
||||
// }
|
||||
//
|
||||
//
|
||||
// }
|
||||
let arr = new Array();
|
||||
|
||||
// const newObj2 = {};
|
||||
// for (let i = 0; i < data.data.length; i++) {
|
||||
// let temp = data.data[i]
|
||||
// // console.log(temp);
|
||||
// let tempGRP = {};
|
||||
// let num = 0;
|
||||
// let date = temp.PLAN_DT.date.slice(0, 10);
|
||||
// tempGRP['WRK_TEAM'] = temp.WRK_TEAM
|
||||
// tempGRP['PLAN_FACLT_CD'] = temp.PLAN_FACLT_CD
|
||||
// tempGRP['PLAN_SEQ'] = temp.PLAN_SEQ
|
||||
// tempGRP['DATE'] = date
|
||||
// // if (temp?.AM_PLAN_QTY !== null) {
|
||||
// // tempQTY[`AM_PLAN_QTY_${date}`] = temp.AM_PLAN_QTY
|
||||
// // }
|
||||
// // if (temp?.PM_PLAN_QTY !== null) {
|
||||
// // tempQTY[`PM_PLAN_QTY_${date}`] = temp.PM_PLAN_QTY
|
||||
// // }
|
||||
// // if (temp?.NI_PLAN_QTY !== null) {
|
||||
// // tempQTY[`NI_PLAN_QTY_${date}`] = temp.NI_PLAN_QTY
|
||||
// // }
|
||||
// if (temp?.AM_PLAN_QTY !== null) {
|
||||
// tempGRP[`AM_PLAN_QTY`] = temp.AM_PLAN_QTY
|
||||
// }
|
||||
// if (temp?.PM_PLAN_QTY !== null) {
|
||||
// tempGRP[`PM_PLAN_QTY`] = temp.PM_PLAN_QTY
|
||||
// }
|
||||
// // if (temp?.NI_PLAN_QTY !== null) {
|
||||
// tempGRP[`NI_PLAN_QTY`] = temp.NI_PLAN_QTY
|
||||
// // }
|
||||
// tempGRP['SEPER_ID'] = 'PLAN';
|
||||
// tempGRP['SEPER'] = '계획';
|
||||
// console.log(tempGRP);
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// tempArr2.push(tempGRP);
|
||||
// }
|
||||
const result = Object.groupBy(data.data, ({ SEQ_NO }) => SEQ_NO)
|
||||
|
||||
// console.log(mergeObj(tempArr[0], tempArr[1], tempArr[2]));
|
||||
for (let i = 0; i < data.data.length; i++) {
|
||||
let temp = data.data[i];
|
||||
// console.log(temp);
|
||||
|
||||
|
||||
for(let i=0; i<=Object.values(result).length; i++){
|
||||
// console.log(Object.values(result)[]);
|
||||
let makingITEM = Object.values(result)[i]?.map(function(rst){
|
||||
let tempITEM ={};
|
||||
let date = rst.PLAN_DT.date.slice(0, 10);
|
||||
let arr = new Array();
|
||||
tempITEM['SEQ_NO'] = rst.SEQ_NO
|
||||
tempITEM['PLAN_FACLT_CD'] = rst.PLAN_FACLT_CD
|
||||
tempITEM['WRK_TEAM'] = rst.WRK_TEAM
|
||||
tempITEM['SEPER'] = "그룹"
|
||||
tempITEM[`AM_PLAN_QTY_${date}`] = rst.AMITEM
|
||||
tempITEM[`PM_PLAN_QTY_${date}`] = rst.PMITEM
|
||||
tempITEM[`NI_PLAN_QTY_${date}`] = rst.NIITEM
|
||||
return tempITEM;
|
||||
})
|
||||
|
||||
let makingQTY = Object.values(result)[i]?.map(function(rst){
|
||||
let tempQTY ={};
|
||||
let date = temp.PLAN_DT.date.slice(0, 10);
|
||||
tempQTY["WRK_TEAM"] = temp.WRK_TEAM;
|
||||
tempQTY["PLAN_FACLT_CD"] = temp.PLAN_FACLT_CD;
|
||||
tempQTY["PLAN_SEQ"] = temp.PLAN_SEQ;
|
||||
tempQTY["DATE"] = date;
|
||||
// if (temp?.AM_PLAN_QTY !== null) {
|
||||
// tempQTY[`AM_PLAN_QTY_${date}`] = temp.AM_PLAN_QTY
|
||||
// }
|
||||
// if (temp?.PM_PLAN_QTY !== null) {
|
||||
// tempQTY[`PM_PLAN_QTY_${date}`] = temp.PM_PLAN_QTY
|
||||
// }
|
||||
// if (temp?.NI_PLAN_QTY !== null) {
|
||||
// tempQTY[`NI_PLAN_QTY_${date}`] = temp.NI_PLAN_QTY
|
||||
// }
|
||||
if (temp?.AM_PLAN_QTY !== null) {
|
||||
tempQTY[`AM_PLAN_QTY`] = temp.ITEM_GRP;
|
||||
}
|
||||
if (temp?.PM_PLAN_QTY !== null) {
|
||||
tempQTY[`PM_PLAN_QTY`] = temp.ITEM_GRP;
|
||||
}
|
||||
if (temp?.NI_PLAN_QTY !== null) {
|
||||
tempQTY[`NI_PLAN_QTY`] = temp.ITEM_GRP;
|
||||
}
|
||||
tempQTY["SEPER_ID"] = "GRP";
|
||||
tempQTY["SEPER"] = "그룹";
|
||||
let date = rst.PLAN_DT.date.slice(0, 10);
|
||||
let arr = new Array();
|
||||
tempQTY['SEQ_NO'] = rst.SEQ_NO
|
||||
tempQTY['SEPER'] = "계획"
|
||||
tempQTY['PLAN_FACLT_CD'] = rst.PLAN_FACLT_CD
|
||||
tempQTY['WRK_TEAM'] = rst.WRK_TEAM
|
||||
tempQTY[`AM_PLAN_QTY_${date}`] = rst.AMQTY
|
||||
tempQTY[`PM_PLAN_QTY_${date}`] = rst.PMQTY
|
||||
tempQTY[`NI_PLAN_QTY_${date}`] = rst.NIQTY
|
||||
return tempQTY;
|
||||
})
|
||||
|
||||
// console.log(temp);
|
||||
let tempGRP = {};
|
||||
let makingPRD = Object.values(result)[i]?.map(function(rst){
|
||||
let tempPRD ={};
|
||||
let date = rst.PLAN_DT.date.slice(0, 10);
|
||||
let arr = new Array();
|
||||
tempPRD['SEQ_NO'] = rst.SEQ_NO
|
||||
tempPRD['SEPER'] = "실적"
|
||||
tempPRD['PLAN_FACLT_CD'] = rst.PLAN_FACLT_CD
|
||||
tempPRD['WRK_TEAM'] = rst.WRK_TEAM
|
||||
tempPRD[`AM_PLAN_QTY_${date}`] = rst.AMPRD
|
||||
tempPRD[`PM_PLAN_QTY_${date}`] = rst.PMPRD
|
||||
tempPRD[`NI_PLAN_QTY_${date}`] = rst.NIPRD
|
||||
return tempPRD;
|
||||
})
|
||||
|
||||
tempGRP["WRK_TEAM"] = temp.WRK_TEAM;
|
||||
tempGRP["PLAN_FACLT_CD"] = temp.PLAN_FACLT_CD;
|
||||
tempGRP["PLAN_SEQ"] = temp.PLAN_SEQ;
|
||||
tempGRP["DATE"] = date;
|
||||
// if (temp?.AM_PLAN_QTY !== null) {
|
||||
// tempQTY[`AM_PLAN_QTY_${date}`] = temp.AM_PLAN_QTY
|
||||
// }
|
||||
// if (temp?.PM_PLAN_QTY !== null) {
|
||||
// tempQTY[`PM_PLAN_QTY_${date}`] = temp.PM_PLAN_QTY
|
||||
// }
|
||||
// if (temp?.NI_PLAN_QTY !== null) {
|
||||
// tempQTY[`NI_PLAN_QTY_${date}`] = temp.NI_PLAN_QTY
|
||||
// }
|
||||
if (temp?.AM_PLAN_QTY !== null) {
|
||||
tempGRP[`AM_PLAN_QTY`] = temp.AM_PLAN_QTY;
|
||||
}
|
||||
if (temp?.PM_PLAN_QTY !== null) {
|
||||
tempGRP[`PM_PLAN_QTY`] = temp.PM_PLAN_QTY;
|
||||
}
|
||||
if (temp?.NI_PLAN_QTY !== null) {
|
||||
tempGRP[`NI_PLAN_QTY`] = temp.NI_PLAN_QTY;
|
||||
}
|
||||
tempGRP["SEPER_ID"] = "PLAN";
|
||||
tempGRP["SEPER"] = "계획";
|
||||
// console.log(tempGRP);
|
||||
const sumObjItem = {};
|
||||
const sumObjQty = {};
|
||||
const sumObjPrd = {};
|
||||
|
||||
tempArr.push(tempQTY);
|
||||
tempArr.push(tempGRP);
|
||||
}
|
||||
// console.log(tempArr);
|
||||
let makingData = Object.groupBy(tempArr, ({ SEPER_ID }) => SEPER_ID);
|
||||
|
||||
const objects = [
|
||||
{ id: 1, value: 10 },
|
||||
{ id: 2, value: 20 },
|
||||
{ id: 1, value: 30 },
|
||||
{ id: 3, value: 40 },
|
||||
];
|
||||
|
||||
const mergedObjects3 = [];
|
||||
|
||||
makingData["PLAN"].map((obj) => {
|
||||
const existingObjIndex = mergedObjects3.findIndex(
|
||||
(item) => item.PLAN_SEQ === obj.PLAN_SEQ
|
||||
);
|
||||
if (existingObjIndex !== -1) {
|
||||
if (obj.AM_PLAN_QTY !== undefined) {
|
||||
mergedObjects3[existingObjIndex].AM_PLAN_QTY = obj.AM_PLAN_QTY;
|
||||
}
|
||||
if (obj.PM_PLAN_QTY !== undefined) {
|
||||
mergedObjects3[existingObjIndex].PM_PLAN_QTY = obj.PM_PLAN_QTY;
|
||||
}
|
||||
if (obj.NI_PLAN_QTY !== undefined) {
|
||||
mergedObjects3[existingObjIndex].NI_PLAN_QTY = obj.NI_PLAN_QTY;
|
||||
}
|
||||
|
||||
// mergedObjects3[existingObjIndex].AM_PLAN_QTY += obj.AM_PLAN_QTY;
|
||||
// mergedObjects3[existingObjIndex].PM_PLAN_QTY += obj.PM_PLAN_QTY;
|
||||
// mergedObjects3[existingObjIndex].NI_PLAN_QTY += obj.NI_PLAN_QTY;
|
||||
} else {
|
||||
mergedObjects3.push({ ...obj });
|
||||
}
|
||||
console.log(obj);
|
||||
if(makingITEM !==undefined){
|
||||
makingITEM.forEach(obj => {
|
||||
Object.keys(obj).forEach(key => {
|
||||
sumObjItem[key] = obj[key];
|
||||
});
|
||||
});
|
||||
|
||||
console.log(mergedObjects3);
|
||||
|
||||
const mergedObjects4 = [];
|
||||
makingData["GRP"].map((obj) => {
|
||||
const existingObjIndex = mergedObjects4.findIndex(
|
||||
(item) => item.PLAN_SEQ === obj.PLAN_SEQ
|
||||
);
|
||||
if (existingObjIndex !== -1) {
|
||||
// let temp_PM = 'PM_PLAN_QTY_'+obj.DATE
|
||||
// let temp_NI = 'NI_PLAN_QTY_'+obj.DATE
|
||||
// let temp_AM = 'AM_PLAN_QTY_'+obj.DATE
|
||||
|
||||
if (obj.AM_PLAN_QTY !== undefined) {
|
||||
mergedObjects4[existingObjIndex].AM_PLAN_QTY = obj.AM_PLAN_QTY;
|
||||
}
|
||||
if (obj.PM_PLAN_QTY !== undefined) {
|
||||
mergedObjects4[existingObjIndex].PM_PLAN_QTY = obj.PM_PLAN_QTY;
|
||||
}
|
||||
if (obj.NI_PLAN_QTY !== undefined) {
|
||||
mergedObjects4[existingObjIndex].NI_PLAN_QTY = obj.NI_PLAN_QTY;
|
||||
}
|
||||
|
||||
// mergedObjects3[existingObjIndex].AM_PLAN_QTY += obj.AM_PLAN_QTY;
|
||||
// mergedObjects3[existingObjIndex].PM_PLAN_QTY += obj.PM_PLAN_QTY;
|
||||
// mergedObjects3[existingObjIndex].NI_PLAN_QTY += obj.NI_PLAN_QTY;
|
||||
} else {
|
||||
mergedObjects4.push({ ...obj });
|
||||
}
|
||||
makingQTY.forEach(obj => {
|
||||
Object.keys(obj).forEach(key => {
|
||||
sumObjQty[key] = obj[key];
|
||||
});
|
||||
});
|
||||
console.log(mergedObjects4);
|
||||
|
||||
// const mergedObjects2 = makingData['GRP'].reduce((acc, obj) => {
|
||||
// const existingObj = acc.find(item => item.PLAN_SEQ === obj.PLAN_SEQ);
|
||||
// let temp_PM = 'PM_PLAN_QTY_'+obj.DATE
|
||||
// let temp_NI = 'NI_PLAN_QTY_'+obj.DATE
|
||||
// let temp_AM = 'AM_PLAN_QTY_'+obj.DATE
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// if (existingObj!== undefined) {
|
||||
//
|
||||
// if(existingObj[temp_AM]!== undefined){
|
||||
// existingObj[temp_AM] = obj.AM_PLAN_QTY;
|
||||
// }
|
||||
// if(obj.PM_PLAN_QTY !== undefined){
|
||||
// existingObj[temp_PM]= obj.PM_PLAN_QTY;
|
||||
//
|
||||
// }
|
||||
// if(obj.NI_PLAN_QTY !== undefined){
|
||||
// existingObj[temp_NI]= obj.NI_PLAN_QTY;
|
||||
// }
|
||||
//
|
||||
// } else {
|
||||
// acc.push({ ...obj });
|
||||
// }
|
||||
// return acc;
|
||||
// }, []);
|
||||
//
|
||||
// // console.log(mergedObjects2);
|
||||
//
|
||||
// const mergedObjects = makingData['PLAN'].reduce((acc, obj) => {
|
||||
// const existingObj = acc.find(item => item.PLAN_SEQ === obj.PLAN_SEQ);
|
||||
// let temp_AM = 'AM_PLAN_QTY_'+obj.DATE
|
||||
// let temp_PM = 'PM_PLAN_QTY_'+obj.DATE
|
||||
// let temp_NI = 'NI_PLAN_QTY_'+obj.DATE
|
||||
// // existingObj[temp_AM] = 1;
|
||||
// if(existingObj !== undefined ){
|
||||
// // console.log(existingObj);
|
||||
// if(obj.AM_PLAN_QTY !== undefined){
|
||||
//
|
||||
// // console.log(obj.AM_PLAN_QTY);
|
||||
// }
|
||||
//
|
||||
// }
|
||||
//
|
||||
// // console.log(existingObj[temp_AM]);
|
||||
// if (existingObj !== undefined ) {
|
||||
//
|
||||
// if(obj.AM_PLAN_QTY !== undefined){
|
||||
// // console.log('asdf');
|
||||
// existingObj[temp_AM]= obj.AM_PLAN_QTY;
|
||||
//
|
||||
// }
|
||||
// if(obj.PM_PLAN_QTY !== undefined){
|
||||
// existingObj[temp_PM]= obj.PM_PLAN_QTY;
|
||||
//
|
||||
// }
|
||||
// if(obj.NI_PLAN_QTY !== undefined){
|
||||
// existingObj[temp_NI]= obj.NI_PLAN_QTY;
|
||||
// }
|
||||
//
|
||||
// } else {
|
||||
// acc.push({ ...obj });
|
||||
// }
|
||||
// return acc;
|
||||
// }, []);
|
||||
//
|
||||
// // doubleArr.push(mergedObjects, mergedObjects2);
|
||||
//
|
||||
let newArr = mergedObjects4.concat(mergedObjects3);
|
||||
// let group = Object.groupBy(newArr,({PLAN_SEQ}) => PLAN_SEQ)
|
||||
makingPRD.forEach(obj => {
|
||||
Object.keys(obj).forEach(key => {
|
||||
sumObjPrd[key] = obj[key];
|
||||
});
|
||||
});
|
||||
|
||||
// console.log(Object.values(group));
|
||||
|
||||
return newArr;
|
||||
arr.push(sumObjItem);
|
||||
arr.push(sumObjQty);
|
||||
arr.push(sumObjPrd);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return arr;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
@ -318,7 +120,7 @@ class Tb_main_class {
|
|||
let data = new Object();
|
||||
for (let i = 0; i < arr.length; i++) {
|
||||
let temp = [arr[i]];
|
||||
console.log();
|
||||
|
||||
if (document.getElementById(arr[i]).type == "checkbox") {
|
||||
data[temp] = document.getElementById(temp).checked ? "Y" : "N";
|
||||
} else {
|
||||
|
|
@ -332,8 +134,7 @@ class Tb_main_class {
|
|||
data: data,
|
||||
|
||||
success: (data) => {
|
||||
console.log(data.code);
|
||||
console.table(data.data);
|
||||
|
||||
if (data.code) {
|
||||
//DB에서 받아온 데이터 가공하는 manageData 함수 참조
|
||||
this.tbList.setData(this.manageData(data));
|
||||
|
|
@ -487,7 +288,7 @@ class Tb_main_class {
|
|||
* @function _STATUS_ 값이 있는 데이터만 추려서 없으면 생성, 있으면 수정하기
|
||||
*/
|
||||
putData() {
|
||||
console.log(this.tbList.getData());
|
||||
|
||||
// 기본키 중복 확인 및 방지
|
||||
// _STATUS_ 있는 데이터만 들고와서 PUT하기
|
||||
}
|
||||
|
|
@ -510,7 +311,7 @@ class Tb_main_class {
|
|||
let month = ("0" + (date.getMonth() + 1)).slice(-2); // Adding leading zero
|
||||
let day = ("0" + date.getDate()).slice(-2); // Adding leading zero
|
||||
let formattedDate = `${month}월 ${day}일`;
|
||||
console.log(formattedDate);
|
||||
|
||||
columns.push({
|
||||
title: formattedDate,
|
||||
columns: [
|
||||
|
|
@ -521,7 +322,7 @@ class Tb_main_class {
|
|||
editor: "input",
|
||||
width: 50,
|
||||
editable: (cell) => {
|
||||
return cell.getRow().getPosition() / 3 !== 1;
|
||||
return cell.getRow().getPosition() % 3 !== 0;
|
||||
},
|
||||
},
|
||||
{
|
||||
|
|
@ -531,7 +332,7 @@ class Tb_main_class {
|
|||
editor: "input",
|
||||
width: 50,
|
||||
editable: (cell) => {
|
||||
return cell.getRow().getPosition() / 3 !== 1;
|
||||
return cell.getRow().getPosition() % 3 !== 0;
|
||||
},
|
||||
},
|
||||
{
|
||||
|
|
@ -541,7 +342,7 @@ class Tb_main_class {
|
|||
width: 50,
|
||||
editor: "input",
|
||||
editable: (cell) => {
|
||||
return cell.getRow().getPosition() / 3 !== 1;
|
||||
return cell.getRow().getPosition() % 3 !== 0;
|
||||
},
|
||||
},
|
||||
],
|
||||
|
|
@ -583,7 +384,7 @@ class Tb_main_class {
|
|||
// { groupId: this.lastGroupId, SEPER: "실적" },
|
||||
// ], //기본 데이터
|
||||
columns: fields, //컬럼 설정
|
||||
groupBy: "PLAN_SEQ",
|
||||
groupBy: "SEQ_NO",
|
||||
columnDefaults: commonFieldData,
|
||||
groupStartOpen: true,
|
||||
});
|
||||
|
|
|
|||
Loading…
Reference in New Issue