# WARNING: head commit changed in the meantime

Merge branch 'master' of
http://yongjoon.cho@vcs.iten.co.kr:9999/itnAdmin/fairnet 코드추가 및 기안문 수정
This commit is contained in:
myname 2025-01-14 12:36:48 +09:00
parent 0bed2ae6c3
commit d7e09953f2
2 changed files with 717 additions and 524 deletions

View File

@ -4917,8 +4917,12 @@ v_ret = this.receiverHeader();
}
//회의 일자 ==> 회의 일시
String[] a_fixday = {"",""};
String s_fixday = "";
//String[] a_fixday = {"",""};
String s_fixday = "";
s_fixday = this.makeYYYY_MM_DD(p_dataA.get("fixDay").toString(), p_dataA.get("fixDay2").toString());
/*
makeYYYY_MM_DD
String[] a_fixday_2 = {"","",""};
@ -4931,16 +4935,17 @@ v_ret = this.receiverHeader();
if (a_fixday_2.length>=3) {
s_fixday = a_fixday_2[0] + "." +
Integer.toString(Integer.parseInt(a_fixday_2[1])) + "." +
Integer.toString(Integer.parseInt(a_fixday_2[2])) + "." +
" " + Integer.toString(Integer.parseInt(a_fixday_2[1])) + "." +
" " + Integer.toString(Integer.parseInt(a_fixday_2[2])) + "." +
"(" + p_dataA.get("fixDay2").toString() + ")" +
a_fixday[1];
" " + a_fixday[1];
}
}
}catch(Exception ex) {
ex.printStackTrace();
}
*/
if ("1-20".equals(p_jobID)) {
//v_ret = v_ret +"<br/><br/>1. 회의 일시: "+p_dataA.get("fixDay").toString()+"";
@ -5225,43 +5230,194 @@ v_ret = this.receiverHeader();
//v_ret = v_ret + this.bodyHeader();
//v_ret = v_ret +"<br/>";
//v_ret = v_ret +p_data1.get("conferenceNames").toString()+" "+p_data1.get("conferenceGubunNm").toString()+"에서 의결할 안건을 다음과 같이 상정하고자 합니다.";
v_ret = v_ret +"1. 우리 원 공정거래분쟁조정협의회의 "+p_data1.get("conferenceNames").toString()+" 회의를 다음과 같이 개최하니 참석하여 주시기 바랍니다.";
v_ret = v_ret +"<br/><br/>가. 일 자: "+p_dataA.get("fixDay").toString()+"";
v_ret = v_ret +"<br/>나. 장 소: "+p_dataA.get("conferencePlace").toString()+"";
v_ret = v_ret +"<br/>다. 회의안건: 조정신청 사건 결과 보고(보고안건 ";
v_ret = v_ret
+(
// Integer.parseInt(p_data1.get("endmtrCnt").toString())
0+Integer.parseInt(p_data1.get("bigCnt1").toString())
+Integer.parseInt(p_data1.get("bigCnt2").toString())
+Integer.parseInt(p_data1.get("bigCnt3").toString())
+Integer.parseInt(p_data1.get("bigCnt4").toString())
+Integer.parseInt(p_data1.get("dlbrtmtrCnt").toString()))+"";
String s_conferenceNames = "";
String s_fixDay = "";
String s_conferencePlace = "";
int i_dlbrtmtrCnt = 0;
try {
s_conferenceNames = p_data1.get("conferenceNames").toString();
}catch(Exception ex) {
ex.printStackTrace();
}
try {
s_fixDay = p_dataA.get("fixDay").toString();
}catch(Exception ex) {
ex.printStackTrace();
}
try {
s_conferencePlace = p_data1.get("conferencePlace").toString();
}catch(Exception ex) {
ex.printStackTrace();
}
try {
i_dlbrtmtrCnt = 0+Integer.parseInt(p_data1.get("bigCnt1").toString())
+Integer.parseInt(p_data1.get("bigCnt2").toString())
+Integer.parseInt(p_data1.get("bigCnt3").toString())
+Integer.parseInt(p_data1.get("bigCnt4").toString())
+Integer.parseInt(p_data1.get("dlbrtmtrCnt").toString());
}catch(Exception ex) {
ex.printStackTrace();
}
//회의 일자 ==> 회의 일시
//String[] a_fixday = {"",""};
String s_fixday = "";
s_fixday = this.makeYYYY_MM_DD(p_dataA.get("fixDay").toString(), p_dataA.get("fixDay2").toString());
/*
v_ret = v_ret +(Integer.parseInt(p_data1.get("endmtrCnt").toString())
+Integer.parseInt(p_data1.get("bigCnt1").toString())
+Integer.parseInt(p_data1.get("bigCnt2").toString())
+Integer.parseInt(p_data1.get("bigCnt3").toString())
+Integer.parseInt(p_data1.get("bigCnt4").toString())
+Integer.parseInt(p_data1.get("dlbrtmtrCnt").toString()))+"";
*/
String[] a_fixday_2 = {"","",""};
try {
s_fixday = p_dataA.get("fixDay").toString();
a_fixday = s_fixday.split(" ");
if (a_fixday.length>=2) {
a_fixday_2 = a_fixday[0].split("-");
if (a_fixday_2.length>=3) {
s_fixday = a_fixday_2[0] + "." +
Integer.toString(Integer.parseInt(a_fixday_2[1])) + "." +
Integer.toString(Integer.parseInt(a_fixday_2[2])) + "." +
"(" + p_dataA.get("fixDay2").toString() + ")" +
a_fixday[1];
}
}
}catch(Exception ex) {
ex.printStackTrace();
}
*/
//v_ret = v_ret +p_data1.get("conferenceNames").toString()+" "+p_data1.get("conferenceGubunNm").toString()+"에서 의결할 안건을 다음과 같이 상정하고자 합니다.";
v_ret = v_ret +"1. 우리 원 공정거래분쟁조정협의회의 "+s_conferenceNames+" 회의를 다음과 같이 개최하니 참석하여 주시기 바랍니다.";
v_ret = v_ret +"<br/><br/>가. 일 자: "+s_fixday+"";
v_ret = v_ret +"<br/>나. 장 소: "+s_conferencePlace+"";
v_ret = v_ret +"<br/>다. 회의안건: 조정신청 사건 결과 보고(";
//v_ret = v_ret +"<br/>다. 회의안건: 조정신청 사건 결과 보고(보고안건 ";
//v_ret = v_ret +Integer.toString(i_dlbrtmtrCnt)+"";
String p_endmtrCnt = p_data1.get("endmtrCnt").toString();
String p_dlbrtmtrCnt = p_data1.get("dlbrtmtrCnt").toString();
if (!"0".equals(p_endmtrCnt) && !"0".equals(p_dlbrtmtrCnt)) {
v_ret = v_ret +"보고안건 "+p_endmtrCnt+"건, 심의안건 "+p_dlbrtmtrCnt+"";
}else if (!"0".equals(p_endmtrCnt)) {
v_ret = v_ret +"보고안건 "+p_endmtrCnt+"";
}else {
v_ret = v_ret +"심의안건 "+p_dlbrtmtrCnt+"";
}
v_ret = v_ret +")";
v_ret = v_ret +"<br/><br/>2. 참고로 위 1. 다.의 회의안건 중 「독점규제 및 공정거래에 관한 법률」 제75조의 규정에 따른 제척사유가 발생하였거나 당사자의 기피신청이 있는 경우에는 위원께서 제척·기피·회피 대상이 되실 수 있으니 사전에 확인하여 주시기 바랍니다.";
if ("1-21".equals(p_jobID)) {
v_ret = v_ret +"<br/><br/>2. 참고로 위 1. 다.의 회의안건 중 「독점규제 및 공정거래에 관한 법률」 제75조의 규정에 따른 제척사유가 발생하였거나 당사자의 기피신청이 있는 경우에는 위원께서 제척·기피·회피 대상이 되실 수 있으니 사전에 확인하여 주시기 바랍니다.";
}else if ("2-21".equals(p_jobID)) {
v_ret = v_ret +"<br/><br/>2. 참고로 위 1. 다.의 회의안건 중 「가맹사업거래의 공정화에 관한 법률」 제20조의 규정에 따른 제척사유가 발생하였거나 당사자의 기피신청이 있는 경우에는 위원께서 제척·기피·회피 대상이 되실 수 있으니 사전에 확인하여 주시기 바랍니다.";
}else if ("3-21".equals(p_jobID)) {
v_ret = v_ret +"<br/><br/>2. 참고로 위 1. 다.의 회의안건 중 「하도급거래공정화에 관한 법률」 제24조의2의 규정에 따른 제척사유가 발생하였거나 당사자의 기피신청이 있는 경우에는 위원께서 제척·기피·회피 대상이 되실 수 있으니 사전에 확인하여 주시기 바랍니다.";
}else if ("4-21".equals(p_jobID)) {
v_ret = v_ret +"<br/><br/>2. 참고로 위 1. 다.의 회의안건 중 「대규모유통업에서의 거래 공정화에 관한 법률」 제23조의 규정에 따른 제척사유가 발생하였거나 당사자의 기피신청이 있는 경우에는 위원께서 제척·기피·회피 대상이 되실 수 있으니 사전에 확인하여 주시기 바랍니다.";
}else if ("5-21".equals(p_jobID)) {
v_ret = v_ret +"<br/><br/>2. 참고로, 위 1. 다.의 회의안건 중 「약관의 규제에 관한 법률」 제26조의 규정에 따른 제척사유가 발생하였거나 당사자의 기피신청이 있는 경우에는 위원께서 제척·기피·회피 대상이 되실 수 있으니 사전에 확인하여 주시기 바랍니다.";
}else if ("6-21".equals(p_jobID)) {
v_ret = v_ret +"<br/><br/>2. 참고로 위 1. 다.의 회의안건 중 「대리점거래의 공정화에 관한 법률」 제17조의 규정에 따른 제척사유가 발생하였거나 당사자의 기피신청이 있는 경우에는 위원께서 제척·기피·회피 대상이 되실 수 있으니 사전에 확인하여 주시기 바랍니다.";
}else {
v_ret = v_ret +"<br/><br/>2. 참고로 위 1. 다.의 회의안건 중 「독점규제 및 공정거래에 관한 법률」 제75조의 규정에 따른 제척사유가 발생하였거나 당사자의 기피신청이 있는 경우에는 위원께서 제척·기피·회피 대상이 되실 수 있으니 사전에 확인하여 주시기 바랍니다.";
}
v_ret = v_ret + this.TableHeader();
String v_txt = "※ 독점규제 및 공정거래에 관한 법률";
v_txt = v_txt +"<br/>제75조(협의회 위원의 제척ㆍ기피ㆍ회피) ① 협의회 위원은 다음 각 호의 어느 하나에 해당하는 경우에는 해당 분쟁조정사항의 조정에서 제척된다.";
v_txt = v_txt +"<br/>1. 자기나 배우자 또는 배우자였던 사람이 분쟁조정사항의 분쟁당사자이거나 공동권리자 또는 공동의무자인 경우";
v_txt = v_txt +"<br/>2. 자기가 분쟁조정사항의 분쟁당사자와 친족이거나 친족이었던 경우";
v_txt = v_txt +"<br/>3. 자기 또는 자기가 속한 법인이 분쟁조정사항의 분쟁당사자의 법률·경영 등에 대한 자문·고문 등으로 있는 경우";
v_txt = v_txt +"<br/>4. 자기 또는 자기가 속한 법인이 증언이나 감정을 한 경우";
v_txt = v_txt +"<br/>5. 자기 또는 자기가 속한 법인이 분쟁조정사항의 분쟁당사자의 대리인으로서 관여하거나 관여하였던 경우";
v_txt = v_txt +"<br/>② 분쟁당사자는 협의회 위원에게 협의회의 조정에 공정을 기하기 어려운 사정이 있을 때에는 협의회에 해당 위원에 대한 기피신청을 할 수 있다.";
v_txt = v_txt +"<br/>③ 협의회 위원 본인이 제1항 각 호의 어느 하나 또는 제2항의 사유에 해당하는 경우에는 스스로 해당 분쟁조정사항의 조정에서 회피할 수 있다.";
String v_txt = "";
if ("1-21".equals(p_jobID)) {
v_txt = "※ 독점규제 및 공정거래에 관한 법률";
v_txt = v_txt +"<br/>제75조(협의회 위원의 제척ㆍ기피ㆍ회피) ① 협의회 위원은 다음 각 호의 어느 하나에 해당하는 경우에는 해당 분쟁조정사항의 조정에서 제척된다.";
v_txt = v_txt +"<br/>1. 자기나 배우자 또는 배우자였던 사람이 분쟁조정사항의 분쟁당사자이거나 공동권리자 또는 공동의무자인 경우";
v_txt = v_txt +"<br/>2. 자기가 분쟁조정사항의 분쟁당사자와 친족이거나 친족이었던 경우";
v_txt = v_txt +"<br/>3. 자기 또는 자기가 속한 법인이 분쟁조정사항의 분쟁당사자의 법률·경영 등에 대한 자문·고문 등으로 있는 경우";
v_txt = v_txt +"<br/>4. 자기 또는 자기가 속한 법인이 증언이나 감정을 한 경우";
v_txt = v_txt +"<br/>5. 자기 또는 자기가 속한 법인이 분쟁조정사항의 분쟁당사자의 대리인으로서 관여하거나 관여하였던 경우";
v_txt = v_txt +"<br/>② 분쟁당사자는 협의회 위원에게 협의회의 조정에 공정을 기하기 어려운 사정이 있을 때에는 협의회에 해당 위원에 대한 기피신청을 할 수 있다.";
v_txt = v_txt +"<br/>③ 협의회 위원 본인이 제1항 각 호의 어느 하나 또는 제2항의 사유에 해당하는 경우에는 스스로 해당 분쟁조정사항의 조정에서 회피할 수 있다.";
}else if ("2-21".equals(p_jobID)) {
v_txt = "※ 가맹사업거래의 공정화에 관한 법률";
v_txt = v_txt +"<br/>제20조(위원의 제척·기피·회피) ① 위원은 다음 각 호의 1에 해당하는 경우에는 당해 조정사항의 조정에서 배척된다.";
v_txt = v_txt +"<br/>1. 위원 또는 그 배우자나 배우자이었던 자가 당해 조정사항의 분쟁당사자가 되거나 공동권리자 또는 의무자의 관계에 있는 경우";
v_txt = v_txt +"<br/>2. 위원이 당해 조정사항의 분쟁당사자와 친족관계에 있거나 있었던 경우";
v_txt = v_txt +"<br/>3. 위원 또는 위원이 속한 법인이 분쟁당사자의 법률·경영 등에 대하여 자문이나 고문의 역할을 하고 있는 경우";
v_txt = v_txt +"<br/>4. 위원 또는 위원이 속한 법인이 당해 조정사항에 대하여 분쟁당사자의 대리인으로 관여하거나 관여하였던 경우 및 증언 또는 감정을 한 경우";
v_txt = v_txt +"<br/>② 분쟁당사자는 위원에게 협의회의 조정에 공정을 기하기 어려운 사정이 있는 때에 협의회에 당해위원에 대한 기피신청을 할 수 있다.";
v_txt = v_txt +"<br/>③ 위원이 제1항 또는 제2항의 사유에 해당하는 경우에는 스스로 당해 조정사항의 조정에서 회피할 수 있다.";
}else if ("3-21".equals(p_jobID)) {
v_txt = "※ 하도급거래 공정화에 관한 법률";
v_txt = v_txt +"<br/>제24조의2(위원의 제척·기피·회피) ① 위원은 다음 각 호의 어느 하나에 해당하는 경우에는 해당 조정사항의 조정에서 제척된다.";
v_txt = v_txt +"<br/>1. 위원 또는 그 배우자나 배우자이었던 자가 해당 조정사항의 분쟁당사자가 되거나 공동 권리자 또는 의무자의 관계에 있는 경우";
v_txt = v_txt +"<br/>2. 위원이 해당 조정사항의 분쟁당사자와 친족관계에 있거나 있었던 경우";
v_txt = v_txt +"<br/>3. 위원 또는 위원이 속한 법인이 분쟁당사자의 법률·경영 등에 대하여 자문이나 고문의 역할을 하고 있는 경우";
v_txt = v_txt +"<br/>4. 위원 또는 위원이 속한 법인이 해당 조정사항에 대하여 분쟁당사자의 대리인으로 관여하거나 관여하였던 경우 및 증언 또는 감정을 한 경우";
v_txt = v_txt +"<br/>② 분쟁당사자는 위원에게 협의회의 조정에 공정을 기하기 어려운 사정이 있는 때에 협의회에 해당 위원에 대한 기피신청을 할 수 있다.";
v_txt = v_txt +"<br/>③ 위원이 제1항 또는 제2항의 사유에 해당하는 경우에는 스스로 해당 조정사항의 조정에서 회피할 수 있다.";
}else if ("4-21".equals(p_jobID)) {
v_txt = "※ 대규모유통업에서의 거래 공정화에 관한 법률";
v_txt = v_txt +"<br/>제23조(위원의 제척ㆍ기피ㆍ회피) ① 위원은 다음 각 호의 어느 하나에 해당하는 경우에는 해당 조정사항의 조정에서 제척된다.";
v_txt = v_txt +"<br/>1. 위원 또는 그 배우자나 배우자였던 사람이 해당 조정사항의 분쟁당사자가 되거나 공동권리자 또는 의무자의 관계에 있는 경우";
v_txt = v_txt +"<br/>2. 위원이 해당 조정사항의 분쟁당사자와 친족관계이거나 친족관계였던 경우";
v_txt = v_txt +"<br/>3. 위원 또는 위원이 속한 법인이나 법률사무소가 분쟁당사자의 법률·경영 등에 대하여 자문 또는 고문의 역할을 하고 있는 경우";
v_txt = v_txt +"<br/>4. 위원 또는 위원이 속한 법인이나 법률사무소가 해당 조정사항에 대하여 분쟁당사자의 대리인으로 관여하거나 관여하였던 경우 및 증언이나 감정을 한 경우";
v_txt = v_txt +"<br/>② 위원에게 조정을 공정하게 수행하기 어려운 사정이 있는 경우 분쟁당사자는 서면으로 협의회에 그 위원에 대한 기피신청을 할 수 있다.";
v_txt = v_txt +"<br/>③ 제2항의 기피신청이 제2항의 방식에 어긋나거나 조정의 지연을 목적으로 하는 것이 분명한 경우에는 위원장의 결정으로 기피신청을 각하한다.";
v_txt = v_txt +"<br/>④ 제2항의 기피신청에 상당한 이유가 있는 경우에는 위원장의 결정으로 해당 위원을 조정에서 제외한다.";
v_txt = v_txt +"<br/>⑤ 위원이 제1항 또는 제2항의 사유에 해당하는 경우에는 위원장의 허가를 받아 해당 ";
}else if ("5-21".equals(p_jobID)) {
v_txt = "※ 약관의 규제에 관한 법률";
v_txt = v_txt +"<br/>제26조(협의회 위원의 제척·기피·회피) ① 협의회 위원은 다음 각 호의 어느 하나에 해당하는 경우에는 해당 분쟁조정사항의 조정에서 제척된다.";
v_txt = v_txt +"<br/>1. 협의회 위원 또는 그 배우자나 배우자였던 사람이 해당 분쟁조정사항의 분쟁당사자가 되거나 공동권리자 또는 의무자의 관계에 있는 경우";
v_txt = v_txt +"<br/>2. 협의회 위원이 해당 분쟁조정사항의 분쟁당사자와 친족관계에 있거나 있었던 경우";
v_txt = v_txt +"<br/>3. 협의회 위원 또는 협의회 위원이 속한 법인이 분쟁당사자의 법률·경영 등에 대하여 자문이나 고문의 역할을 하고 있는 경우";
v_txt = v_txt +"<br/>4. 협의회 위원 또는 협의회 위원이 속한 법인이 해당 분쟁조정사항에 대하여 분쟁당사자의 대리인으로 관여하거나 관여하였던 경우 및 증언 또는 감정을 한 경우";
v_txt = v_txt +"<br/>② 분쟁당사자는 협의회 위원에게 협의회의 조정에 공정을 기하기 어려운 사정이 있는 때에 협의회에 해당 협의회 위원에 대한 기피신청을 할 수 있다.";
v_txt = v_txt +"<br/>③ 협의회 위원이 제1항 또는 제2항의 사유에 해당하는 경우에는 스스로 해당 분쟁조정사항의 조정에서 회피할 수 있다.";
}else if ("6-21".equals(p_jobID)) {
v_txt = "※ 대리점거래의 공정화에 관한 법률";
v_txt = v_txt +"<br/>제17조(위원의 제척ㆍ기피ㆍ회피) ① 위원은 다음 각 호의 어느 하나에 해당하는 경우에는 해당 조정사항의 조정에서 제척된다.";
v_txt = v_txt +"<br/>1. 위원 또는 그 배우자나 배우자이었던 자가 해당 조정사항의 분쟁당사자가 되거나 공동권리자 또는 의무자의 관계에 있는 경우";
v_txt = v_txt +"<br/>2. 위원이 해당 조정사항의 분쟁당사자와 친족관계이거나 친족관계이었던 경우";
v_txt = v_txt +"<br/>3. 위원 또는 위원이 속한 법인이 분쟁당사자의 법률·경영 등에 대하여 자문이나 고문의 역할을 하고 있는 경우";
v_txt = v_txt +"<br/>4. 위원 또는 위원이 속한 법인이 해당 조정사항에 대하여 분쟁당사자의 대리인으로 관여하거나 관여하였던 경우 및 증언 또는 감정을 한 경우";
v_txt = v_txt +"<br/>② 분쟁당사자는 위원에게 협의회의 조정에 공정을 기하기 어려운 사정이 있는 경우 협의회에 해당 위원에 대한 기피신청을 할 수 있다.";
v_txt = v_txt +"<br/>③ 위원이 제1항 또는 제2항의 사유에 해당하는 경우에는 스스로 해당 조정사항의 조정에서 회피할 수 있다.";
}else {
v_txt = "※ 독점규제 및 공정거래에 관한 법률";
v_txt = v_txt +"<br/>제75조(협의회 위원의 제척ㆍ기피ㆍ회피) ① 협의회 위원은 다음 각 호의 어느 하나에 해당하는 경우에는 해당 분쟁조정사항의 조정에서 제척된다.";
v_txt = v_txt +"<br/>1. 자기나 배우자 또는 배우자였던 사람이 분쟁조정사항의 분쟁당사자이거나 공동권리자 또는 공동의무자인 경우";
v_txt = v_txt +"<br/>2. 자기가 분쟁조정사항의 분쟁당사자와 친족이거나 친족이었던 경우";
v_txt = v_txt +"<br/>3. 자기 또는 자기가 속한 법인이 분쟁조정사항의 분쟁당사자의 법률·경영 등에 대한 자문·고문 등으로 있는 경우";
v_txt = v_txt +"<br/>4. 자기 또는 자기가 속한 법인이 증언이나 감정을 한 경우";
v_txt = v_txt +"<br/>5. 자기 또는 자기가 속한 법인이 분쟁조정사항의 분쟁당사자의 대리인으로서 관여하거나 관여하였던 경우";
v_txt = v_txt +"<br/>② 분쟁당사자는 협의회 위원에게 협의회의 조정에 공정을 기하기 어려운 사정이 있을 때에는 협의회에 해당 위원에 대한 기피신청을 할 수 있다.";
v_txt = v_txt +"<br/>③ 협의회 위원 본인이 제1항 각 호의 어느 하나 또는 제2항의 사유에 해당하는 경우에는 스스로 해당 분쟁조정사항의 조정에서 회피할 수 있다.";
}
String [] s_arr = {v_txt};
@ -7015,6 +7171,40 @@ v_ret = this.receiverHeader();
return v_ret;
}
//회의일시
private String makeYYYY_MM_DD(
String p_fixDay,
String p_fixDay2
) {
//회의 일자 ==> 회의 일시
String[] a_fixday = {"",""};
String s_fixday = "";
String[] a_fixday_2 = {"","",""};
try {
s_fixday = p_fixDay;
a_fixday = s_fixday.split(" ");
if (a_fixday.length>=2) {
a_fixday_2 = a_fixday[0].split("-");
if (a_fixday_2.length>=3) {
s_fixday = a_fixday_2[0] + "." +
" " + Integer.toString(Integer.parseInt(a_fixday_2[1])) + "." +
" " + Integer.toString(Integer.parseInt(a_fixday_2[2])) + "." +
"(" + p_fixDay2 + ")" +
" " + a_fixday[1];
}
}
}catch(Exception ex) {
ex.printStackTrace();
}
return s_fixday;
}
//데이터 decoder
private EgovMap chgURLDecoder(EgovMap p_params, String p_content) throws Exception {
try {
@ -7449,7 +7639,7 @@ v_ret = this.receiverHeader();
String[] s_Arr_23 = {"수신자 "+this.makeCfrncatndncs(p_dataB)};
//v_ret = v_ret +this.makeTrTdWithBorderNAlign(s_Arr_23,"0","left");
v_ret = v_ret +this.makeTrTdWithBorderNAlignWithFontNStyle(s_Arr_23,"0","left","13","굴림");
v_ret = v_ret +this.makeTrTdWithBorderNAlignWithFontNStyle(s_Arr_23,"0","left","10","굴림");
v_ret = v_ret + this.TableFooter();

View File

@ -1,488 +1,491 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 코드 관리 -->
<mapper namespace="code">
<!-- 상단 -->
<sql id="Header2">
SELECT * FROM
(
SELECT ROW_.*, ROWNUM AS RNUM FROM
(
</sql>
<!-- 하단 -->
<sql id="bottom2">
) ROW_
)
WHERE RNUM > #{pageStart} AND #{perPageNum} >= ROWNUM
</sql>
<select id="codelist" parameterType="egovMap" resultType="egovMap">
SELECT
<![CDATA[
CODE_IDX,
CODE_NAME,
MEMBER_ID,
MEMBER_NAME,
CODE_ORDER,
CODE_STATUS,
TO_CHAR(CODE_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS CODE_REGDATE,
CODE_DEPTH,
CODE_IDXS,
CODE_PARENT_IDX,
CASE WHEN T1.CODE_DEPTH = 1 THEN
(SELECT COUNT(*) FROM C_CODE T3 WHERE T3.CODE_DEPTH = T1.CODE_DEPTH AND T3.CODE_ORDER < T1.CODE_ORDER)
ELSE
(SELECT COUNT(*) FROM C_CODE T3 WHERE T3.CODE_DEPTH = T1.CODE_DEPTH AND T3.CODE_ORDER < T1.CODE_ORDER
AND T3.CODE_PARENT_IDX = T1.CODE_PARENT_IDX )
END AS CODE_UP,
CASE WHEN T1.CODE_DEPTH = 1 THEN
(SELECT COUNT(*) FROM C_CODE T3 WHERE T3.CODE_DEPTH = T1.CODE_DEPTH AND
T3.CODE_ORDER > T1.CODE_ORDER)
ELSE
(SELECT COUNT(*) FROM C_CODE T3 WHERE T3.CODE_DEPTH = T1.CODE_DEPTH AND
T3.CODE_ORDER > T1.CODE_ORDER
AND T3.CODE_PARENT_IDX = T1.CODE_PARENT_IDX)
END AS CODE_DOWN
]]>
FROM C_CODE T1 LEFT JOIN T_MEMBER T2
ON T1.MEMBER_IDX = T2.MEMBER_IDX
<if test='column neq null and column neq "" and search neq null and search neq ""'>
<choose>
<when test='column eq "CODE_NAME"'>
WHERE CODE_NAME LIKE '%'||#{search}||'%'
</when>
<when test='column eq "MEMBER_NAME"'>
WHERE MEMBER_NAME LIKE '%'||#{search}||'%'
</when>
<otherwise>
WHERE CODE_NAME LIKE '%'||#{search}||'%' OR MEMBER_NAME LIKE '%'||#{search}||'%'
</otherwise>
</choose>
</if>
ORDER BY CODE_ORDER ASC
</select>
<select id="selectListCnt" parameterType="egovMap" resultType="int">
SELECT
COUNT(*)
FROM C_CODE
</select>
<select id="codeInfo" parameterType="egovMap" resultType="egovMap">
SELECT
T1.CODE_IDX AS CODE_IDX,
T1.MEMBER_IDX AS MEMBER_IDX,
T1.CODE_NAME AS CODE_NAME,
T1.CODE_IDXS AS CODE_IDXS,
T1.CODE_IDX1 AS CODE_IDX1,
T1.CODE_IDX2 AS CODE_IDX2,
T1.CODE_IDX3 AS CODE_IDX3,
T1.CODE_IDX4 AS CODE_IDX4,
T1.CODE_IDX5 AS CODE_IDX5,
T1.CODE_PARENT_IDX AS CODE_PARENT_IDX,
T1.CODE_DEPTH AS CODE_DEPTH,
T1.CODE_ORDER AS CODE_ORDER,
TO_CHAR(T1.CODE_REGDATE) AS CODE_REGDATE,
T1.CODE_STATUS AS CODE_STATUS,
T2.MEMBER_NAME AS MEMBER_NAME
FROM C_CODE T1 LEFT JOIN T_MEMBER T2
ON T1.MEMBER_IDX = T2.MEMBER_IDX
WHERE T1.CODE_IDX = #{dataIdx}
</select>
<update id="codeUpdate" parameterType="egovMap">
UPDATE C_CODE
SET MEMBER_IDX = #{memberIdx},
CODE_NAME = #{codeName},
CODE_MODDATE = SYSDATE
WHERE CODE_IDX = #{dataIdx}
</update>
<select id="codeParentInfo" parameterType="egovMap" resultType="egovMap">
SELECT A.* FROM
(SELECT
CODE_IDX,
MEMBER_IDX,
CODE_NAME,
CODE_IDXS,
CODE_IDX1,
CODE_IDX2,
CODE_IDX3,
CODE_IDX4,
CODE_IDX5,
CODE_PARENT_IDX,
CODE_DEPTH,
CODE_ORDER,
TO_CHAR(CODE_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS CODE_REGDATE,
CODE_STATUS
FROM C_CODE
WHERE CODE_PARENT_IDX = #{codeParentIdx}
ORDER BY CODE_IDX1 DESC, CODE_IDX2 DESC, CODE_IDX3 DESC, CODE_IDX4 DESC, CODE_IDX5 DESC) A
WHERE ROWNUM = 1
</select>
<select id="codeIdxsInfo" parameterType="egovMap" resultType="egovMap">
SELECT
CODE_IDX,
MEMBER_IDX,
CODE_NAME,
CODE_IDXS,
CODE_IDX1,
CODE_IDX2,
CODE_IDX3,
CODE_IDX4,
CODE_IDX5,
CODE_PARENT_IDX,
CODE_DEPTH,
CODE_ORDER,
TO_CHAR(CODE_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS CODE_REGDATE,
CODE_STATUS
FROM C_CODE
WHERE CODE_IDXS = #{codeParentIdx}
</select>
<select id="codeOrderInfo" parameterType="egovMap" resultType="egovMap">
SELECT TO_CHAR(A.CODE_ORDER) AS CODE_ORDER FROM
(SELECT
CODE_ORDER
FROM C_CODE
<where>
<choose>
<when test='codeDepth eq "1"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
</when>
<when test='codeDepth eq "2"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
</when>
<when test='codeDepth eq "3"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
AND CODE_IDX3 = SUBSTR(#{codeIdxs}, 5 , 2)
</when>
<when test='codeDepth eq "4"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
AND CODE_IDX3 = SUBSTR(#{codeIdxs}, 5 , 2)
AND CODE_IDX4 = SUBSTR(#{codeIdxs}, 7 , 2)
</when>
<when test='codeDepth eq "5"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
AND CODE_IDX3 = SUBSTR(#{codeIdxs}, 5 , 2)
AND CODE_IDX4 = SUBSTR(#{codeIdxs}, 7 , 2)
AND CODE_IDX5 = SUBSTR(#{codeIdxs}, 9 , 2)
</when>
<when test='codeDepth eq "0"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
</when>
</choose>
<if test='codeIdxs'>
</if>
ORDER BY CODE_ORDER DESC
</where>
) A
WHERE ROWNUM = 1
</select>
<select id="codeCodeOrderSelList" parameterType="egovMap" resultType="egovMap">
SELECT
CODE_IDX
FROM C_CODE
WHERE CODE_ORDER >= #{codeOrder}
ORDER BY CODE_ORDER ASC
</select>
<update id="codeCodeOrderUpdate" parameterType="egovMap">
UPDATE C_CODE
<set>
<if test='orderType eq "plus"'>
CODE_ORDER = CODE_ORDER+1
</if>
<if test='orderType eq "minus"'>
CODE_ORDER = CODE_ORDER-1
</if>
<if test='orderType eq "minuss"'>
CODE_ORDER = CODE_ORDER+#{codeListCnt}
</if>
</set>
<where>
CODE_IDX IN
<foreach collection="arrList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</where>
</update>
<update id="codeUpDown" parameterType="egovMap">
MERGE
INTO C_CODE A
USING (SELECT CODE_IDX, CODE_ORDER FROM
(SELECT
CODE_IDX,
<if test='orderType eq "down"'>
CODE_ORDER+(SELECT
COUNT(*)
FROM C_CODE
WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = (SELECT CODE_IDX FROM (SELECT * FROM C_CODE
WHERE CODE_ORDER <![CDATA[ > ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
AND CODE_IDX NOT IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
ORDER BY CODE_ORDER ASC)
WHERE ROWNUM = 1))||'%')
AS CODE_ORDER
</if>
<if test='orderType eq "up"'>
CODE_ORDER-(SELECT
COUNT(*)
FROM C_CODE
WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = (SELECT CODE_IDX FROM (SELECT * FROM C_CODE
WHERE CODE_ORDER <![CDATA[ < ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
AND CODE_IDX NOT IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
AND CODE_DEPTH = (SELECT CODE_DEPTH FROM C_CODE WHERE CODE_IDX = #{codeIdx})
ORDER BY CODE_ORDER DESC)
WHERE ROWNUM = 1))||'%')
AS CODE_ORDER
</if>
FROM (SELECT * FROM C_CODE WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2) FROM C_CODE WHERE CODE_IDX = #{codeIdx})||'%'))
UNION ALL
(SELECT
CODE_IDX,
<if test='orderType eq "down"'>
CODE_ORDER-(SELECT
COUNT(*)
FROM (SELECT * FROM C_CODE WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2) FROM C_CODE WHERE CODE_IDX = #{codeIdx})||'%'))
AS CODE_ORDER
FROM C_CODE
WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = (SELECT CODE_IDX FROM (SELECT * FROM C_CODE
WHERE CODE_ORDER <![CDATA[ > ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
AND CODE_IDX NOT IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
ORDER BY CODE_ORDER ASC)
WHERE ROWNUM = 1))||'%')
</if>
<if test='orderType eq "up"'>
CODE_ORDER+(SELECT
COUNT(*)
FROM (SELECT * FROM C_CODE WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2) FROM C_CODE WHERE CODE_IDX = #{codeIdx})||'%'))
AS CODE_ORDER
FROM C_CODE
WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = (SELECT CODE_IDX FROM (SELECT * FROM C_CODE
WHERE CODE_ORDER <![CDATA[ < ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
AND CODE_IDX NOT IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
AND CODE_DEPTH = (SELECT CODE_DEPTH FROM C_CODE WHERE CODE_IDX = #{codeIdx})
ORDER BY CODE_ORDER DESC)
WHERE ROWNUM = 1))||'%')
</if>
) B
ON (A.CODE_IDX = B.CODE_IDX)
WHEN MATCHED THEN
UPDATE SET A.CODE_ORDER = B.CODE_ORDER
</update>
<update id="codeUpList" parameterType="egovMap">
UPDATE C_CODE SET CODE_ORDER = CODE_ORDER-(SELECT COUNT(*)
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
WHERE CODE_ORDER <![CDATA[ > ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
</update>
<delete id="codeDelte" parameterType="egovMap">
DELETE FROM C_CODE WHERE CODE_IDX IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
</delete>
<insert id="codeInsertCode" parameterType="egovMap">
<selectKey keyProperty="codeIdx" resultType="int" order="BEFORE">
SELECT C_CODE_SEQ.NEXTVAL FROM DUAL
</selectKey>
INSERT INTO C_CODE
(CODE_IDX,
MEMBER_IDX,
CODE_NAME,
CODE_IDXS,
CODE_IDX1,
CODE_IDX2,
CODE_IDX3,
CODE_IDX4,
CODE_IDX5,
CODE_PARENT_IDX,
CODE_DEPTH,
CODE_ORDER,
CODE_REGDATE,
CODE_MODDATE,
CODE_STATUS)
VALUES
(#{codeIdx},
#{memberIdx},
#{codeName},
#{codeIdxs},
#{codeIdx1},
#{codeIdx2},
#{codeIdx3},
#{codeIdx4},
#{codeIdx5},
#{codeParentIdx},
#{codeDepth},
#{codeOrder},
SYSDATE,
SYSDATE,
#{codeStatus})
</insert>
<update id="codeStatus" parameterType="egovMap">
UPDATE C_CODE
SET
MEMBER_IDX = #{memberIdx}, CODE_STATUS = #{codeStatus},
CODE_MODDATE = SYSDATE
WHERE CODE_IDX = #{codeIdx}
</update>
<insert id="codeCodeHistory" parameterType="egovMap">
<selectKey keyProperty="codeHistoryIdx" resultType="int" order="BEFORE">
SELECT C_CODE_HISTORY_SEQ.NEXTVAL FROM DUAL
</selectKey>
INSERT INTO C_CODE_HISTORY
(CODE_HISTORY_IDX,
CODE_NAME_BEFORE,
MEMBER_IDX,
CODE_HISTORY_TYPE,
CODE_NAME_AFTER,
CODE_IDXS,
CODE_HISTORY_REGDATE,
CODE_PARENT_NAME)
VALUES
(#{codeHistoryIdx},
#{codeNameBefore},
#{memberIdx},
#{codeHistoryType},
#{codeNameAfter},
(SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}),
SYSDATE,
(SELECT
DECODE(CODE_DEPTH, '1', 'ROOT',
<if test='codeDepth eq 1'>
''
</if>
<if test='codeDepth > 1'>
A.CODE_NAME
</if>
<if test='codeDepth > 2'>
||' > '||B.CODE_NAME
</if>
<if test='codeDepth > 3'>
||' > '||C.CODE_NAME
</if>
<if test='codeDepth > 4'>
||' > '||D.CODE_NAME
</if>
) AS CODE_NAME
FROM
C_CODE
<if test='codeDepth > 1'>
,(SELECT CODE_NAME FROM C_CODE WHERE CODE_IDXS = SUBSTR((SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}), 1 , 2)||'00000000') A
<if test='codeDepth > 2'>
,(SELECT CODE_NAME FROM C_CODE WHERE CODE_IDXS = SUBSTR((SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}), 1 , 4)||'000000') B
<if test='codeDepth > 3'>
,(SELECT CODE_NAME FROM C_CODE WHERE CODE_IDXS = SUBSTR((SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}), 1 , 6)||'0000') C
<if test='codeDepth > 4'>
,(SELECT CODE_NAME FROM C_CODE WHERE CODE_IDXS = SUBSTR((SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}), 1 , 8)||'00') D
</if>
</if>
</if>
</if>
WHERE CODE_IDX = #{dataIdx}))
</insert>
<select id="codehistoryPagingList" parameterType="egovMap" resultType="egovMap">
<include refid="Header2"/>
SELECT
CODE_PARENT_NAME,
CODE_NAME_BEFORE,
CODE_NAME_AFTER,
DECODE(CODE_HISTORY_TYPE, 'I', '저장', 'U', '수정', 'D', '삭제') AS CODE_HISTORY_TYPE,
(SELECT MEMBER_NAME FROM T_MEMBER WHERE MEMBER_IDX = A.MEMBER_IDX) AS MEMBER_NAME,
TO_CHAR(CODE_HISTORY_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS CODE_HISTORY_REGDATE
FROM C_CODE_HISTORY A
<include refid="bottom2"/>
</select>
<select id="codehistoryPagingListTot" parameterType="egovMap" resultType="int">
SELECT
COUNT(*) AS TOTCNT
FROM C_CODE_HISTORY A
</select>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 코드 관리 -->
<mapper namespace="code">
<!-- 상단 -->
<sql id="Header2">
SELECT * FROM
(
SELECT ROW_.*, ROWNUM AS RNUM FROM
(
</sql>
<!-- 하단 -->
<sql id="bottom2">
) ROW_
)
WHERE RNUM > #{pageStart} AND #{perPageNum} >= ROWNUM
</sql>
<select id="codelist" parameterType="egovMap" resultType="egovMap">
SELECT
<![CDATA[
CODE_IDX,
CODE_NAME,
MEMBER_ID,
MEMBER_NAME,
CODE_ORDER,
CODE_STATUS,
TO_CHAR(CODE_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS CODE_REGDATE,
CODE_DEPTH,
CODE_IDXS,
CODE_PARENT_IDX,
CASE WHEN T1.CODE_DEPTH = 1 THEN
(SELECT COUNT(*) FROM C_CODE T3 WHERE T3.CODE_DEPTH = T1.CODE_DEPTH AND T3.CODE_ORDER < T1.CODE_ORDER)
ELSE
(SELECT COUNT(*) FROM C_CODE T3 WHERE T3.CODE_DEPTH = T1.CODE_DEPTH AND T3.CODE_ORDER < T1.CODE_ORDER
AND T3.CODE_PARENT_IDX = T1.CODE_PARENT_IDX )
END AS CODE_UP,
CASE WHEN T1.CODE_DEPTH = 1 THEN
(SELECT COUNT(*) FROM C_CODE T3 WHERE T3.CODE_DEPTH = T1.CODE_DEPTH AND
T3.CODE_ORDER > T1.CODE_ORDER)
ELSE
(SELECT COUNT(*) FROM C_CODE T3 WHERE T3.CODE_DEPTH = T1.CODE_DEPTH AND
T3.CODE_ORDER > T1.CODE_ORDER
AND T3.CODE_PARENT_IDX = T1.CODE_PARENT_IDX)
END AS CODE_DOWN
]]>
FROM C_CODE T1 LEFT JOIN T_MEMBER T2
ON T1.MEMBER_IDX = T2.MEMBER_IDX
<if test='column neq null and column neq "" and search neq null and search neq ""'>
<choose>
<when test='column eq "CODE_NAME"'>
WHERE CODE_NAME LIKE '%'||#{search}||'%'
</when>
<when test='column eq "MEMBER_NAME"'>
WHERE MEMBER_NAME LIKE '%'||#{search}||'%'
</when>
<otherwise>
WHERE CODE_NAME LIKE '%'||#{search}||'%' OR MEMBER_NAME LIKE '%'||#{search}||'%'
</otherwise>
</choose>
</if>
ORDER BY CODE_ORDER ASC
</select>
<select id="selectListCnt" parameterType="egovMap" resultType="int">
SELECT
COUNT(*)
FROM C_CODE
</select>
<select id="codeInfo" parameterType="egovMap" resultType="egovMap">
SELECT
T1.CODE_IDX AS CODE_IDX,
T1.MEMBER_IDX AS MEMBER_IDX,
T1.CODE_NAME AS CODE_NAME,
T1.CODE_IDXS AS CODE_IDXS,
T1.CODE_IDX1 AS CODE_IDX1,
T1.CODE_IDX2 AS CODE_IDX2,
T1.CODE_IDX3 AS CODE_IDX3,
T1.CODE_IDX4 AS CODE_IDX4,
T1.CODE_IDX5 AS CODE_IDX5,
T1.CODE_PARENT_IDX AS CODE_PARENT_IDX,
T1.CODE_DEPTH AS CODE_DEPTH,
T1.CODE_ORDER AS CODE_ORDER,
TO_CHAR(T1.CODE_REGDATE) AS CODE_REGDATE,
T1.CODE_STATUS AS CODE_STATUS,
T2.MEMBER_NAME AS MEMBER_NAME
FROM C_CODE T1 LEFT JOIN T_MEMBER T2
ON T1.MEMBER_IDX = T2.MEMBER_IDX
WHERE T1.CODE_IDX = #{dataIdx}
</select>
<update id="codeUpdate" parameterType="egovMap">
UPDATE C_CODE
SET MEMBER_IDX = #{memberIdx},
CODE_NAME = #{codeName},
CODE_MODDATE = SYSDATE
WHERE CODE_IDX = #{dataIdx}
</update>
<select id="codeParentInfo" parameterType="egovMap" resultType="egovMap">
SELECT A.* FROM
(SELECT
CODE_IDX,
MEMBER_IDX,
CODE_NAME,
CODE_IDXS,
CODE_IDX1,
CODE_IDX2,
CODE_IDX3,
CODE_IDX4,
CODE_IDX5,
CODE_PARENT_IDX,
CODE_DEPTH,
CODE_ORDER,
TO_CHAR(CODE_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS CODE_REGDATE,
CODE_STATUS
FROM C_CODE
WHERE CODE_PARENT_IDX = #{codeParentIdx}
ORDER BY CODE_IDX1 DESC, CODE_IDX2 DESC, CODE_IDX3 DESC, CODE_IDX4 DESC, CODE_IDX5 DESC) A
WHERE ROWNUM = 1
</select>
<select id="codeIdxsInfo" parameterType="egovMap" resultType="egovMap">
SELECT
CODE_IDX,
MEMBER_IDX,
CODE_NAME,
CODE_IDXS,
CODE_IDX1,
CODE_IDX2,
CODE_IDX3,
CODE_IDX4,
CODE_IDX5,
CODE_PARENT_IDX,
CODE_DEPTH,
CODE_ORDER,
TO_CHAR(CODE_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS CODE_REGDATE,
CODE_STATUS
FROM C_CODE
WHERE CODE_IDXS = #{codeParentIdx}
</select>
<select id="codeOrderInfo" parameterType="egovMap" resultType="egovMap">
SELECT TO_CHAR(A.CODE_ORDER) AS CODE_ORDER FROM
(SELECT
CODE_ORDER
FROM C_CODE
<where>
<choose>
<when test='codeDepth eq "1"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
</when>
<when test='codeDepth eq "2"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
</when>
<when test='codeDepth eq "3"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
AND CODE_IDX3 = SUBSTR(#{codeIdxs}, 5 , 2)
</when>
<when test='codeDepth eq "4"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
AND CODE_IDX3 = SUBSTR(#{codeIdxs}, 5 , 2)
AND CODE_IDX4 = SUBSTR(#{codeIdxs}, 7 , 2)
</when>
<when test='codeDepth eq "5"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
AND CODE_IDX3 = SUBSTR(#{codeIdxs}, 5 , 2)
AND CODE_IDX4 = SUBSTR(#{codeIdxs}, 7 , 2)
AND CODE_IDX5 = SUBSTR(#{codeIdxs}, 9 , 2)
</when>
<when test='codeDepth eq "0"'>
AND CODE_IDX1 = SUBSTR(#{codeIdxs}, 1 , 2)
AND CODE_IDX2 = SUBSTR(#{codeIdxs}, 3 , 2)
</when>
</choose>
<if test='codeIdxs'>
</if>
ORDER BY CODE_ORDER DESC
</where>
) A
WHERE ROWNUM = 1
</select>
<select id="codeCodeOrderSelList" parameterType="egovMap" resultType="egovMap">
SELECT
CODE_IDX
FROM C_CODE
WHERE CODE_ORDER >= #{codeOrder}
ORDER BY CODE_ORDER ASC
</select>
<update id="codeCodeOrderUpdate" parameterType="egovMap">
UPDATE C_CODE
<set>
<if test='orderType eq "plus"'>
CODE_ORDER = CODE_ORDER+1
</if>
<if test='orderType eq "minus"'>
CODE_ORDER = CODE_ORDER-1
</if>
<if test='orderType eq "minuss"'>
CODE_ORDER = CODE_ORDER+#{codeListCnt}
</if>
</set>
<where>
CODE_IDX IN
<foreach collection="arrList" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</where>
</update>
<update id="codeUpDown" parameterType="egovMap">
MERGE
INTO C_CODE A
USING (SELECT CODE_IDX, CODE_ORDER FROM
(SELECT
CODE_IDX,
<if test='orderType eq "down"'>
CODE_ORDER+(SELECT
COUNT(*)
FROM C_CODE
WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = (SELECT CODE_IDX FROM (SELECT * FROM C_CODE
WHERE CODE_ORDER <![CDATA[ > ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
AND CODE_IDX NOT IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
ORDER BY CODE_ORDER ASC)
WHERE ROWNUM = 1))||'%')
AS CODE_ORDER
</if>
<if test='orderType eq "up"'>
CODE_ORDER-(SELECT
COUNT(*)
FROM C_CODE
WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = (SELECT CODE_IDX FROM (SELECT * FROM C_CODE
WHERE CODE_ORDER <![CDATA[ < ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
AND CODE_IDX NOT IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
AND CODE_DEPTH = (SELECT CODE_DEPTH FROM C_CODE WHERE CODE_IDX = #{codeIdx})
ORDER BY CODE_ORDER DESC)
WHERE ROWNUM = 1))||'%')
AS CODE_ORDER
</if>
FROM (SELECT * FROM C_CODE WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2) FROM C_CODE WHERE CODE_IDX = #{codeIdx})||'%'))
UNION ALL
(SELECT
CODE_IDX,
<if test='orderType eq "down"'>
CODE_ORDER-(SELECT
COUNT(*)
FROM (SELECT * FROM C_CODE WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2) FROM C_CODE WHERE CODE_IDX = #{codeIdx})||'%'))
AS CODE_ORDER
FROM C_CODE
WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = (SELECT CODE_IDX FROM (SELECT * FROM C_CODE
WHERE CODE_ORDER <![CDATA[ > ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
AND CODE_IDX NOT IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
ORDER BY CODE_ORDER ASC)
WHERE ROWNUM = 1))||'%')
</if>
<if test='orderType eq "up"'>
CODE_ORDER+(SELECT
COUNT(*)
FROM (SELECT * FROM C_CODE WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2) FROM C_CODE WHERE CODE_IDX = #{codeIdx})||'%'))
AS CODE_ORDER
FROM C_CODE
WHERE CODE_IDXS LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = (SELECT CODE_IDX FROM (SELECT * FROM C_CODE
WHERE CODE_ORDER <![CDATA[ < ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
AND CODE_IDX NOT IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
AND CODE_DEPTH = (SELECT CODE_DEPTH FROM C_CODE WHERE CODE_IDX = #{codeIdx})
ORDER BY CODE_ORDER DESC)
WHERE ROWNUM = 1))||'%')
</if>
) B
ON (A.CODE_IDX = B.CODE_IDX)
WHEN MATCHED THEN
UPDATE SET A.CODE_ORDER = B.CODE_ORDER
</update>
<update id="codeUpList" parameterType="egovMap">
UPDATE C_CODE SET CODE_ORDER = CODE_ORDER-(SELECT COUNT(*)
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
WHERE CODE_ORDER <![CDATA[ > ]]> (SELECT CODE_ORDER FROM C_CODE WHERE CODE_IDX = #{codeIdx})
</update>
<delete id="codeDelte" parameterType="egovMap">
DELETE FROM C_CODE WHERE CODE_IDX IN (SELECT CODE_IDX
FROM C_CODE
WHERE CODE_IDXS
LIKE (SELECT SUBSTR(CODE_IDXS, 0, CODE_DEPTH * 2)
FROM C_CODE
WHERE CODE_IDX = #{codeIdx})||'%')
</delete>
<insert id="codeInsertCode" parameterType="egovMap">
<selectKey keyProperty="codeIdx" resultType="int" order="BEFORE">
/*
SELECT C_CODE_SEQ.NEXTVAL FROM DUAL
*/
SELECT MAX(CODE_IDX) + 1 FROM C_CODE
</selectKey>
INSERT INTO C_CODE
(CODE_IDX,
MEMBER_IDX,
CODE_NAME,
CODE_IDXS,
CODE_IDX1,
CODE_IDX2,
CODE_IDX3,
CODE_IDX4,
CODE_IDX5,
CODE_PARENT_IDX,
CODE_DEPTH,
CODE_ORDER,
CODE_REGDATE,
CODE_MODDATE,
CODE_STATUS)
VALUES
(#{codeIdx},
#{memberIdx},
#{codeName},
#{codeIdxs},
#{codeIdx1},
#{codeIdx2},
#{codeIdx3},
#{codeIdx4},
#{codeIdx5},
#{codeParentIdx},
#{codeDepth},
#{codeOrder},
SYSDATE,
SYSDATE,
#{codeStatus})
</insert>
<update id="codeStatus" parameterType="egovMap">
UPDATE C_CODE
SET
MEMBER_IDX = #{memberIdx}, CODE_STATUS = #{codeStatus},
CODE_MODDATE = SYSDATE
WHERE CODE_IDX = #{codeIdx}
</update>
<insert id="codeCodeHistory" parameterType="egovMap">
<selectKey keyProperty="codeHistoryIdx" resultType="int" order="BEFORE">
SELECT C_CODE_HISTORY_SEQ.NEXTVAL FROM DUAL
</selectKey>
INSERT INTO C_CODE_HISTORY
(CODE_HISTORY_IDX,
CODE_NAME_BEFORE,
MEMBER_IDX,
CODE_HISTORY_TYPE,
CODE_NAME_AFTER,
CODE_IDXS,
CODE_HISTORY_REGDATE,
CODE_PARENT_NAME)
VALUES
(#{codeHistoryIdx},
#{codeNameBefore},
#{memberIdx},
#{codeHistoryType},
#{codeNameAfter},
(SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}),
SYSDATE,
(SELECT
DECODE(CODE_DEPTH, '1', 'ROOT',
<if test='codeDepth eq 1'>
''
</if>
<if test='codeDepth > 1'>
A.CODE_NAME
</if>
<if test='codeDepth > 2'>
||' > '||B.CODE_NAME
</if>
<if test='codeDepth > 3'>
||' > '||C.CODE_NAME
</if>
<if test='codeDepth > 4'>
||' > '||D.CODE_NAME
</if>
) AS CODE_NAME
FROM
C_CODE
<if test='codeDepth > 1'>
,(SELECT CODE_NAME FROM C_CODE WHERE CODE_IDXS = SUBSTR((SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}), 1 , 2)||'00000000') A
<if test='codeDepth > 2'>
,(SELECT CODE_NAME FROM C_CODE WHERE CODE_IDXS = SUBSTR((SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}), 1 , 4)||'000000') B
<if test='codeDepth > 3'>
,(SELECT CODE_NAME FROM C_CODE WHERE CODE_IDXS = SUBSTR((SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}), 1 , 6)||'0000') C
<if test='codeDepth > 4'>
,(SELECT CODE_NAME FROM C_CODE WHERE CODE_IDXS = SUBSTR((SELECT CODE_IDXS FROM C_CODE WHERE CODE_IDX = #{dataIdx}), 1 , 8)||'00') D
</if>
</if>
</if>
</if>
WHERE CODE_IDX = #{dataIdx}))
</insert>
<select id="codehistoryPagingList" parameterType="egovMap" resultType="egovMap">
<include refid="Header2"/>
SELECT
CODE_PARENT_NAME,
CODE_NAME_BEFORE,
CODE_NAME_AFTER,
DECODE(CODE_HISTORY_TYPE, 'I', '저장', 'U', '수정', 'D', '삭제') AS CODE_HISTORY_TYPE,
(SELECT MEMBER_NAME FROM T_MEMBER WHERE MEMBER_IDX = A.MEMBER_IDX) AS MEMBER_NAME,
TO_CHAR(CODE_HISTORY_REGDATE, 'YYYY-MM-DD HH24:MI:SS') AS CODE_HISTORY_REGDATE
FROM C_CODE_HISTORY A
<include refid="bottom2"/>
</select>
<select id="codehistoryPagingListTot" parameterType="egovMap" resultType="int">
SELECT
COUNT(*) AS TOTCNT
FROM C_CODE_HISTORY A
</select>
</mapper>