forked from HANYANG/HANYANG_MES
717 lines
24 KiB
PHP
717 lines
24 KiB
PHP
<?php
|
|
$cate_id = "PRODUCT_CONDITION"; //현재 메뉴 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"; //임시파일저장경로
|
|
$_draw_dir = _UP_PATH_."/rdraw"; //도면파일저장경로
|
|
|
|
if( !file_exists($_tmp_dir) ){
|
|
mkdir($_tmp_dir);
|
|
}
|
|
if( !file_exists($_draw_dir) ){
|
|
mkdir($_draw_dir);
|
|
}
|
|
|
|
if( !function_exists("alreadyProgress") ){
|
|
function alreadyProgress($MNG_NO){
|
|
global $baseObj;
|
|
|
|
$sql = "USP_S_MNG_NO_S10";
|
|
$params = Array("MNG_NO" => $MNG_NO);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
if( $rst ){
|
|
$row = $baseObj->DB->fetch_array($rst);
|
|
if( $row['CNT'] > 0){
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
}
|
|
|
|
if( !_notAuth("R") ){/************ 권한체크*/
|
|
switch( $_REQUEST['mode'] ){
|
|
case "getDetailList":
|
|
$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++;
|
|
$row['MNG_NO_OLD'] = $row['MNG_NO'];
|
|
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data'] = $rows;
|
|
}
|
|
$retval['code'] = 1;
|
|
break;
|
|
|
|
case "putDetailList":
|
|
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_']);
|
|
unset($cdata['USE_FLG']);
|
|
|
|
if( empty(array_filter($cdata)) ){
|
|
if( $data['_STATUS_'] == 'I' ) continue; //빈열제거
|
|
if( $data['_STATUS_'] == 'U' ) $data['_STATUS_'] = 'D'; //빈열제거
|
|
}
|
|
|
|
if( $data['MNG_NO'] && $data['_STATUS_'] == 'D' ){
|
|
$sql = "USP_S_SO_D10";
|
|
$params = Array(
|
|
"MNG_NO" => $data['MNG_NO'],
|
|
);
|
|
}else{
|
|
if( $data['MNG_NO'] && $data['_STATUS_'] == 'U' ) {
|
|
$sql = "USP_S_CONDITION_U10";
|
|
$params = Array();
|
|
}else{
|
|
$sql = "USP_S_SO_I10";
|
|
$params = Array();
|
|
}
|
|
|
|
$params = array_merge($params, Array(
|
|
"MNG_NO" => $data['MNG_NO']?:null,
|
|
"SO_NO" => $data['SO_NO'],
|
|
"SO_SEQ" => $data['SO_SEQ'],
|
|
"ITEM_CD" => $data['ITEM_CD']?:"",
|
|
"MATR_TYPE" => $data['MATR_TYPE'],
|
|
"REQ_DLVY_DT" => $data['REQ_DLVY_DT'],
|
|
"SO_QTY" => $data['SO_QTY'],
|
|
"SO_UNIT" => $data['SO_UNIT'],
|
|
"CURRENCY_CD" => $data['CURRENCY_CD'],
|
|
"PWR_WGT" => $data['PWR_WGT']?:0,
|
|
"PWR_UNT" => $data['CURRENCY_CD'],
|
|
"UNIT_WGT" => $data['UNIT_WGT']?:0,
|
|
"WGT_UNIT" => $data['CURRENCY_CD'],
|
|
"SIZE_CD" => $data['SIZE_CD'],
|
|
"SHAPE_TYPE" => $data['SHAPE_TYPE'],
|
|
"TOP_TAP" => $data['TOP_TAP'],
|
|
"SID_TAP" => $data['SID_TAP'],
|
|
"GROV_TYPE" => $data['GROV_TYPE'],
|
|
"TILT_FLG" => $data['TILT_FLG'],
|
|
"HOLE_SIZE" => $data['HOLE_SIZE']?:0,
|
|
"PL_HD_TYPE" => $data['PL_HD_TYPE'],
|
|
"REMK" => $data['REMK']?:"",
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
));
|
|
}
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
}
|
|
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "getSpecList":
|
|
$sql = "USP_S_SPEC_S10";
|
|
$params = Array(
|
|
"MNG_NO" => $_REQUEST['MNG_NO'],
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
$rows = array();
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
while( $row = $baseObj->DB->fetch_array($rst) ){
|
|
$row['SPEC_ITEM_OLD'] = $row['SPEC_ITEM'];
|
|
$row['_STATUS_'] = 'I';
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data'] = $rows;
|
|
}
|
|
break;
|
|
|
|
case "putSpecList":
|
|
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_']);
|
|
unset($cdata['USE_FLG']);
|
|
|
|
if( empty(array_filter($cdata)) ){
|
|
if( $data['_STATUS_'] == 'I' ) continue; //빈열제거
|
|
if( $data['_STATUS_'] == 'U' ) $data['_STATUS_'] = 'D'; //빈열제거
|
|
}
|
|
|
|
$sql = "USP_S_SPEC_U10";
|
|
$params = Array(
|
|
"MNG_NO" => $data['MNG_NO'],
|
|
"SPEC_ITEM" => $data['SPEC_ITEM']?:"",
|
|
"SPEC_ITEM_OLD" => $data['SPEC_ITEM_OLD']?:"",
|
|
//"QTY" => $data['QTY']?:"",
|
|
"DIAMETER" => $data['DIAMETER'],
|
|
"STD_TOL_UPPER" => $data['STD_TOL_UPPER'],
|
|
"STD_TOL_LOWER" => $data['STD_TOL_LOWER'],
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
|
|
$sql = "USP_S_INSP_U20"; // INSP UPDATE
|
|
$params2 = Array(
|
|
"GB" => $data['GB'],
|
|
"MNG_NO" => $data['MNG_NO'],
|
|
"INSP_ITEM_CD" => $data['SPEC_ITEM'],
|
|
"SPEC" => $data['DIAMETER'],
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params2);
|
|
}
|
|
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "delSpecList":
|
|
if( _notAuth("W") ) break; /************ 권한체크*/
|
|
|
|
$MNG_NO = $_REQUEST['MNG_NO'];
|
|
$rst = true;
|
|
|
|
// 진행상태 확인
|
|
if( alreadyProgress($MNG_NO) ){
|
|
$retval['code'] = 0;
|
|
$retval['mesg'] = cUtil\Mlang::getText("작업 중인 수주는 초기화 할 수 없습니다.");
|
|
break;
|
|
}
|
|
|
|
$sql = "USP_S_SPEC_D10";
|
|
$params = Array( "MNG_NO" => $MNG_NO );
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "getRouteList":
|
|
$retval['data'] = array(); //공정정보와 계산용 전체가공조건을 가져온다.
|
|
|
|
$sql = "USP_S_ROUTE_S10";
|
|
$params = Array(
|
|
"MNG_NO" => $_REQUEST['MNG_NO'],
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
$rows = array();
|
|
while( $row = $baseObj->DB->fetch_array($rst) ){
|
|
$row['OP_SEQ_OLD'] = $row['OP_SEQ'];
|
|
$row['_STATUS_'] = 'I';
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data'] = $rows;
|
|
}
|
|
|
|
// $sql = "USP_S_COND_S20";
|
|
// $rst = $baseObj->DB->exec($sql, $params);
|
|
// if( $rst ){
|
|
// $rows = array();
|
|
// $retval['code'] = 1;
|
|
// while( $row = $baseObj->DB->fetch_array($rst) ){
|
|
// $rows[] = $row;
|
|
// }
|
|
// $retval['data']['calc'] = $rows;
|
|
// }
|
|
break;
|
|
|
|
case "getRouteList2":
|
|
$retval['data'] = array();
|
|
|
|
$sql = "USP_S_ROUTE_S10R";
|
|
$params = Array(
|
|
"MNG_NO" => $_REQUEST['MNG_NO'],
|
|
"OP_CD" => $_REQUEST['OP_CD']
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
$rows = array();
|
|
while( $row = $baseObj->DB->fetch_array($rst) ){
|
|
$row['OP_SEQ_OLD'] = $row['OP_SEQ'];
|
|
$row['_STATUS_'] = 'I';
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data'] = $rows;
|
|
}
|
|
break;
|
|
|
|
case "putRouteList":
|
|
if( _notAuth("W") ) break; /************ 권한체크*/
|
|
|
|
$_REQUEST['reqdata'] = json_decode($_REQUEST['reqdata']);
|
|
$rst = true;
|
|
foreach( $_REQUEST['reqdata'] as $key => $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['MNG_NO'] && $data['_STATUS_'] == 'D' ){
|
|
$sql = "USP_B_OPPART_D10";
|
|
$params = Array(
|
|
"MNG_NO" => $data['MNG_NO'],
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
}else{
|
|
$sql = "USP_S_ROUTE_U10";
|
|
$params = Array(
|
|
"MNG_NO" => $data['MNG_NO']?:"",
|
|
"OP_SEQ" => $data['OP_SEQ']?:"",
|
|
"OP_CD" => $data['OP_CD']?:"",
|
|
"WO_MAKE_FLG" => $data['WO_MAKE_FLG']?:"",
|
|
"STD_SETUP_TM" => $data['STD_SETUP_TM']?:"",
|
|
"STD_TACT_TM" => $data['STD_TACT_TM']?:"",
|
|
"USE_FLG" => $data['USE_FLG']?:"",
|
|
"ORD_SEQ" => ($key+1),
|
|
"REMK" => $data['REMK']?:"",
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
if( $rst ){
|
|
if( $data['_FSTATUS_'] ) {
|
|
switch( $data['_FSTATUS_'] ){
|
|
case "I":
|
|
$upfiles = array();
|
|
if( $data['tmp_name'] && file_exists($_tmp_dir."/{$data['tmp_name']}") ){
|
|
$upfiles = \Frody\Util\MultiFileUpload::swfFormFileInfo($data['tmp_name'], $_tmp_dir);
|
|
}
|
|
|
|
if( $upfiles ){
|
|
$params = Array(
|
|
"gubun" => "rdraw",
|
|
"nid" => $data['MNG_NO'],
|
|
"sid" => $data['OP_CD']?:"",
|
|
"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'],
|
|
"file_exp" => $data['file_exp']?:"",
|
|
);
|
|
|
|
if( !$data['file_id'] ){
|
|
$sql = "USP_ZB_ATTACH_I10";
|
|
$data['file_id'] = $baseObj->DB->result($baseObj->DB->exec($sql, $params),0,0);
|
|
$rst = $rst && $data['file_id'];
|
|
}else{
|
|
$sql = "USP_ZB_ATTACH_U10";
|
|
$params = array_merge(Array(
|
|
"file_id" => $data['file_id']
|
|
),$params);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
}
|
|
|
|
if( $rst ){
|
|
\Frody\Util\MultiFileUpload::swfMoveUploadedFile($upfiles[0]['tmp_name'], "{$_draw_dir}/{$data['MNG_NO']}_{$data['OP_CD']}_{$data['file_id']}.dat");
|
|
}
|
|
}
|
|
break;
|
|
case "D":
|
|
$sql = "USP_ZB_ATTACH_D10";
|
|
$params = Array(
|
|
"file_id" => $data['file_id'],
|
|
"gubun" => "rdraw",
|
|
"nid" => $data['MNG_NO'],
|
|
"sid" => $data['OP_CD'],
|
|
);
|
|
$baseObj->DB->result($baseObj->DB->exec($sql, $params),0,0);
|
|
@unlink("{$_draw_dir}/{$data['MNG_NO']}_{$data['OP_CD']}_{$data['file_id']}.dat");
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "delRouteList":
|
|
if( _notAuth("W") ) break; /************ 권한체크*/
|
|
|
|
$MNG_NO = $_REQUEST['MNG_NO'];
|
|
$rst = true;
|
|
|
|
// 진행상태 확인
|
|
if( alreadyProgress($MNG_NO) ){
|
|
$retval['code'] = 0;
|
|
$retval['mesg'] = cUtil\Mlang::getText("작업 중인 수주는 초기화 할 수 없습니다.");
|
|
break;
|
|
}
|
|
|
|
$sql = "USP_S_ROUTE_D10";
|
|
$params = Array( "MNG_NO" => $MNG_NO );
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "getCondList":
|
|
/*
|
|
$sql = "USP_S_COND_S10";
|
|
$params = Array(
|
|
"SHAPE_TYPE" => $_REQUEST['SHAPE_TYPE'],
|
|
"OP_SEQ" => $_REQUEST['OP_SEQ'],
|
|
"MNG_NO" => $_REQUEST['MNG_NO'],
|
|
);*/
|
|
$sql = "USP_S_COND_S20";
|
|
$params = Array(
|
|
"MNG_NO" => $_REQUEST['MNG_NO'],
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
$rows = array();
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
while( $row = $baseObj->DB->fetch_array($rst) ){
|
|
$row['_STATUS_'] = 'I';
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data'] = $rows;
|
|
}
|
|
break;
|
|
|
|
case "putCondList":
|
|
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_']);
|
|
unset($cdata['USE_FLG']);
|
|
|
|
if( empty(array_filter($cdata)) ){
|
|
if( $data['_STATUS_'] == 'I' ) continue; //빈열제거
|
|
if( $data['_STATUS_'] == 'U' ) $data['_STATUS_'] = 'D'; //빈열제거
|
|
}
|
|
|
|
//if(!$data['OP_COUNT']) { $retval['mesg'] = cUtil\Mlang::getText("횟수가 누락된 행은 반영되지 않았습니다."); $rst=false; break; }
|
|
|
|
if( $data['MNG_NO'] && $data['_STATUS_'] == 'D' ){
|
|
$sql = "USP_B_OPPART_D10";
|
|
$params = Array(
|
|
"MNG_NO" => $data['MNG_NO'],
|
|
);
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
}else{
|
|
$sql = "USP_S_COND_U10";
|
|
$params = Array(
|
|
"MNG_NO" => $data['MNG_NO'],
|
|
"OP_SEQ" => $data['OP_SEQ'],
|
|
"PART_CD" => $data['PART_CD'],
|
|
"EXTRA_OD" => $data['EXTRA_OD']?:0,
|
|
"EXTRA_ID" => $data['EXTRA_ID']?:0,
|
|
"EXTRA_TH" => $data['EXTRA_TH']?:0,
|
|
"EXTRA_TM" => $data['EXTRA_TM']?:0,
|
|
"SPEC_SIZE" => $data['SPEC_SIZE']?:0,
|
|
"OP_SIZE" => $data['OP_SIZE']?:0,
|
|
"OP_ILLU" => $data['OP_ILLU']?:0,
|
|
"OP_RPMS" => $data['OP_RPMS']?:0,
|
|
"OP_COUNT" => $data['OP_COUNT']?:0,
|
|
"OP_FEED" => $data['OP_FEED']?:0,
|
|
"OP_DEPTH" => $data['OP_DEPTH']?:0,
|
|
"TACT_TM" => $data['TACT_TM']?:0,
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
}
|
|
}
|
|
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "delCondList":
|
|
if( _notAuth("W") ) break; /************ 권한체크*/
|
|
|
|
$MNG_NO = $_REQUEST['MNG_NO'];
|
|
$rst = true;
|
|
|
|
// 진행상태 확인
|
|
if( alreadyProgress($MNG_NO) ){
|
|
$retval['code'] = 0;
|
|
$retval['mesg'] = cUtil\Mlang::getText("작업 중인 수주는 초기화 할 수 없습니다.");
|
|
break;
|
|
}
|
|
|
|
$OP_SEQ = $_REQUEST['OP_SEQ'];
|
|
$sql = "USP_S_COND_D10";
|
|
$params = Array( "MNG_NO" => $MNG_NO, "OP_SEQ" => $OP_SEQ );
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "getInspList":
|
|
$sql = "USP_S_INSP_S10";
|
|
$params = Array(
|
|
"MNG_NO" => $_REQUEST['MNG_NO'],
|
|
"OP_SEQ" => $_REQUEST['OP_SEQ']?:"",
|
|
"SHAPE_TYPE" => $_REQUEST['SHAPE_TYPE']?:"",
|
|
);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
$rows = array();
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
while( $row = $baseObj->DB->fetch_array($rst) ){
|
|
$row['_STATUS_'] = 'I';
|
|
$row['GB'] = substr($row['GB'], 0, 1);
|
|
$rows[] = $row;
|
|
}
|
|
$retval['data'] = $rows;
|
|
}
|
|
break;
|
|
|
|
case "putInspList":
|
|
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_']);
|
|
unset($cdata['USE_FLG']);
|
|
|
|
if( empty(array_filter($cdata)) ){
|
|
if( $data['_STATUS_'] == 'I' ) continue; //빈열제거
|
|
if( $data['_STATUS_'] == 'U' ) $data['_STATUS_'] = 'D'; //빈열제거
|
|
}
|
|
|
|
if( $data['MNG_NO'] && $data['_STATUS_'] == 'D' ){
|
|
$sql = "USP_B_OPPART_D10";
|
|
$params = Array(
|
|
"MNG_NO" => $data['MNG_NO'],
|
|
);
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
}else{
|
|
$sql = "USP_S_INSP_U10";
|
|
$params = Array(
|
|
"GB" => $data['GB'],
|
|
"MNG_NO" => $data['MNG_NO'],
|
|
"OP_SEQ" => $data['OP_SEQ'],
|
|
"INSP_ITEM_CD" => $data['INSP_ITEM_CD'],
|
|
"INSP_METH" => $data['INSP_METH'],
|
|
"STD_TOL_UPPER" => $data['STD_TOL_UPPER'],
|
|
"STD_TOL_LOWER" => $data['STD_TOL_LOWER'],
|
|
"SPEC_UPPER" => $data['SPEC_UPPER'],
|
|
"SPEC_LOWER" => $data['SPEC_LOWER'],
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
}
|
|
}
|
|
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "delInspList":
|
|
if( _notAuth("W") ) break; /************ 권한체크*/
|
|
|
|
$MNG_NO = $_REQUEST['MNG_NO'];
|
|
$rst = true;
|
|
|
|
// 진행상태 확인
|
|
if( alreadyProgress($MNG_NO) ){
|
|
$retval['code'] = 0;
|
|
$retval['mesg'] = cUtil\Mlang::getText("작업 중인 수주는 초기화 할 수 없습니다.");
|
|
break;
|
|
}
|
|
|
|
$OP_SEQ = $_REQUEST['OP_SEQ'];
|
|
$sql = "USP_S_INSP_D10";
|
|
$params = Array( "MNG_NO" => $MNG_NO, "OP_SEQ" => $OP_SEQ );
|
|
$rst = $rst && $baseObj->DB->exec($sql, $params);
|
|
if( $rst ){
|
|
$retval['code'] = 1;
|
|
}
|
|
break;
|
|
|
|
case "putPlanList":
|
|
|
|
if( _notAuth("W") ) break; /************ 권한체크*/
|
|
|
|
$_REQUEST['sodata'] = json_decode($_REQUEST['sodata'],true);
|
|
|
|
// 중복체크
|
|
$sql = "USP_P_WO_OPER_S20";
|
|
$params = Array("MNG_NO" => $_REQUEST['sodata']['MNG_NO']);
|
|
$rst = $baseObj->DB->exec($sql, $params);
|
|
|
|
$wo_sql = "";
|
|
$wo_oper_sql = "";
|
|
if( $rst ){
|
|
$row = $baseObj->DB->fetch_array($rst);
|
|
if( $row['CNT_A'] > 0 ){
|
|
$retval['code'] = 0;
|
|
$retval['mesg'] = cUtil\Mlang::getText("이미 확정된 수주입니다.");
|
|
break;
|
|
}
|
|
if( $row['CNT_B'] > 0 ){
|
|
$wo_sql = "USP_P_WO_U10";
|
|
$wo_oper_sql = "USP_P_WO_OPER_FACILITY_U10";
|
|
}
|
|
}
|
|
|
|
$_REQUEST['no_echo'] = true;
|
|
if( $_REQUEST['sodata']['pasteMode'] == "Y" ){ //붙여넣기 모드에선 기존 데이터 삭제
|
|
$_REQUEST['mode'] = "delSpecList";
|
|
$_REQUEST['MNG_NO'] = $_REQUEST['sodata']['MNG_NO'];
|
|
include "./condition.ajax.php";
|
|
|
|
$_REQUEST['mode'] = "delRouteList";
|
|
$_REQUEST['MNG_NO'] = $_REQUEST['sodata']['MNG_NO'];
|
|
include "./condition.ajax.php";
|
|
|
|
$_REQUEST['mode'] = "delCondList";
|
|
$_REQUEST['MNG_NO'] = $_REQUEST['sodata']['MNG_NO'];
|
|
include "./condition.ajax.php";
|
|
|
|
$_REQUEST['mode'] = "delInspList";
|
|
$_REQUEST['MNG_NO'] = $_REQUEST['sodata']['MNG_NO'];
|
|
include "./condition.ajax.php";
|
|
}
|
|
|
|
$_REQUEST['mode'] = "putSpecList";
|
|
$_REQUEST['reqdata'] = $_REQUEST['specdata'];
|
|
include "./condition.ajax.php";
|
|
|
|
$_REQUEST['mode'] = "putRouteList";
|
|
$_REQUEST['reqdata'] = $_REQUEST['routedata'];
|
|
include "./condition.ajax.php";
|
|
|
|
$_REQUEST['mode'] = "putCondList";
|
|
$_REQUEST['reqdata'] = $_REQUEST['conddata'];
|
|
include "./condition.ajax.php";
|
|
|
|
$_REQUEST['mode'] = "putInspList";
|
|
$_REQUEST['reqdata'] = $_REQUEST['inspdata'];
|
|
include "./condition.ajax.php";
|
|
|
|
$_REQUEST['no_echo'] = false;
|
|
|
|
$_REQUEST['routedata'] = json_decode($_REQUEST['routedata'],true);
|
|
|
|
$rst = true;
|
|
$retval['code'] = 1;
|
|
|
|
//작업지시 순번 정렬
|
|
$ordtemp = array_values(array_filter($_REQUEST['routedata'],function($r){return $r['WO_MAKE_FLG'] == "Y" && $r['USE_FLG'] != "N";}));
|
|
$orddata = Array();
|
|
foreach( $ordtemp as $key=>$ord ){
|
|
$WO_NO = "{$_REQUEST['sodata']['SO_NO']}-{$_REQUEST['sodata']['SO_SEQ']}-{$ord['OP_SEQ']}";
|
|
$orddata[$WO_NO]['PRV'] = $ordtemp[$key-1]['OP_CD'];
|
|
$orddata[$WO_NO]['NXT'] = $ordtemp[$key+1]['OP_CD'];
|
|
}
|
|
|
|
foreach( $_REQUEST['routedata'] as $idx => $data ){
|
|
if( !$data['_STATUS_'] ) continue; //변동 없는 데이터 제외
|
|
|
|
$WO_NO = "{$_REQUEST['sodata']['SO_NO']}-{$_REQUEST['sodata']['SO_SEQ']}-{$data['OP_SEQ']}";
|
|
$params = Array(
|
|
"WO_NO" => $WO_NO,
|
|
"PROD_PLN_DT" => "",
|
|
"PROD_PLN_QTY" => $_REQUEST['sodata']['SO_QTY'],
|
|
"PROD_PLN_EMP_NO" => $data['PROD_PLN_EMP_NO'],
|
|
"PROD_PLN_ITEM_CD" => $data['PROD_PLN_ITEM_CD'],
|
|
"MNG_NO" => $_REQUEST['sodata']['MNG_NO'],
|
|
"PLN_STATUS" => ($_REQUEST['draft'] ? NULL : (($data['WO_MAKE_FLG']!='Y')?'F':'S')),
|
|
"PLANT_CD" => "",
|
|
"PRV_OP_CD" => $orddata[$WO_NO]['PRV']?:"",
|
|
"NXT_OP_CD" => $orddata[$WO_NO]['NXT']?:"",
|
|
"FRST_OP_FLG" => ((!$idx)?"Y":"N"),
|
|
"LAST_OP_FLG" => (($idx+1) != count($_REQUEST['routedata']))?"N":"Y",
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$wo_sql = $wo_sql?:"USP_P_WO_I10";
|
|
$rst = $rst && $baseObj->DB->exec($wo_sql, $params);
|
|
|
|
if( $rst ){
|
|
$params2 = Array(
|
|
"WO_NO" => $WO_NO,
|
|
"OP_SEQ" => $data['OP_SEQ'],
|
|
"WO_FACLT_NO" => NULL,
|
|
"FACLT_CD" => $data['OP_CD'] == "AASA" ? "SK-M-DR-01" : "SK-M-VL-01",
|
|
"OP_CD" => $data['OP_CD'],
|
|
"WO_FACLT_CD" => NULL,
|
|
"MNG_NO" => $_REQUEST['sodata']['MNG_NO'],
|
|
"PLN_ST_TM" => NULL,
|
|
"PLN_ED_TM" => NULL,
|
|
"PLN_TERM_TM" => ($data['STD_SETUP_TM']?:0) + ($data['STD_TACT_TM']?:0) * ($_REQUEST['sodata']['SO_QTY']?:0),
|
|
"PLN_STATUS" => ($_REQUEST['draft'] ? NULL : (($data['WO_MAKE_FLG']!='Y')?'F':'S')),
|
|
"ST" => $data['STD_SETUP_TM']?:0,
|
|
"CT" => $data['STD_TACT_TM']?:0,
|
|
"FEED_ORD_VAL" => NULL,
|
|
"ORD_DT" => NULL,
|
|
"ORD_QTY" => $_REQUEST['sodata']['SO_QTY']?:0,
|
|
"WORK_QTY" => $_REQUEST['sodata']['WORK_QTY']?:0,
|
|
"DEF_QTY" => $_REQUEST['sodata']['DEF_QTY']?:0,
|
|
"RPM_ORD_VAL" => NULL,
|
|
"FILE_ID" => NULL,
|
|
"MAKE_USER_ID" => $GLOBALS['_Umem']['member_id'],
|
|
);
|
|
$wo_oper_sql = $wo_oper_sql?:"USP_P_WO_OPER_FACILITY_I10";
|
|
$rst = $rst && $baseObj->DB->exec($wo_oper_sql, $params2);
|
|
}
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if( !$_REQUEST['no_echo'] ){
|
|
echo json_encode($retval);
|
|
} |