Non puoi selezionare più di 25 argomenti Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
 
 
 
 
 
 

110 righe
3.0 KiB

  1. <?php
  2. namespace backend\modules\motorcade\models;
  3. use Yii;
  4. /**
  5. * This is the model class for table "bus_itinerary".
  6. *
  7. * @property integer $id
  8. * @property integer $itinerary_id
  9. * @property string $create_time
  10. * @property integer $create_user_id
  11. * @property integer $update_user_id
  12. * @property string $update_time
  13. * @property integer $station_seq_id
  14. * @property string $station_name
  15. * @property string $station_address
  16. * @property double $Longitude
  17. * @property double $Latitude
  18. * @property integer $inout_type
  19. * @property integer $day_seq_id
  20. * @property string $start_time
  21. */
  22. class BusItinerary extends \yii\db\ActiveRecord
  23. {
  24. public $days;
  25. /**
  26. * @inheritdoc
  27. */
  28. public static function tableName()
  29. {
  30. return 'bus_itinerary';
  31. }
  32. /**
  33. * @inheritdoc
  34. */
  35. public function rules()
  36. {
  37. return [
  38. [['itinerary_id', 'station_name'], 'required'],
  39. [['itinerary_id', 'create_user_id', 'update_user_id', 'station_seq_id', 'inout_type', 'day_seq_id'], 'integer'],
  40. [['create_time', 'update_time'], 'safe'],
  41. [['Longitude', 'Latitude'], 'number'],
  42. [['station_name'], 'string', 'max' => 100],
  43. [['station_address'], 'string', 'max' => 200],
  44. [['start_time'], 'string', 'max' => 10],
  45. ];
  46. }
  47. /**
  48. * @inheritdoc
  49. */
  50. public function attributeLabels()
  51. {
  52. return [
  53. 'id' => '编号',
  54. 'itinerary_id' => '行程编号',
  55. 'create_time' => '创建时间',
  56. 'create_user_id' => '创建用户',
  57. 'update_user_id' => '更新用户',
  58. 'update_time' => '记录最后更新时间',
  59. 'station_seq_id' => '站点顺序',
  60. 'station_name' => '站点名称',
  61. 'station_address' => '站点地址',
  62. 'Longitude' => '经度',
  63. 'Latitude' => '纬度',
  64. 'inout_type' => '上下客类型',
  65. 'day_seq_id' => '行程中的第几天',
  66. 'start_time' => '出发/到达时间',
  67. ];
  68. }
  69. public function beforeSave($insert)
  70. {
  71. if ($this->isNewRecord) {
  72. $this->create_time = date('Y-m-d H:i:s', time());
  73. $this->create_user_id = Yii::$app->user->id;
  74. } else {
  75. $this->update_time = date('Y-m-d H:i:s', time());
  76. $this->update_user_id = Yii::$app->user->id;
  77. }
  78. return parent::beforeSave($insert);
  79. }
  80. public static function setCancel($itinerary_id)
  81. {
  82. BusItinerary::updateAll(['cancel_flag' => 1], ['itinerary_id'=> $itinerary_id]);
  83. }
  84. /**
  85. * User: wangxj
  86. *
  87. * 获取某出车任务总天数
  88. *
  89. * @params
  90. *
  91. * @return
  92. */
  93. public static function getDaysCount($itinerary_id){
  94. $days = BusItinerary::find()->select('max(day_seq_id) as days')->where(['itinerary_id'=> $itinerary_id])->one();
  95. if($days == null){
  96. $days = 0;
  97. }else
  98. $days = $days->days;
  99. return $days;
  100. }
  101. }