Config.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?php
  2. namespace app\admin\model\pay;
  3. use think\Model;
  4. use traits\model\SoftDelete;
  5. use app\common\Enum\StatusEnum;
  6. use app\common\Enum\PayEnum;
  7. class Config extends Model
  8. {
  9. use SoftDelete;
  10. // 表名
  11. protected $name = 'shop_pay_config';
  12. // 自动写入时间戳字段
  13. protected $autoWriteTimestamp = 'integer';
  14. // 定义时间戳字段名
  15. protected $createTime = 'createtime';
  16. protected $updateTime = 'updatetime';
  17. protected $deleteTime = 'deletetime';
  18. // 追加属性
  19. protected $append = [
  20. 'status_text',
  21. 'type_text'
  22. ];
  23. public function getTypeTextAttr($value, $data)
  24. {
  25. return PayEnum::getPayMethodList()[$data['type']] ?? '';
  26. }
  27. // public function getTypeAttr($value, $data)
  28. // {
  29. // return PayEnum::getPayMethodList()[$value] ?? '';
  30. // }
  31. public function getStatusList()
  32. {
  33. return StatusEnum::getMap();
  34. }
  35. public function getParamsAttr($value, $data)
  36. {
  37. if(empty($value)){
  38. return [];
  39. }
  40. return json_decode($value, true);
  41. }
  42. public function getStatusTextAttr($value, $data)
  43. {
  44. $value = $value ?: ($data['status'] ?? '');
  45. $list = $this->getStatusList();
  46. return $list[$value] ?? '';
  47. }
  48. }