1
0
Fork 0
HANYANG_MES/home_dir/www/ksvc_old/base/plant/plant.ajax.php

198 lines
6.3 KiB
PHP

<?php
$cate_id = "BASE_PLANT"; //현재 메뉴 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";
if( !_notAuth("R") ){/************ 권한체크*/
switch( $_REQUEST['mode'] ){
case "getPlantList":
$sql = "USP_B_PLANT_S10";
$rst = $baseObj->DB->exec($sql);
$rows = array();
if( $rst ){
$retval['code'] = true;
while( $row = $baseObj->DB->fetch_array($rst) ){
$row['PLANT_CD_OLD'] = $row['PLANT_CD'];
$rows[] = $row;
}
$retval['data'] = $rows;
}
$retval['code'] = 1;
break;
case "getWcList":
$sql = "USP_B_WC_S10";
$params = Array(
"PLANT_CD" => $_REQUEST['PLANT_CD']?:"",
);
$rst = $baseObj->DB->exec($sql, $params);
$rows = array();
if( $rst ){
$retval['code'] = true;
while( $row = $baseObj->DB->fetch_array($rst) ){
$row['WC_CD_OLD'] = $row['WC_CD'];
$rows[] = $row;
}
$retval['data'] = $rows;
}
$retval['code'] = 1;
break;
case "putPlant":
if( _notAuth("W") ) break; /************ 권한체크*/
$_REQUEST['reqdata'] = json_decode($_REQUEST['reqdata']);
$rst = true;
$ok_cd = array();
foreach( $_REQUEST['reqdata'] as $data ){
$data = (array)$data;
$cdata = $data;
unset($cdata['_STATUS_']);
unset($cdata['USE_FLG']);
if( empty(array_filter($cdata)) ){
if( $data['_STATUS_'] == 'I' ) continue; //빈열제거
if( $data['_STATUS_'] == 'U' ) $data['_STATUS_'] = 'D'; //빈열제거
}
if(!$data['PLANT_CD']) { $retval['mesg'] = cUtil\Mlang::getText("공장코드가 누락된 행은 반영되지 않았습니다."); $rst=false; break; }
else if(!$data['PLANT_NM']) { $retval['mesg'] = cUtil\Mlang::getText("공장명이 누락된 행은 반영되지 않았습니다."); $rst=false; break; }
$chksql = "USP_B_PLANT_S20"; //CD 중복검사용
$chkparams = Array( //CD 중복검사용
$data['PLANT_CD']
);
if( $data['PLANT_CD'] && $data['_STATUS_'] == 'D' ){
$sql = "USP_B_PLANT_D10";
$params = Array(
"PLANT_CD" => $data['PLANT_CD'],
);
}else{
if( $data['PLANT_CD'] && $data['_STATUS_'] == 'U' ) {
$chkparams[] = $data['PLANT_CD_OLD']; //CD 중복검사용
$sql = "USP_B_PLANT_U10";
$params = Array();
}else{
$sql = "USP_B_PLANT_I10";
$params = Array();
}
$rst = $baseObj->DB->exec($chksql, $chkparams);
if( $rst ){
$row = $baseObj->DB->fetch_array($rst);
if( $row['PLANT_CD'] == $data['PLANT_CD'] ){
$rst = 0;
$retval['mesg'] = cUtil\Mlang::getText("{@1} 는 이미 사용중인 코드입니다.",array($data['PLANT_CD'])); break;
}
}
$params = array_merge($params, Array(
"PLANT_CD" => $data['PLANT_CD']?:"",
"PLANT_NM" => $data['PLANT_NM']?:"",
"ZIP_CD" => $data['ZIP_CD']?:"",
"ADDR" => $data['ADDR']?:"",
"BIZ_AREA_CD" => $data['BIZ_AREA_CD']?:"",
"REMK" => $data['REMK']?:"",
"USE_FLG" => $data['USE_FLG']?:"",
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
));
}
$rst2 = $baseObj->DB->exec($sql, $params);
if( $rst2 ) $ok_cd[] = $data['PLANT_CD'];
$rst = $rst && $rst2;
}
$retval['data'] = $ok_cd;
if( $rst ){
$retval['code'] = 1;
}
break;
case "putWc":
if( _notAuth("W") ) break; /************ 권한체크*/
$_REQUEST['reqdata'] = json_decode($_REQUEST['reqdata']);
$rst = true;
$ok_cd = array();
foreach( $_REQUEST['reqdata'] as $data ){
$data = (array)$data;
$cdata = $data;
unset($cdata['_STATUS_']);
unset($cdata['USE_FLG']);
unset($cdata['PLANT_CD']);
if( empty(array_filter($cdata)) ){
if( $data['_STATUS_'] == 'I' ) continue; //빈열제거
if( $data['_STATUS_'] == 'U' ) $data['_STATUS_'] = 'D'; //빈열제거
}
if(!$data['WC_CD']) { $retval['mesg'] = cUtil\Mlang::getText("작업장코드가 누락된 행은 반영되지 않았습니다."); $rst=false; break; }
$chksql = "USP_B_WC_S20"; //CD 중복검사용
$chkparams = Array( //CD 중복검사용
$data['PLANT_CD']
);
if( $data['WC_CD'] && $data['_STATUS_'] == 'D' ){
$sql = "USP_B_WC_D10";
$params = Array(
"WC_CD" => $data['WC_CD'],
);
}else{
if( $data['WC_CD'] && $data['_STATUS_'] == 'U' ) {
$chkparams[] = $data['WC_CD_OLD']; //CD 중복검사용
$sql = "USP_B_WC_U10";
$params = Array();
}else{
$sql = "USP_B_WC_I10";
$params = Array();
}
$rst = $baseObj->DB->exec($chksql, $chkparams);
if( $rst ){
$row = $baseObj->DB->fetch_array($rst);
if( $row['WC_CD'] == $data['WC_CD'] ){
$rst = 0;
$retval['mesg'] = cUtil\Mlang::getText("{@1} 는 이미 사용중인 코드입니다.",array($data['WC_CD'])); break;
}
}
$params = array_merge($params, Array(
"WC_CD" => $data['WC_CD']?:"",
"WC_NM" => $data['WC_NM']?:"",
"PLANT_CD" => $data['PLANT_CD']?:"",
"REMK" => $data['REMK']?:"",
"USE_FLG" => $data['USE_FLG']?:"",
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
));
}
$rst2 = $baseObj->DB->exec($sql, $params);
if( $rst2 ) $ok_cd[] = $data['WC_CD'];
$rst = $rst && $rst2;
}
$retval['data'] = $ok_cd;
if( $rst ){
$retval['code'] = 1;
}
break;
}
}
if( !$_REQUEST['no_echo'] ){
echo json_encode($retval);
}