Example #1
0
 public function getDataSet($postData, $dcTable, $facility_id, $occur_date, $properties)
 {
     $eu_group_id = $postData['EnergyUnitGroup'];
     $record_freq = $postData['CodeReadingFrequency'];
     $phase_type = $postData['CodeFlowPhase'];
     $event_type = $postData['CodeEventType'];
     $alloc_type = array_key_exists('CodeAllocType', $postData) ? $postData['CodeAllocType'] : 0;
     $eu = EnergyUnit::getTableName();
     $codeFlowPhase = CodeFlowPhase::getTableName();
     $codeStatus = CodeStatus::getTableName();
     $euPhaseConfig = EuPhaseConfig::getTableName();
     $codeEventType = CodeEventType::getTableName();
     $euWheres = ['FACILITY_ID' => $facility_id, 'FDC_DISPLAY' => 1];
     if ($record_freq > 0) {
         $euWheres["{$eu}.DATA_FREQ"] = $record_freq;
     }
     if ($eu_group_id > 0) {
         $euWheres["{$eu}.EU_GROUP_ID"] = $eu_group_id;
     }
     //     	else $euWheres["$eu.EU_GROUP_ID"]= null;
     //      	\DB::enableQueryLog();
     $dataSet = EnergyUnit::join($codeStatus, 'STATUS', '=', "{$codeStatus}.ID")->join($euPhaseConfig, function ($query) use($eu, $euPhaseConfig, $phase_type, $event_type) {
         $query->on("{$euPhaseConfig}.EU_ID", '=', "{$eu}.ID");
         if ($phase_type > 0) {
             $query->where("{$euPhaseConfig}.FLOW_PHASE", '=', $phase_type);
         }
         if ($event_type > 0) {
             $query->where("{$euPhaseConfig}.EVENT_TYPE", '=', $event_type);
         }
         //TODO note chu y active co the se dung
         // 							    		$query->with('CodeFlowPhase');
         // 							    		$query->select('FLOW_PHASE as EU_FLOW_PHASE');
     })->join($codeFlowPhase, "{$euPhaseConfig}.FLOW_PHASE", '=', "{$codeFlowPhase}.ID")->join($codeEventType, "{$euPhaseConfig}.EVENT_TYPE", '=', "{$codeEventType}.ID")->where($euWheres)->whereDate('EFFECTIVE_DATE', '<=', $occur_date)->leftJoin($dcTable, function ($join) use($eu, $dcTable, $occur_date, $alloc_type, $euPhaseConfig) {
         //TODO add table name
         $join->on("{$eu}.ID", '=', "{$dcTable}.EU_ID")->on("{$dcTable}.FLOW_PHASE", '=', "{$euPhaseConfig}.FLOW_PHASE")->on("{$dcTable}.EVENT_TYPE", '=', "{$euPhaseConfig}.EVENT_TYPE")->where("{$dcTable}.OCCUR_DATE", '=', $occur_date);
         $energyUnitDataAlloc = EnergyUnitDataAlloc::getTableName();
         $energyUnitCompDataAlloc = EnergyUnitCompDataAlloc::getTableName();
         if ($alloc_type > 0 && ($dcTable == $energyUnitDataAlloc || $dcTable == $energyUnitCompDataAlloc)) {
             $join->where("{$dcTable}.ALLOC_TYPE", '=', $alloc_type);
         }
     })->select("{$eu}.name as {$dcTable}", "{$euPhaseConfig}.ID as DT_RowId", "{$codeFlowPhase}.name as PHASE_NAME", "{$codeEventType}.name as TYPE_NAME", "{$euPhaseConfig}.EVENT_TYPE as " . config("constants.eventType"), "{$eu}.ID as " . config("constants.euId"), "{$euPhaseConfig}.FLOW_PHASE as EU_FLOW_PHASE", "{$codeStatus}.NAME as STATUS_NAME", "{$codeFlowPhase}.CODE as PHASE_CODE", "{$codeEventType}.CODE as TYPE_CODE", "{$dcTable}.*")->orderBy($dcTable)->orderBy('EU_FLOW_PHASE')->get();
     //   		\Log::info(\DB::getQueryLog());
     return ['dataSet' => $dataSet];
 }
