Goods.php 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. namespace Factory\Lib;
  3. use Dever;
  4. class Goods
  5. {
  6. # 获取店铺的商品SKU列表
  7. public function getSkuList($factory)
  8. {
  9. $table = 'factory/goods_sku';
  10. $where['factory_id'] = isset($factory['id']) ? $factory['id'] : $factory;
  11. $method = 'getDataPage';
  12. $name = Dever::input('name');
  13. if ($name) {
  14. $where['name'] = $name;
  15. }
  16. $data = Dever::db($table)->$method($where);
  17. $result = array();
  18. if ($data) {
  19. foreach ($data as $k => $v) {
  20. $data[$k] = Dever::load('goods/lib/info')->getPayInfo($v, $v['sku_id']);
  21. if (!isset($result[$v['id']])) {
  22. $result[$v['id']]['id'] = $v['id'];
  23. $result[$v['id']]['name'] = $v['name'];
  24. $result[$v['id']]['price'] = $v['p_price'];
  25. $result[$v['id']]['children'] = array();
  26. }
  27. if (isset($data[$k]['attr']) && $data[$k]['attr']) {
  28. $result[$v['id']]['children'][] = array
  29. (
  30. 'id' => $v['id'] . '-' . $data[$k]['sku_id'],
  31. 'name' => $v['name'] . '-' . $data[$k]['sku_name'],
  32. 'price' => $data[$k]['p_price'] ? $data[$k]['p_price'] : 0,
  33. 'end' => true,
  34. );
  35. } else {
  36. $result[$v['id']]['end'] = true;
  37. }
  38. }
  39. }
  40. return array_values($result);
  41. }
  42. }