HappinessPvOrder.php 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?php
  2. namespace addons\Happiness\common\models;
  3. use addons\Happiness\common\enums\HappinessPvEnum;
  4. use common\models\base\BaseActiveRecord;
  5. /**
  6. * This is the model class for table "{{%addons_happiness_pv_order}}".
  7. *
  8. * @property int $id
  9. * @property float $score 获得积分
  10. * @property int $mall_id 商城ID
  11. * @property int $order_id 订单ID
  12. * @property string $order_no 订单号
  13. * @property float $free_num 已释放数量
  14. * @property int $wait_num 剩余释放数量
  15. * @property int $user_id 用户ID
  16. * @property int $updated_at
  17. * @property int $created_at
  18. * @property int $status 状态:0 禁用 1启用
  19. * @property int $is_settled 是否已结算
  20. * @property int $is_update 是否调整过
  21. * @property string $updated_log 调整记录
  22. */
  23. class HappinessPvOrder extends BaseActiveRecord
  24. {
  25. /**
  26. * {@inheritdoc}
  27. */
  28. public static function tableName()
  29. {
  30. return '{{%addons_happiness_pv_order}}';
  31. }
  32. /**
  33. * {@inheritdoc}
  34. */
  35. public function rules()
  36. {
  37. return [
  38. [['score', 'mall_id','user_id', 'order_id'], 'required'],
  39. [['score'], 'number'],
  40. [['mall_id', 'order_id', 'user_id', 'updated_at', 'created_at', 'status', 'is_settled', 'settled_time'], 'integer'],
  41. [['goods_price'], 'safe'],
  42. [['order_no'], 'string', 'max' => 100],
  43. ];
  44. }
  45. /**
  46. * {@inheritdoc}
  47. */
  48. public function attributeLabels()
  49. {
  50. return [
  51. 'id' => 'ID',
  52. 'score' => 'Score',
  53. 'mall_id' => 'Mall ID',
  54. 'order_id' => 'Order ID',
  55. 'order_no' => 'Order No',
  56. 'user_id' => 'User ID',
  57. 'updated_at' => 'Updated At',
  58. 'created_at' => 'Created At',
  59. 'status' => 'Status',
  60. 'is_settled' => 'Is Settled',
  61. 'goods_price' => '商品金额',
  62. 'settled_time' => 'settled_time',
  63. ];
  64. }
  65. public static function setData($params)
  66. {
  67. try {
  68. $model = self::findOne(['order_id' => $params['order_id'], 'mall_id' => $params['mall_id']]);
  69. if (!$model) {
  70. $model = new self();
  71. $model->loadDefaultValues();
  72. }
  73. if (!$model->load($params, '') || !$model->save()) {
  74. throw new \Exception($model->getErrorMessage());
  75. }
  76. return $model;
  77. } catch (\Exception $e) {
  78. self::$static_error = $e->getMessage();
  79. return false;
  80. }
  81. }
  82. /**
  83. * 获取可结算的订单列表
  84. */
  85. public static function settledList($where,$select, $order, $isArray = true)
  86. {
  87. return self::find()->select($select)->where($where)->orderBy($order)->asArray($isArray)->all();
  88. }
  89. }