forked from HANYANG/HANYANG_MES
334 lines
11 KiB
PHP
334 lines
11 KiB
PHP
<?php
|
|
$cate_id = "WORK_NCR_MNG"; //현재 메뉴 ID 필수!!!
|
|
include_once "{$_SERVER['DOCUMENT_ROOT']}/common.inc.php";
|
|
include_once _SVC_INC_PATH_ . "/auth_check.php";
|
|
include_once _HOME_INC_PATH_ . "/ajax_init.php";
|
|
|
|
$_tmp_dir = _UP_PATH_ . "/temp"; //임시파일저장경로
|
|
$_ncr_dir = _UP_PATH_ . "/ncr"; //도면파일저장경로
|
|
|
|
if (!file_exists($_tmp_dir)) {
|
|
mkdir($_tmp_dir);
|
|
}
|
|
if (!file_exists($_ncr_dir)) {
|
|
mkdir($_ncr_dir);
|
|
}
|
|
|
|
if (!_notAuth("R")) { /************ 권한체크*/
|
|
switch ($_REQUEST['mode']) {
|
|
case "getNcrList":
|
|
$sql = "USP_Q_NCR_S10";
|
|
$params = array(
|
|
"WORKER_NM" => $_REQUEST['WORKER_NM'] ?: "",
|
|
"WRK_DT_ST" => $_REQUEST['WRK_DT_ST'] ?: "",
|
|
"WRK_DT_ED" => $_REQUEST['WRK_DT_ED'] ?: "",
|
|
"OFLD" => $_REQUEST['OFLD'] ?: "",
|
|
"OASC" => $_REQUEST['OASC'] ?: "",
|
|
"LINE_NUM" => $_REQUEST['LINE_NUM'] ?: "",
|
|
"NOW_PAGE" => $_REQUEST['NOW_PAGE'] ?: "",
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
$rows = array();
|
|
if ($rst) {
|
|
$retval['code'] = true;
|
|
while ($row = $baseObj->DB->fetch_array($rst)) {
|
|
$row['LIST_NUM'] = $row['TOTAL_ROWS_NUM'] - $row['START_ROW'] - $i++;
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data'] = $rows;
|
|
}
|
|
$retval['code'] = 1;
|
|
break;
|
|
|
|
case "getNcr":
|
|
$sql = "USP_Q_NCR_S20";
|
|
$params = array(
|
|
"NCR_NO" => $_REQUEST['NCR_NO'],
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
$retval['data'] = $baseObj->DB->fetch_array($rst);
|
|
|
|
$retval['data']['NCR_NO_OLD'] = $retval['data']['NCR_NO'];
|
|
$sql = "USP_ZB_ATTACH_S10";
|
|
$params = array(
|
|
"file_id" => "",
|
|
"gubun" => "ncr",
|
|
"nid" => $_REQUEST['NCR_NO'],
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
while ($row = $baseObj->DB->fetch_array($rst)) {
|
|
$retval['data']['ATTS'][] = $row;
|
|
}
|
|
|
|
$sql = "USP_Q_NCR_ACTION_S10";
|
|
$params = array(
|
|
$_REQUEST['NCR_NO'],
|
|
'Y'
|
|
);
|
|
$rst3 = $baseObj->DB->exec($sql, $params);
|
|
if ($rst3) {
|
|
$retval['code'] = 1;
|
|
$rows = array();
|
|
while ($row = $baseObj->DB->fetch_array($rst3)) {
|
|
$row['ACTION_DT'] = $row['ACTION_DT'] ? getDT_date($row['ACTION_DT']) : null;
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data']['ACTION'] = $rows;
|
|
}
|
|
|
|
$retval['code'] = 1;
|
|
break;
|
|
|
|
//Todo : 수주 등록된 수주만 들고와야 한다.
|
|
case "setNcr":
|
|
if (!$_REQUEST['NCR_NO']) {
|
|
$retval['mesg'] = cUtil\Mlang::getText("부적합 코드를 입력하지 않았습니다.");
|
|
break;
|
|
}
|
|
|
|
case "putNcr":
|
|
if (_notAuth("W"))
|
|
break; /************ 권한체크*/
|
|
|
|
$found_dt = explode(" ", $_REQUEST['FOUND_DT']);
|
|
if ($_REQUEST['NCR_NO_OLD']) {
|
|
$sql = "USP_Q_NCR_U10";
|
|
$params = array(
|
|
"NCR_NO" => $_REQUEST['NCR_NO'],
|
|
"MNG_NO" => $_REQUEST['MNG_NO'],
|
|
"SN_ID" => $_REQUEST['MNG_SN_ID'],
|
|
"NCR_QTY" => $_REQUEST['NCR_QTY'],
|
|
"NCR_UNIT" => $_REQUEST['NCR_UNIT'],
|
|
"FOUND_DT" => $found_dt[0],
|
|
"FOUND_TM" => $found_dt[1],
|
|
"FOUND_TYPE" => $_REQUEST['FOUND_TYPE'],
|
|
"NCR_CD" => $_REQUEST['NCR_CD'],
|
|
"JUDG_CD" => $_REQUEST['JUDG_CD'],
|
|
"JUDG_EMP_NO" => $_REQUEST['JUDG_EMP_NO'],
|
|
"JUDG_DT" => $_REQUEST['JUDG_DT'],
|
|
"NCR_CONTENT" => $_REQUEST['NCR_CONTENT'],
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
} else {
|
|
$sql = "USP_Q_NCR_I10";
|
|
$params = array(
|
|
array(&$_REQUEST['NCR_NO'], SQLSRV_PARAM_OUT),
|
|
$_REQUEST['MNG_NO'],
|
|
$_REQUEST['MNG_SN_ID'],
|
|
$_REQUEST['NCR_QTY'],
|
|
$_REQUEST['NCR_UNIT'],
|
|
$found_dt[0],
|
|
$found_dt[1],
|
|
$_REQUEST['FOUND_TYPE'],
|
|
$_REQUEST['NCR_CD'],
|
|
$_REQUEST['JUDG_CD'],
|
|
$_REQUEST['JUDG_EMP_NO'],
|
|
$_REQUEST['JUDG_DT'],
|
|
$_REQUEST['NCR_CONTENT'],
|
|
$GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$rst = $baseObj->DB->exec_output($sql, $params); //Deprecated. 이 함수 말고, exec_output_merge 함수를 사용한다. 예시로 남겨둔다.
|
|
}
|
|
|
|
if ($rst) {
|
|
$nid = $_REQUEST['NCR_NO'];
|
|
foreach ($_REQUEST['file_id'] as $key => $nfile) {
|
|
if ($_REQUEST['file_gubun'][$key] == "temp") {
|
|
if (in_array($_REQUEST['file_id'][$key], $_REQUEST['file_del'] ?: array()))
|
|
continue; //신규등록 삭제체크시 비등록 처리
|
|
|
|
$upfiles = array();
|
|
if ($nfile && file_exists($_tmp_dir . "/{$nfile}")) {
|
|
$upfiles = \Frody\Util\MultiFileUpload::swfFormFileInfo($nfile, $_tmp_dir);
|
|
|
|
$sid = uniqid();
|
|
$params = array(
|
|
"gubun" => "ncr",
|
|
"nid" => $nid ?: "",
|
|
"sid" => $sid ?: "",
|
|
"file_name" => $upfiles[0]['name'] ?: "",
|
|
"file_size" => $upfiles[0]['size'] ?: "",
|
|
"file_type" => $upfiles[0]['type'] ?: "",
|
|
"file_width" => $upfiles[0]['width'] ?: "",
|
|
"file_height" => $upfiles[0]['height'] ?: "",
|
|
);
|
|
|
|
$sql = "USP_ZB_ATTACH_I10";
|
|
$file_id = $baseObj->DB->result($baseObj->DB->exec($sql, $params), 0, 0);
|
|
|
|
if ($file_id) {
|
|
\Frody\Util\MultiFileUpload::swfMoveUploadedFile($upfiles[0]['tmp_name'], "{$_ncr_dir}/{$nid}_{$sid}_{$file_id}.dat");
|
|
}
|
|
}
|
|
} else {
|
|
if (in_array($_REQUEST['file_id'][$key], $_REQUEST['file_del'] ?: array())) { //기등록 삭제체크시 삭제 처리
|
|
$sql = "USP_ZB_ATTACH_D10";
|
|
$params = array(
|
|
"file_id" => $_REQUEST['file_id'][$key],
|
|
"gubun" => $_REQUEST['file_gubun'][$key],
|
|
);
|
|
$baseObj->DB->exec($sql, $params);
|
|
@unlink("{$_ncr_dir}/{$nid}_{$_REQUEST['sid'][$key]}_{$nfile}.dat");
|
|
}
|
|
}
|
|
}
|
|
|
|
$_REQUEST['ACTION'] = json_decode($_REQUEST['ACTION']);
|
|
foreach ($_REQUEST['ACTION'] as $action) {
|
|
$action = (array) $action;
|
|
if ($action['_STATUS_'] == 'I' && $action['USE_FLG'] != "Y")
|
|
continue;
|
|
$data = $action;
|
|
|
|
unset($data['_STATUS_']);
|
|
unset($data['USE_FLG']);
|
|
if (empty(array_filter($data))) {
|
|
if ($action['_STATUS_'] == 'I')
|
|
continue; //빈열제거
|
|
if ($action['_STATUS_'] == 'U')
|
|
$action['_STATUS_'] = 'D'; //빈열제거
|
|
}
|
|
|
|
if ($action['SEQ'] && $action['_STATUS_'] == 'D') {
|
|
$sql = "USP_B_NCR_HST_D10";
|
|
$params = array(
|
|
"NCR_NO" => $data['NCR_NO'],
|
|
);
|
|
} else {
|
|
if (($action['SEQ'] || $action['SEQ'] === 0) && $action['_STATUS_'] == 'U') {
|
|
|
|
$sql = "USP_Q_NCR_ACTION_U10";
|
|
$params = array("SEQ" => $action['SEQ']);
|
|
} else {
|
|
$sql = "USP_Q_NCR_ACTION_I10";
|
|
$params = array();
|
|
}
|
|
|
|
$params = array_merge($params, array(
|
|
"NCR_NO" => $_REQUEST['NCR_NO'],
|
|
"ACTION_DT" => $action['ACTION_DT'] ?: null,
|
|
"ACTION_DESC" => $action['ACTION_DESC'] ?: "",
|
|
"ACTION_AMT" => $action['ACTION_AMT'] ?: "",
|
|
"ACTION_CORP" => $action['ACTION_CORP'] ?: "",
|
|
"ACTION_TEL_NO" => $action['ACTION_TEL_NO'] ?: "",
|
|
"USE_FLG" => $action['USE_FLG'] ?: "N",
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
)
|
|
);
|
|
}
|
|
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
}
|
|
if ($rst) {
|
|
$retval['code'] = 1;
|
|
}
|
|
}
|
|
break;
|
|
|
|
case "delNcr":
|
|
if (_notAuth("W"))
|
|
break; /************ 권한체크*/
|
|
|
|
$_REQUEST['reqdata'] = json_decode($_REQUEST['reqdata']);
|
|
$rst = true;
|
|
foreach ($_REQUEST['reqdata'] as $data) {
|
|
$data = (array) $data;
|
|
|
|
$cdata = $data;
|
|
unset($cdata['_STATUS_']);
|
|
|
|
$sql = "USP_Q_NCR_D10";
|
|
$params = array("NCR_NO" => $data['NCR_NO']);
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
}
|
|
if ($rst) {
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "getSoList":
|
|
$sql = "USP_S_CONDITION_S10P";
|
|
$params = array(
|
|
"BP_CD" => $_REQUEST['BP_CD'] ?: "",
|
|
"SO_DT_ST" => $_REQUEST['SO_DT_ST'] ?: "",
|
|
"SO_DT_ED" => $_REQUEST['SO_DT_ED'] ?: "",
|
|
"MNG_NO" => $_REQUEST['MNG_NO'] ?: "",
|
|
"SO_NO" => $_REQUEST['SO_NO'] ?: "",
|
|
"BP_NM" => $_REQUEST['BP_NM'] ?: "",
|
|
"OFLD" => $_REQUEST['OFLD'] ?: "",
|
|
"OASC" => $_REQUEST['OASC'] ?: "",
|
|
"LINE_NUM" => $_REQUEST['LINE_NUM'] ?: "",
|
|
"NOW_PAGE" => $_REQUEST['NOW_PAGE'] ?: "",
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
$rows = array();
|
|
if ($rst) {
|
|
$retval['code'] = true;
|
|
while ($row = $baseObj->DB->fetch_array($rst)) {
|
|
$row['LIST_NUM'] = $row['TOTAL_ROWS_NUM'] - $row['START_ROW'] - $i++;
|
|
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data'] = $rows;
|
|
}
|
|
$retval['code'] = 1;
|
|
break;
|
|
|
|
|
|
case "putTempFile":
|
|
if (isset($_FILES["upfile"])) {
|
|
$fdata['file_name'] = $_FILES['upfile']['name'] ?: "";
|
|
$fdata['file_size'] = $_FILES['upfile']['size'] ?: 0;
|
|
$fdata['file_type'] = $_FILES['upfile']['type'] ?: "";
|
|
$fdata['file_width'] = $_FILES['upfile']['width'] ?: "";
|
|
$fdata['file_height'] = $_FILES['upfile']['height'] ?: "";
|
|
|
|
$fdata['tmp_name'] = \Frody\Util\MultiFileUpload::swfFormSaveFile($_FILES["upfile"], $_tmp_dir, $_REQUEST['temp_fid']);
|
|
|
|
$retval['code'] = 1;
|
|
$retval['data'] = $fdata;
|
|
|
|
\Frody\Util\MultiFileUpload::swfCleanDir($_tmp_dir);
|
|
}
|
|
break;
|
|
|
|
case "getNcrExcel":
|
|
|
|
$sql = "USP_Q_NCR_S21";
|
|
$params = array(
|
|
"NCR_NO" => $_REQUEST['ncrNo'] ?: "",
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
$retval['data'] = $baseObj->DB->fetch_array($rst);
|
|
|
|
$sql = "USP_Q_NCR_S22";
|
|
$params = array(
|
|
"MNG_SERIAL_NO" => $retval['data']['MNG_SN_ID'] ?: "",
|
|
"INST_DT" => $retval['data']['INSP_DT'] ?: "",
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
$rows = array();
|
|
while ($row = $baseObj->DB->fetch_array($rst)) {
|
|
$rows[] = $row;
|
|
}
|
|
$retval['preInspData'] = $rows;
|
|
|
|
$rows = array();
|
|
if ($rst) {
|
|
$retval['code'] = true;
|
|
}
|
|
$retval['code'] = 1;
|
|
|
|
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (!$_REQUEST['no_echo']) {
|
|
echo json_encode($retval);
|
|
} |