Goods.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  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 ($data[$k]['status'] == 1) {
  22. if (!isset($result[$v['id']])) {
  23. $result[$v['id']]['id'] = $v['id'];
  24. $result[$v['id']]['name'] = $v['name'];
  25. $result[$v['id']]['price'] = $v['p_price'];
  26. $result[$v['id']]['children'] = array();
  27. }
  28. if (isset($data[$k]['attr']) && $data[$k]['attr']) {
  29. $result[$v['id']]['children'][] = array
  30. (
  31. 'id' => $v['id'] . '-' . $data[$k]['sku_id'],
  32. 'name' => $v['name'] . '-' . $data[$k]['sku_name'],
  33. 'price' => $data[$k]['p_price'] ? $data[$k]['p_price'] : 0,
  34. 'end' => true,
  35. );
  36. }
  37. if (!$result[$v['id']]['children']) {
  38. $result[$v['id']]['end'] = true;
  39. }
  40. }
  41. }
  42. }
  43. return array_values($result);
  44. }
  45. }