Sku.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <?php
  2. namespace Scm_product\Lib;
  3. use Dever;
  4. class Sku
  5. {
  6. # 获取当前的sku
  7. public function get_api()
  8. {
  9. $id = Dever::input('id');
  10. $result = array();
  11. if ($id) {
  12. $result = Dever::db('scm_product/info_sku')->getAll(array('info_id' => $id));
  13. }
  14. return $result;
  15. }
  16. # 获取某个商品的sku商品列表
  17. public function getList($info, &$data)
  18. {
  19. if ($info['spec_type'] == 2) {
  20. $where['info_id'] = $info['id'];
  21. $sku = Dever::db('scm_product/info_sku')->select($where);
  22. if ($sku) {
  23. foreach ($sku as $k => $v) {
  24. $copy = $info;
  25. $key = str_replace('-', ',', $v['key']);
  26. $spec = Dever::db('scm_product/info_spec_value')->getGroupData(array('ids' => $key));
  27. if ($spec) {
  28. $copy['name'] .= '-' . $spec['name'];
  29. $copy['id'] .= '-' . $v['key'];
  30. if (isset($copy['value'])) {
  31. $copy['value'] = $copy['id'];
  32. }
  33. }
  34. $data[] = $copy;
  35. }
  36. }
  37. } else {
  38. $data[] = $info;
  39. }
  40. return $data;
  41. }
  42. # 获取基本信息列表
  43. public function getData($info_id, $sku_id = false, $type = 1)
  44. {
  45. $seller_id = Dever::input('seller_id');
  46. if ($seller_id) {
  47. $seller = Dever::db('scm_role/seller')->find($seller_id);
  48. }
  49. $where['info_id'] = $info_id;
  50. if ($sku_id) {
  51. $where['id'] = $sku_id;
  52. }
  53. $sku = Dever::db('scm_product/info_sku')->getData($where);
  54. if ($sku) {
  55. foreach ($sku as $k => $v) {
  56. unset($sku[$k]['key']);
  57. if ($seller_id && $seller) {
  58. list($sku[$k]['price'], $sku[$k]['buy_price']) = Dever::load('scm_product/lib/price')->get($seller['price_id'], array('id' => $info_id), $v, $sku[$k]['price'], $sku[$k]['buy_price']);
  59. }
  60. if ($type == 1) {
  61. unset($sku[$k]['buy_price']);
  62. unset($sku[$k]['cost_price']);
  63. } elseif ($type == 2) {
  64. unset($sku[$k]['price']);
  65. unset($sku[$k]['un_price']);
  66. }
  67. }
  68. }
  69. return $sku;
  70. }
  71. }