ScanQrcodeRecord.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. namespace wechat\models;
  3. use Yii;
  4. /**
  5. * This is the model class for table "bit_scan_qrcode_record".
  6. *
  7. * @property int $id
  8. * @property int $wechat_group_id
  9. * @property string $session_id
  10. * @property int $create_time
  11. * @property int $last_scan_time
  12. */
  13. class ScanQrcodeRecord extends \yii\db\ActiveRecord
  14. {
  15. /**
  16. * @inheritdoc
  17. */
  18. public static function tableName()
  19. {
  20. return 'bit_scan_qrcode_record';
  21. }
  22. /**
  23. * @inheritdoc
  24. */
  25. public function rules()
  26. {
  27. return [
  28. [['session_id'], 'string'],
  29. [['wechat_group_id', 'create_time', 'last_scan_time'], 'number'],
  30. [['id'], 'safe'],
  31. ];
  32. }
  33. /**
  34. * 处理扫码记录
  35. * @param int $wechat_group_id
  36. * @param string $session_id
  37. * @return void
  38. */
  39. public static function doRecord($wechat_group_id, $session_id)
  40. {
  41. $time = time();
  42. $recordModel = static::find()->where(['wechat_group_id' => $wechat_group_id, 'session_id' => $session_id])->limit(1)->one();
  43. if (!$recordModel) {
  44. $recordModel = new static();
  45. $recordModel->wechat_group_id = $wechat_group_id;
  46. $recordModel->session_id = $session_id;
  47. $recordModel->create_time = $time;
  48. $recordModel->last_scan_time = $time;
  49. $recordModel->save();
  50. } else {
  51. /** @var ScanQrcodeRecord $recordModel */
  52. $recordModel->last_scan_time = $time;
  53. $recordModel->save();
  54. }
  55. }
  56. }