$user_id, 'pledge_id' => $pledge_id, 'product_id' => $product_id, 'details' => json_encode($product, JSON_UNESCAPED_UNICODE), 'day_num' => $day_num, 'end_time' => time() + config('pledge_end_time'), //结束时间 'num' => $num ]); } //所有有效质押订单的日产量X数量的和 public static function getCountByTimeTeac():int { $productPledges = new ProductPledges(); $list = self::where('status', self::Ongoing)->column('pledge_id,num'); $count = 0; foreach ($list as $key=>$item) { $day_num = $productPledges::where('id',$key)->value('day_num'); $count += bcmul($item, $day_num, 2); } return $count; } //用户 public function users() { return $this->hasOne('UserModel', 'id', 'user_id', [], 'LEFT')->setEagerlyType(0); } //低质押 public function pledges() { return $this->hasOne('ProductPledges', 'id', 'pledge_id', [], 'LEFT')->setEagerlyType(0); } public function getCreateTimeTextAttr($value, $data) { $value = $value ? $value : (isset($data['create_time']) ? $data['create_time'] : ''); return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value; } public function getUpdateTimeTextAttr($value, $data) { $value = $value ? $value : (isset($data['update_time']) ? $data['update_time'] : ''); return is_numeric($value) ? date("Y-m-d H:i:s", $value) : $value; } protected function setCreateTimeAttr($value) { return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value); } protected function setUpdateTimeAttr($value) { return $value === '' ? null : ($value && !is_numeric($value) ? strtotime($value) : $value); } }