SpecialCheckService.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * Name: 芸众商城系统
  5. * Author: 广州市芸众信息科技有限公司
  6. * Profile: 广州市芸众信息科技有限公司位于国际商贸中心的广州,专注于移动电子商务生态系统打造,拥有芸众社交电商系统、区块链数字资产管理系统、供应链管理系统、电子合同等产品/服务。官网 :www.yunzmall.com www.yunzshop.com
  7. * Date: 2021/9/22
  8. * Time: 13:37
  9. */
  10. namespace business\common\services;
  11. use app\common\helpers\Cache;
  12. use business\admin\menu\BusinessMenu;
  13. use business\common\models\Department;
  14. use business\common\models\Premission;
  15. use business\common\models\Staff;
  16. use Illuminate\Support\Facades\DB;
  17. use Exception;
  18. class SpecialCheckService
  19. {
  20. public static function onlyBind($crop_id = 0)
  21. {
  22. $bind_crop_id = \Setting::get('plugin.work-wechat-platform.bind_open_crop_id');
  23. if ($crop_id && $bind_crop_id == $crop_id) {
  24. return true;
  25. }
  26. return false;
  27. }
  28. /*
  29. * 判断当前会员是否该企业的客服
  30. */
  31. public static function isCustom($business_id = 0, $uid = 0, $forget = 0)
  32. {
  33. $business_id = $business_id ?: SettingService::getBusinessId();
  34. $uid = $uid ?: \YunShop::app()->getMemberId();
  35. if ($forget) {
  36. BusinessService::flush(0, $uid);
  37. }
  38. $key = 'BusinessRight_IsCustom_MemberId' . $uid . '_BusinessId' . $business_id;
  39. if ($return_data = Cache::get($key, null, [BusinessService::getModuleRedisKey(\YunShop::app()->uniacid), BusinessService::getBusinessRedisKey($business_id), BusinessService::getMemberRedisKey($uid)])) {
  40. return $return_data > 0 ? true : false;
  41. }
  42. $return_data = -1;
  43. if (app('plugins')->isEnabled('yun-chat')) {
  44. $employee_info = \Yunshop\YunChat\common\models\Employee::getOneByUid($uid);
  45. if ($employee_info && $employee_info->crop_id == $business_id) {
  46. $return_data = 1;
  47. }
  48. }
  49. Cache::put($key, $return_data, 1, [BusinessService::getModuleRedisKey(\YunShop::app()->uniacid), BusinessService::getBusinessRedisKey($business_id), BusinessService::getMemberRedisKey($uid)]);
  50. return $return_data > 0 ? true : false;
  51. }
  52. }