/** * 获取可兑换最大值 * @param int $inviteType * @return int * @author 郑钟良<*****@*****.**> */ private function _getCanBuyNum($inviteType = 0) { $inviteType = $this->mInviteTypeModel->where(array('id' => $inviteType))->find(); $this->assign('long', unitTime_to_showUnitTime($inviteType['cycle_time'])); $this->assign('num_buy', $inviteType['cycle_num']); //以周期算,获取最多购买 $map['uid'] = is_login(); $map['invite_type'] = $inviteType['id']; $map['create_time'] = array('gt', unitTime_to_time($inviteType['cycle_time'], '-')); $buyList = $this->mInviteBuyLogModel->where($map)->select(); $can_buy_num = 0; foreach ($buyList as $val) { $can_buy_num += $val['num']; } $can_buy_num = $inviteType['cycle_num'] - $can_buy_num; //以周期算,获取最多购买 end $max_num_score = query_user('score' . $inviteType['pay_score_type']); if ($inviteType['pay_score'] != 0) { $max_num_score = intval($max_num_score / $inviteType['pay_score']); //以积分算,获取最多购买 $can_buy_num = $max_num_score > $can_buy_num ? $can_buy_num : $max_num_score; } if ($can_buy_num < 0) { $can_buy_num = 0; } return $can_buy_num; }
/** * 初始化查询邀请码类型 * @param array $data * @return array * @author 郑钟良<*****@*****.**> */ private function _initSelectData($data = array()) { $data['roles'] = str_replace('[', '', $data['roles']); $data['roles'] = str_replace(']', '', $data['roles']); $data['auth_groups'] = str_replace('[', '', $data['auth_groups']); $data['auth_groups'] = str_replace(']', '', $data['auth_groups']); $data['time_show'] = unitTime_to_showUnitTime($data['time']); $data['cycle_time_show'] = unitTime_to_showUnitTime($data['cycle_time']); $scoreTypes = M('UcenterScoreType')->where(array('id' => array('in', array($data['pay_score_type'], $data['income_score_type']))))->field('id,title,unit')->select(); $scoreTypes = array_combine(array_column($scoreTypes, 'id'), $scoreTypes); $data['pay'] = $scoreTypes[$data['pay_score_type']]['title'] . ' ' . $data['pay_score'] . ' ' . $scoreTypes[$data['pay_score_type']]['unit']; $data['income'] = $scoreTypes[$data['income_score_type']]['title'] . ' ' . $data['income_score'] . ' ' . $scoreTypes[$data['income_score_type']]['unit']; if ($data['roles'] != '') { $data['roles'] = $data['roles_show'] = explode(',', $data['roles']); $role_list = M('Role')->where(array('id' => array('in', $data['roles_show'])))->field('id,title')->select(); $role_list = array_combine(array_column($role_list, 'id'), $role_list); foreach ($data['roles_show'] as &$val) { $val = $role_list[$val]['title']; } unset($val); $data['roles_show'] = implode(',', $data['roles_show']); } else { $data['roles'] = array(); } if ($data['auth_groups'] != '') { $data['auth_groups'] = $data['auth_groups_show'] = explode(',', $data['auth_groups']); $auth_group_list = M('AuthGroup')->where(array('id' => array('in', $data['auth_groups_show'])))->field('id,title')->select(); $auth_group_list = array_combine(array_column($auth_group_list, 'id'), $auth_group_list); foreach ($data['auth_groups_show'] as &$val) { $val = $auth_group_list[$val]['title']; } unset($val); $data['auth_groups_show'] = implode(',', $data['auth_groups_show']); } else { $data['auth_groups'] = array(); } return $data; }