ItemService.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace bizHd\item\services;
  3. use bizHd\base\services\BaseService;
  4. use bizHd\item\classes\ItemClassClass;
  5. use bizHd\product\classes\ProductClass;
  6. use biz\shop\services\ShopService;
  7. use Yii;
  8. use common\components\util;
  9. use yii\db\Exception;
  10. class ItemService extends BaseService
  11. {
  12. public static $baseFile = '\bizHd\item\classes\ItemClass';
  13. //新增花材
  14. public static function addItem($data)
  15. {
  16. $sjId = $data['sjId']??0;
  17. $classId = $data['classId']??0;
  18. $itemId = $data['itemId']??0;
  19. $shopId = $data['shopId']??0;
  20. if(!$sjId || !$shopId){
  21. util::fail("请选择供货商/门店");
  22. }
  23. if(!$classId){
  24. util::fail("请选择分类");
  25. }
  26. if(!$itemId){
  27. util::fail("请选择花材18");
  28. }
  29. //判断花材是否存在 调用平台花材的方法
  30. //todo
  31. $existItemClass = ItemClassClass::exists(['id'=>$classId,'sjId'=>$sjId]);
  32. if(!$existItemClass){
  33. util::fail("花材分类不存在");
  34. }
  35. $connection = Yii::$app->db;
  36. $transaction = $connection->beginTransaction();
  37. try{
  38. //所有门店一起添加
  39. $shopIds = ShopService::getShopIds($sjId);
  40. if(empty($shopIds)){
  41. $transaction->rollBack();
  42. util::fail("无门店");
  43. }
  44. foreach ($shopIds as $shopId){
  45. $data['shopId'] = $shopId;
  46. ProductClass::addBaseData($data);
  47. }
  48. $transaction->commit();
  49. }catch (Exception $exception){
  50. $transaction->rollBack();
  51. util::fail("新增失败");
  52. }
  53. }
  54. }