CaoHistory.php 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. <?php
  2. namespace App\Models;
  3. use Illuminate\Database\Eloquent\Builder;
  4. use Illuminate\Foundation\Auth\User as Authenticatable;
  5. use Illuminate\Notifications\Notifiable;
  6. use Laravel\Sanctum\HasApiTokens;
  7. /**
  8. * Admin
  9. * @mixin Builder
  10. * @method static Builder|static where($column, $operator = null, $value = null, $boolean = 'and')
  11. */
  12. class CaoHistory extends Authenticatable
  13. {
  14. use HasApiTokens, Notifiable;
  15. protected $table = 'cao_history';
  16. protected $hidden = ['created_at', 'updated_at'];
  17. protected $fillable = ['date', 'total', 'big', 'small', 'odd', 'even', 'big_odd', 'big_even', 'small_odd',
  18. 'small_even', 'max', 'min', 'pair', 'sequence', 'leopard',
  19. 'num_0', 'num_1', 'num_2', 'num_3', 'num_4', 'num_5', 'num_6',
  20. 'num_7', 'num_8', 'num_9', 'num_10', 'num_11', 'num_12', 'num_13',
  21. 'num_14', 'num_15', 'num_16', 'num_17', 'num_18', 'num_19', 'num_20',
  22. 'num_21', 'num_22', 'num_23', 'num_24', 'num_25', 'num_26', 'num_27',
  23. ];
  24. public static function updateData(array $awards)
  25. {
  26. $cao = static::where('date', date("Y-m-d"))->first();
  27. if (!$cao) $cao = static::create(['date' => date('Y-m-d')]);
  28. $cao->increment('total');
  29. if (in_array('大', $awards)) {
  30. $cao->increment('big');
  31. } else {
  32. $cao->increment('small');
  33. }
  34. if (in_array('单', $awards)) {
  35. $cao->increment('odd');
  36. } else {
  37. $cao->increment('even');
  38. }
  39. if (in_array('大单', $awards)) {
  40. $cao->increment('big_odd');
  41. }
  42. if (in_array('大双', $awards)) {
  43. $cao->increment('big_even');
  44. }
  45. if (in_array('小单', $awards)) {
  46. $cao->increment('small_odd');
  47. }
  48. if (in_array('小双', $awards)) {
  49. $cao->increment('small_even');
  50. }
  51. if (in_array('极大', $awards)) {
  52. $cao->increment('max');
  53. }
  54. if (in_array('极小', $awards)) {
  55. $cao->increment('min');
  56. }
  57. if (in_array('对子', $awards)) {
  58. $cao->increment('pair');
  59. }
  60. if (in_array('顺子', $awards)) {
  61. $cao->increment('sequence');
  62. }
  63. if (in_array('豹子', $awards)) {
  64. $cao->increment('leopard');
  65. }
  66. for ($i = 0; $i <= 27; $i++) {
  67. if (in_array("{$i}操", $awards)) {
  68. $cao->increment("num_{$i}");
  69. break;
  70. }
  71. }
  72. }
  73. protected function getCreatedAtAttribute($value)
  74. {
  75. return \Carbon\Carbon::parse($value)->setTimezone('Asia/Shanghai')->format('Y-m-d H:i:s');
  76. }
  77. protected function getUpdatedAtAttribute($value)
  78. {
  79. return \Carbon\Carbon::parse($value)->setTimezone('Asia/Shanghai')->format('Y-m-d H:i:s');
  80. }
  81. }