Files
sam-kd/order/order.js
hskwon aca1767eb9 초기 커밋: 5130 레거시 시스템
- URL 하드코딩 → .env APP_URL 기반 동적 URL로 변경
- DB 연결 하드코딩 → .env 기반으로 변경
- MySQL strict mode DATE 오류 수정
2025-12-10 20:14:31 +09:00

571 lines
20 KiB
JavaScript

// 브라우저 호환(크로스브라우징)을 체크한후 페이지 로딩후 selectEvent2() 함수를 실행 합니다.
if (window.addEventListener) {
window.addEventListener("load", selectEvent2, false);
} else if (window.attachEvent) {
window.attachEvent("onload", selectEvent2);
} else {
window.onload = selectEvent2;
}
function selectEvent2() {
// 폼이름,셀렉트박스이름 으로 셀렉트박스에 접근합니다.
// 해당 요소가 존재하는지 체크합니다.
if (document.selectForm2 && document.selectForm2.ceilingbar) {
// onchange 이벤트를 적용해줍니다.
document.selectForm2.ceilingbar.onchange = selectFun2;
}
}
// this.value 로 이벤트가 발생한 요소의 값을 출력 합니다.
function selectFun2() {
// 이벤트가 발생한 요소의 값을 체크합니다.
if (this.value == '마감선택') {
$("#block1").hide();
$("#ceillingEnd").hide();
$("#block4").hide();
return false;
}
if (this.value == '셔터박스') {
show_box();
$("#block4").hide();
}
if (this.value == '린텔') {
$("#block4").show();
show_lintel();
}
// 천장마감 썸네일을 항상 보여줍니다.
$("#lin5").show();
}
function reload_box() { // 천장마감 클릭시 실행
var tmp = $("#item_sel option:selected").val(); //jQuery로 선택된 값 읽기
var tmp2 = $("#ceilingbar option:selected").val(); //jQuery로 선택된 값 읽기
if (tmp2 == '마감선택') {
$("#block1").hide();
$("#ceillingEnd").hide();
$("#block4").hide();
return false;
}
if (tmp2 == '셔터박스') {
show_box();
$("#block4").hide();
}
if (tmp2 == '린텔') {
$("#block4").show();
show_lintel();
}
}
$(document).ready(function() {
var imgs;
var img_count;
var img_position = 1;
imgs = $(".slide ul");
img_count = imgs.children().length;
FSSrail();
$("#block5").show();
$('.more').click(function() {
if ($('.more').hasClass('more')) {
$('.more').addClass('close').removeClass('more');
$('.board').css('visibility', 'visible');
$('.board').show();
} else if ($('.close').hasClass('close')) {
$('.close').addClass('more').removeClass('close');
$('.board').css('visibility', 'hidden');
$('.board').hide();
}
});
$("#egimake").on("click", function() { // 철재방화 사이즈 산출 클릭시
$("#material_list").hide();
$("#guiderail_area").hide();
$("#detail").load("./egimake.php");
});
$("#menu1").on("click", function() { // 공사진행현황
$("*").load("./work/list.php");
});
$("#menus1").on("click", function() { // 공사진행현황
$("*").load("../work/list.php");
});
$("#show_list").on("click", function() { // 자재산출 클릭시
show_one(); // 자재산출 클릭
});
function show_one() {
hide_object();
$("#material_list").show();
var target = document.getElementById("item_sel");
if (target) {
var sendData = target.options[target.selectedIndex].value;
var ua = window.navigator.userAgent;
var postData;
var text2 = document.getElementById("stwidth").value;
var text3 = document.getElementById("stheight").value;
var text4 = document.getElementById("motormaker").value;
var ceilingbar = document.getElementById("ceilingbar").value;
if (ua.indexOf('MSIE') > 0 || ua.indexOf('Trident') > 0) {
postData = encodeURI(sendData);
ceilingbar = encodeURI(ceilingbar);
text4 = encodeURI(text4);
} else {
postData = sendData;
}
var text1 = postData;
text2 = uncomma(text2); // 콤마가 있어서 숫자 변환이 안된다.
text3 = uncomma(text3); // 콤마가 있어서 숫자 변환이 안된다.
document.getElementById("railheight1").value = Number(text3) + 150;
document.getElementById("railheight1").value = comma(document.getElementById("railheight1").value);
$("#material_list").load("./show_list.php?text1=" + text1 + "&text2=" + text2 + "&text3=" + text3 + "&text4=" + text4 + "&ceilingbar=" + ceilingbar);
}
}
$("#show_basic_screen").on("click", function() {
$("#item_sel").val("스크린방화").prop("selected", true); // 선택사항 변경
$("#motormaker").val("경동").prop("selected", true); // 선택사항 변경
$("#power").val("220V").prop("selected", true); // 선택사항 변경
$("#guiderailmaterial").val("SUS H/L 1.5T").prop("selected", true); // 선택사항 변경
$("#wa6").show(); // 가이드레일 이미지
$("#wa6").html("<img src='../img/guiderail/fss/rail1.jpg' class='maxsmall_new_rail'>");
$("#wa7").show(); // 양쪽레일 이미지
$("#ceilingbar").val("셔터박스").prop("selected", true); // 선택사항 변경
$("#ceilingmaterial").val("전면EGI1.6T+1.2T").prop("selected", true); // 천장마감재질 변경
$("#lin5").show(); // 천장마감 썸네일
$("#lin5").html("<img src='../img/box/fss/box1.jpg' class='maxsmall'>");
box_content('../img/box/fss/box1.jpg', 1);
$("#wr5").html("<img src='../img/Rmolding/Rmolding1.jpg' class='maxsmall2'>");
$("#wr10").html("<img src='../img/Rcase/Rcase1.jpg' class='maxsmall3'>");
$("#block2").show(); // 삼각쫄대
$("#block2_1").show(); // 봉제가스켓
$("#block4").hide(); // 알몰딩 알케이스
$("#block5").show(); // 엘바
$("#block6").show(); // T바
$("#we5").html("<img src='../img/Lbar/Lbar1.jpg' class='maxsmall1'>");
$("#we10").html("<img src='../img/Tbar/fssTbar1.jpg' class='maxsmall1'>");
$("#Tbar").val("SUS H/L 1.2T").prop("selected", true); // T바 재질
$("#Lbar").val("EGI 1.6T").prop("selected", true); // L바 재질
show_one(); // 자재산출 클릭
});
$("#show_basic_egi").on("click", function() {
$("#item_sel").val("철재방화EGI1.6T").prop("selected", true); // 셔터형태 선택사항 변경
$("#motormaker").val("경동").prop("selected", true); // 선택사항 변경
$("#power").val("220V").prop("selected", true); // 선택사항 변경
$("#guiderailmaterial").val("SUS H/L 1.5T").prop("selected", true); // 선택사항 변경
$("#wa6").show(); // 가이드레일 이미지
$("#wa6").html("<img src='../img/guiderail/fst/rail1.jpg' class='maxsmall_new_rail'>"); // 레일 이미지 불러오기
$("#wa7").show(); // 양쪽레일 선택박스
$("#ceilingbar").val("셔터박스").prop("selected", true); // 선택사항 변경
$("#ceilingmaterial").val("전면EGI1.6T+1.2T").prop("selected", true); // 천장마감재질 변경
$("#lin5").show(); // 천장마감 썸네일
$("#lin5").html("<img src='../img/box/fst/box1.jpg' class='maxsmall'>");
$("#block6").show(); // T바
$("#we10").html("<img src='../img/Tbar/fstTbar1.jpg' class='maxsmall1'>"); // T바 이미지
$("#Tbar").val("SUS H/L 1.2T").prop("selected", true); // T바 재질
$("#block2").hide(); // 삼각쫄대
$("#block2_1").hide(); // 봉제가스켓
$("#block4").hide(); // 알몰딩 알케이스
$("#block5").hide(); // L바 숨기기
show_one(); // 자재산출 클릭
});
$("#setenvbutton").on("click", function() {
hide_object(); // 모터 가중치 (중량산출시)
$("#material_list").show();
$("#material_list").load("./setenv.php");
});
$("#viewkdmotor").on("click", function() {
window.open("../img/kdmotor.png", '경동모터 제원표', width = 880, height = 500);
return false;
});
$("#viewcontroler").on("click", function() {
window.open("../img/kdcontroler.jpg", '연동제어기 치수', width = 880, height = 500);
return false;
});
$("#viewworkerlist").on("click", function() {
window.open("../list/workerlist.xlsx");
return false;
});
$("#gotorail").on("click", function() {
hide_object();
$("#guiderail_area").show();
var target = document.getElementById("item_sel");
if (target) {
var sendData = target.options[target.selectedIndex].value;
var ua = window.navigator.userAgent;
var postData;
sendData = "./rail.php?rail=" + sendData + "&sel=1"; // 첫번째 레일선택
// 윈도우라면 ?
if (ua.indexOf('MSIE') > 0 || ua.indexOf('Trident') > 0) {
postData = encodeURI(sendData);
} else {
postData = sendData;
}
$("#guiderail_area").load(postData);
}
});
$("#gotorailanother").on("click", function() {
show_rail();
});
$("#gotoRmolding").on("click", function() { // GotoRmolding 버튼 클릭시
show_Rmolding();
});
$("#gotoRcase").on("click", function() { // GotoRcase 버튼 클릭시
show_Rcase();
});
$("#gotoLbar").on("click", function() { // GotoLbar 버튼 클릭시
show_Lbar();
});
$("#gotoTbar").on("click", function() { // GotoTbar 버튼 클릭시
show_Tbar();
});
});
function show_Lbar() { // L바 버튼
$("#below_area").show();
var tmp = $("#item_sel option:selected").val(); // 서터종류 선택값
var tmp2 = $("#ceilingbar option:selected").val(); // 천장마감 선택값
var sendData;
sendData = "./Lbar.php"; // L바
$("#below_area").load(sendData);
}
function show_Tbar() { // T바 버튼
$("#below_area").show();
var target = document.getElementById("item_sel");
if (target) {
var sendData = target.options[target.selectedIndex].value;
var ua = window.navigator.userAgent;
var postData;
sendData = "./Tbar.php?rail=" + sendData; // 셔터 종류 전달
// 윈도우라면 ?
if (ua.indexOf('MSIE') > 0 || ua.indexOf('Trident') > 0) {
postData = encodeURI(sendData);
} else {
postData = sendData;
}
$("#below_area").load(sendData); // 가장 밑에 공간에 나타내기
}
}
function show_rail() {
hide_object();
$("#guiderail_area").show();
var target = document.getElementById("item_sel");
if (target) {
var sendData = target.options[target.selectedIndex].value;
var ua = window.navigator.userAgent;
var postData;
sendData = "./rail.php?rail=" + sendData + "&sel=2"; // 두번째 레일선택
// 윈도우라면 ?
if (ua.indexOf('MSIE') > 0 || ua.indexOf('Trident') > 0) {
postData = encodeURI(sendData);
} else {
postData = sendData;
}
$("#guiderail_area").load(postData);
}
}
function show_lintel() {
$("#ceillingEnd").show();
var sendData;
sendData = "./lintel.php"; // 린텔선택
$("#ceillingEnd").load(sendData);
}
function show_box() { // 셔터박스 선택하면 실행
hide_object();
$("#ceillingEnd").show();
var tmp = $("#item_sel option:selected").val(); //jQuery로 선택된 값 읽기
var tmp2 = $("#ceilingbar option:selected").val(); //jQuery로 선택된 값 읽기
var sendData;
if (tmp == '스크린방화' || tmp == '제연커튼')
sendData = "./box.php"; // 스크린용 셔터박스
else
sendData = "./stbox.php"; // 철재용 셔터박스
$("#ceillingEnd").load(sendData);
}
function show_Rmolding() { // R몰딩 선택하면 실행
$("#below_area").show();
var tmp = $("#item_sel option:selected").val(); //jQuery로 선택된 값 읽기
var tmp2 = $("#ceilingbar option:selected").val(); //jQuery로 선택된 값 읽기
var sendData;
sendData = "./Rmolding.php"; // 몰딩이미지
$("#below_area").load(sendData);
}
function show_Rcase() { // R케이스 버튼
$("#below_area").show();
var tmp = $("#item_sel option:selected").val(); //jQuery로 선택된 값 읽기
var tmp2 = $("#ceilingbar option:selected").val(); //jQuery로 선택된 값 읽기
var sendData;
sendData = "./Rcase.php"; // R케이스
$("#below_area").load(sendData);
}
// 브라우저 호환(크로스브라우징)을 체크한후 페이지 로딩후 selectEvent() 함수를 실행 합니다. // 셔터 종류 선택시
if (window.addEventListener) {
window.addEventListener("load", selectEvent, false);
} else if (window.attachEvent) {
window.attachEvent("onload", selectEvent);
} else {
window.onload = selectEvent;
}
function selectEvent() {
// 폼이름,셀렉트박스이름 으로 셀렉트박스에 접근합니다.
// 해당 요소가 존재하는지 체크합니다.
if (document.selectForm && document.selectForm.item_sel) {
// onchange 이벤트를 적용해줍니다. 셔터형태를 바꾸면 아래가 실행된다.
document.selectForm.item_sel.onchange = selectFun;
}
}
// this.value 로 이벤트가 발생한 요소의 값을 출력 합니다.
function selectFun() {
$("#order_title3").hide();
$("#order_input3").hide();
if (this.value == '셔터종류선택') {
return false;
}
if (this.value == '스크린방화') {
FSSrail();
}
if (this.value == '철재방화EGI1.6T') {
FSTrail();
}
if (this.value != '철재방화EGI1.6T' && this.value != '스크린방화' && this.value != '셔터종류선택') { // 방화셔터가 아닐때
$("#block6").show(); // T바 보여주기
}
reload_box(); // 셔터박스/린텔 등 선택한다.
}
function FSSrail() {
$("#order_title3").show();
$("#order_input3").show();
$("#block2").show(); // 삼각쫄대 보이기
$("#block3").show(); // 짜부가스켓 보이기
$("#block5").show(); // 엘바
$("#block6").show(); // T바
}
function FSTrail() {
$("#order_title3").show();
$("#order_input3").show();
$("#block3").show(); // 짜부가스켓 보이기
$("#block2").hide(); // 삼각쫄대 보이기
$("#block5").hide(); // 엘바
$("#block6").show(); // T바
}
function hide_object() {
// $("#material_list").hide();
$("#guiderail_area").hide();
}
function transData(sendData) {
var ua = window.navigator.userAgent;
var postData;
if (ua.indexOf('MSIE') > 0 || ua.indexOf('Trident') > 0) {
postData = encodeURI(sendData);
} else {
postData = sendData;
}
return postData;
}
function inputNumberFormat(obj) {
obj.value = comma(uncomma(obj.value));
}
function comma(str) {
str = String(str);
return str.replace(/(\d)(?=(?:\d{3})+(?!\d))/g, '$1,');
}
function uncomma(str) {
str = String(str);
return str.replace(/[^\d]+/g, '');
}
function previewImage(targetObj, previewId) {
var preview = document.getElementById(previewId); //div id
var ua = window.navigator.userAgent;
if (ua.indexOf("MSIE") > -1) { //ie일때
targetObj.select();
try {
var src = document.selection.createRange().text; // get file full path
var ie_preview_error = document.getElementById("ie_preview_error_" + previewId);
if (ie_preview_error) {
preview.removeChild(ie_preview_error); //error가 있으면 delete
}
var img = document.getElementById(previewId); //이미지가 뿌려질 곳
img.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizingMethod='scale')"; //이미지 로딩, sizingMethod는 div에 맞춰서 사이즈를 자동조절 하는 역할
} catch (e) {
if (!document.getElementById("ie_preview_error_" + previewId)) {
var info = document.createElement("<p>");
info.id = "ie_preview_error_" + previewId;
info.innerHTML = "a";
preview.insertBefore(info, null);
}
}
} else { //ie가 아닐때
var files = targetObj.files;
for (var i = 0; i < files.length; i++) {
var file = files[i];
var imageType = /image.*/; //이미지 파일일경우만.. 뿌려준다.
if (!file.type.match(imageType))
continue;
var prevImg = document.getElementById("prev_" + previewId); //이전에 미리보기가 있다면 삭제
if (prevImg) {
preview.removeChild(prevImg);
}
var img = document.createElement("img"); //크롬은 div에 이미지가 뿌려지지 않는다. 그래서 자식Element를 만든다.
img.id = "prev_" + previewId;
img.classList.add("obj");
img.file = file;
img.style.width = '50px'; //기본설정된 div의 안에 뿌려지는 효과를 주기 위해서 div크기와 같은 크기를 지정해준다.
img.style.height = '50px';
preview.appendChild(img);
if (window.FileReader) { // FireFox, Chrome, Opera 확인.
var reader = new FileReader();
reader.onloadend = (function(aImg) {
return function(e) {
aImg.src = e.target.result;
};
})(img);
reader.readAsDataURL(file);
} else { // safari is not supported FileReader
if (!document.getElementById("sfr_preview_error_" + previewId)) {
var info = document.createElement("p");
info.id = "sfr_preview_error_" + previewId;
info.innerHTML = "not supported FileReader";
preview.insertBefore(info, null);
}
}
}
}
}
function drawbracket() {
var brX = Number($("#brX").val());
var brY = Number($("#brY").val());
var spaceX = 200; // 초기 x좌표 좌측 띄움
var spaceY = 100; // 초기 y좌표 좌측 띄움
var boxspaceX = 100;
var boxspaceY = 150;
var axis = brY / 2; // Arc radius
var radius = brY / 2 / 2; // Arc radius
var startAngle = 0; // Starting point on circle
var endAngle = Math.PI + (Math.PI * 2) / 2; // End point on circle
var anticlockwise = true; // clockwise or anticlockwise
var boxwidth = brX + boxspaceX; // sutter box width
var boxheight = brY + boxspaceY; // sutter box height
// bracket 형상 그림
ctx.beginPath();
ctx.strokeStyle = "blue";
ctx.moveTo(spaceX, spaceY);
ctx.lineTo(spaceX + brX, spaceY);
ctx.lineTo(spaceX + brX, spaceY + brY);
ctx.lineTo(spaceX, spaceY + brY);
ctx.lineTo(spaceX, spaceY);
ctx.stroke();
// bracket 텍스트 넣기
ctx.font = 'italic 22px Calibri';
ctx.fillText(brX + 'X' + brY + " Bracket", spaceX + brX * 3 / 5, spaceY + brY / 2);
// 샤프트 그리기
ctx.beginPath();
ctx.strokeStyle = "red";
ctx.arc(spaceX + axis, spaceY + axis, radius, startAngle, endAngle, anticlockwise);
ctx.stroke();
//셔터박스 그리기
ctx.beginPath();
ctx.strokeStyle = "black";
ctx.moveTo(spaceX - boxspaceX * 0.35, spaceY);
ctx.lineTo(spaceX + boxwidth, spaceY);
ctx.lineTo(spaceX + boxwidth, spaceY + boxheight);
ctx.lineTo(spaceX - boxspaceX * 0.35, spaceY + boxheight);
ctx.lineTo(spaceX - boxspaceX * 0.35, spaceY);
ctx.stroke();
}
//enter키로 form submit 막기
$('input[type="text"]').keydown(function(event) {
if (event.keyCode === 13) {
event.preventDefault();
}
});
function changeUri(tmpdata) {
var ua = window.navigator.userAgent;
var postData;
if (ua.indexOf('MSIE') > 0 || ua.indexOf('Trident') > 0) {
postData = encodeURI(tmpdata);
} else {
postData = tmpdata;
}
return postData;
}
function box_content(types, num) {
var element = document.getElementById("lin3");
if (element) {
element.value = types;
}
$("#ceillingEnd").hide();
var ua = window.navigator.userAgent;
var postData;
var sendData = "./load_bendingData.php?bendnum=" + num;
// 윈도우라면 ?
if (ua.indexOf('MSIE') > 0 || ua.indexOf('Trident') > 0) {
postData = encodeURI(sendData);
} else {
postData = sendData;
}
$("#displayresult").load(postData);
}