/** * 兑换奖品 * * @param $broker_id * @param $activity_id * @param $prize_id * @param $periods_no * @param $consume * @param $times_limit * @return array */ public static function exchange_property($broker_id, $activity_id, $prize_id, $periods_no, $consume, $times_limit) { /** 从兑换奖品表里对奖品剩余数量做 -1 操作 */ $effectRowCount = Dao_Cms_ExchangeProperty::decrease_exchange_property($activity_id, $prize_id, $periods_no); if ($effectRowCount != 1) { return array('status' => -3, 'message' => '奖品不足', 'debug' => __CLASS__, 'debug_info' => $effectRowCount); } /** 对经纪人看消费资源做扣除相应数量资源操作 */ $effectRowCount = Dao_Cms_ActivityUserProperty::decrease_user_property($activity_id, $broker_id, $consume); if ($effectRowCount != 1) { Dao_Cms_ExchangeProperty::increase_exchange_property($activity_id, $prize_id, $periods_no); return array('status' => -2, 'message' => '积分不足', 'debug' => __CLASS__, 'debug_info' => $effectRowCount); } /** 对经纪人的兑换次数做 +1 操作 */ $effectRowCount = Dao_Cms_LuckyDrawTimes::increase_broker_exchange_times($activity_id, $broker_id, $periods_no, $times_limit); if ($effectRowCount != 1) { /** 恢复奖品数量 */ Dao_Cms_ExchangeProperty::increase_exchange_property($activity_id, $prize_id, $periods_no); /** 恢复经纪人资源数量 */ Dao_Cms_ActivityUserProperty::increase_user_property($activity_id, $broker_id, $consume); return array('status' => -4, 'message' => '对不起,每个时段只能兑换一次。', 'debug' => __CLASS__, 'debug_info' => $effectRowCount); } return array('status' => 0, 'message' => '兑换成功'); }
/** * 开始分派奖品 */ public static function log_lucky_draw($activity_id, $broker_id, $lucky_draw_prize_id, $periods_no, $times_limit, $consume) { /** 奖品剩余 数量 -1 */ $effectCount = Dao_Cms_LuckyDrawPrize::decrease_lucky_draw_prize($lucky_draw_prize_id); if ($effectCount != 1) { // Dao_Cms_ActivityUserProperty::increase_user_property($activity_id, $broker_id, $consume); return array('status' => 0, 'message' => '谢谢参与', 'prize_id' => 0, 'prize_title' => '谢谢参与', 'debug' => __CLASS__, 'debug_info' => __LINE__); } /** 经纪人的抽奖次数 */ $effectCount = Dao_Cms_LuckyDrawTimes::increase_broker_times($activity_id, $broker_id, $periods_no, $times_limit); if ($effectCount != 1) { Dao_Cms_ActivityUserProperty::increase_user_property($activity_id, $broker_id, $consume); Dao_Cms_LuckyDrawPrize::increase_lucky_draw_prize($lucky_draw_prize_id); return array('status' => -3, 'message' => '抽奖次数上限', 'debug' => __CLASS__, 'debug_info' => __LINE__); } /** 增加经纪人的中奖次数 */ Dao_Cms_LuckyDrawTimes::increase_broker_lucky_times($activity_id, $broker_id, $periods_no); return array('status' => 0, 'message' => '', 'prize_id' => $lucky_draw_prize_id); }
public static function increase_broker_times($activity_id, $broker_id, $periods_no, $times_limit) { return Dao_Cms_LuckyDrawTimes::increase_broker_times($activity_id, $broker_id, $periods_no, $times_limit); }