getUsable($card_type, $amount); if (empty($info)) { Log::record("cards_helper::reserve 找不到可用的卡了", Log::ERR); return false; } $card = new CardPaper($info); $card_id = $card->card_id(); $model->reserve($card_id); $ret = $model->where(['card_id' => $card_id]) ->update(['member_id' => $userid, 'order_id' => $order_id, 'receive_card_no' => $user_card_no, 'receive_card_type' => $user_card_type, 'reserved_time' => time()]); $rows = $model->affected_rows(); $trans->commit(); return ($ret && $rows > 0); } catch (Exception $e) { $trans->rollback(); Log::record("cards_helper::reserve exception {$e}", Log::ERR); return false; } } static public function assign($card_id, $oper_name) { try { $model = Model('card_key'); $trans = new trans_wapper($model, __METHOD__); $ret = $model->assign($card_id, $oper_name); $rows = $model->affected_rows(); $trans->commit(); return ($ret && $rows > 0); } catch (Exception $e) { $trans->rollback(); Log::record("cards_helper::assign exception {$e}", Log::ERR); return false; } } static public function reuse($card_id) { try { $model = Model('card_key'); $trans = new trans_wapper($model, __METHOD__); $ret = $model->reuse($card_id); $rows = $model->affected_rows(); $trans->commit(); return ($ret && $rows > 0); } catch (Exception $e) { $trans->rollback(); Log::record("cards_helper::reuse exception {$e}", Log::ERR); return false; } } static public function freeze($card_id) { try { $model = Model('card_key'); $trans = new trans_wapper($model, __METHOD__); $ret = $model->freeze($card_id); $rows = $model->affected_rows(); $trans->commit(); return ($ret && $rows > 0); } catch (Exception $e) { $trans->rollback(); Log::record("cards_helper::freeze exception {$e}", Log::ERR); return false; } } static public function unfreeze($card_id) { try { $model = Model('card_key'); $trans = new trans_wapper($model, __METHOD__); $ret = $model->unfreeze($card_id); $rows = $model->affected_rows(); $trans->commit(); return ($ret && $rows > 0); } catch (Exception $e) { $trans->rollback(); Log::record("cards_helper::unfreeze exception {$e}", Log::ERR); return false; } } }