update Schedule full CRUD
This commit is contained in:
153
models/Schedule.php
Normal file
153
models/Schedule.php
Normal file
@@ -0,0 +1,153 @@
|
||||
<?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);
|
||||
}
|
||||
|
||||
}
|
||||
91
models/ScheduleSearch.php
Normal file
91
models/ScheduleSearch.php
Normal file
@@ -0,0 +1,91 @@
|
||||
<?php
|
||||
|
||||
namespace app\models;
|
||||
|
||||
use Yii;
|
||||
use yii\base\Model;
|
||||
use yii\data\ActiveDataProvider;
|
||||
use app\models\Schedule;
|
||||
|
||||
/**
|
||||
* ScheduleSearch represents the model behind the search form of `app\models\Schedule`.
|
||||
*/
|
||||
class ScheduleSearch extends Schedule {
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function rules() {
|
||||
return [
|
||||
[['id', 'SunTime1', 'SunTime2', 'SunTime3', 'MonTime1', 'MonTime2', 'MonTime3', 'TueTime1', 'TueTime2', 'TueTime3', 'WedTime1', 'WedTime2', 'WedTime3', 'ThuTime1', 'ThuTime2', 'ThuTime3', 'FriTime1', 'FriTime2', 'FriTime3', 'SatTime1', 'SatTime2', 'SatTime3'], 'integer'],
|
||||
[['name', 'description'], 'safe'],
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function scenarios() {
|
||||
// bypass scenarios() implementation in the parent class
|
||||
return Model::scenarios();
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates data provider instance with search query applied
|
||||
*
|
||||
* @param array $params
|
||||
*
|
||||
* @return ActiveDataProvider
|
||||
*/
|
||||
public function search($params) {
|
||||
$query = Schedule::find();
|
||||
|
||||
// add conditions that should always apply here
|
||||
|
||||
$dataProvider = new ActiveDataProvider([
|
||||
'query' => $query,
|
||||
]);
|
||||
|
||||
$this->load($params);
|
||||
|
||||
if (!$this->validate()) {
|
||||
// uncomment the following line if you do not want to return any records when validation fails
|
||||
// $query->where('0=1');
|
||||
return $dataProvider;
|
||||
}
|
||||
|
||||
// grid filtering conditions
|
||||
$query->andFilterWhere([
|
||||
'id' => $this->id,
|
||||
'SunTime1' => $this->SunTime1,
|
||||
'SunTime2' => $this->SunTime2,
|
||||
'SunTime3' => $this->SunTime3,
|
||||
'MonTime1' => $this->MonTime1,
|
||||
'MonTime2' => $this->MonTime2,
|
||||
'MonTime3' => $this->MonTime3,
|
||||
'TueTime1' => $this->TueTime1,
|
||||
'TueTime2' => $this->TueTime2,
|
||||
'TueTime3' => $this->TueTime3,
|
||||
'WedTime1' => $this->WedTime1,
|
||||
'WedTime2' => $this->WedTime2,
|
||||
'WedTime3' => $this->WedTime3,
|
||||
'ThuTime1' => $this->ThuTime1,
|
||||
'ThuTime2' => $this->ThuTime2,
|
||||
'ThuTime3' => $this->ThuTime3,
|
||||
'FriTime1' => $this->FriTime1,
|
||||
'FriTime2' => $this->FriTime2,
|
||||
'FriTime3' => $this->FriTime3,
|
||||
'SatTime1' => $this->SatTime1,
|
||||
'SatTime2' => $this->SatTime2,
|
||||
'SatTime3' => $this->SatTime3,
|
||||
'created_at' => $this->created_at,
|
||||
'modified_at' => $this->modified_at,
|
||||
]);
|
||||
|
||||
$query->andFilterWhere(['like', 'name', $this->name])
|
||||
->andFilterWhere(['like', 'description', $this->description]);
|
||||
|
||||
return $dataProvider;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -21,6 +21,7 @@ use Yii;
|
||||
* @property int $created_at
|
||||
* @property int $modified_at
|
||||
* @property int $card_register_time
|
||||
* @property int $schedule_id
|
||||
*/
|
||||
class Staff extends \yii\db\ActiveRecord {
|
||||
|
||||
@@ -37,7 +38,7 @@ class Staff extends \yii\db\ActiveRecord {
|
||||
public function rules() {
|
||||
return [
|
||||
[['code', 'name', 'gender'], 'required'],
|
||||
[['code', 'card_number', 'department_id', 'birthday', 'date_in', 'created_at', 'modified_at', 'card_register_time'], 'integer'],
|
||||
[['code', 'card_number', 'department_id', 'birthday', 'date_in', 'created_at', 'modified_at', 'card_register_time', 'schedule_id'], 'integer'],
|
||||
[['address'], 'string'],
|
||||
[['name', 'email'], 'string', 'max' => 100],
|
||||
[['gender'], 'string', 'max' => 10],
|
||||
|
||||
Reference in New Issue
Block a user