GoodsSku.php 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | 萤火商城系统 [ 致力于通过产品和服务,帮助商家高效化开拓市场 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2017~2021 https://www.yiovo.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed 这不是一个自由软件,不允许对程序代码以任何形式任何目的的再发行
  8. // +----------------------------------------------------------------------
  9. // | Author: 萤火科技 <admin@yiovo.com>
  10. // +----------------------------------------------------------------------
  11. declare (strict_types = 1);
  12. namespace app\common\model;
  13. use app\common\library\helper;
  14. /**
  15. * 商品SKU模型
  16. * Class GoodsSku
  17. * @package app\common\model
  18. */
  19. class GoodsSku extends BaseModel
  20. {
  21. // 定义表名
  22. protected $name = 'goods_sku';
  23. // 定义主键
  24. protected $pk = 'id';
  25. /**
  26. * 规格图片
  27. * @return \think\model\relation\HasOne
  28. */
  29. public function image()
  30. {
  31. return $this->hasOne('UploadFile', 'file_id', 'image_id');
  32. }
  33. /**
  34. * 获取器:规格值ID集
  35. * @param $value
  36. * @return array
  37. */
  38. public function getSpecValueIdsAttr($value)
  39. {
  40. return helper::jsonDecode($value);
  41. }
  42. /**
  43. * 获取器:规格属性
  44. * @param $value
  45. * @return array
  46. */
  47. public function getGoodsPropsAttr($value)
  48. {
  49. return helper::jsonDecode($value);
  50. }
  51. /**
  52. * 设置器:规格值ID集
  53. * @param $value
  54. * @return string
  55. */
  56. public function setSpecValueIdsAttr($value)
  57. {
  58. return helper::jsonEncode($value);
  59. }
  60. /**
  61. * 设置器:规格属性
  62. * @param $value
  63. * @return string
  64. */
  65. public function setGoodsPropsAttr($value)
  66. {
  67. return helper::jsonEncode($value);
  68. }
  69. /**
  70. * 获取sku信息详情
  71. * @param int $goodsId
  72. * @param string $goodsSkuId
  73. * @return array|null|static
  74. */
  75. public static function detail(int $goodsId, string $goodsSkuId)
  76. {
  77. return static::get(['goods_id' => $goodsId, 'goods_sku_id' => $goodsSkuId]);
  78. }
  79. }