PrivilegeWidget.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * Name: 芸众商城系统
  5. * Author: 广州市芸众信息科技有限公司
  6. * Profile: 广州市芸众信息科技有限公司位于国际商贸中心的广州,专注于移动电子商务生态系统打造,拥有芸众社交电商系统、区块链数字资产管理系统、供应链管理系统、电子合同等产品/服务。官网 :www.yunzmall.com www.yunzshop.com
  7. * Date: 2021/9/9
  8. * Time: 17:39
  9. */
  10. namespace app\backend\modules\goods\widget;
  11. use app\backend\modules\goods\models\Privilege;
  12. use app\backend\modules\member\models\MemberLevel;
  13. use app\backend\modules\member\models\MemberGroup;
  14. use app\common\models\GoodsOption;
  15. /**
  16. * 权限(非插件)
  17. */
  18. class PrivilegeWidget extends BaseGoodsWidget
  19. {
  20. public $group = 'marketing';
  21. public $widget_key = 'privilege';
  22. public $code = 'auth';
  23. public function pluginFileName()
  24. {
  25. return 'goods';
  26. }
  27. public function getData()
  28. {
  29. $privilege = new Privilege();
  30. $goodsOption = [];
  31. if ($this->goods->id && Privilege::getInfo($this->goods->id)) {
  32. $privilege = Privilege::getInfo($this->goods->id);
  33. // $privilege->show_levels = (!empty($privilege->show_levels) || ($privilege->show_levels === 0 || $privilege->show_levels === '0')) ? explode(',', $privilege->show_levels) : '';
  34. // $privilege->buy_levels = (!empty($privilege->buy_levels) || ($privilege->buy_levels === 0 || $privilege->buy_levels === '0')) ? explode(',', $privilege->buy_levels) : '';
  35. // $privilege->show_groups = (!empty($privilege->show_groups) || ($privilege->show_groups === 0 || $privilege->show_groups === '0')) ? explode(',', $privilege->show_groups) : '';
  36. // $privilege->buy_groups = (!empty($privilege->buy_groups) || ($privilege->buy_groups === 0 || $privilege->buy_groups === '0')) ? explode(',', $privilege->buy_groups) : '';
  37. if ($this->goods->has_option) {
  38. $goodsOption = GoodsOption::select('id', 'title')
  39. ->uniacid()
  40. ->where('goods_id', $this->goods->id)->get()->toArray();
  41. }
  42. }
  43. array_unshift($goodsOption,['id'=>"",'title'=>'全部规格']);
  44. $levels = MemberLevel::getMemberLevelList();
  45. $groups = MemberGroup::getMemberGroupList();
  46. $data['goods_option'] = $goodsOption;
  47. $data['privilege'] = $privilege?$privilege->toArray():[]; //会员限购
  48. $data['levels'] = $levels; //会员等级
  49. array_unshift($data['levels'],['id'=>0,'level_name'=>'普通等级']);
  50. array_unshift($data['levels'],['id'=>'','level_name'=>'全部会员等级']);
  51. $data['groups'] = $groups; //会员组
  52. array_unshift($data['groups'],['id'=>0,'group_name'=>'无分组']);
  53. array_unshift($data['groups'],['id'=>'','group_name'=>'全部会员组']);
  54. //dd($data);
  55. return $data;
  56. }
  57. public function pagePath()
  58. {
  59. return $this->getPath('resources/views/goods/assets/js/components/');
  60. }
  61. }