1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- <?php
- namespace app\common\model\lottery;
- use think\Model;
- use traits\model\SoftDelete;
- use app\common\Enum\LotteryEnum;
- /**
- * 抽奖参与条件模型
- */
- class LotteryCondition extends Model
- {
- use SoftDelete;
- // 表名
- protected $table = 'shop_lottery_condition';
-
- // 开启自动写入时间戳字段
- protected $autoWriteTimestamp = 'int';
- // 定义时间戳字段名
- protected $createTime = 'createtime';
- protected $updateTime = 'updatetime';
- protected $deleteTime = 'deletetime';
- // 追加属性
- protected $append = [
- 'type_text',
- 'goods_rule_text',
- 'goods_ids_list'
- ];
- /**
- * 关联活动
- */
- public function activity()
- {
- return $this->belongsTo('LotteryActivity', 'activity_id');
- }
- /**
- * 获取条件类型文本
- */
- public function getTypeTextAttr($value, $data)
- {
- return LotteryEnum::getConditionTypeText($data['type']);
- }
- /**
- * 获取商品规则文本
- */
- public function getGoodsRuleTextAttr($value, $data)
- {
- $rules = LotteryEnum::getGoodsRuleMap();
- return isset($rules[$data['goods_rule']]) ? $rules[$data['goods_rule']] : '';
- }
- /**
- * 获取商品ID列表
- */
- public function getGoodsIdsListAttr($value, $data)
- {
- return !empty($data['goods_ids']) ? json_decode($data['goods_ids'], true) : [];
- }
- /**
- * 设置商品ID列表
- */
- public function setGoodsIdsAttr($value)
- {
- return is_array($value) ? json_encode($value) : $value;
- }
-
- }
|