Example #2
0
 public static function getObjects()
 {
     return EnergyUnit::where("ID", ">", 0)->orderBy("NAME")->get();
 }
Example #3
0
 public function getrunnerslist(Request $request)
 {
     $data = $request->all();
     $alloc_runner = AllocRunner::getTableName();
     $code_alloc_value_type = CodeAllocValueType::getTableName();
     $code_alloc_type = CodeAllocType::getTableName();
     $code_flow_phase = CodeFlowPhase::getTableName();
     $result = DB::table($alloc_runner . ' AS a')->leftjoin($code_alloc_value_type . ' AS t', 'a.theor_value_type', '=', 't.ID')->leftjoin($code_alloc_type . ' AS b', 'a.alloc_type', '=', 'b.ID')->leftjoin($code_flow_phase . ' AS c', 'a.theor_phase', '=', 'c.ID')->where(['a.JOB_ID' => $data['job_id']])->orderBy('a.ORDER')->select('a.*', 't.NAME AS THEOR_VALUE_TYPE_NAME', 'b.NAME AS ALLOC_TYPE_NAME', 'c.NAME AS THEOR_PHASE_NAME')->get();
     $i = 0;
     $str = "";
     $runner_options = "";
     foreach ($result as $row) {
         $runner_options .= "<option value='{$row->ID}'>{$row->NAME}</option>";
         $allocrunnerobjects = AllocRunnerObjects::where(['RUNNER_ID' => $row->ID])->get();
         if (count($allocrunnerobjects) > 0) {
             $o_in = "";
             $o_out = "";
             $o_in_x = "";
             $o_out_x = "";
             $count_in = 0;
             $count_out = 0;
             $s = [];
             foreach ($allocrunnerobjects as $ro) {
                 $vname = '';
                 if ($ro->OBJECT_TYPE == 1) {
                     $f = Flow::where(['ID' => $ro->OBJECT_ID])->select('NAME')->first();
                     $vname = $f->NAME;
                 } elseif ($ro->OBJECT_TYPE == 2) {
                     $f = EnergyUnit::where(['ID' => $ro->OBJECT_ID])->select('NAME')->first();
                     $vname = $f->NAME;
                 }
                 $ro['OBJECT_NAME'] = $vname;
                 if ($ro->DIRECTION == 1) {
                     $o_in .= "<span id='" . $ro->ID . "' o_type='" . $ro->OBJECT_TYPE . "' o_id='" . $ro->OBJECT_ID . "' minus='.{$ro->MINUS}.' style='display:block'>" . ($ro->MINUS == 1 ? '<font color="red">->- </font>' : '') . $ro->OBJECT_NAME . "</span>";
                     if ($count_in == 3) {
                         $o_in_x = "<span id='Q_I_{$row->ID}'>{$o_in_x}" . "<br>... <span style='cursor:pointer;color:blue;text-decoration: underline;font-size:8pt' onclick='\$(\"#Qobjectfrom_{$row->ID}\").show();\$(\"#Q_I_{$row->ID}\").hide();'>Show all {objects}</span></span>";
                     } else {
                         if ($count_in < 3) {
                             $o_in_x .= ($o_in_x ? "<br>" : "") . $ro->OBJECT_NAME;
                         }
                     }
                     $count_in++;
                 } else {
                     $o_out .= "<span id='" . $ro->ID . "' o_type='" . $ro->OBJECT_TYPE . "' o_id='" . $ro->OBJECT_ID . "' fixed='" . $ro->FIXED . "' style='display:block;'>" . $ro->OBJECT_NAME . " " . ($ro->FIXED == 1 ? '<font color="#609CB9">->fixed</font>' : '') . "</span>";
                     if ($count_out == 3) {
                         $o_out_x = "<span id='Q_O_{$row->ID}'>{$o_out_x}" . "<br>... <span style='cursor:pointer;color:blue;text-decoration: underline;font-size:8pt' onclick='\$(\"#Qobjectto_{$row->ID}\").show();\$(\"#Q_O_{$row->ID}\").hide();'>Show all {objects}</span></span>";
                     } else {
                         if ($count_out < 3) {
                             $o_out_x .= ($o_out_x ? "<br>" : "") . $ro->OBJECT_NAME;
                         }
                     }
                     $count_out++;
                 }
             }
             $i++;
             if ($i % 2 == 0) {
                 $bgcolor = "#eeeeee";
             } else {
                 $bgcolor = "#f8f8f8";
             }
             $str .= "<tr bgcolor='{$bgcolor}'>";
             $str .= "<td style=\"cursor:pointer\" onclick=\"\"><span id='Qorder_" . $row->ID . "'>{$row->ORDER}</span></td>";
             $str .= "<td><span id='Qrunner_name_" . $row->ID . "'>{$row->NAME}</span></td>";
             $str .= "<td><span style='display:none' id='alloc_type_" . $row->ID . "'>{$row->ALLOC_TYPE}</span><span style='display:none' id='theor_value_type_" . $row->ID . "'>{$row->THEOR_VALUE_TYPE}</span><span style='display:none' id='theor_phase_" . $row->ID . "'>{$row->THEOR_PHASE}</span>{$row->ALLOC_TYPE_NAME}" . ($row->THEOR_PHASE_NAME ? "<br><font size=1 color=green>(Theor phase: {$row->THEOR_PHASE_NAME})</font>" : "") . ($row->THEOR_VALUE_TYPE_NAME ? "<br><font size=1 color=green>(Theor value type: {$row->THEOR_VALUE_TYPE_NAME})</font>" : "") . "</td>";
             if ($count_in > 5) {
                 $str .= "<td>" . str_replace("{objects}", "{$count_in} objects", $o_in_x) . "<span id='Qobjectfrom_" . $row->ID . "' style='display:none'>{$o_in}</span></td>";
             } else {
                 $str .= "<td><span id='Qobjectfrom_" . $row->ID . "'>{$o_in}</span></td>";
             }
             if ($count_out > 5) {
                 $str .= "<td>" . str_replace("{objects}", "{$count_out} objects", $o_out_x) . "<span id='Qobjectto_" . $row->ID . "' style='display:none'>{$o_out}</span></td>";
             } else {
                 $str .= "<td><span id='Qobjectto_" . $row->ID . "'>{$o_out}</span></td>";
             }
             $str .= "<td width='170' style='font-size:8pt'>&nbsp;";
             $str .= "<a href=\"javascript:checkRunner({$row->ID})\">Simulate</a> |";
             $str .= "<a href=\"javascript:deleteRunner({$row->ID})\">Delete</a> |";
             $str .= "<a href=\"javascript:editRunner({$row->ID})\">Edit</a> |";
             $str .= "<a href=\"javascript:runRunner({$row->ID})\">Run</a> |";
             $str .= "<a href=\"javascript:clearAllocData({$row->ID})\">Clear</a></td>";
             $str .= "</tr>";
         }
         $result = $str . "#\$%" . $runner_options;
     }
     return response()->json($result);
 }
Example #4
0
 public function getFieldTitle($dcTable, $field, $rowData)
 {
     $row = EnergyUnit::where(['ID' => $rowData['DEFER_TARGET']])->select('NAME')->first();
     $obj_name = $row ? $row->NAME : "";
     return $obj_name;
 }
Example #5
0
 public static function find($id)
 {
     return EnergyUnit::find($id);
 }