174 lines
5.4 KiB
PHP
174 lines
5.4 KiB
PHP
<?php
|
|
|
|
namespace app\models;
|
|
|
|
use Yii;
|
|
|
|
/**
|
|
* This is the model class for table "schedule".
|
|
*
|
|
* @property int $id
|
|
* @property string $name
|
|
* @property string $description
|
|
* @property string $SunTime1
|
|
* @property string $SunTime2
|
|
* @property string $SunTime3
|
|
* @property string $MonTime1
|
|
* @property string $MonTime2
|
|
* @property string $MonTime3
|
|
* @property string $TueTime1
|
|
* @property string $TueTime2
|
|
* @property string $TueTime3
|
|
* @property string $WedTime1
|
|
* @property string $WedTime2
|
|
* @property string $WedTime3
|
|
* @property string $ThuTime1
|
|
* @property string $ThuTime2
|
|
* @property string $ThuTime3
|
|
* @property string $FriTime1
|
|
* @property string $FriTime2
|
|
* @property string $FriTime3
|
|
* @property string $SatTime1
|
|
* @property string $SatTime2
|
|
* @property string $SatTime3
|
|
* @property string $created_at
|
|
* @property string $modified_at
|
|
*/
|
|
class Schedule extends \yii\db\ActiveRecord {
|
|
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public static function tableName() {
|
|
return 'schedule';
|
|
}
|
|
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public function rules() {
|
|
return [
|
|
[['name'], 'required'],
|
|
[['description'], 'string'],
|
|
[['name'], 'string', 'max' => 200],
|
|
[['created_at', 'modified_at'], 'integer'],
|
|
[['SunTime1', 'SunTime2', 'SunTime3', 'MonTime1', 'MonTime2', 'MonTime3', 'TueTime1', 'TueTime2', 'TueTime3', 'WedTime1', 'WedTime2', 'WedTime3', 'ThuTime1', 'ThuTime2', 'ThuTime3', 'FriTime1', 'FriTime2', 'FriTime3', 'SatTime1', 'SatTime2', 'SatTime3'], 'string', 'max' => 100],
|
|
];
|
|
}
|
|
|
|
/**
|
|
* {@inheritdoc}
|
|
*/
|
|
public function attributeLabels() {
|
|
return [
|
|
'id' => 'ID',
|
|
'name' => 'Tên lịch trình',
|
|
'description' => 'Chú thích',
|
|
'SunTime1' => 'Sun Time1',
|
|
'SunTime2' => 'Sun Time2',
|
|
'SunTime3' => 'Sun Time3',
|
|
'MonTime1' => 'Mon Time1',
|
|
'MonTime2' => 'Mon Time2',
|
|
'MonTime3' => 'Mon Time3',
|
|
'TueTime1' => 'Tue Time1',
|
|
'TueTime2' => 'Tue Time2',
|
|
'TueTime3' => 'Tue Time3',
|
|
'WedTime1' => 'Wed Time1',
|
|
'WedTime2' => 'Wed Time2',
|
|
'WedTime3' => 'Wed Time3',
|
|
'ThuTime1' => 'Thu Time1',
|
|
'ThuTime2' => 'Thu Time2',
|
|
'ThuTime3' => 'Thu Time3',
|
|
'FriTime1' => 'Fri Time1',
|
|
'FriTime2' => 'Fri Time2',
|
|
'FriTime3' => 'Fri Time3',
|
|
'SatTime1' => 'Sat Time1',
|
|
'SatTime2' => 'Sat Time2',
|
|
'SatTime3' => 'Sat Time3',
|
|
'created_at' => 'Thời gian tạo',
|
|
'modified_at' => 'Thời gian sửa',
|
|
];
|
|
}
|
|
|
|
public static $dayOfWeek = [
|
|
"Mon" => "Thứ hai",
|
|
"Tue" => "Thứ ba",
|
|
"Wed" => "Thứ tư",
|
|
"Thu" => "Thứ năm",
|
|
"Fri" => "Thứ sáu",
|
|
"Sat" => "Thứ bảy",
|
|
"Sun" => "Chủ nhật"
|
|
];
|
|
|
|
public function create($data) {
|
|
$r = $this->load([
|
|
'name' => $data["Name"],
|
|
'description' => $data["Description"],
|
|
'SunTime1' => $data["SunTime1"],
|
|
'SunTime2' => $data["SunTime2"],
|
|
'SunTime3' => $data["SunTime3"],
|
|
'MonTime1' => $data["MonTime1"],
|
|
'MonTime2' => $data["MonTime2"],
|
|
'MonTime3' => $data["MonTime3"],
|
|
'TueTime1' => $data["TueTime1"],
|
|
'TueTime2' => $data["TueTime2"],
|
|
'TueTime3' => $data["TueTime3"],
|
|
'WedTime1' => $data["WedTime1"],
|
|
'WedTime2' => $data["WedTime2"],
|
|
'WedTime3' => $data["WedTime3"],
|
|
'ThuTime1' => $data["ThuTime1"],
|
|
'ThuTime2' => $data["ThuTime2"],
|
|
'ThuTime3' => $data["ThuTime3"],
|
|
'FriTime1' => $data["FriTime1"],
|
|
'FriTime2' => $data["FriTime2"],
|
|
'FriTime3' => $data["FriTime3"],
|
|
'SatTime1' => $data["SatTime1"],
|
|
'SatTime2' => $data["SatTime2"],
|
|
'SatTime3' => $data["SatTime3"],
|
|
"created_at" => time(),
|
|
"modified_at" => time()
|
|
], '');
|
|
if ($r) {
|
|
try {
|
|
$this->save();
|
|
return $this->id;
|
|
} catch (\Exception $ex) {
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
|
|
public static function combineTime($from, $to) {
|
|
return $from . "-" . $to;
|
|
}
|
|
|
|
public static function convertTime($from, $to) {
|
|
$fTemp = explode(":", $from);
|
|
$front = dechex(intval($fTemp[0]) * 100 + intval($fTemp[1]));
|
|
$tTemp = explode(":", $to);
|
|
$back = dechex(intval($tTemp[0]) * 100 + intval($tTemp[1]));
|
|
return hexdec("0" . $front . "0" . $back);
|
|
}
|
|
|
|
public static function convertTimeAttr($attr) {
|
|
$temp = explode("-", $attr);
|
|
$from = $temp[0];
|
|
$to = $temp[1];
|
|
$fTemp = explode(":", $from);
|
|
$front = dechex(intval($fTemp[0]) * 100 + intval($fTemp[1]));
|
|
$tTemp = explode(":", $to);
|
|
$back = dechex(intval($tTemp[0]) * 100 + intval($tTemp[1]));
|
|
return hexdec("0" . $front . "0" . $back);
|
|
}
|
|
|
|
public static function scheduleArray() {
|
|
$lists = self::find()->all();
|
|
$results = [];
|
|
foreach ($lists as $key => $value) {
|
|
$results[$value->id] = $value->name;
|
|
}
|
|
return $results;
|
|
}
|
|
|
|
}
|