StoreCashierExtra.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <?php
  2. namespace addons\Store\common\models;
  3. use common\enums\StatusEnum;
  4. use common\models\base\BaseActiveRecord;
  5. use Yii;
  6. /**
  7. * This is the model class for table "qimall_addons_store_cashier_extra".
  8. *
  9. * @property int $id
  10. * @property int $mall_id 商城id
  11. * @property int $store_id 门店id
  12. * @property float $full_reduce_money 单品满额减免金额
  13. * @property float $full_reduce_price_limit 单品满额金额阈值
  14. * @property string|null $score_give_setting 积分赠送设置
  15. * @property string|null $score_deduct_setting 积分抵扣设置
  16. * @property string|null $currency_deduct_setting 货币营销设置
  17. * @property int $is_member_price 是否参与会员价 [1是 0 否]
  18. * @property string|null $member_price_setting 会员价格设置
  19. * @property string|null $member_buy_limit_setting 会员限购设置
  20. * @property int $status 状态[1正常 -1删除]
  21. * @property int $preferential_deduction 优惠抵扣开关按钮
  22. * @property int $preferential_gift 优惠赠送开关按钮
  23. * @property int $created_at 创建时间
  24. * @property int $updated_at 修改时间
  25. */
  26. class StoreCashierExtra extends BaseActiveRecord
  27. {
  28. /**
  29. * {@inheritdoc}
  30. */
  31. public static function tableName()
  32. {
  33. return '{{%addons_store_cashier_extra}}';
  34. }
  35. /**
  36. * {@inheritdoc}
  37. */
  38. public function rules()
  39. {
  40. return [
  41. [['mall_id', 'store_id', 'is_member_price', 'status', 'created_at', 'updated_at','preferential_deduction','preferential_gift'], 'integer'],
  42. [['full_reduce_money', 'full_reduce_price_limit','credit_rate'], 'number'],
  43. [['score_give_setting', 'score_deduct_setting', 'currency_deduct_setting', 'member_price_setting', 'member_buy_limit_setting'], 'string'],
  44. ];
  45. }
  46. /**
  47. * {@inheritdoc}
  48. */
  49. public function attributeLabels()
  50. {
  51. return [
  52. 'id' => 'ID',
  53. 'mall_id' => '商城id',
  54. 'store_id' => '门店id',
  55. 'full_reduce_money' => '单品满额减免金额',
  56. 'full_reduce_price_limit' => '单品满额金额阈值',
  57. 'score_give_setting' => '积分赠送设置',
  58. 'score_deduct_setting' => '积分抵扣设置',
  59. 'currency_deduct_setting' => '货币营销设置',
  60. 'is_member_price' => '是否参与会员价 [1是 0 否]',
  61. 'member_price_setting' => '会员价格设置',
  62. 'member_buy_limit_setting' => '会员限购设置',
  63. 'status' => '状态[1正常 -1删除]',
  64. 'created_at' => '创建时间',
  65. 'updated_at' => '修改时间',
  66. ];
  67. }
  68. /**
  69. * 保存数据
  70. * @param $params
  71. * @return bool
  72. */
  73. public static function setData($store_id,$params)
  74. {
  75. try{
  76. // 判断参数中是否存在数组,存在则转为json字符串
  77. foreach ($params as $key => &$item) {
  78. $item = is_array($item) ? json_encode($item,JSON_UNESCAPED_UNICODE) : $item;
  79. }
  80. // 根据商品id获取商品信息
  81. $model = self::findOne(['store_id' => $store_id,'status'=>StatusEnum::ENABLED]);
  82. if (empty($model)) {
  83. // 初始化商品额外参数
  84. $model = new self();
  85. $model->loadDefaultValues();
  86. }
  87. $model->store_id = $store_id;
  88. if(!$model->load($params,'') || !$model->save(false)){
  89. throw new \Exception($model->getErrorMessage());
  90. }
  91. return true;
  92. }catch(\Exception $e){
  93. self::$static_error = $e->getMessage();
  94. return false;
  95. }
  96. }
  97. }