Virtualgoods.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. <?php
  2. /**
  3. * Niushop商城系统 - 团队十年电商经验汇集巨献!
  4. * =========================================================
  5. * Copy right 2019-2029 杭州牛之云科技有限公司, 保留所有权利。
  6. * ----------------------------------------------
  7. * 官方网址: https://www.niushop.com
  8. * 这不是一个自由软件!您只能在不用于商业目的的前提下对程序代码进行修改和使用。
  9. * 任何企业和个人不允许对程序代码以任何形式任何目的再发布。
  10. * =========================================================
  11. */
  12. namespace addon\virtualcard\shopapi\controller;
  13. use addon\virtualcard\model\VirtualGoods as VirtualGoodsModel;
  14. use app\shopapi\controller\BaseApi;
  15. /**
  16. * 卡密商品
  17. * Class Virtualgoods
  18. * @package app\shop\controller
  19. */
  20. class Virtualgoods extends BaseApi
  21. {
  22. public function __construct()
  23. {
  24. //执行父类构造函数
  25. parent::__construct();
  26. $token = $this->checkToken();
  27. if ($token[ 'code' ] < 0) {
  28. echo $this->response($token);
  29. exit;
  30. }
  31. }
  32. /**
  33. * 添加商品
  34. * @return mixed
  35. */
  36. public function addGoods()
  37. {
  38. $data = [
  39. 'goods_name' => isset($this->params[ 'goods_name' ]) ? $this->params[ 'goods_name' ] : '',// 商品名称,
  40. 'goods_attr_class' => isset($this->params[ 'goods_attr_class' ]) ? $this->params[ 'goods_attr_class' ] : '',// 商品类型id,
  41. 'goods_attr_name' => isset($this->params[ 'goods_attr_name' ]) ? $this->params[ 'goods_attr_name' ] : '',// 商品类型名称,
  42. 'site_id' => $this->site_id,
  43. 'category_id' => $this->params[ 'category_id' ] ?? '',
  44. 'category_json' => $this->params[ 'category_json' ] ?? '',
  45. 'goods_image' => isset($this->params[ 'goods_image' ]) ? $this->params[ 'goods_image' ] : '',// 商品主图路径
  46. 'goods_content' => isset($this->params[ 'goods_content' ]) ? $this->params[ 'goods_content' ] : '',// 商品详情
  47. 'goods_state' => isset($this->params[ 'goods_state' ]) ? $this->params[ 'goods_state' ] : '',// 商品状态(1.正常0下架)
  48. 'price' => isset($this->params[ 'price' ]) ? $this->params[ 'price' ] : 0,// 商品价格(取第一个sku)
  49. 'market_price' => isset($this->params[ 'market_price' ]) ? $this->params[ 'market_price' ] : '',// 市场价格(取第一个sku)
  50. 'cost_price' => isset($this->params[ 'cost_price' ]) ? $this->params[ 'cost_price' ] : 0,// 成本价(取第一个sku)
  51. 'sku_no' => isset($this->params[ 'sku_no' ]) ? $this->params[ 'sku_no' ] : '',// 商品sku编码
  52. 'weight' => isset($this->params[ 'weight' ]) ? $this->params[ 'weight' ] : '',// 重量
  53. 'volume' => isset($this->params[ 'volume' ]) ? $this->params[ 'volume' ] : '',// 体积
  54. 'goods_stock' => isset($this->params[ 'goods_stock' ]) ? $this->params[ 'goods_stock' ] : 0,// 商品库存(总和)
  55. 'goods_stock_alarm' => isset($this->params[ 'goods_stock_alarm' ]) ? $this->params[ 'goods_stock_alarm' ] : 0,// 库存预警
  56. 'is_free_shipping' => isset($this->params[ 'is_free_shipping' ]) ? $this->params[ 'is_free_shipping' ] : 1,// 是否免邮
  57. 'shipping_template' => isset($this->params[ 'shipping_template' ]) ? $this->params[ 'shipping_template' ] : 0,// 指定运费模板
  58. 'goods_spec_format' => isset($this->params[ 'goods_spec_format' ]) ? $this->params[ 'goods_spec_format' ] : '',// 商品规格格式
  59. 'goods_attr_format' => isset($this->params[ 'goods_attr_format' ]) ? $this->params[ 'goods_attr_format' ] : '',// 商品参数格式
  60. 'introduction' => isset($this->params[ 'introduction' ]) ? $this->params[ 'introduction' ] : '',// 促销语
  61. 'keywords' => isset($this->params[ 'keywords' ]) ? $this->params[ 'keywords' ] : '',// 关键词
  62. 'unit' => isset($this->params[ 'unit' ]) ? $this->params[ 'unit' ] : '',// 单位
  63. 'sort' => isset($this->params[ 'sort' ]) ? $this->params[ 'sort' ] : 0,// 排序,
  64. 'video_url' => isset($this->params[ 'video_url' ]) ? $this->params[ 'video_url' ] : '',// 视频
  65. 'goods_sku_data' => isset($this->params[ 'goods_sku_data' ]) ? $this->params[ 'goods_sku_data' ] : '',// SKU商品数据
  66. 'label_id' => isset($this->params[ 'label_id' ]) ? $this->params[ 'label_id' ] : '',// 商品分组id
  67. 'max_buy' => isset($this->params[ 'max_buy' ]) ? $this->params[ 'max_buy' ] : '',// 限购
  68. 'min_buy' => isset($this->params[ 'min_buy' ]) ? $this->params[ 'min_buy' ] : '',// 起售
  69. 'timer_on' => isset($this->params[ 'timer_on' ]) ? strtotime($this->params[ 'timer_on' ]) : 0,//定时上架
  70. 'timer_off' => isset($this->params[ 'timer_off' ]) ? strtotime($this->params[ 'timer_off' ]) : 0,//定时下架
  71. 'site_name' => $this->shop_info[ 'site_name' ],//店铺名
  72. 'virtual_sale' => $this->params[ 'virtual_sale' ] ?? 0,// 虚拟销量
  73. 'is_consume_discount' => $this->params[ 'is_consume_discount' ] ?? 0, //是否参与会员折扣
  74. 'goods_service_ids' => $this->params[ 'goods_service_ids' ] ?? '',// 商品服务id集合
  75. 'recommend_way' => $this->params[ 'recommend_way' ] ?? 0, // 推荐方式,1:新品,2:精品,3;推荐
  76. 'is_limit' => $this->params[ 'is_limit' ] ?? 0,// 商品是否限购,
  77. 'limit_type' => $this->params[ 'limit_type' ] ?? 1 // 商品限购类型,
  78. ];
  79. $virtual_goods_model = new VirtualGoodsModel();
  80. $res = $virtual_goods_model->addGoods($data);
  81. return $this->response($res);
  82. }
  83. /**
  84. * 编辑商品
  85. * @return mixed
  86. */
  87. public function editGoods()
  88. {
  89. $virtual_goods_model = new VirtualGoodsModel();
  90. $data = [
  91. 'goods_id' => isset($this->params[ 'goods_id' ]) ? $this->params[ 'goods_id' ] : 0,// 商品id
  92. 'goods_name' => isset($this->params[ 'goods_name' ]) ? $this->params[ 'goods_name' ] : '',// 商品名称,
  93. 'goods_attr_class' => isset($this->params[ 'goods_attr_class' ]) ? $this->params[ 'goods_attr_class' ] : '',// 商品类型id,
  94. 'goods_attr_name' => isset($this->params[ 'goods_attr_name' ]) ? $this->params[ 'goods_attr_name' ] : '',// 商品类型名称,
  95. 'site_id' => $this->site_id,
  96. 'category_id' => $this->params[ 'category_id' ] ?? '',
  97. 'category_json' => $this->params[ 'category_json' ] ?? '',
  98. 'goods_image' => isset($this->params[ 'goods_image' ]) ? $this->params[ 'goods_image' ] : '',// 商品主图路径
  99. 'goods_content' => isset($this->params[ 'goods_content' ]) ? $this->params[ 'goods_content' ] : '',// 商品详情
  100. 'goods_state' => isset($this->params[ 'goods_state' ]) ? $this->params[ 'goods_state' ] : '',// 商品状态(1.正常0下架)
  101. 'price' => isset($this->params[ 'price' ]) ? $this->params[ 'price' ] : 0,// 商品价格(取第一个sku)
  102. 'market_price' => isset($this->params[ 'market_price' ]) ? $this->params[ 'market_price' ] : '',// 市场价格(取第一个sku)
  103. 'cost_price' => isset($this->params[ 'cost_price' ]) ? $this->params[ 'cost_price' ] : 0,// 成本价(取第一个sku)
  104. 'sku_no' => isset($this->params[ 'sku_no' ]) ? $this->params[ 'sku_no' ] : '',// 商品sku编码
  105. 'weight' => isset($this->params[ 'weight' ]) ? $this->params[ 'weight' ] : '',// 重量
  106. 'volume' => isset($this->params[ 'volume' ]) ? $this->params[ 'volume' ] : '',// 体积
  107. 'goods_stock' => isset($this->params[ 'goods_stock' ]) ? $this->params[ 'goods_stock' ] : 0,// 商品库存(总和)
  108. 'goods_stock_alarm' => isset($this->params[ 'goods_stock_alarm' ]) ? $this->params[ 'goods_stock_alarm' ] : 0,// 库存预警
  109. 'is_free_shipping' => isset($this->params[ 'is_free_shipping' ]) ? $this->params[ 'is_free_shipping' ] : 1,// 是否免邮
  110. 'shipping_template' => isset($this->params[ 'shipping_template' ]) ? $this->params[ 'shipping_template' ] : 0,// 指定运费模板
  111. 'goods_spec_format' => isset($this->params[ 'goods_spec_format' ]) ? $this->params[ 'goods_spec_format' ] : '',// 商品规格格式
  112. 'goods_attr_format' => isset($this->params[ 'goods_attr_format' ]) ? $this->params[ 'goods_attr_format' ] : '',// 商品参数格式
  113. 'introduction' => isset($this->params[ 'introduction' ]) ? $this->params[ 'introduction' ] : '',// 促销语
  114. 'keywords' => isset($this->params[ 'keywords' ]) ? $this->params[ 'keywords' ] : '',// 关键词
  115. 'unit' => isset($this->params[ 'unit' ]) ? $this->params[ 'unit' ] : '',// 单位
  116. 'sort' => isset($this->params[ 'sort' ]) ? $this->params[ 'sort' ] : 0,// 排序,
  117. 'video_url' => isset($this->params[ 'video_url' ]) ? $this->params[ 'video_url' ] : '',// 视频
  118. 'goods_sku_data' => isset($this->params[ 'goods_sku_data' ]) ? $this->params[ 'goods_sku_data' ] : '',// SKU商品数据
  119. 'label_id' => isset($this->params[ 'label_id' ]) ? $this->params[ 'label_id' ] : '',// 商品分组id
  120. 'max_buy' => isset($this->params[ 'max_buy' ]) ? $this->params[ 'max_buy' ] : '',// 限购
  121. 'min_buy' => isset($this->params[ 'min_buy' ]) ? $this->params[ 'min_buy' ] : '',// 起售
  122. 'timer_on' => isset($this->params[ 'timer_on' ]) ? strtotime($this->params[ 'timer_on' ]) : 0,//定时上架
  123. 'timer_off' => isset($this->params[ 'timer_off' ]) ? strtotime($this->params[ 'timer_off' ]) : 0,//定时下架
  124. 'spec_type_status' => isset($this->params[ 'spec_type_status' ]) ? strtotime($this->params[ 'spec_type_status' ]) : 0,
  125. 'site_name' => $this->shop_info[ 'site_name' ] ?? '',//店铺名
  126. 'virtual_sale' => $this->params[ 'virtual_sale' ] ?? 0,// 虚拟销量
  127. 'is_consume_discount' => $this->params[ 'is_consume_discount' ] ?? 0, //是否参与会员折扣
  128. 'goods_service_ids' => $this->params[ 'goods_service_ids' ] ?? '',// 商品服务id集合
  129. 'recommend_way' => $this->params[ 'recommend_way' ] ?? 0, // 推荐方式,1:新品,2:精品,3;推荐
  130. 'is_limit' => $this->params[ 'is_limit' ] ?? 0,// 商品是否限购,
  131. 'limit_type' => $this->params[ 'limit_type' ] ?? 1 // 商品限购类型,
  132. ];
  133. $res = $virtual_goods_model->editGoods($data);
  134. return $this->response($res);
  135. }
  136. }