1
0
Fork 0
HANYANG_MES/show_dir/www/ksvc/order/planing/planing.ajax.php

151 lines
5.7 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";
$prev_base_days = 10; //이전 몇일전 데이터까지 불러올지 여부 (planing.js(getTo_addHolytime 함수)부분도 같이 확인)
if (!_notAuth("R")) { /************ 권한체크*/
switch ($_REQUEST['mode']) {
case "getScheduleList":
$BIZ_AREA_CD = "BA01";
$sdate = $_REQUEST['sdate'] ?: date("Y-m-d");
$sdate_qry = date("Y-m-d", strtotime($sdate . " -{$prev_base_days} days"));
$fdate = $_REQUEST['fdate'] ?: date("Y-m-d");
$fdate_qry = date("Y-m-d", strtotime($fdate . " +{$prev_base_days} days"));
$wk_start_time = $cmv_obj->getWkStTime();
$facility_data = $cmv_obj->getFacilityList();
$schedule_data = $cmv_obj->getScheduleList($BIZ_AREA_CD, $sdate_qry, $fdate_qry);
$worktime_data = $cmv_obj->getWprktimeList($BIZ_AREA_CD);
$opgrp_data = $cmv_obj->getOperList();
$retval['data'] = array();
$retval['data']['wkStartTime'] = $wk_start_time;
$retval['data']['sdate_millis'] = strtotime($sdate) * 1000;
$retval['data']['fdate_millis'] = strtotime($fdate . " 23:59:59") * 1000;
$retval['data']['varsFactInfo'] = $facility_data;
$retval['data']['varsSchInfo'] = $schedule_data;
$retval['data']['varsWtimeInfo'] = $worktime_data;
$sql = "USP_P_WO_S20";
$params = array(
"MNG_NO" => $_REQUEST['MNG_NO'],
"WO_NO" => $_REQUEST['WO_NO'],
"ST_DT" => $sdate_qry . " 00:00:00",
"ED_DT" => $fdate_qry . " 23:59:59",
);
$rst = $baseObj->DB->exec($sql, $params);
$taskrows = array();
while ($row = $baseObj->DB->fetch_array($rst)) {
if( $_REQUEST['sfact'] && $row['FACLT_CD'] != $_REQUEST['sfact'] ) continue;
$row['OP_SEQ_OLD'] = $row['OP_SEQ'];
$row['ST'] = round($row['ST'], 2);
$row['CT'] = round($row['CT'], 2);
$row['PLN_ST_TM'] = getDT_datetime($row['PLN_ST_TM'], "Y-m-d H:i");
$row['PLN_ED_TM'] = getDT_datetime($row['PLN_ED_TM'], "Y-m-d H:i");
$row['PLN_TERM_TM'] = round($row['PLN_TERM_TM'], 2);
$row['SO_QTY'] = (int) $row['SO_QTY'];
$row['ORD_QTY'] = (int) ($row['ORD_QTY'] ?: $row['SO_QTY']);
$row['OP_NM'] = $opgrp_data[$row['OP_CD']]['OP_NM'];
$f_key = array_search($row['FACLT_CD'], array_column($facility_data, 'FACLT_CD'));
$row['FACLT_NM'] = $facility_data[$f_key]['FACLT_NM'];
$rows[] = $row;
$enableDragging = true;
if( in_array($row['PLN_STATUS'], Array('W','F')) ){
$enableDragging = false;
}
$taskrows[] = array(
"id" => $row['WO_NO'] . "=" . $row['FACLT_CD'],
"resourceId" => $row['FACLT_CD'],
"label" => $row['MNG_NO'],
"from" => strtotime($row['PLN_ST_TM']) * 1000,
"to" => strtotime($row['PLN_ED_TM']) * 1000,
//"classes" => "color" . substr($row['MNG_NO'], -1) . ($enableDragging?'':' cell-dragging-disabled'),
"classes" => "col_odia" . substr($row['OUT_DIA'], 0, 1) . ($enableDragging?'':' cell-dragging-disabled'),
//색상
//"bgcolor" => $row['MNG_BG'],
//색상2
"html" => "<div class='d-flex flex-column'><div class='font08 lh-1' style='line-height: 120%;'>{$opgrp_data[$row['OP_CD']]['OP_NM']} [{$row['MNG_NO']}]</div><div class='font06 lh-sm'>" . substr($row['PLN_ST_TM'], 5) . " ~ (" . Common_vars::dateRformat($row['PLN_TERM_TM'], array("dan" => "m")) . ") " . /*substr($row['PLN_ED_TM'],5).*/"</div></div>",
"enableDragging" => $enableDragging,
"showButton" => false,
"usrdata" => $row,
);
}
$facrows = array();
foreach ($facility_data as $fac) {
if( $_REQUEST['sfact'] && $fac['FACLT_CD'] != $_REQUEST['sfact'] ) continue;
$facrows[] = array(
"id" => $fac['FACLT_CD'],
"headerHtml" => $fac['FACLT_NM'],
"label" => $fac['FACLT_NM'],
"classes" => '',
//'row-disabled' <- 수정금지처리
"enableDragging" => true,
"usrdata" => $fac,
);
}
$retval['data']['wo_data'] = array(
"rows" => $facrows,
"tasks" => $taskrows,
);
$retval['code'] = 1;
break;
case "setPlanTimeRoute":
if (_notAuth("W"))
break; /************ 권한체크*/
$_REQUEST['reqdata'] = json_decode($_REQUEST['reqdata'], true);
$rst = 1;
foreach ($_REQUEST['reqdata'] as $data) {
if ($data['_STATUS_'] !== "U")
continue;
$sql = "USP_P_WO_OPER_FACILITY_U11";
$params = array(
"MNG_NO" => $data['MNG_NO'],
"WO_FACLT_NO" => $data['WO_FACLT_NO'],
//"WO_NO" => $data['WO_NO'],
"FACLT_CD" => $data['FACLT_CD'],
"PLN_ST_TM" => $data['PLN_ST_TM'],
"PLN_ED_TM" => $data['PLN_ED_TM'],
"EDIT_USER_ID" => $GLOBALS['_Umem']['member_id'],
);
$rst = $rst && $baseObj->DB->exec($sql, $params);
if ($data['MNG_BG']) {
// $sql = "USP_S_SO_U30";
// $params = array(
// "MNG_NO" => $data['MNG_NO'],
// "MNG_BG" => $data['MNG_BG'],
// );
// $baseObj->DB->exec($sql, $params);
$params = Array(
"Code_Val" => $data['MNG_BG'],
);
$baseObj->setBaseCode($params,"TLColor","TLColor","col".substr($data['OUT_DIA'], 0, 1));
}
}
if ($rst) {
$retval['code'] = 1;
}
break;
}
}
if (!$_REQUEST['no_echo']) {
echo json_encode($retval);
}