CloudStockStatistic.php 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace addons\CloudStock\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_cloud_stock_statistic".
  8. *
  9. * @property int $id
  10. * @property int $mall_id 商城id
  11. * @property string $capital_type 奖励类型
  12. * @property int $settlement_status 0:待结算;1:已结算
  13. * @property float $money 数量
  14. * @property int $status 状态[-1:删除;0:禁用;1启用]
  15. * @property int $created_at
  16. * @property int $updated_at
  17. */
  18. class CloudStockStatistic extends BaseActiveRecord
  19. {
  20. /**
  21. * {@inheritdoc}
  22. */
  23. public static function tableName()
  24. {
  25. return '{{%addons_cloud_stock_statistic}}';
  26. }
  27. /**
  28. * {@inheritdoc}
  29. */
  30. public function rules()
  31. {
  32. return [
  33. [['mall_id', 'settlement_status', 'status', 'created_at', 'updated_at'], 'integer'],
  34. [['money'], 'number'],
  35. [['capital_type'], 'string', 'max' => 255],
  36. ];
  37. }
  38. /**
  39. * {@inheritdoc}
  40. */
  41. public function attributeLabels()
  42. {
  43. return [
  44. 'id' => 'ID',
  45. 'mall_id' => 'Mall ID',
  46. 'capital_type' => 'Capital Type',
  47. 'settlement_status' => 'Settlement Status',
  48. 'money' => 'Money',
  49. 'status' => 'Status',
  50. 'created_at' => 'Created At',
  51. 'updated_at' => 'Updated At',
  52. ];
  53. }
  54. public static function setData($params)
  55. {
  56. $obj = CloudStockStatistic::findOne([
  57. 'mall_id' => $params['mall_id'],
  58. 'capital_type' => $params['capital_type'],
  59. 'settlement_status' => $params['settlement_status'],
  60. 'status' => [StatusEnum::DISABLED, StatusEnum::ENABLED]
  61. ]);
  62. if ($obj) {
  63. $obj->money += $params['money'];
  64. $obj->save();
  65. } else {
  66. $obj = new self();
  67. $obj->loadDefaultValues();
  68. if (!$obj->load($params, '')) throw new \Exception($obj->getErrorMessage());
  69. $obj->save();
  70. }
  71. return $obj;
  72. }
  73. }