public function fail() { return Model_Payment_ABidUnfreeze::updateRelation(array('id' => $this->_orderId), array('status' => 2), date('Y')); }
public function dealTask($task) { // 处理解冻 $charge_sn = false; $failNum = 0; $note = urlencode('推广房源' . $task['proId']); for ($i = 0; $i < $this->tryNum; $i++) { $charge_sn = Bll_PayAccount::cancel_frozen($task['userId'], $task['amount'], $task['proId'], $task['appName'], $task['serialNumber'], $note, true, $task['requestId']); printf('队列id %s, 房源id %s 尝试第%d次解冻, 结果是: %s' . PHP_EOL, $task['id'], $task['proId'], $i + 1, $charge_sn ? '成功' : '失败'); if ($charge_sn) { break; } $failNum++; } if ($failNum > 0) { Model_Payment_ABidUnfreeze::updateRelation(array('id' => $task['id']), array('failNum' => $task['failNum'] + $failNum)); } // 尝试多次还是失败 if (!$charge_sn) { $this->failInfos[] = sprintf('[%s] 队列id: %d 房子id: %d 尝试解冻%d次后还是失败!' . PHP_EOL, date('Y-m-d H:i:s'), $task['id'], $task['proId'], $failNum); } else { // 更新队列处理成功 Model_Payment_ABidUnfreeze::updateRelation(array('id' => $task['id']), array('status' => 1)); $this->repairSpreadPlanState($task); } return true; }