DistClass.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. namespace bizGhs\custom\classes;
  3. use bizGhs\shop\classes\ShopClass;
  4. use bizHd\base\classes\BaseClass;
  5. class DistClass extends BaseClass
  6. {
  7. public static $baseFile = '\bizGhs\custom\models\Dist';
  8. public static function getDistList($where)
  9. {
  10. return self::getList('*', $where, null);
  11. }
  12. //新增花材分类
  13. public static function addDist($masterShop, $data)
  14. {
  15. $mainId = $masterShop->mainId ?? 0;
  16. $name = $data['name'] ?? '';
  17. if (empty($name)) {
  18. util::fail("请输入名称");
  19. }
  20. $has = self::getByCondition(['mainId' => $mainId, 'name' => $name]);
  21. if ($has) {
  22. util::fail("名称已存在");
  23. }
  24. $res = self::add($data);
  25. //在首店添加,则父级下所有直营和加盟店,同步添加分类
  26. if (isset($masterShop->default) && $masterShop->default == 1) {
  27. $sjId = $masterShop->sjId ?? 0;
  28. $shopList = ShopClass::getAllByCondition(['sjId' => $sjId], null, '*', null, true);
  29. foreach ($shopList as $shop) {
  30. $shopId = $shop->id ?? 0;
  31. if ($shopId == $masterShop->id) {
  32. //前面已经添加过了
  33. continue;
  34. }
  35. $thisMainId = $shop->mainId ?? 0;
  36. $data['shopId'] = $shopId;
  37. $data['mainId'] = $thisMainId;
  38. $has = self::getByCondition(['mainId' => $thisMainId, 'name' => $name]);
  39. if (!empty($has)) {
  40. continue;
  41. }
  42. self::add($data);
  43. }
  44. }
  45. return $res;
  46. }
  47. }