/* *********************************************************** Author : www.drimhitech.com Create Date : 2022. 11. 30 Subject : °øÅë javascript class Comment : JS ÆäÀÌÁö ------------------------------------------------------------ Modify Date : Comment : *********************************************************** */ class CommonClass{ /** * »ý¼ºÀÚ */ constructor(){ this.gl_formIdAry = []; // forms Id¸¦ ÀúÀåÇÏ´Â ¹è¿­ this.gl_transactionData = {}; // serTransaction ÇÔ¼ö¿¡¼­ »ç¿ëÇÏ´Â Æ®·£Àè¼Ç °´Ã¼ this.gl_transactionDataTop = {}; // serTransaction ÇÔ¼ö¿¡¼­ »ç¿ëÇÏ´Â Æ®·£Àè¼Ç °´Ã¼(main top)¿¡¼­ »ç¿ë this.gl_stroeAry = []; // ½Ä´çã±â ¸®½ºÆ®¸¦ ÀúÀåÇÏ´Â ¹è¿­ this.message = new MessageClass(); } /** * @title null °ª üũ ÇÔ¼ö
* @functionName isNull
* @param pStr üũ °ª
* @returns boolean */ isNull(pStr){ let retVal = false; if(Array.isArray(pStr)){ if(pStr.length == 0) retVal = true; }else{ try{ if(pStr == null || pStr == "null" || pStr == "" || pStr == undefined || pStr == "undefined"){ retVal = true; } }catch(error){ retVal = false; } } return retVal; } /** * @title ÄÞ¸¶ Ãß°¡ ÇÔ¼ö
* @functionName addComma
* @param pObj ¿ÀºêÁ§Æ®
* @returns String
*/ addComma(pObj){ var str = "", pnt = "", arg= "", decimal = "", pos=""; if(typeof(pObj) == 'object') {str = pObj.value;} else {str = String(pObj);} var intFlag = '', tmpStr = ''; for(var i = 0; i <= str.length; i++){ if(str.charAt(i) != ',') {tmpStr += str.charAt(i);} } str = tmpStr; if(parseFloat(str,10)<0){ // À½¼öÀÎ °æ¿ì (-°¡ ºÙÀº°æ¿ì) str = str * (-1); intFlag = '-'; } str = str+''; pnt = str.indexOf('.'); // ¼Ò¼ýÁ¡ÀÌ ºÙÀº °æ¿ì if(pnt != -1){ decimal = str.substr(pnt, str.length); str = str.substr(0, pnt); } else {decimal = '';} var len = str.length, arg = ''; if (len > 3){ switch(len%3){ case 0: pos = 0; break; case 1: pos = 1; break; case 2: pos = 2; break; case 3: pos = 3; break; } for (i = 0; i < len; i++){ if (i < pos) {arg += str.charAt(i);} else{ if (i != 0 && i%3 == pos){arg += ',';} arg += str.charAt(i); } } } else {arg = str;} arg = arg+''; arg = intFlag + arg + decimal; if(typeof(pObj) == 'object') {pObj.value = arg;} else{ return arg; } } /** * @title ÄÞ¸¶ Á¦°Å ÇÔ¼ö
* @functionName rmComma
* @param pObj ¿ÀºêÁ§Æ®
* @returns String
*/ rmComma(pObj){ var retVal = "", str=""; if(typeof(pObj) == 'object') {str = pObj.value;} else {str = pObj;} for(var i = 0; i <= str.length; i++){ if(str.charAt(i) != ','){retVal += str.charAt(i);} } if(!retVal) retVal = str; if(typeof(pObj) == 'object') {pObj.value = retVal;} else return retVal; } /** * @title localStorage ÀúÀåÇÔ¼ö
* @functionName setStorage
* @param pKeyName ½ºÆ®¸®Áö key°ª
* @param pKeyValue ½ºÆ®¸®Áö value°ª
* @returns boolean */ setStorage(pKeyName, pKeyValue){ if(this.isNull(pKeyName) || this.isNull(pKeyValue)) return; let keyName = this.message._STOR+pKeyName; window.localStorage.setItem(pKeyName, pKeyValue); } /** * @title localStorage °ª ÃßÃâ ÇÔ¼ö
* @functionName setStorage
* @param pKeyName ½ºÆ®¸®Áö key°ª
* @returns string */ getStorage(pKeyName){ let retVal = ""; if(this.isNull(pKeyName)) return retVal; let keyName = this.message._STOR+pKeyName; retVal = window.localStorage.getItem(pKeyName); return retVal; } /** * @title µð¹ÙÀ̽º â »çÀÌÁî ·¯ÅÏ ÇÔ¼ö
* @functionName getViewSize
* @param pSizeGb ¸®ÅÏ ±¸ºÐ(°ªÀÌ ¾øÀ»°æ¿ì Àüü[°¡·Î, ¼¼·Î] / W:°¡·Î»çÀÌÁî / H:¼¼·Î»çÀÌÁî)
* @returns array / number */ getViewSize(pSizeGb){ let screenW = window.innerWidth; let screenH = window.innerHeight; // »çÀÌÁºÐÀÌ Á¸ÀçÇÏÁö ¾ÊÀ¸¸é ¹è¿­·Î ¸®ÅÏ let retVal = ""; if(this.isNull(pSizeGb)){ retVal = [screenW, screenH]; }else{ if(pSizeGb.toUpperCase() == "W"){ retVal = screenW; }else if(pSizeGb.toUpperCase() == "H"){ retVal = screenH; }else{ retVal = [screenW, screenH]; } } return retVal; } /** * @title µðÀÚÀÎ °¡·Î³ÐÀ̸¦ µð¹ÙÀ̽º ±âÁØ °¡·Î³ÐÀÌ·Î º¯È¯Çؼ­ ¸®ÅÏÇØÁÖ´Â ÇÔ¼ö
* @functionName getRateWidth
* @param pWidth ¸®ÅÏ ±¸ºÐ(°ªÀÌ ¾øÀ»°æ¿ì Àüü[°¡·Î, ¼¼·Î] / W:°¡·Î»çÀÌÁî / H:¼¼·Î»çÀÌÁî)
* @returns number */ getRateWidth(pWidth){ let defW = 640; let screenW = this.getViewSize("W"); // È­¸é »çÀÌÁî°¡ 400ÀÌ ³ÑÀ¸¸é 400À¸·Î °íÁ¤ if(screenW >= 400) screenW = 400; let retVal = 0; if(this.isNull(pWidth)) return retVal; if(parseInt(pWidth,10) > defW) return defW; // µðÀÚÀαâÁØÀ¸·Î width ¸®»çÀÌÁî ³ÐÀÌ ±¸Çϱâ retVal = Math.round((parseInt(pWidth,10) * screenW) / defW); // µðÀÚÀαâÁغ¸°¡ Ŭ °æ¿ì µðÀÚÀÎ ±âÁØÀ¸·Î ¸®ÅÏ if(retVal > screenW) return screenW; else if(retVal> parseInt(pWidth,10)) return pWidth; return retVal; } /** * @title µðÀÚÀÎ °¡·Î³ÐÀ̸¦ µð¹ÙÀ̽º ±âÁØ font·Î º¯È¯Çؼ­ ¸®ÅÏÇØÁÖ´Â ÇÔ¼ö
* @functionName getRateFont
* @param pSize µðÀÚÀÎµÈ ÆùÆ® »çÀÌÁî
* @returns number */ getRateFont(pSize){ let defW = 640; let screenW = this.getViewSize("W"); // È­¸é »çÀÌÁî°¡ 400ÀÌ ³ÑÀ¸¸é 400À¸·Î °íÁ¤ if(screenW >= 400) screenW = 400; let retVal = 0; if(this.isNull(pSize)) return retVal; if(screenW > defW) return pSize; // µðÀÚÀαâÁØÀ¸·Î width ÆùÆ® Å©±â ±¸Çϱâ retVal = Math.round((parseInt(pSize,10) * screenW) / defW)+1; if(retVal > parseInt(pSize, 10)) return pSize; return retVal; } /** * @title µðÀÚÀÎ °¡·Î/¼¼·Î ±âÁØÀ¸·Î ¼¼·Î ³ÐÀ̸¦ º¯È¯Çؼ­ ¸®ÅÏÇØÁÖ´Â ÇÔ¼ö
* @functionName getRateHeight
* @param pOldWidth µðÀÚÀÎÀÇ width
* @param pOldHeight µðÀÚÀÎÀÇ height
* @param pNewWidth º¯°æµÈ width
* @returns number */ getRateHeight(pOldWidth, pOldHeight, pNewWidth){ let defW = 640; let screenW = 400; let retVal = 0; if(!pOldWidth > 0 || !pOldHeight > 0 || !pNewWidth > 0) return retVal; // µðÀÚÀαâÁØ ³ÐÀ̺¸´Ù Ŭ°æ¿ì 400±âº»À¸·Î ¼³Á¤ if(parseInt(pNewWidth,10) >= screenW) pNewWidth = screenW; // ±âÁ¸ °¡·Î¼¼·Î ºñÀ²·Î ¼¼·Î ºñÀ² ±¸Çϱâ retVal = Math.round((parseInt(pOldHeight,10) * parseInt(pNewWidth,10) ) / parseInt(pOldWidth,10)); // µðÀÚÀαâÁغ¸°¡ Ŭ °æ¿ì µðÀÚÀÎ ±âÁØÀ¸·Î ¸®ÅÏ if(retVal > parseInt(pOldHeight,10)) return pOldHeight; return retVal; } /** * @title form ű×ÀÇ id¸¦ ¸®ÅÏÇÏ´Â ÇÔ¼ö
* @functionName getFormId
* @param pParam ÆÄ¶ó¸ÞÅÍ
* {
* index : form index (°ªÀÌ ¾øÀ»°æ¿ì Àüü ¹è¿­¸®ÅÏ)
* }
* @return string or array */ getFormId(pParam){ if(this.gl_formIdAry.length == 0){ var forms = document.forms; for(let i=0,form; form = forms[i]; i++){ this.gl_formIdAry[i] = form.id; } } if(!pParam) pParam = {}; let idx = pParam.index; if(idx >= 0) return this.gl_formIdAry[idx]; else return this.gl_formIdAry; } /** * @title È­¸é ÃʱâÈ­ ÇÔ¼ö
* @functionName pageInit
*/ pageInit(){ // formId¹è¿­ ÃʱâÈ­ this.gl_formIdAry = []; // form id ÀúÀå let formObjs = document.forms; for(let i=0; i < formObjs.length; i++){ let formId = formObjs[i].getAttribute("id"); this.gl_formIdAry.push(formId); } // ·Îµù¹Ù ¿µ¿ª »ý¼º let loadingObj = document.getElementById("pul-dvLoadingbarWrapper"); if(!loadingObj){ let loadHtml = `
·Îµù
loading...
`; let loadObj = document.createElement("div"); loadObj.setAttribute("id", "pul-dvLoadingbarWrapper"); loadObj.innerHTML = loadHtml; document.body.appendChild(loadObj); } // ¸Þ½ÃÁö ¿µ¿ª »ý¼º let messageObj = document.getElementById("pul-dvMessageWrapper"); if(!messageObj){ let messageHtml = `
´Ý±â
È®ÀÎ
`; let msgObj = document.createElement("div"); msgObj.setAttribute("id", "pul-dvMessageWrapper"); msgObj.innerHTML = messageHtml; document.body.appendChild(msgObj); } // À©µµ¿ì ¸®»çÀÌÁî À̺¥Æ® ¼³Á¤ window.addEventListener("resize", function(e){common.pageResize();}, false); } /** * @title ¸®»çÀÌÁî ÇÔ¼ö
* @functionName pageResize
* @param pResizeGb ¸®»çÀÌÁî ±¸ºÐ(message:¸Þ½ÃÁöâ) */ pageResize(pResizeGb){ // ¸Þ½ÃÁö ÆË¾÷âÀÌ ¶ç¾îÁ® ÀÖ´Â °æ¿ì ¸Þ½ÃÁöâ ¸®»çÀÌÁî let msgObj = document.getElementById("pul-dvMessageWrapper"); if(msgObj){ let msgDisGb = msgObj.style.display; if(msgDisGb == "table" || pResizeGb == "message"){ // À§Ä¡ ¼³Á¤ let viewSize = this.getViewSize(); let viewW = viewSize[0]; let viewH = viewSize[1]; msgObj.style.width = viewW+"px"; msgObj.style.height = viewH+"px"; // ¸Þ½ÃÁö ÄÁÅÙÃ÷ ¿µ¿ª let messageObj = msgObj.querySelector("#pul-dvMessageContents"); let messageObjW = this.getRateWidth(400); let messageObjH = this.getRateHeight(400,380,messageObjW); messageObj.style.width = messageObjW+"px"; messageObj.style.height = messageObjH+"px"; // ¸Þ½ÃÁö ¹öư ¿µ¿ª let messageBtnObj = msgObj.querySelector("#pul-dvMessageBtn"); let messageBtnObjW = this.getRateWidth(200); let messageBtnObjH = this.getRateHeight(200,50,messageBtnObjW); let messageBtnObjF = this.getRateFont(20); messageBtnObj.style.width = messageBtnObjW+"px"; messageBtnObj.style.height = messageBtnObjH+"px"; messageBtnObj.style.fontSize = messageBtnObjF+"px"; // ¸Þ½ÃÁö Ãâ·Â ¿µ¿ª let messageTxtObj = msgObj.querySelector("#pul-dvMessageTxt"); let messageTxtObjH = messageObjH - (14+messageBtnObjH+15+23); let messageTxtObjF = this.getRateFont(24); messageTxtObj.style.height = messageTxtObjH+"px"; messageTxtObj.style.fontSize = messageTxtObjF+"px"; } } // ·ÎµùâÀÌ µï¾îÁ® ÀÖ´Â °æ¿ì ·Îµùâ ¸®»çÀÌÁî let loadObj = document.getElementById("pul-dvLoadingbarWrapper"); if(loadObj){ let loadDisGb = loadObj.style.display; if(loadDisGb == "table" || pResizeGb == "load"){ // »çÀÌÁî Á¶Á¤ let screenSize = this.getViewSize(); loadObj.style.width = screenSize[0]+"px"; loadObj.style.height = screenSize[1]+"px"; let loadingObj = loadObj.querySelector("#pul-dvLoading"); let loadingImg = loadObj.querySelector("#pul-imLoad"); let loadingTxt = loadObj.querySelector("#pul-dvLoadTxt"); let loadingObjW = common.getRateWidth(200); let loadingObjF = common.getRateFont(20); let loadingImgW = Math.round(loadingObjW / 2); loadingObj.style.width = loadingObjW+"px"; loadingObj.style.height = loadingObjW+"px"; loadingImg.style.width = loadingImgW+"px"; loadingTxt.style.fontSize = loadingObjF+"px"; } } // ½Ä´çã±â âÀÌ ¶ç¾îÁ® ÀÖ´Â °æ¿ì ½Ä´çã±â â ¸®»çÀÌÁî let storeObj = document.getElementById("pul-dvPopupStoreBack"); if(storeObj){ let storeDisGb = storeObj.style.display; if(storeDisGb == "table" || pResizeGb == "store"){ // »çÀÌÁî Á¶Àý let screenSize = this.getViewSize(); let screenW = screenSize[0]; let screenH = screenSize[1]; let storeGb = storeObj.getAttribute("data-store"); storeObj.style.width = screenW+"px"; storeObj.style.height = screenH+"px"; let popWrapperW = this.getRateWidth(568); let popWrapperH = (storeGb == "change")?this.getRateHeight(568,700,popWrapperW):this.getRateHeight(568,850,popWrapperW); let popWrapperObj = storeObj.querySelector("#pul-dvPopStoreWrapper"); popWrapperObj.style.width = popWrapperW+"px"; popWrapperObj.style.height = popWrapperH+"px"; let popFindObj = storeObj.querySelector("#pul-dvPopFindWrapper"); let popFindObjH = popFindObj.clientHeight; let popStoreListObjH = (popWrapperH - popFindObjH)-40; let popStoreListObj = storeObj.querySelector("#pul-dvPopStoreListWrapper"); popStoreListObj.style.height = popStoreListObjH+"px"; } } } /** * @title È­¸é ·Îµù¹Ù ÇÔ¼ö
* @functionName pageLoadingBar
* @param pViewGb Ãâ·Â±¸ºÐ - open(Ãâ·Â) / close(´Ý±â) */ pageLoadingBar(pViewGb){ setTimeout(function(){ common.pageLoadingView(pViewGb); }, 100); } pageLoadingView(pViewGb){ let loadObj = document.getElementById("pul-dvLoadingbarWrapper"); if(!loadObj) return; // ´Ý±â if(pViewGb == "close"){ loadObj.style.display="none"; } // ¿­±â else{ // ¸Þ½ÃÁöâ »çÀÌÁî Á¶Àý this.pageResize("load"); loadObj.style.display="table"; } } /** * @title ¸Þ½ÃÁö ÆË¾÷
* @functionName pageAlterMsg
* @param pMsg Ãâ·Â ¸Þ½ÃÁö
* @param pBtnCallback ¹öư¼±Åà ÄݹéÇÔ¼ö
*/ pageAlterMsg(pMsg,pBtnCallback){ let msgObj = document.getElementById("pul-dvMessageWrapper"); if(!msgObj) return; // ¸Þ½ÃÁö â »çÀÌÁî Á¶Á¤ this.pageResize("message"); msgObj.querySelector("#pul-dvMessageView").innerHTML = pMsg; // È­¸é Ãâ·Â msgObj.style.display = "table"; // Á¾·á ¹öư Ŭ¸¯ À̺¥Æ® ¼³Á¤ msgObj.querySelector("#pul-imMessageClose").addEventListener("click",function(e){ common.pageAlterMsgClose(msgObj, pBtnCallback); },{ once: true }); // È®ÀÎ ¹öư Ŭ¸¯ À̺¥Æ® ¼³Á¤ msgObj.querySelector("#pul-dvMessageBtn").addEventListener("click", function(e){ common.pageAlterMsgClose(msgObj, pBtnCallback); },{ once: true }); } /** * @title ¸Þ½ÃÁö ÆË¾÷ ´Ý±â ÇÔ¼ö * @functionName pageAlterMsgClose */ pageAlterMsgClose(pObj, pBtnCallback){ if(!pObj) return; pObj.querySelector("#pul-dvMessageView").innerHTML = ""; pObj.style.display = "none"; // callback ÇÔ¼ö ½ÇÇà if(pBtnCallback) pBtnCallback(); } /** * @title ½Ä´çã±â ÆË¾÷ »ý¼º ÇÔ¼ö
* @functionName pageStoreMake
* @param pStoreGb ÆË¾÷±¸ºÐ(find:½Ä´çã±â, change:½Ä´çº¯°æ)
* @param pParam ÆÄ¶ó¸ÞÅÍ
* [
* operCd, assignCd, assignNm
* ]
* @param pAssignGrp ¼Ò¼Ó±×·ì(½Ä´çº¯°æ¿¡¼­¸¸ »ç¿ë) */ pageStoreMake(pStoreGb, pParam, pAssignGrp){ let storeList = pParam; this.gl_stroeAry = storeList; let storeTitle = (pStoreGb == "change")?"½Ä´çº¯°æ":"½Ä´çã±â"; // ½Ä´çã±â ¿µ¿ª Á¸Àç ¿©ºÎ È®ÀÎ let storeObj = document.getElementById("pul-dvPopupStoreBack"); if(!storeObj){ let obj = document.createElement("div"); let inHtml = ""; inHtml += `
${storeTitle}
close
ã±â¹öư
°Ë»öÇÏ½Ç »ç¾÷Àå¸íÀ» 3±ÛÀÚ ÀÌ»ó ÀÔ·Â ÈÄ Ã£¾ÆÁÖ¼¼¿ä
`; obj.setAttribute("id", "pul-dvPopupStoreBack"); obj.innerHTML = inHtml; storeObj = document.body.appendChild(obj); } // ŸÀÌÆ² º¯°æ storeObj.querySelector(".pul-dvPopStoreTitleCss").innerText = storeTitle; // ¸®½ºÆ® »èÁ¦ let storeListWrpObj = storeObj.querySelector("#pul-dvPopStoreListWrapper"); let storeListObj = storeObj.querySelector(".pul-dvPopStroeListCss"); storeListWrpObj.removeChild(storeListObj); // ¸®½ºÆ® Ãß°¡ let createHtml = ""; let createObj = document.createElement("div"); createObj.setAttribute("class", "pul-dvPopStroeListCss"); if( storeList && storeList.length > 0){ // ½ºÅ丮Áö¿¡ ÀúÀåµÈ ½Ä´ç È®ÀÎ let storageVal = this.getStorage(this.message._STOR_STORE); let chkAssignCd = ""; if(!this.isNull(storageVal)){ let tmpValAry = storageVal.split("^"); chkAssignCd = tmpValAry[0]; } // ½Ä´ç Ãâ·Â let assignGrp = pAssignGrp; for(let i= 0; i < storeList.length; i++){ let infoAry = storeList[i]; if(pStoreGb == "change"){ if(assignGrp == infoAry[3]){ if(infoAry[1] == chkAssignCd) createHtml += "
"+infoAry[2]+"
\n"; else createHtml += "
"+infoAry[2]+"
\n"; } }else{ if(infoAry[1] == chkAssignCd) createHtml += "\n"; else createHtml += "
"+infoAry[2]+"
\n"; } } // ÇØ´ç °á°ú°¡ ¾ø½À´Ï´Ù. createHtml += "\n"; createObj.innerHTML = createHtml; } storeListWrpObj.appendChild(createObj); // È­¸é±¸ºÐ¿¡ µû¸¥ Ãâ·Â ¿µ¿ª ÁöÁ¤ if(pStoreGb == "change") storeObj.querySelector("#pul-dvPopSearchWrapper").style.display="none"; else storeObj.querySelector("#pul-dvPopSearchWrapper").style.display="block"; // È­¸é Ãâ·Â storeObj.style.display = "table"; // ´Ý±â À̺¥Æ® »ý¼º let closeObj = storeObj.querySelector(".pul-dvPopStoreCloseCss"); closeObj.addEventListener("click",this.pageStoreClose, false); // ã±â ¹öư À̺¥Æ® »ý¼º let findObj = storeObj.querySelector("#pul-imStoreFind"); findObj.onclick = function(e){common.pageStoreFilter(storeObj);} // input enterŰ À̺¥Æ® »ý¼º let inputObj = storeObj.querySelector("#pul-inStoreFind"); inputObj.value = ""; inputObj.onkeyup = function(e){common.pageStoreKeyCode(e.keyCode, storeObj); } // ¸Þ½ÃÁö»ö ÃʱâÈ­ storeObj.querySelector(".pul-dvPopStoreMsgCss").classList.remove("pul-dvPopStoreMsgNoCss"); // ½Ä´ç ¼±Åà À̺¥Æ® »ý¼º if( storeList && storeList.length > 0 ){ let storeAtObjs = storeObj.querySelector(".pul-dvPopStroeListCss"); storeAtObjs.addEventListener("click", function(e){ let tarObj = e.target; if(tarObj.getAttribute("name") == "pul-dvStoreList"){ let param = {"url":common.message._TODAY, param:{"Ta":tarObj.getAttribute("data-oper"), "Tb":tarObj.getAttribute("id"), "Tc":tarObj.innerText , "Td":tarObj.getAttribute("data-group")}}; common.pageStoreMove(tarObj, param); } }, false); } // »çÀÌÁî Á¶Á¤ storeObj.setAttribute("data-store",pStoreGb); this.pageResize("store"); } /** * @title ½Ä´çã±â ÆË¾÷ Á¾·á ÇÔ¼ö
* @functionName pageStoreClose
*/ pageStoreClose(){ let storeObj = document.getElementById("pul-dvPopupStoreBack"); if(storeObj) storeObj.style.display = "none"; } /** * @title ½Ä´ç ÇÊÅÍ ÇÔ¼ö
* @functionName pageStoreFilter
* @param pObj ½Ä´çã±â object
*/ pageStoreFilter(pObj){ if(this.isNull(pObj)) return; // ·Îµù¹Ù Ãâ·Â this.pageLoadingBar("open"); let txtObj = pObj.querySelector("#pul-inStoreFind"); let findTxt = ""; if(txtObj) findTxt = txtObj.value; let msgObj = pObj.querySelector(".pul-dvPopStoreMsgCss"); // 3ÀÚ ÀÌ»ó ÀÔ·Â let disGb = false; if(!(findTxt.length > 2)){ this.pageLoadingBar("close"); msgObj.classList.add("pul-dvPopStoreMsgNoCss"); return; } findTxt = findTxt.toLowerCase(); let storeList = pObj.querySelectorAll("div[name='pul-dvStoreList']"); let viewCnt = 0; for(let i=0; i < storeList.length; i++){ let storeObj = storeList[i]; let chkTxt = storeObj.innerText; if(chkTxt) chkTxt = chkTxt.toLowerCase(); if(disGb){ storeObj.parentNode.style.display = "table-row"; viewCnt++; }else if(chkTxt.indexOf(findTxt) >= 0){ storeObj.parentNode.style.display = "table-row"; viewCnt++; }else{ storeObj.parentNode.style.display = "none"; } } // ã´Â »ç¾÷ÀåÀÌ Á¸ÀçÇÏÁö ¾ÊÀ»°æ¿ì ¸Þ¼¼Áö Ãâ·Â let storeNotObj = pObj.querySelector("#pul-dvStoreListNot"); if(viewCnt == 0) storeNotObj.style.display = "table-row"; else storeNotObj.style.display = "none"; this.pageLoadingBar("close"); } /** * @title ½Ä´ç °Ë»öÁ¶°Ç Ű´Ù¿îÇÔ¼ö
* @functionName pageStoreKeyCode
* @param pKeycode keyCode
* @param pObj ½Ä´çã±â object
*/ pageStoreKeyCode(pKeycode, pObj){ // enterŰ - ã±â if(pKeycode == 13){ this.pageStoreFilter(pObj); } // ÀÚ¸´¼ö°¡ 3ÀÚ¸®°¡ ³Ñ¾î°¡¸é °¡³ª ¾øÀ¸¸é »ö ÃʱâÈ­ let inputObj = pObj.querySelector("#pul-inStoreFind"); let inputLen = inputObj.value.length; if(inputLen == 0 || inputLen > 2){ pObj.querySelector(".pul-dvPopStoreMsgCss").classList.remove("pul-dvPopStoreMsgNoCss"); // °Ë»öÁ¶°ÇÀÌ »èÁ¦µÇ¾úÀ»°æ¿ì °á°ú¾øÀ½ ºñȰ¼ºÈ­ ó¸® if(inputLen == 0) pObj.querySelector("#pul-dvStoreListNot").style.display = "none"; } } /** * @title ½Ä´ç À̵¿ ÇÔ¼ö
* @functionName pageStoreMove
* @param pObj ¼±ÅÃÇÑ ½Ä´ç object
* @param pParam ÆÄ¶ó¸ÞÅÍ
* {
* url : À̵¿ÇÒ ÆäÀÌÁö
* param : ÆäÀÌÁö¿¡ Àü´ÞÇÒ ÆÄ¶ó¹ÌÅÍ(°´Ã¼){}
* }
*/ pageStoreMove(pObj, pParam){ if(this.isNull(pObj)) return; if(this.isNull(pParam)) return; let objId = pObj.id; let operCd = pObj.getAttribute("data-oper"); let assignGrp = pObj.getAttribute("data-group"); let assignNm = pObj.innerText; let topParamGbObj = document.getElementById("topParamGb"); let topParamGb = "no"; if(topParamGbObj) topParamGb = topParamGbObj.value; // ½ºÅ丮Áö ÀúÀå(³Ñ¾î¿Â »ç¾÷Àå Äڵ尡 Á¸ÀçÇÏ´Â °æ¿ì ½ºÅ丮Áö ÀúÀå ÇÏÁö ¾ÊÀ½) if(topParamGb == "ok") pParam.Te = topParamGb; else this.setStorage(this.message._STOR_STORE, objId+"^"+operCd+"^"+assignNm+"^"+assignGrp); // ¼±Åà ½Ä´ç »ö º¯°æ let storeList = pObj.parentNode.parentNode.querySelectorAll("div[name='pul-dvStoreList']"); for(let i=0; i < storeList.length; i++){ let storeObj = storeList[i]; storeObj.parentNode.classList.remove("pul-dvPopStroeFontCss"); if(storeObj.id == objId){ storeObj.parentNode.classList.add("pul-dvPopStroeFontCss"); } } // ÆäÀÌÁö À̵¿ pParam.infoGb = 1; // »ç¾÷Àå±âº»Á¤º¸ Àü´Þ¿©ºÎ Àü´Þ this.pageMove(pParam); } /** * @title ÆäÀÌÁö À̵¿ ÇÔ¼ö
* @functionName pageMove
* @param pParam ÆÄ¶ó¸ÞÅÍ
* {
* url : À̵¿ÇÒ ÆäÀÌÁö
* param : ÆäÀÌÁö¿¡ Àü´ÞÇÒ ÆÄ¶ó¹ÌÅÍ(°´Ã¼){}
* infoGb : »ç¾÷Àڱ⺻Á¤º¸ ÆÄ¶ó¹ÌÅÍ Àü´Þ¿©ºÎ(0:¹ÌÀü´Þ[default] / 1:Àü´Þ)
* }
*/ pageMove(pParam){ if(this.isNull(pParam)) return; let url = pParam.url; let params = pParam.param; let tOperCd = document.getElementById("topOperCd"); let tAssignCd = document.getElementById("topAssignCd"); let tAssignNm = document.getElementById("topAssignNm"); let tAssignGrp = document.getElementById("topAssignGrp"); let tParamGb = document.getElementById("topParamGb"); // ÆÄ¶ó¹ÌÅÍ Á¶ÇÕ var urlParam = url+"?"; for(var key in params){ urlParam += key+"="+params[key]+"&"; } if(!pParam.infoGb){ if(!this.isNull(tOperCd)) urlParam += "Ta="+tOperCd.value+"&"; if(!this.isNull(tAssignCd)) urlParam += "Tb="+tAssignCd.value+"&"; if(!this.isNull(tAssignNm)) urlParam += "Tc="+tAssignNm.value+"&"; if(!this.isNull(tAssignGrp)) urlParam += "Td="+tAssignGrp.value+"&"; if(!this.isNull(tParamGb)) urlParam += "Te="+tParamGb.value+"&"; } urlParam = urlParam.substring(0,(urlParam.length-1)); // ½Ä´çã±â ÆË¾÷ ´Ý±â this.pageStoreClose(); // ÆäÀÌÁö À̵¿ window.location.href = urlParam; } /** * @title ¼­¹ö Æ®·£Àè¼Ç ÇÔ¼ö
* @functionName serTransaction
* @param pParam ÆÄ¶ó¸ÞÅÍ
* { * requestId : Æ®·£Àè¼Ç ¾ÆÀ̵ð, [ Çʼö ]
* requestUrl : Á¢¼ÓURL, [ Çʼö ]
* requestFormId : FORM ID, [ Çʼö ]
* requestMode : Åë½Å¹æ¹ý, ( 1:ajax¸ðµå[default] / 2:submit¸ðµå / 3:debug¸ðµå )
* requestParam : Àü¼ÛÆÄ¶ó¸ÞÅÍ, ( °´Ã¼{} )
* requestTimeout : Åë½Å TIMEOUT ( ÃÊ´ÜÀ§ : 1000(1ÃÊ) )( »ý·«°¡´É[default:60ÃÊ] )
* }
* @param pFn CALLBACK ÇÔ¼ö */ serTransaction(pParam, pFn){ let vitalChk = ""; if(!pParam.requestId) vitalChk = "requestId"; else if(!pParam.requestUrl) vitalChk = "requestUrl"; else if(!pParam.requestFormId) vitalChk = "requestFormId"; // Çʼö°ªÀÌ Á¸ÀçÇÏÁö ¾ÊÀ»°æ¿ì ¾Ë¸² Ç¥½Ã if(vitalChk){ this.pageAlterMsg("Çʼö°ªÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù."); return; } this.gl_transactionData = {}; this.gl_transactionData.fn = pFn; // transaction ½ÃÀÛ this.startTransaction(pParam); } /** * @title Æ®·£Àè¼Ç ½ÃÀÛÇÔ¼ö * @functionName startTransaction * @param pParam ÆÄ¶ó¸ÞÅÍ */ startTransaction(pParam){ let paramObj = pParam; let requestFormId = paramObj.requestFormId; let requestId = paramObj.requestId; let requestUrl = paramObj.requestUrl; let requestParam = paramObj.requestParam; let requestMode = paramObj.requestMode; let requestTimeout = paramObj.requestTimeout; if(this.isNull(requestMode)) requestMode = 1; // 1:ajax¸ðµå[default] / 2:submit¸ðµå / 3:debug¸ðµå if(this.isNull(requestTimeout)) requestTimeout = 1000*60; // ÃÊ´ÜÀ§[default : 60ÃÊ] if(typeof(requestParam) != "object") requestParam = {}; // ajax ¸ðµå·Î transaction ó¸® if(requestMode == 1){ let formObj = document.getElementById(requestFormId); let jsonParam = {"requestId": requestId, "requestUrl": requestUrl, "requestMode": requestMode, "requestParam": JSON.stringify(requestParam)}; $.ajax({ url:requestUrl, type:"POST", data:jsonParam, dataType:"json", error:function(jqXHR,textStatus,strError){ //console.log(textStatus, jqXHR); if(textStatus=="parsererror"){ common.endTransaction(requestId,-999,{error:jqXHR.responseText}); }else{ common.endTransaction(requestId,0,{error:jqXHR.statusText}); } }, timeout:requestTimeout, success:function(data){ //console.log("ajax success"); common.endTransaction(requestId,1,data); } }); } // sumbit or debug ¸ðµå·Î transaction ó¸® else if(requestMode == 2 || requestMode == 3) { let formObj =""; if(requestFormId){ formObj = document.getElementById(requestFormId); }else{ formObj = document.forms[0]; } let iframeObj =formObj.querySelector("page-sumbit-wrapper"); if(!iframeObj){ var obj = document.createElement("div"); obj.setAttribute("id", "page-sumbit-wrapper"); obj.style.display = "none"; obj.innerHTML = ""; formObj.appendChild(obj); } let tagRequestId = formObj.querySelector("#requestId"); let tagRequestMode = formObj.querySelector("#requestMode"); let tagRequestTimeout = formObj.querySelector("#requestTimeout"); let tagRequestParam = formObj.querySelector("#requestParam"); // requestId if(tagRequestId){ formObj.requestId.value = requestId; } else{ let obj = document.createElement("input"); obj.setAttribute("type", "hidden"); obj.setAttribute("id", "requestId"); obj.setAttribute("name", "requestId"); obj.setAttribute("value", requestId); formObj.appendChild(obj); } // requestMode if(tagRequestMode){ formObj.requestMode.value = requestMode; } else{ let obj = document.createElement("input"); obj.setAttribute("type", "hidden"); obj.setAttribute("id", "requestMode"); obj.setAttribute("name", "requestMode"); obj.setAttribute("value", requestMode); formObj.appendChild(obj); } // tagRequestTimeout if(tagRequestTimeout){ formObj.requestTimeout.value = requestTimeout; } else{ let obj = document.createElement("input"); obj.setAttribute("type", "hidden"); obj.setAttribute("id", "requestTimeout"); obj.setAttribute("name", "requestTimeout"); obj.setAttribute("value", requestTimeout); formObj.appendChild(obj); } // tagRequestParam if(tagRequestParam) { formObj.requestParam.value = JSON.stringify(requestParam); } else{ let obj = document.createElement("input"); obj.setAttribute("type", "hidden"); obj.setAttribute("id", "requestParam"); obj.setAttribute("name", "requestParam"); obj.setAttribute("value", JSON.stringify(requestParam)); formObj.appendChild(obj); } // submit() if(requestMode == 2) formObj.target ='iframe'; // submit ¸ðµå else formObj.target ='debug'; // debug ¸ðµå formObj.action = requestUrl; formObj.submit(); } } /** * @title Æ®·£Àè¼Ç Á¾·áÇÔ¼ö * @functionName endTransaction (CommonClass.php ¿¡¼­ È£Ãâ ÇÔ) * @param pResId Æ®·£Àè¼Ç ¾ÆÀ̵ð * @param pResCode Æ®·£Àè¼Ç ¼º°ø¿©ºÎ(0:½ÇÆÐ,1:¼º°ø) * @param pResData ¸®ÅÏ µ¥ÀÌÅÍ */ endTransaction(pResId,pResCode,pResData){ // Æ®·£Àè¼ÇÀÌ ¼º°øÀ̸é if(pResCode >= 1){ let fn = this.gl_transactionData.fn; if(fn) fn(pResId, pResCode, pResData); } // DB¿¡·¯ else if(pResCode == -999){ this.pageLoadingBar("close"); this.pageAlterMsg("DB Error"); } // Æ®·£Àè¼ÇÀÌ ½ÇÆÐÀÌ¸é ¸Þ½ÃÁö Ãâ·Â else{ this.pageLoadingBar("close"); this.pageAlterMsg(""+"Transaction Error : "+pResData.error+""); } } /** * @title ¼­¹ö Æ®·£Àè¼Ç ÇÔ¼ö(main Top¿¡¼­ »ç¿ë)
* @functionName serTransaction
* @param pParam ÆÄ¶ó¸ÞÅÍ
* { * requestId : Æ®·£Àè¼Ç ¾ÆÀ̵ð, [ Çʼö ]
* requestUrl : Á¢¼ÓURL, [ Çʼö ]
* requestFormId : FORM ID, [ Çʼö ]
* requestMode : Åë½Å¹æ¹ý, ( 1:ajax¸ðµå[default] / 2:submit¸ðµå / 3:debug¸ðµå )
* requestParam : Àü¼ÛÆÄ¶ó¸ÞÅÍ, ( °´Ã¼{} )
* requestTimeout : Åë½Å TIMEOUT ( ÃÊ´ÜÀ§ : 1000(1ÃÊ) )( »ý·«°¡´É[default:60ÃÊ] )
* }
* @param pFn CALLBACK ÇÔ¼ö */ serTransactionTop(pParam, pFn){ let vitalChk = ""; if(!pParam.requestId) vitalChk = "requestId"; else if(!pParam.requestUrl) vitalChk = "requestUrl"; else if(!pParam.requestFormId) vitalChk = "requestFormId"; // Çʼö°ªÀÌ Á¸ÀçÇÏÁö ¾ÊÀ»°æ¿ì ¾Ë¸² Ç¥½Ã if(vitalChk){ this.pageAlterMsg("Çʼö°ªÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù."); return; } this.gl_transactionDataTop = {}; this.gl_transactionDataTop.fn = pFn; // transaction ½ÃÀÛ this.startTransactionTop(pParam); } /** * @title Æ®·£Àè¼Ç ½ÃÀÛÇÔ¼ö(main Top¿¡¼­ »ç¿ë) * @functionName startTransaction * @param pParam ÆÄ¶ó¸ÞÅÍ */ startTransactionTop(pParam){ let paramObj = pParam; let requestFormId = paramObj.requestFormId; let requestId = paramObj.requestId; let requestUrl = paramObj.requestUrl; let requestParam = paramObj.requestParam; let requestMode = paramObj.requestMode; let requestTimeout = paramObj.requestTimeout; if(this.isNull(requestMode)) requestMode = 1; // 1:ajax¸ðµå[default] / 2:submit¸ðµå / 3:debug¸ðµå if(this.isNull(requestTimeout)) requestTimeout = 1000*60; // ÃÊ´ÜÀ§[default : 60ÃÊ] if(typeof(requestParam) != "object") requestParam = {}; // ajax ¸ðµå·Î transaction ó¸® if(requestMode == 1){ let formObj = document.getElementById(requestFormId); let jsonParam = {"requestId": requestId, "requestUrl": requestUrl, "requestMode": requestMode, "requestParam": JSON.stringify(requestParam)}; $.ajax({ url:requestUrl, type:"POST", data:jsonParam, dataType:"json", error:function(jqXHR,textStatus,strError){ //console.log(textStatus, jqXHR); if(textStatus=="parsererror"){ common.endTransactionTop(requestId,-999,{error:jqXHR.responseText}); }else{ common.endTransactionTop(requestId,0,{error:jqXHR.statusText}); } }, timeout:requestTimeout, success:function(data){ //console.log("ajax success"); common.endTransactionTop(requestId,1,data); } }); } // sumbit or debug ¸ðµå·Î transaction ó¸® else if(requestMode == 2 || requestMode == 3) { let formObj =""; if(requestFormId){ formObj = document.getElementById(requestFormId); }else{ formObj = document.forms[0]; } let iframeObj =formObj.querySelector("page-sumbit-wrapper"); if(!iframeObj){ var obj = document.createElement("div"); obj.setAttribute("id", "page-sumbit-wrapper"); obj.style.display = "none"; obj.innerHTML = ""; formObj.appendChild(obj); } let tagRequestId = formObj.querySelector("#requestId"); let tagRequestMode = formObj.querySelector("#requestMode"); let tagRequestTimeout = formObj.querySelector("#requestTimeout"); let tagRequestParam = formObj.querySelector("#requestParam"); // requestId if(tagRequestId){ formObj.requestId.value = requestId; } else{ let obj = document.createElement("input"); obj.setAttribute("type", "hidden"); obj.setAttribute("id", "requestId"); obj.setAttribute("name", "requestId"); obj.setAttribute("value", requestId); formObj.appendChild(obj); } // requestMode if(tagRequestMode){ formObj.requestMode.value = requestMode; } else{ let obj = document.createElement("input"); obj.setAttribute("type", "hidden"); obj.setAttribute("id", "requestMode"); obj.setAttribute("name", "requestMode"); obj.setAttribute("value", requestMode); formObj.appendChild(obj); } // tagRequestTimeout if(tagRequestTimeout){ formObj.requestTimeout.value = requestTimeout; } else{ let obj = document.createElement("input"); obj.setAttribute("type", "hidden"); obj.setAttribute("id", "requestTimeout"); obj.setAttribute("name", "requestTimeout"); obj.setAttribute("value", requestTimeout); formObj.appendChild(obj); } // tagRequestParam if(tagRequestParam) { formObj.requestParam.value = JSON.stringify(requestParam); } else{ let obj = document.createElement("input"); obj.setAttribute("type", "hidden"); obj.setAttribute("id", "requestParam"); obj.setAttribute("name", "requestParam"); obj.setAttribute("value", JSON.stringify(requestParam)); formObj.appendChild(obj); } // submit() if(requestMode == 2) formObj.target ='iframe'; // submit ¸ðµå else formObj.target ='debug'; // debug ¸ðµå formObj.action = requestUrl; formObj.submit(); } } /** * @title Æ®·£Àè¼Ç Á¾·áÇÔ¼ö(main Top¿¡¼­ »ç¿ë) * @functionName endTransaction (CommonClass.php ¿¡¼­ È£Ãâ ÇÔ) * @param pResId Æ®·£Àè¼Ç ¾ÆÀ̵ð * @param pResCode Æ®·£Àè¼Ç ¼º°ø¿©ºÎ(0:½ÇÆÐ,1:¼º°ø) * @param pResData ¸®ÅÏ µ¥ÀÌÅÍ */ endTransactionTop(pResId,pResCode,pResData){ // Æ®·£Àè¼ÇÀÌ ¼º°øÀ̸é if(pResCode >= 1){ let fn = this.gl_transactionDataTop.fn; if(fn) fn(pResId, pResCode, pResData); } // DB¿¡·¯ else if(pResCode == -999){ this.pageLoadingBar("close"); this.pageAlterMsg("DB Error"); } // Æ®·£Àè¼ÇÀÌ ½ÇÆÐÀÌ¸é ¸Þ½ÃÁö Ãâ·Â else{ this.pageLoadingBar("close"); this.pageAlterMsg(""+"Transaction Error : "+pResData.error+""); } } }