OssUpload.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace app\model;
  3. use think\Model;
  4. class OssUpload extends Model
  5. {
  6. protected $connection = 'mysql';
  7. protected $pk = 'id';
  8. protected $name = 'oss_upload';
  9. public static function datainitial()
  10. {
  11. $weid = weid();
  12. $data[1] = [
  13. 'weid' => $weid,
  14. 'code' => 'qiniuyun',
  15. 'title' => '七牛云oss',
  16. 'settings' => '',
  17. 'status' => 0,
  18. 'sort' => 10,
  19. ];
  20. $data[2] = [
  21. 'weid' => $weid,
  22. 'code' => 'ali',
  23. 'title' => '阿里云oss',
  24. 'settings' => '',
  25. 'status' => 0,
  26. 'sort' => 20,
  27. ];
  28. foreach ($data as $vo) {
  29. if (!(self::where(['weid' => $weid, 'code' => $vo['code']])->find())) {
  30. self::create($vo);
  31. }
  32. }
  33. }
  34. public static function getSettings($code = '')
  35. {
  36. $where['status'] = 1;
  37. if ($code) {
  38. $where['code'] = $code;
  39. }
  40. $data = self::where(['weid' => weid()])->where($where)->order('id desc')->find();
  41. if (empty($data)) {
  42. $data = self::where(['weid' => 0])->where($where)->order('id desc')->find();
  43. }
  44. if (!empty($data)) {
  45. $data = $data->toArray();
  46. $data['settings'] = iunserializer($data['settings']);
  47. $data['settings']['status'] = $data['status'];
  48. $data['settings']['code'] = $data['code'];
  49. }
  50. return self::setcompatible($data['settings'], $data['code']);
  51. }
  52. public static function setcompatible($data, $code)
  53. {
  54. if ($code == 'qiniuyun') {
  55. $data['oss_accessKey'] = $data['oss_accessKey'] ?? $data['qny_oss_accessKey'];
  56. $data['oss_secretKey'] = $data['oss_secretKey'] ?? $data['qny_oss_secretKey'];
  57. $data['oss_bucket'] = $data['oss_bucket'] ?? $data['qny_oss_bucket'];
  58. $data['oss_domain'] = $data['oss_domain'] ?? $data['qny_oss_domain'];
  59. } elseif ($code == 'ali') {
  60. $data['oss_accessKey'] = $data['oss_accessKey'] ?? $data['ali_oss_accessKeyId'];
  61. $data['oss_secretKey'] = $data['oss_secretKey'] ?? $data['ali_oss_accessKeySecret'];
  62. $data['oss_bucket'] = $data['oss_bucket'] ?? $data['ali_oss_bucket'];
  63. $data['oss_domain'] = $data['oss_domain'] ?? $data['ali_oss_endpoint'];
  64. }
  65. return $data;
  66. }
  67. }