Addons.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?php
  2. /**
  3. * ----------------------------------------------------------------------------
  4. * 行到水穷处,坐看云起时
  5. * 开发软件,找贵阳云起信息科技,官网地址:https://www.56q7.com/
  6. * ----------------------------------------------------------------------------
  7. * Author: 老成
  8. * email:85556713@qq.com
  9. */
  10. declare(strict_types=1);
  11. namespace app\common\model;
  12. use app\common\model\base\ConstTraits;
  13. use think\Model;
  14. class Addons extends Model
  15. {
  16. use ConstTraits;
  17. const TYPE=[
  18. 'plugin'=>'插件',
  19. 'component'=>'js组件',
  20. 'app'=>'应用',
  21. 'cms-temp'=>'cms模板',
  22. ];
  23. public static function list(int $page,int $limit,string $fields,array $where=[])
  24. {
  25. $list=Addons::where($where)->limit(($page-1)*$limit,$limit)->select();
  26. $rows=[];
  27. $fields=explode(',',$fields);
  28. foreach ($list as $addon){
  29. if(!self::checkKey($addon)){
  30. //人家的插件,不要动
  31. $addon['price']=0;
  32. }
  33. $obj=[];
  34. foreach ($fields as $field){
  35. $obj[$field]=$addon[$field];
  36. }
  37. $rows[]=$obj;
  38. }
  39. $total=Addons::where($where)->count();
  40. $result = ['total' => $total, 'rows' => $rows];
  41. return $result;
  42. }
  43. public static function checkKey($addon){
  44. $key=md5($addon['type'].$addon['pack'].$addon['author'].$addon['version'].$addon['secret_key']);
  45. if($key!=$addon['key']){
  46. return false;
  47. }
  48. return true;
  49. }
  50. }