Shops.php 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | 萤火商城系统 [ 致力于通过产品和服务,帮助商家高效化开拓市场 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2017~2021 https://www.yiovo.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed 这不是一个自由软件,不允许对程序代码以任何形式任何目的的再发行
  8. // +----------------------------------------------------------------------
  9. // | Author: 萤火科技 <admin@yiovo.com>
  10. // +----------------------------------------------------------------------
  11. declare (strict_types=1);
  12. namespace app\api\model\shop;
  13. use app\api\model\User;
  14. use app\common\model\Shops as ShopModel;
  15. use think\facade\Db;
  16. use app\common\model\chef\ChefAreas as RegionModel;
  17. /**
  18. * 商品模型
  19. * Class Goods
  20. * @package app\api\model
  21. */
  22. class Shops extends ShopModel
  23. {
  24. /**
  25. * 隐藏字段
  26. * @var array
  27. */
  28. public $hidden = [
  29. 'create_time',
  30. 'update_time',
  31. ];
  32. // 追加字段
  33. protected $append = ['region'];
  34. public function getRegionAttr($value, $data)
  35. {
  36. $regionNames = $this->getRegionNames($data);
  37. return "{$regionNames['province']}{$regionNames['city']}{$regionNames['region']}";
  38. }
  39. /**
  40. * 获取省市区名称
  41. * @param array $data
  42. * @return mixed
  43. */
  44. private function getRegionNames(array $data)
  45. {
  46. static $dataset = [];
  47. $id = $data[$this->getPk()];
  48. if (!isset($dataset[$id])) {
  49. $dataset[$id] = [
  50. 'province' => RegionModel::getNameById($data['province_id']),
  51. 'city' => RegionModel::getNameById($data['city_id']),
  52. 'region' => RegionModel::getNameById($data['region_id']),
  53. ];
  54. }
  55. return $dataset[$id];
  56. }
  57. public static function addBonusPool($shop_id,$money){
  58. $shop = Shops::find($shop_id);
  59. //提现余额也要累加计算
  60. $shop->bonus_pool = Db::raw('bonus_pool+'.$money);
  61. $shop->save();
  62. }
  63. /**
  64. * 解聘店长
  65. * @param $mgUserId
  66. * @param $shopId
  67. * @return bool
  68. */
  69. public function dissMg($mgUserId,$shopId){
  70. Db::transaction(function () use ($mgUserId,$shopId) {
  71. User::where('user_id',$mgUserId)->update(['role'=>User::NORMAL_USER,'shop_id'=>0]);
  72. Shops::where('shop_id',$shopId)->update(['manager_user_id'=>0]);
  73. });
  74. return true;
  75. }
  76. }