Goods.php 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  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. $where['status'] = 1;
  17. $where['state'] = 1;
  18. $where['state_1'] = 1;
  19. $data = Dever::db($table)->$method($where);
  20. $result = array();
  21. if ($data) {
  22. foreach ($data as $k => $v) {
  23. $data[$k] = Dever::load('goods/lib/info')->getPayInfo($v['goods_id'], $v['sku_id']);
  24. if ($data[$k]['status'] == 1) {
  25. if (!isset($result[$v['id']])) {
  26. $result[$v['id']]['id'] = $v['id'];
  27. $result[$v['id']]['name'] = $v['name'];
  28. $result[$v['id']]['min'] = $data[$k]['min'];
  29. $result[$v['id']]['price'] = $v['p_price'];
  30. $result[$v['id']]['children'] = array();
  31. }
  32. if (isset($data[$k]['attr']) && $data[$k]['attr']) {
  33. $result[$v['id']]['children'][] = array
  34. (
  35. 'id' => $v['id'] . '-' . $data[$k]['sku_id'],
  36. 'name' => $v['name'] . '-' . $data[$k]['sku_name'],
  37. 'min' => $data[$k]['min'],
  38. 'price' => $v['p_price'] ? $v['p_price'] : 0,
  39. 'end' => true,
  40. );
  41. }
  42. if (!$result[$v['id']]['children']) {
  43. $result[$v['id']]['end'] = true;
  44. }
  45. }
  46. }
  47. }
  48. return array_values($result);
  49. }
  50. }