var receipt_lib_name = localStorage.getItem('current_user_lib_name');
var division_char = "|";
var url = "http://127.0.0.1:8091/eco_device/any.asp";
var ill_memo_margin = getViewOptionData('상호대차메모하단여백',localStorage.getItem('current_user_manage_code'));
var user_guide_monitor_yn = getViewOptionData('이용자안내용모니터',localStorage.getItem('current_user_manage_code'));
var device_agent_port = getViewOptionData('AGENT통신포트',localStorage.getItem('current_user_manage_code'));
var user_card_print_division = getViewOptionData('회원증출력방식',localStorage.getItem('current_user_manage_code'));
var user_info_print_masking = getViewOptionData('영수증개인정보출력여부',localStorage.getItem('current_user_manage_code'));
var user_name_masking = getViewOptionData('영수증개인정보출력여부',localStorage.getItem('current_user_manage_code'));
var print_type = true //수수료 영수증 출력 타입
/**
*
* 영수증 출력시 contents부분에 태그를 넣으면 이후 문자열은
* 모두 큰 글씨로 출력된다.
* 단 이후 기본 크기로 출력하며녈 꼭! 태그를 넣어 종료 시켜줘야 한다.
* 2018/07/12 권명호
* 또한 위 내용은 2018/07/12년 이후 패치된 agent에서만 실행 가능하다.
*
* 내용작성시 유의 영수증 한 줄당 여백은 34칸 정도이며 TAB키로 설정한 여백은 무시처리 됨으로 스페이스바 여백사용 필수
* 숫자 + 글씨 등으로 측정한 여백 34칸은 정확하지 않을 수 있고, 출력하며 테스트 필요
*/
;(function($) {
if(device_agent_port != undefined && device_agent_port != null && device_agent_port != "")
{
url = "http://127.0.0.1:"+device_agent_port[0].VALUE+"/eco_device/any.asp";
}
})(jQuery);
// 일반 프린터로 직접 출력
// 출력할 html 파라미터로 전달받는다.
function com_direct_print(htmldata)
{
var param = {};
//var url = "http://127.0.0.1:8090/eco_device/any.asp";
param.contents = htmldata;
param.cmd = "CMD009";
// form형태로 전달하는것으로 변경
formSend(param);
}
// 회원증 출력
function com_user_card_print(user_info)
{
var param = {};
var maskingLock = "Y";
//var url = "http://127.0.0.1:8090/eco_device/1.asp"
if(user_card_print_division != undefined && user_card_print_division != null && user_card_print_division != "")
{
// 웹방식의 카드 출력일 경우
if(user_card_print_division[0].VALUE == "WEB")
{
$.ajax({
type: "POST",
url: "/METIS/view/CommonPage/UserCardPrintPrevPopup/UserCardPrintPrevPopup.jsp",
dataType: "html",
async : true,
data:{},
success: function(data)
{
openDivPopupHtml(data);
getCardUserInfoSearch(user_info.user_key, maskingLock); //마스킹처리 해제를 위한 ele추가
}
});
return;
}
}
var temp_loginInfo = localStorage.getItem('current_user_info');
var loginInfo = JSON.parse(temp_loginInfo);
param.userkey = user_info.user_key;
param.operator_id = loginInfo.ID;
param.cmd = "CMD008";
param.method = "POST";
if(debug_mode == "Y")
{
console.dir(param);
}
// form형태로 전달하는것으로 변경
formSend(param);
}
// 안내용 모니터 출력
//param.main_title = 구분명칭
function com_userGuideMonitor(param)
{
//console.log("user_guide_monitor_yn ["+user_guide_monitor_yn+"]");
if(undefined == user_guide_monitor_yn || null == user_guide_monitor_yn || '' == user_guide_monitor_yn)
{
return true;
}
else
{
if(user_guide_monitor_yn[0].VALUE == "N")
{
return;
}
}
// 2018/02/23 현시점상 안내용 모니터 사용안하고 이 내용으로 느려지는 문제 해결을 위해 임시로 기능 정지
// 추후 옵션처리해서 해당 기능 사용 여부에 따라 기능 추가 예정
// return true;
if(param.main_title == "반납예정일")
{
// CMD002 http://127.0.0.1:8090/eco_device/1.asp?cmd=CMD002 e
param.cmd = "CMD002";
//param.contents = com_position_print(param);
}
else if(param.main_title == "이용자정보")
{
// CMD003 http://127.0.0.1:8090/eco_device/1.asp?cmd=CMD003&contents=전민철|010-4567-8901|||123|||||||||
// 이름|휴대폰|E_MAIL|집_전화번호|집_주소|근무지_전화번호|근무지_주소|학교|학년|반|번호|교번|근무처|부서명
param.cmd = "CMD003";
param.contents = com_guide_monitor_user_info(param);
}
else if(param.main_title == "연체책수")
{
// CMD004 http://127.0.0.1:8090/eco_device/1.asp?cmd=CMD004&contents=고종하님은 2권 연체중입니다.
param.cmd = "CMD004";
param.contents = com_guide_monitor_delayCount(param);
}
else if(param.main_title == "대출정지일")
{
// CMD005 http://127.0.0.1:8090/eco_device/1.asp?cmd=CMD005&username=고종하&contents=1월 1일까지 대출정지입니다.
param.cmd = "CMD005";
param.username = param.name;
param.contents = param.loan_stop_date + "까지 대출정지입니다.";
}
else if(param.main_title == "연체이력")
{
// CMD006 http://127.0.0.1:8090/eco_device/1.asp?cmd=CMD006&username=고종하&contents=크게 생각할수록 크게 이룰수 있다.%09행복도서관/종합자료실|2015-12-31|2015-12-31|2015-12-31|1나는 행복합니다.%09행복도서관/종합자료실|2015-12-31|2015-12-31|2015-12-31|1
// 서명|대출일|반납예정일|반납일|연체일
param.cmd = "CMD006";
param.username = param.name;
param.contents = com_guide_monitor_delayCount(param);
}
else if(param.main_title == "검색결과")
{
// CMD007 http://127.0.0.1:8090/eco_device/1.asp?cmd=CMD007&contents=나라사랑|812-나29나|O|종합실내 아들 딸들아 세상은 너의 것이다 : 한힌샘 주시경의 한글 사랑 나라 사랑 이야기. 21:, 한힌샘 주시경 편|199.1-ㄴ56|O|종합실박경석 리더십 : 84 강좌|391.2-ㅂ174ㅂ|O|종합실박경석 리더십 : 84강좌|391.2-ㅂ174ㅂ|O|종합실사명대사 : 생애와 나라사랑|220.99-ㅅ136서|O|종합실
// 서명|청구기호|대출가능|자료실
param.cmd = "CMD007";
param.contents = com_guide_monitor_searchList(param);
}
else if(param.main_title == "대출현황")
{
// CMD007 http://127.0.0.1:8090/eco_device/1.asp?cmd=CMD010&contents=나라사랑|812-나29나|O|종합실내 아들 딸들아 세상은 너의 것이다 : 한힌샘 주시경의 한글 사랑 나라 사랑 이야기. 21:, 한힌샘 주시경 편|199.1-ㄴ56|O|종합실박경석 리더십 : 84 강좌|391.2-ㅂ174ㅂ|O|종합실박경석 리더십 : 84강좌|391.2-ㅂ174ㅂ|O|종합실사명대사 : 생애와 나라사랑|220.99-ㅅ136서|O|종합실
// 서명|청구기호|대출가능|자료실
param.cmd = "CMD010";
param.username = param.username;
param.delay_cnt = param.delay_cnt;
param.loan_stop_date = param.loan_stop_date;
param.contents = com_guide_monitor_loanList(param);
}
monitor_request_send(param);
}
function monitor_request_send(param)
{
//var url = "http://127.0.0.1:8090/eco_device/1.asp"
param.method = "POST";
// form형태로 전달하는것으로 변경
formSend(param);
}
//검색결과 출력
//param.searchList[] 검색결과리스트
//param.title 서명
//param.call_no 청구기호
//param.loan_able 대출가능여부
//param.shelf_loc 자료실
function com_guide_monitor_searchList(param)
{
var contents = "";
var list = param.delayList;
for(var index in list)
{
contents += list[index].title + division_char;
contents += list[index].call_no + division_char;
contents += list[index].loan_able + division_char;
contents += list[index].shelf_loc + division_char;
if(list.length > (index+1))
{
contents += "";
}
}
return contents;
}
//대출현황 출력
//param.loanList[] 대출현황리스트
//param.title 서명
//param.lib_name 서명
//param.shelf_loc_code 서명
//param.loan_date 청구기호
//param.return_plan_date 대출가능여부
//param.loan_status 자료실
function com_guide_monitor_loanList(param)
{
var contents = "";
var list = param.loanList;
for(var index in list)
{
contents += list[index].title + "\t" + list[index].lib_name + "[" + list[index].shelf_loc_code + "]" + division_char;
contents += list[index].loan_date + division_char;
contents += list[index].return_plan_date + division_char;
contents += list[index].loan_status + division_char;
if(list.length > (Number(index)+Number(1)))
{
contents += "";
}
}
return contents;
}
//연체이력 출력
//param.delayList[] 연체 관련 리스트
//param.title 서명
//param.lib_name 도서관명
//param.shelf_loc 자료실명
//param.loan_date 대출일
//param.return_plan_date 반납예정일
//param.return_date 반납일
//param.delay_day 연체일자
function com_guide_monitor_delayCount(param)
{
var contents = "";
var list = param.delayList;
for(var index in list)
{
contents += list[index].title + " " + param.lib_name + "/" + param.shelf_loc + division_char;
contents += list[index].loan_date + division_char;
contents += list[index].return_plan_date + division_char;
contents += list[index].return_date + division_char;
contents += list[index].delay_day + division_char;
if(list.length > (index+1))
{
contents += "";
}
}
return contents;
}
// 연체중인 건수 출력
// param.name 이름
// param.count 건수
function com_guide_monitor_delayCount(param)
{
var contents = "";
contents += param.name + "님은 " + param.count + "권 연체중입니다.";
return contents;
}
// 이용자 정보 출력
// param.name 이름
// param.handphone 휴대폰
// param.e_mail E_MAIL
// param.h_phone 집_전화번호
// param.h_addr1 집_주소
// param.w_phone 근무지_전화번호
// param.w_addr1 근무지_주소
// param.school 학교
// param.grade 학년
// param.school_class 반
// param.class_no 번호
// param.name 교번
// param.office 근무처
// param.department_name 부서명
function com_guide_monitor_user_info(param)
{
var contents = "";
contents += param.name + division_char; // 이믈
contents += param.handphone + division_char; // 휴대폰
contents += param.e_mail + division_char; // e_mail
contents += param.h_phone + division_char; // 집전화번호
contents += param.h_addr1 + division_char; // 집주소
contents += param.w_phone + division_char; // 근무지 전화
contents += param.w_addr1 + division_char; // 근무지 주소
contents += param.school + division_char; // 학교
contents += param.grade + division_char; // 학년
contents += param.school_class + division_char; // 반
contents += param.class_no + division_char; // 번호
contents += param.class_no + division_char; // 교번????
contents += param.office + division_char; // 근무처
contents += param.department_name; // 부서명
return contents;
}
/*
* 영추증 출력 관련 시작
*/
// 화면단에서 공동적으로 불릴 함수
// 공통
// param.main_title = 영수증 상단의 제목
// 위치출력 관련
// param.title : 서명
// param.call_no : 청구기호
// param.reg_no : 등록번호
// param.author : 저자
// param.shef_loc : 자료실
// param.lib_name : 도서관
function printReceiptExcute(param)
{
//영수증 출력기 사용여부
var RECEPT_PRINT_YN = getEslOneBoolean("영수증출력", "영수증출력사용여부", CURRENT_MANAGE_CODE, "Y");
if(false == RECEPT_PRINT_YN)
{
onlyMessage("영수증 출력사용여부가 사용안함입니다.
설정 변경후 다시 처리해 주시기 바랍니다.");
return;
}
var request_param = {};
if(param.main_title == "자료위치안내")
{
param.contents = com_position_print(param);
}
else if(param.main_title == "반납 확인증")
{
//param.contents = com_return_receipt_print(param);
}
else if(param.main_title == "대출 확인증")
{
//param.contents = com_loan_receipt_print(param);
}
else if(param.main_title == "예약자료 명세표")
{
param.contents = com_resv_receipt_print(param);
// 헤더보다 더 위에 출력하기 위한 추가변수
param.header = "예약만기일 : " + param.reservation_expire_date;
}
else if(param.main_title == "상호대차 발송자료")
{
param.contents = com_ill_send_info_print(param);
// 헤더보다 더 위에 출력하기 위한 추가변수
// 발송이기 때문에 도착지 도서관을 상단에 표기
param.header = "도착지 도서관 : " + param.apl_lib_name;
}
else if(param.main_title == "상호대차 입수자료")
{
param.contents = com_ill_acq_info_print(param);
// 헤더보다 더 위에 출력하기 위한 추가변수
param.header = "복귀예정일 : " + param.return_plan_date;
}
else if(param.main_title == "상호대차 복귀자료")
{
param.contents = com_ill_return_info_print(param);
// 복귀이기 때문에 도착지 도서관을 상단에 표기
param.header = "도착지 도서관 : " + param.give_lib_name;
}
else if(param.main_title == "발송대상 위치" || param.main_title == "자료위치")
{
param.contents = com_ill_send_position_print(param);
}
else if(param.main_title == "현황 확인증")
{
param.contents = com_current_state_print(param);
}
else if(param.main_title == "배상영수증")
{
param.contents = com_compensation_receipt_print(param);
}
else if(param.main_title == "보존서고 발송자료")
{
param.contents = com_copsv_send_info_print(param);
}
else if(param.main_title == "보존서고 입수자료")
{
param.contents = com_copsv_acq_info_print(param);
}
else if(param.main_title == "보존서고 복귀자료")
{
param.contents = com_copsv_return_info_print(param);
}
else
{
onlyMessage("알수없는 구분값 입니다.");
return false;
}
request_param.title = param.main_title;
request_param.contents = param.contents;
request_param.header = param.header;
return common_receipt_print(request_param);
}
function com_compensation_receipt_print(param){
var contents = "";
// 일반 정보
contents += "회원번호 : " + param.user_no + "";
contents += "성 명 : " + userNameMasking(param.name) + "";
contents += "영수증출력일자 : " + param.receipt_date+ "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "번호 결제/금액 등록번호";
contents += "서명/저작자 반납형태";
contents += "━━━━━━━━━━━━━━━━━━━━━";
for(var one in param.compensation_list)
{
// 반납된 정보 전체
contents += " "+(Number(one)+Number(1))+" "+param.compensation_list[one].PAYMENT_FORM+" "+param.compensation_list[one].REG_NO+"";
contents += " "+param.compensation_list[one].TITLE_INFO+" "+param.compensation_list[one].RETURN_WORKING_STATUS+"";
}
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "총 액 : "+param.total_price+" 원";
contents += "합 계 : "+param.compensation_list.length+" 권";
contents += ""+receipt_lib_name+"";
return contents;
}
// 위치출력 관련 contents 생성
function com_position_print(param)
{
var contents = "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "서 명 : " + param.title + "";
contents += "청구기호 : " + param.call_no + "";
contents += "등록번호 : " + param.reg_no + "";
if (param.author) {
contents += "저 자 : " + param.author + "";
}
if (param.publisher) {
contents += "출 판 사 : " + param.publisher + "";
}
if (param.publish_year) {
contents += "출판년도 : " + param.publish_year+ "";
}
contents += "자 료 실 : " + param.shef_loc + "";
contents += "도 서 관 : " + param.lib_name + "";
return contents;
}
//영수증 출력 관련 contents 생성
function com_payment_recept_print(param){
//영수증 출력기 사용여부
var RECEPT_PRINT_YN = getEslOneBoolean("영수증출력", "영수증출력사용여부", CURRENT_MANAGE_CODE, "Y");
let p_data = {}
let title = "";
let contents = "";
if(param.flag == "lateFee"){
// 일반 정보
title = "[연체 수수료 처리 영수증]"
contents += "● 회원번호 : " + param.user_no + "";
if(user_name_masking){
contents += "● 성 명 : " + userNameMasking(param.name) + "";
}else{
contents += "● 성 명 : " + param.name + "";
}
contents += "● 영수증출력일자 : " + param.receipt_date+ "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "● 총 권 수 :"+param.lateList.length+ "권";
if(param.totalLateday !="" &¶m.totalLateday !=null)contents += "● 연 체 일 :"+param.totalLateday+"일";
contents += "● 기본연체료 :1일 당 "+param.standFee+"원";
contents += "● 정지해제일수 :"+param.freeDay+"일";
contents += "● 납부금액 :"+param.paidFee.replace(/\B(?";
contents += "● 납부일 :"+param.paidDay+"";
contents += "● 대출가능일 :"+param.loanPossibleDay+"일부터";
if(param.lateList[0].REG_NO !=""){
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "순번/청구기호 등록번호";
contents += "서명 납부금";
contents += "━━━━━━━━━━━━━━━━━━━━━";
for(var one in param.lateList)
{
let length = 10; // 표시할 글자수 기준
let str = param.lateList[one].TITLE;
if (str.length > length) {
str = str.substr(0, length - 2) + '···';
}
if(!param.lateList[one].CALL_NO) param.lateList[one].CALL_NO = " ";
// 반납된 정보 전체
contents += " "+(Number(one)+Number(1))+" "+param.lateList[one].CALL_NO+" "+param.lateList[one].REG_NO+"";
contents += " "+str+" "+String(param.lateList[one].PERSONAL_PAY).replace(/\B(?";
}
}
contents += "━━━━━━━━━━━━━━━━━━━━━";
if(param.manager){
contents += " 담 당 자 : "+param.manager+" (인)";
}else{
contents += " 담 당 자 (인)";
}
contents += ""+receipt_lib_name+"";
}else if(param.flag == "releaseStop"){
// 일반 정보
title = "[대출 정지일 해제]"
contents += "● 회원번호 : " + param.user_no + "";
if(user_name_masking){
contents += "● 성 명 : " + userNameMasking(param.name) + "";
}else{
contents += "● 성 명 : " + param.name + "";
}
contents += "● 영수증출력일자 : " + param.receipt_date+ "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
if(param.stopAdaptPeriod !="")contents += "● 대출정지기간 :"+param.stopAdaptPeriod +"";
contents += "● 대출가능일 :"+param.loanPossibleDay+"일부터";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "● 정지해제일수 :"+param.freeDay+"일";
contents += "● 기본연체료 :1일 당 "+param.standFee+"원";
contents += "● 납부금액 :"+String(param.paidFee).replace(/\B(?";
contents += "● 납부일 :"+param.paidDay+"";
contents += "━━━━━━━━━━━━━━━━━━━━━";
if(param.manager){
contents += " 담 당 자 : "+param.manager+" (인)";
}else{
contents += " 담 당 자 (인)";
}
contents += ""+receipt_lib_name+"";
}else if(param.flag == "UsercardReissue"){
title = "[회원증 재발급]"
contents += "● 회원번호 : " + param.user_no + "";
if(user_name_masking){
contents += "● 성 명 : " + userNameMasking(param.name) + "";
}else{
contents += "● 성 명 : " + param.name + "";
}
contents += "● 영수증출력일자 : " + param.receipt_date+ "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "● 회원등급 : "+ String(param.user_type)+"";
contents += "● 카드종류 : "+ String(param.card_class)+"";
contents += "● 납부금액 : "+ String(param.paidFee).replace(/\B(?";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += ""+receipt_lib_name+"";
}else{
title = "[회원증 재발급]"
contents += "● 회원번호 : " + param.user_no + "";
if(user_name_masking){
contents += "● 성 명 : " + userNameMasking(param.name) + "";
}else{
contents += "● 성 명 : " + param.name + "";
}
contents += "● 영수증출력일자 : " + param.receipt_date+ "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "● 납부금액 "+String(param.paidFee).replace(/\B(?";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += ""+receipt_lib_name+"";
}
p_data.title = title;
p_data.contents = contents;
p_data.manage_code = localStorage.current_user_manage_code;
if(param.fee_pageOffer){
let print_Target_index = $("#obj_index").val();
current_receipt_data = JSON.parse(JSON.stringify(p_data));
make_Receipt_Preview(p_data)
return;
}
if(param.printNow){
if(param.printType == "true")
{
receipt_updaterA4(p_data,param);
receiptPreview(p_data);
}else{
receipt_updater(p_data,param);
}
window.localStorage.setItem("receiptPrintType", param.printType);//영수증 프린트 타입 설정
}else{
if(param.printType == "true")
{
receipt_updaterA4(p_data,param);
}else{
receipt_updater(p_data,param);
}
window.localStorage.setItem("receiptPrintType", param.printType);//영수증 프린트 타입 설정
}
}
// 반납 관련 contents 생성
// param.serial_no // 일련번호
// param.user_no // 회원번호
// param.user_name // 성명
// param.return_date // 반납일
// param.receipt_date // 영수증 출력일
// param.return_info // 반납된 자료(배열)
// param.return_info.call_no // 청구기호
// param.return_info.reg_no // 등록번호
// param.return_info.title_info // 서명/저자
// param.return_info.status // 상태
// param.remainder_info // 잔여 자료(배열)
// param.remainder_info.title // 잔여 자료
// param.remainder_info.reg_no // 등록번호
function com_return_receipt_print(param)
{
var contents = "";
// 일반 정보
contents += "일련번호 : " + param.serial_no + "";
contents += "회원번호 : " + param.user_no + "";
contents += "성 명 : " + userNameMasking(param.user_name) + "";
contents += "반 납 일 : " + param.return_date + "";
contents += "영수증출력일자 : " + param.receipt_date+ "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "번호 청구기호 등록번호 ";
contents += "서명/저작자 반납형태";
contents += "━━━━━━━━━━━━━━━━━━━━━";
for(var one in param.return_info)
{
// 반납된 정보 전체
contents += " "+(Number(one)+Number(1))+" "+param.return_info[one].call_no+" "+param.return_info[one].reg_no+"";
contents += " "+param.return_info[one].title_info+" "+param.return_info[one].status+"";
}
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "합 계 : "+param.return_info.length+" 권";
// 남은 정보
contents += "★ 미반납도서가 "+param.remainder_info.length+" 권 있습니다.";
for(var one in param.remainder_info)
{
contents += " "+(Number(one)+Number(1))+" "+param.remainder_info[one].title+" "+param.remainder_info[one].reg_no+"" + "";
}
contents += ""+receipt_lib_name+"";
return contents;
}
//대출 관련 contents 생성
//param.serial_no // 일련번호
//param.user_no // 회원번호
//param.user_name // 성명
//param.loan_date // 대출일
//param.return_plan_date // 반납예정일
//param.receipt_date // 영수증 출력일
//param.return_info // 반납된 자료(배열)
//param.return_info.call_no // 청구기호
//param.return_info.reg_no // 등록번호
//param.return_info.title_info // 서명/저자
//param.return_info.status // 상태
function com_loan_receipt_print(param)
{
var contents = "";
// 일반 정보
contents += "일련번호 : " + param.serial_no + "";
contents += "회원번호 : " + param.user_no + "";
contents += "성 명 : " + userNameMasking(param.user_name) + "";
contents += "대 출 일 : " + param.return_date + "";
contents += "대출기한 : " + param.return_date + "";
contents += "영수증출력일자 : " + param.receipt_date+ "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "번호 청구기호 등록번호 ";
contents += "서명/저작자 대출형태";
contents += "━━━━━━━━━━━━━━━━━━━━━";
for(var one in param.return_info)
{
// 반납된 정보 전체
contents += " "+(Number(one)+Number(1))+" "+param.return_info[one].call_no+" "+param.return_info[one].reg_no+"";
contents += " "+param.return_info[one].title_info+" "+param.return_info[one].status+"";
}
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "합 계 : "+param.return_info.length+" 권";
contents += ""+receipt_lib_name+"";
return contents;
}
// 예약 관련 영수증 출력
// 예약자료 명세표
function com_resv_receipt_print(param)
{
var contents = "";
contents += "회원이름 : " + userNameMasking(param.name) + "";
contents += "회원번호 : " + param.user_no + "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "서 명 : " + param.title + "";
contents += "청구기호 : " + param.call_no + "";
contents += "등록번호 : " + param.reg_no + "";
if(undefined != param.shelf_loc_code_desc && "" != param.shelf_loc_code_desc)
{
contents += "자 료 실 : " + param.shelf_loc_code_desc + "";
}
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "예 약 일 : " + param.resv_date + "";
contents += "SMS발송일 : " + param.sms_send_date + "";
contents += "예약만기일 : " + param.reservation_expire_date + "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += ""+receipt_lib_name+"";
return contents;
}
function getIllMemoMarginLine()
{
var marginLine = "";
if(ill_memo_margin == undefined || null == ill_memo_margin)
{
marginLine += "";
marginLine += "";
marginLine += "";
marginLine += "";
marginLine += "";
}
else
{
var line_cnt = ill_memo_margin[0].VALUE;
for(var i = 0 ; i < line_cnt ; i++)
{
marginLine += "";
}
}
marginLine += ""+localStorage.getItem('current_user_lib_name')+"";
return marginLine;
}
//상호대차 발송
//param.give_lib_name : 제공도서관 명칭
//param.apl_lib_name : 요청도서관 명칭
//param.title : 서명
//param.reg_no : 등록번호
function com_ill_send_info_print(param)
{
var contents = "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "이 용 자 명 : " + userNameMasking(param.user_name) + "";
contents += "대출자 번호 : " + param.user_no + "";
contents += "제공 도서관 : " + param.give_lib_name + "";
contents += "요청 도서관 : " + param.apl_lib_name + "";
contents += "서 명 : " + param.title + "";
contents += "자 료 번 호 : " + param.reg_no + "";
// 인천 서구 요청으로 이동처리함 21/05/18 권명호
// contents += "이 용 자 명 : " + param.user_name + "";
// contents += "대출자 번호 : " + param.user_no + "";
contents += "신 청 일 자 : " + param.apl_date + "";
contents += "청 구 기 호 : " + param.call_no + "";
// contents += "휴대폰번호 : " + param.reg_no + "";
if (param.return_plan_date) {
contents += "반납 예정일 : " + param.return_plan_date + "";
}
contents += getIllMemoMarginLine();
return contents;
}
//상호대차 입수자료
//param.title : 서명
//param.reg_no : 등록번호
//param.user_name : 이용자명
//param.user_no : 이용자번호
//param.return_plan_date : 복귀예정일
function com_ill_acq_info_print(param)
{
var contents = "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "신청자명 : " + userNameMasking(param.user_name) + "";
contents += "대출자번호 : " + param.user_no + "";
contents += "서 명 : " + param.title + "";
contents += "자료번호 : " + param.reg_no + "";
contents += "입 수 일 : " + (new Date().format("yyyy-MM-dd")) + "";
contents += "복귀예정일 : " + param.return_plan_date + "";
contents += getIllMemoMarginLine();
return contents;
}
//상호대차 복귀자료
//param.give_lib_name : 제공도서관 명칭
//param.title : 서명
//param.reg_no : 등록번호
function com_ill_return_info_print(param)
{
var contents = "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "제공도서관 : " + param.give_lib_name + "";
contents += "서 명 : " + param.title + "";
contents += "자료번호 : " + param.reg_no + "";
contents += getIllMemoMarginLine();
return contents;
}
// 자료위치안내 발송 대상자료 위치출력
//param.sendList // 발송 리스트(배열)
//param.title : 서명
//param.author : 저자
//param.call_no : 청구기호
//param.reg_no : 등록번호
//param.loc_code : 자료실
function com_ill_send_position_print(param)
{
var contents = "";
var sendList = param.sendList;
for(var one in sendList)
{
contents += "━━━━━━━━━━━━━━━━━━━━━";
if(undefined != sendList[one].title){
contents += "서 명 : " + sendList[one].title + "";
}
if(undefined != sendList[one].author){
contents += "저 자 : " + sendList[one].author + "";
}
if(undefined != sendList[one].call_no){
contents += "청구기호 : " + sendList[one].call_no + "";
}
if(undefined != sendList[one].loc_code){
contents += "자 료 실 : " + sendList[one].loc_code + "";
}
if(undefined != sendList[one].reg_no){
contents += "등록번호 : " + sendList[one].reg_no + "";
}
if(undefined != sendList[one].keyword){
contents += "보존등록번호 : " + sendList[one].keyword + "";
}
}
return contents;
}
//자료위치안내 발송 대상자료 위치출력
//param.stateList // 발송 리스트(배열)
//param.title : 서명
//param.return_plan_date : 반납예정일
//param.call_no : 청구기호
//param.reg_no : 등록번호
//param.lib_name : 도서관명
function com_current_state_print(param)
{
var contents = "";
var stateList = param.stateList;
var resv_exp_date = "";
var return_plan_date = "";
var loan_date = "";
if(param.user_info != null && param.user_info != undefined)
{
var temp_user_info = param.user_info;
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "이 름 : " + userNameMasking(temp_user_info.name) + "";
contents += "대출자 번호 : " + temp_user_info.user_no + "";
if(null != user_info_print_masking && undefined != user_info_print_masking && "" != user_info_print_masking)
{
// 마스킹 처리 여부를 결정한다.
if(user_info_print_masking[0].VALUE == "Y")
{
// 마스킹을 하도록 한경우는 개인정보 출력 제한
}
else
{
contents += "생 년 월 일 : " + strReplaceAll(temp_user_info.birthday,"00:00:00.0","") + "";
contents += "전 화 번 호 : " + temp_user_info.handphone + "";
}
}
else
{
contents += "생 년 월 일 : " + strReplaceAll(temp_user_info.birthday,"00:00:00.0","") + "";
contents += "전 화 번 호 : " + temp_user_info.handphone + "";
}
}
for(var one in stateList)
{
resv_exp_date = formatDateYYYYMMDD(stateList[one].resv_exp_date);
if (resv_exp_date == "") {
resv_exp_date = "미지정";
}
return_plan_date = formatDateYYYYMMDD(stateList[one].return_plan_date);
if (return_plan_date == "") {
return_plan_date = "미지정";
}
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += (Number(one)+ Number(1)) + " " + getTrimTitle(stateList[one].title) + " " + getLoan_status_code_desc(stateList[one].loan_status) + "";
if ( stateList[one].loan_status == "3" ) {
contents += "예약만기일 : " + resv_exp_date + "";
} else if ( stateList[one].loan_status == "대출대기" ) {
contents += "대기만기일 : " + return_plan_date + "";
} else {
loan_date = formatDateYYYYMMDD(stateList[one].loan_date);
contents += "대 출 일 : " + loan_date + "";
contents += "반납 예정일 : " + return_plan_date + "";
}
contents += "청 구 기 호 : " + stateList[one].call_no + "";
contents += "등 록 번 호 : " + stateList[one].reg_no + "";
contents += " " + stateList[one].lib_name + "";
contents += "";
}
contents += "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "합계 : " + stateList.length + " 권";
contents += ""+receipt_lib_name+"";
console.dir(contents);
return contents;
}
//보존서고 발송
//param.give_lib_name : 제공도서관 명칭
//param.apl_lib_name : 요청도서관 명칭
//param.title : 서명
//param.reg_no : 등록번호
function com_copsv_send_info_print(param)
{
var contents = "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "이 용 자 명 : " + userNameMasking(param.user_name) + "";
contents += "대출자 번호 : " + param.user_no + "";
contents += "제공 도서관 : " + param.give_lib_name + "";
contents += "요청 도서관 : " + param.apl_lib_name + "";
contents += "서 명 : " + param.title + "";
contents += "자 료 번 호 : " + param.reg_no + "";
contents += "신 청 일 자 : " + param.apl_date + "";
contents += "청 구 기 호 : " + param.call_no + "";
contents += getIllMemoMarginLine();
return contents;
}
//보존서고 입수자료
//param.title : 서명
//param.reg_no : 등록번호
//param.user_name : 이용자명
//param.user_no : 이용자번호
//param.return_plan_date : 복귀예정일
function com_copsv_acq_info_print(param)
{
var contents = "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "신청자명 : " + userNameMasking(param.user_name) + "";
contents += "대출자번호 : " + param.user_no + "";
contents += "서 명 : " + param.title + "";
contents += "자료번호 : " + param.reg_no + "";
contents += "입 수 일 : " + (new Date().format("yyyy-MM-dd")) + "";
contents += "복귀예정일 : " + param.return_plan_date + "";
contents += getIllMemoMarginLine();
return contents;
}
//보존서고 복귀자료
//param.give_lib_name : 제공도서관 명칭
//param.title : 서명
//param.reg_no : 등록번호
function com_copsv_return_info_print(param)
{
var contents = "";
contents += "━━━━━━━━━━━━━━━━━━━━━";
contents += "제공도서관 : " + param.give_lib_name + "";
contents += "서 명 : " + param.title + "";
contents += "자료번호 : " + param.reg_no + "";
contents += getIllMemoMarginLine();
return contents;
}
function getTrimTitle(title)
{
var length = 0;
var temp_str = "";
title = typeof title !== 'undefined' ? title : "";
title = title.trim()
if ( title != "" ) {
var temp = title.split('');
for ( var i = 0 ; i < temp.length ; i++ ) {
if ( temp[i] < 128 ) {
length += 1;
} else {
length += 2;
}
if (length <= 25) {
temp_str = temp_str + temp[i];
} else {
temp_str = temp_str + "...";
break;
}
}
title = temp_str;
while (length <= 28) {
title += " ";
length = length + 1;
}
}
return title;
}
function ecoDeviceCallback(data)
{
if(debug_mode == "Y")
{
console.dir(data);
}
if(data.status != "SUCCESS")
{
onlyMessage("출력중 오류가 발생하였습니다.1
" + errorDesc(data.status));
}
}
// 오류코드 번역
function errorDesc(status)
{
if(status == "ERR000")
{
return "알수없는 오류.";
}
else if(status == "ERR001")
{
return "파라미터 정보 맞지 않음.";
}
else if(status == "ERR002")
{
return "알수없는 CMD.";
}
else if(status == "ERR003")
{
return "필수 파라미터 없음.";
}
else if(status == "ERR004")
{
return "영수증 출력 오류.";
}
else if(status == "ERR005")
{
return "CMD001이 아닌경우 듀얼모니터 아님.";
}
else if(status == "ERR006")
{
return "CMD002 일경우 데이터베이스 연결안됨";
}
else
{
return "알수없는 오류.";
}
}
// 영수증 출력
// param.title = 영수증 상단의 제목
// param.contents = 출력될 내용
// 출력될 내용중 는 줄바꿈으로 인식
function common_receipt_print(param)
{
console.log(param);
//var url = "http://127.0.0.1:8090/eco_device/any.asp"
param.cmd = "CMD001";
param.method = "POST";
param.url = url + "?cmd=CMD001" + "&title=" + encodeURIComponent(param.title) + "&contents=" + encodeURIComponent(param.contents) + "&header=" + encodeURIComponent(param.header);
receiptSend(param);
common_delay(1000);
}
var eco_rfid_flag = "";
var read_rfid_data = "";
// 외부 장비 연계용 rfid 호출
function rfid_read_call(call_back)
{
var param = {};
param.cmd = "CMD011";
// rfid 요청
getRfidSend(param);
return read_rfid_data;
}
//외부 장비 연계용 rfid 호출 eas 세팅과 해제
// param.division : on, off, auto
// param.uid : uid#uid
function rfid_eas_call(param)
{
// var param = {};
param.cmd = "CMD012";
if(eco_rfid_flag == 'ECO')
{
if(param.division == "set")
{
param.contents = " SECURITY "+param.uid+" on";
}
else if(param.division == "reset")
{
param.contents = " SECURITY "+param.uid+" off";
}
}
else
{
if(param.division == "set")
{
param.contents = " "+param.uid+" on";
}
else if(param.division == "reset")
{
param.contents = " "+param.uid+" off";
}
}
if(debug_mode == "Y")
{
console.dir(param);
}
// rfid 요청
getRfidSend(param);
return read_rfid_data;
}
function setRfid(data)
{
eco_rfid_flag = data.return_data;
}
// efid의 장비 타입을 결정한다.
function getRfidType()
{
var param = {};
param.cmd = "CMD013";
$('#loading_flag').val('false')
// rfid 요청
getRfidSend(param,true);
$('#loading_flag').val('true');
if(eco_rfid_flag == null || eco_rfid_flag == undefined || eco_rfid_flag == "")
{
return eco_rfid_flag;
}
else
{
if(eco_rfid_flag != "ECO")
{
return eco_rfid_flag;
}
else
{
return eco_rfid_flag;
}
}
//return eco_rfid_flag;
}
function getRfidSend(param, sync_option)
{
console.dir(param);
if(undefined == sync_option || null == sync_option || "" == sync_option)
{
sync_option = false;
}
// 로딩 화면은 안씌우도록 설정
$('#loading_flag').val(false);
$.ajax({
type: "POST",
url: url,
dataType: "json",
async : sync_option,
data:param,
success: function(data)
{
if(param.cmd == "CMD013")
{
setRfid(data);
}
read_rfid_data = data.return_data;
return data;
},
error: function() {
//alert("오류");
}
});
}
function receiptSend(param)
{
console.dir(param);
$.ajax({
type: "POST",
url: url,
dataType: "json",
async : false,
data:param,
success: function(data)
{
if(debug_mode == "Y")
{
console.dir(data);
}
},
error: function() {
//alert("오류");
}
});
}
function formSend(param, call_back)
{
console.dir(param);
if(debug_mode == "Y")
{
console.dir(param);
}
$('#loading_flag').val(false);
try
{
// $.ajax({
// type: "POST",
// url: url,
// dataType: "json",
// async : true,
// data:param,
// success: function(data)
// {
// console.dir(data);
// },
// error: function() {
// //alert("오류");
// }
// });
$.post(
url
,param
,function(data) {
if(debug_mode == "Y")
{
console.log("[" + data + "]");
}
$('#loading_flag').val(true);
var obj = $.parseJSON(data); // 데이터를 JSON으로 파싱
if(obj.status == "SUCCESS")
{
if(null != call_back && undefined != call_back)
{
call_back(obj);
return;
}
else
{
return true;
}
}
else
{
// ECO_DEVICE_AGENT가 설치되어 있지 않은 곳에서 발생하는 오류로 메시지 출력 삭제
// 2017/09/25 권명호
//onlyMessage(obj.status + " ["+obj.statusDescription+"]");
if(param.cmd == "CMD001" || param.cmd == "CMD008")
{
onlyMessage("ECO_DEVICE_AGENT를 확인해 주세요
"+errorDesc(data.status));
return false;
}
}
}
).fail(function(respense) {
$('#loading_flag').val(true);
if(param.cmd == "CMD001" || param.cmd == "CMD008")
{
onlyMessage("ECO_DEVICE_AGENT를 확인해 주세요");
return false;
}
});
}
catch(e)
{
$('#loading_flag').val(true);
if(param.cmd == "CMD001" || param.cmd == "CMD008")
{
onlyMessage("ECO_DEVICE_AGENT를 확인해 주세요");
return false;
}
}
}
/************************************************************************************************
* 영추증 출력 관련 끝
************************************************************************************************/
/*
* mac address 가져오기
*
*/
// 일반 프린터로 직접 출력
// 출력할 html 파라미터로 전달받는다.
function getMacAddress()
{
var param = {};
param.cmd = "CMD014";
try
{
$.post(
url
,param
,function(data) {
var obj = $.parseJSON(data); // 데이터를 JSON으로 파싱
if(obj.status == "SUCCESS")
{
localStorage.setItem('mac_address',obj.mac_address);
checkuseNetid(obj.mac_address);
}
else
{
localStorage.setItem('mac_address','');
//onlyMessage("ECO_DEVICE_AGENT를 확인해 주세요
"+errorDesc(data.status));
Message_callback("MAC 주소를 확인할 수 없습니다.",LogOut_excute);
return false;
}
}
).fail(function(respense) {
localStorage.setItem('mac_address','');
Message_callback("MAC 주소를 확인할 수 없습니다.",LogOut_excute);
return false;
});
}
catch(e)
{
localStorage.setItem('mac_address','');
Message_callback("MAC 주소를 확인할 수 없습니다.",LogOut_excute);
return false;
}
}
// 해당 mac주소가 등록 가능한 주소인지 확인한다.
function checkuseNetid(netid) {
var param = {};
param.networkadapterid = netid;
$.ajax({
type: "POST",
url: "/METIS/CheckUse/existsNetworkAdapterID.do",
dataType: "json",
data: param,
success: function(data) {
//이용 가능한 netid라면 통과
if(data.status == "SUCCESS") {
return true;
} else {
$.ajax({
type: "POST",
url: "/METIS/view/Dashboard/macAddressInsertPopup.jsp",
dataType: "html",
async: true,
data: {},
success: function(data) {
openDivPopupHtml(data);
$('#insert_networkadapterid').val(netid);
}
});
}
}
});
}
// mac address를 등록한다.
function insertMacAddress() {
var param = {};
param.networkadapterid = $('#insert_networkadapterid').val();
param.remark = $('#insert_remark').val();
param.auth_id = $('#insert_auth_id').val();
param.auth_pwd = $('#insert_auth_pwd').val();
if(param.networkadapterid == "") {
onlyMessage("MAC정보가 존재하지 않습니다.");
return;
}
if(param.remark == "") {
onlyMessage("비고정보가 존재하지 않습니다.");
return;
}
if(param.auth_id == "") {
onlyMessage("등록 ID가 존재하지 않습니다.");
return;
}
if(param.auth_pwd == "") {
onlyMessage("등록 PW가 존재하지 않습니다.");
return;
}
$.ajax({
type: "POST",
url: "/METIS/CheckUse/setNetworkAdapterID.do",
dataType: "json",
data: param,
success: function(data) {
//이용 가능한 netid라면 통과
if(data.status == "SUCCESS") {
onlyMessage(data.statusDescription);
} else {
onlyMessage(data.statusDescription);
}
}
});
}
// 이름 정보 마스킹 처리
function userNameMasking(data)
{
var return_data = "";
if(null != user_info_print_masking && undefined != user_info_print_masking && "" != user_info_print_masking)
{
// 웹방식의 카드 출력일 경우
if(user_info_print_masking[0].VALUE == "Y")
{
// 마스킹을 진행한다.
}
else
{
return data;
}
}
else
{
return data;
}
if(data != null && data != undefined && "" != data)
{
return_data = data.substring(0, 1);
for(var index = 0 ; index < data.length ; index++ )
{
if(index == 0 )
{
return_data = data.substring(0, 1);
}
else if(index == (data.length-1))
{
return_data += data.substring(data.length-1);
}
else
{
return_data += "*";
}
}
}
return return_data;
}
function receiptPreview(data){
let deepCopy = JSON.parse(JSON.stringify(data))
let printStr = deepCopy.contents;
printStr = strReplaceAll(printStr, "", "
");
printStr = strReplaceAll(printStr, " ", " ");
let printStr_arr = printStr.split("");
deepCopy.contents = printStr_arr[0];
deepCopy.lib_mark = printStr_arr[1];
win = window.open('','',"toolbar=no,menubar=no,location=no,status=no,resizable=yes,width=945, height=615");
// window.open("/METIS/view/CommonData/UserMng/UserMngUpdatePopup.jsp?division=UserMng&user_keys=" + user_key,"이용자 수정","toolbar=no,menubar=no,location=no,status=no,resizable=yes,width="+screen_size.width+", height="+screen_size.height+"");
win.document.write("");
win.document.write("