BaseAttachmentModel.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <?php
  2. /**
  3. *------------------------------------------------------
  4. * BaseAttachmentModel.php
  5. *------------------------------------------------------
  6. *
  7. * @author m@9026.com
  8. * @date 2017/03/20 13:09
  9. * @version V1.0
  10. *
  11. */
  12. namespace App\Models;
  13. use Illuminate\Http\UploadedFile;
  14. class BaseAttachmentModel extends BaseModel
  15. {
  16. //
  17. /**
  18. * 数据表名
  19. *
  20. * @var string
  21. *
  22. */
  23. protected $table = 'base_attachments';
  24. /**
  25. 主键
  26. */
  27. protected $primaryKey = 'id';
  28. //分页
  29. protected $perPage = PAGE_NUMS;
  30. protected $guarded = [];
  31. public function upload(UploadedFile $file, $class = '')
  32. {
  33. $fileName = uniqid() . '.' . $file->getClientOriginalExtension();
  34. $date = date("Ymd");
  35. $res = $file->storeAs('upload/files' . '/' . $date, $fileName, 'upload');
  36. if($res) {
  37. $res = '/' . $res;
  38. self::create([
  39. 'name' => $fileName,
  40. 'path' => $res,
  41. // 'type' => $file->getClientMimeType(),
  42. 'class' => $class,
  43. 'size' => $file->getClientSize()
  44. ]);
  45. }
  46. return $res;
  47. }
  48. }