MemberCards.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. <?php
  2. declare (strict_types=1);
  3. namespace app\common\model\member;
  4. use app\common\model\BaseModel;
  5. /**
  6. * 会员卡
  7. * Class MemberCards
  8. * @package app\common\model
  9. */
  10. class MemberCards extends BaseModel
  11. {
  12. protected $name = 'member_cards';
  13. protected $append = [];
  14. public function getOriginPriceAttr($value){
  15. return bcdiv(strval($value),'100',2);
  16. }
  17. public function getSalePriceAttr($value){
  18. return bcdiv(strval($value),'100',2);
  19. }
  20. public function setOriginPriceAttr($value){
  21. return bcmul(strval($value),'100',2);
  22. }
  23. public function setSalePriceAttr($value){
  24. return bcmul(strval($value),'100',2);
  25. }
  26. /**
  27. * 审核
  28. * @param array $data
  29. * @return bool
  30. */
  31. public function audit(array $data): bool
  32. {
  33. $this->transaction(function () use ($data) {
  34. $this->save($data);
  35. $id = (int)$this['id'];
  36. $data['target_type'] = 1;
  37. if($data['audit_status']==1){
  38. (new MemberCardsAction())->add($id, $data);
  39. }
  40. if($data['audit_status']==2){
  41. //$data['audit_reason'] = '不同意'." ".$data['audit_reason'];
  42. (new MemberCardsAction())->add($id, $data);
  43. }
  44. });
  45. return true;
  46. }
  47. /**
  48. * 详情
  49. * @param int $id
  50. * @param array $with
  51. * @return null|static
  52. */
  53. public static function detail(int $id,array $with=[])
  54. {
  55. return self::get($id,$with);
  56. }
  57. /**
  58. * 添加
  59. * @param $data
  60. * @return false|int
  61. */
  62. public function addOne($data)
  63. {
  64. $this->transaction(function () use ($data) {
  65. $this->save($data);
  66. $id = (int)$this['id'];
  67. $data['audit_status'] = 1;
  68. $data['status'] = 1;
  69. $data['target_type'] = 1;
  70. (new MemberCardsAction())->add($id, $data);
  71. });
  72. return true;
  73. }
  74. /**
  75. * 编辑
  76. * @param $data
  77. * @return bool|int
  78. */
  79. public function edit($data)
  80. {
  81. $this->transaction(function () use ($data) {
  82. $data["audit_status"] = 1;
  83. $data['status'] = 1;
  84. $data["audit_time"] = date('Y-m-d H:i:s');
  85. $this->save($data);
  86. $id = (int)$this['id'];
  87. $data['target_type'] = 1;
  88. (new MemberCardsAction())->add($id, $data);
  89. });
  90. return true;
  91. }
  92. public static function findCard(){
  93. return self::where('id','>',0)->find();
  94. }
  95. }