From ffebbf1ff23d8bd8b2a47313cdec7c065e536daa Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Fri, 29 Jan 2021 13:27:06 +0800 Subject: [PATCH] 1 --- sql/gamedb.sql | 2 + sql/gamedb2001_n_migrate_210126_01.sql | 8 +++ .../controller/ActivityController.class.php | 62 +++++++++++++++++++ webapp/controller/EquipController.class.php | 2 +- webapp/controller/RoleController.class.php | 8 ++- 5 files changed, 78 insertions(+), 4 deletions(-) create mode 100644 sql/gamedb2001_n_migrate_210126_01.sql diff --git a/sql/gamedb.sql b/sql/gamedb.sql index c1b88fd..d9b16a4 100644 --- a/sql/gamedb.sql +++ b/sql/gamedb.sql @@ -102,6 +102,8 @@ CREATE TABLE `user` ( `daily_box2_status` int(11) NOT NULL DEFAULT '0' COMMENT '每日宝箱活动2状态', `mid_aut_adtimes` int(11) NOT NULL DEFAULT '0' COMMENT '中秋活动广告次数', `mid_aut_status` int(11) NOT NULL DEFAULT '0' COMMENT '中秋活动奖励状态', + + `spring_adtimes` int(11) NOT NULL DEFAULT '0' COMMENT '春节抽奖活动广告次数', PRIMARY KEY (`idx`), UNIQUE KEY `accountid` (`accountid`) ) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin; diff --git a/sql/gamedb2001_n_migrate_210126_01.sql b/sql/gamedb2001_n_migrate_210126_01.sql new file mode 100644 index 0000000..4b7fbec --- /dev/null +++ b/sql/gamedb2001_n_migrate_210126_01.sql @@ -0,0 +1,8 @@ +begin; + +alter table user add column `spring_adtimes` int(11) NOT NULL DEFAULT '0' COMMENT '春节抽奖活动广告次数'; +update user set mid_aut_status=0, mid_aut_adtimes=0 where 1=1; + +insert into version (version) values(2021012601); + +commit; diff --git a/webapp/controller/ActivityController.class.php b/webapp/controller/ActivityController.class.php index a83256b..6b58b76 100644 --- a/webapp/controller/ActivityController.class.php +++ b/webapp/controller/ActivityController.class.php @@ -1144,5 +1144,67 @@ class ActivityController{ 'item_list' => $item_list )); } + + public function getSpringDrawReward() + { + $account_id = $_REQUEST['account_id']; + //登录校验 + $login = loginVerify($account_id, $_REQUEST['session_id']); + if (!$login) { + phpcommon\sendError(ERR_USER_BASE + 1, 'session无效'); + return; + } + $conn = $this->getMysql($account_id); + if (!$conn) { + phpcommon\sendError(ERR_USER_BASE + 2, '没有这个玩家'); + return; + } + $row = $conn->execQueryOne('SELECT spring_adtimes FROM user ' . + ' WHERE accountid=:accountid;', + array( + ':accountid' => $account_id, + )); + if (!$row) { + phpcommon\sendError(ERR_USER_BASE + 2, '没有这个玩家'); + return; + } + $times = $row['spring_adtimes'] + 1; + $drop_id = 25112; + if ($times == 10) { + $drop_id = 25113; + } + if ($times == 15) { + $times = 0; + $drop_id = 25114; + } + + $ret = $conn->execScript('UPDATE user set spring_adtimes=:spring_adtimes, modify_time=:modify_time ' . + ' WHERE accountid=:accountid;', + array( + ':spring_adtimes' => $times, + ':accountid' => $account_id, + ':modify_time' => time() + )); + if (!$ret) { + die(); + return; + } + $item_list = $this->getRandomAirReward($drop_id); + foreach ($item_list as $i) { + //增加奖励 + $addreward = new classes\AddReward(); + $addreward->addReward($i['item_id'], $i['item_num'], $account_id); + } + $coin_num = $addreward->getCoinNum($account_id); + $num = $addreward->getDiamondNum($account_id); + echo json_encode(array( + 'errcode' => 0, + 'errmsg'=> '', + 'item_list' => $item_list, + 'coin_nums' => $coin_num, + 'diamond_nums' => $num, + 'spring_adtimes' => $times, + )); + } } ?> diff --git a/webapp/controller/EquipController.class.php b/webapp/controller/EquipController.class.php index 49787da..4e6b4f5 100644 --- a/webapp/controller/EquipController.class.php +++ b/webapp/controller/EquipController.class.php @@ -312,7 +312,7 @@ class EquipController{ if (!$row) { $ret = $conn->execScript('INSERT INTO equip(accountid, equip_id, equip_level, equip_experience_level, active_time, create_time, modify_time) ' . ' VALUES(:accountid, :equip_id, 1, :equip_experience_level, :active_time, :create_time, :modify_time) ' . - ' ON DUPLICATE KEY UPDATE accountid=:accountid, equip_id=:equip_id, equip_level=1, equip_experience_level=9, active_time=:active_time, modify_time=:modify_time;', + ' ON DUPLICATE KEY UPDATE accountid=:accountid, equip_id=:equip_id, equip_level=1, equip_experience_level=:equip_experience_level, active_time=:active_time, modify_time=:modify_time;', array( ':accountid' => $account_id, ':equip_id' => $equip_id, diff --git a/webapp/controller/RoleController.class.php b/webapp/controller/RoleController.class.php index 7a219d2..18b1101 100644 --- a/webapp/controller/RoleController.class.php +++ b/webapp/controller/RoleController.class.php @@ -115,9 +115,9 @@ class RoleController{ ':accountid' => $account_id )); if (!$row) { - $ret = $conn->execScript('INSERT INTO user(accountid, user_name, avatar_url, game_times, win_times, kills, harm, add_HP, alive_time, coin_num, integral, kill_his, alive_time_his, harm_his, add_HP_his, act_share_time, act_share_status, create_time, modify_time, first_fight, collect_status, keys_num, battle_re_times, shop_flush_times, kefu_status, sign_sum, box_num, diamond_num, sum_coin, pass_status, score, season_status, recharge_times_total, first_gift, season_time, free_coin, free_diamond, season_end_score, kill_modifytime, win_modifytime, rank_modifytime, vip_score, first_login, daily_first_login, daily_time, free_box, chapingcount, aderrormaxcount, share_video_times, daily_skin_times, share_equip_times, daily_diamond_times, newhand, game_times2, view_times2, daily_ad_times, mid_aut_adtimes, mid_aut_status, daily_draw_status, daily_box_times, daily_box_status, daily_box2_status) ' . - ' VALUES(:accountid, :user_name, :avatar_url, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :create_time, :modify_time, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :daily_time, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) ' . - ' ON DUPLICATE KEY UPDATE accountid=:accountid, user_name=:user_name, avatar_url=:avatar_url, game_times=0, win_times=0, kills=0, harm=0, add_HP=0, alive_time=0, coin_num=0, integral=0, kill_his=0, alive_time_his=0, harm_his=0, add_HP_his=0, act_share_time=0, act_share_status=0, modify_time=:modify_time, first_fight=0, collect_status=0, keys_num=0, battle_re_times=0, shop_flush_times=0, kefu_status=0, sign_sum=0, box_num=0, diamond_num=0, sum_coin=0, pass_status=0, score=0, season_status=1, recharge_times_total=0, first_gift=0, season_time=0, free_coin=0, free_diamond=0, season_end_score=0, kill_modifytime=0, win_modifytime=0, rank_modifytime=0, vip_score=0, first_login=0, daily_first_login=0, daily_time=:daily_time, free_box=0, chapingcount=0, aderrormaxcount=0, share_video_times=0, daily_skin_times=0, share_equip_times=0, daily_diamond_times=0, newhand=0, game_times2=0, view_times2=0, daily_ad_times=0, mid_aut_adtimes=0, mid_aut_status=0, daily_draw_status=0, daily_box_times=0, daily_box_status=0, daily_box2_status=0;', + $ret = $conn->execScript('INSERT INTO user(accountid, user_name, avatar_url, game_times, win_times, kills, harm, add_HP, alive_time, coin_num, integral, kill_his, alive_time_his, harm_his, add_HP_his, act_share_time, act_share_status, create_time, modify_time, first_fight, collect_status, keys_num, battle_re_times, shop_flush_times, kefu_status, sign_sum, box_num, diamond_num, sum_coin, pass_status, score, season_status, recharge_times_total, first_gift, season_time, free_coin, free_diamond, season_end_score, kill_modifytime, win_modifytime, rank_modifytime, vip_score, first_login, daily_first_login, daily_time, free_box, chapingcount, aderrormaxcount, share_video_times, daily_skin_times, share_equip_times, daily_diamond_times, newhand, game_times2, view_times2, daily_ad_times, mid_aut_adtimes, mid_aut_status, daily_draw_status, daily_box_times, daily_box_status, daily_box2_status, spring_adtimes) ' . + ' VALUES(:accountid, :user_name, :avatar_url, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :create_time, :modify_time, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, :daily_time, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) ' . + ' ON DUPLICATE KEY UPDATE accountid=:accountid, user_name=:user_name, avatar_url=:avatar_url, game_times=0, win_times=0, kills=0, harm=0, add_HP=0, alive_time=0, coin_num=0, integral=0, kill_his=0, alive_time_his=0, harm_his=0, add_HP_his=0, act_share_time=0, act_share_status=0, modify_time=:modify_time, first_fight=0, collect_status=0, keys_num=0, battle_re_times=0, shop_flush_times=0, kefu_status=0, sign_sum=0, box_num=0, diamond_num=0, sum_coin=0, pass_status=0, score=0, season_status=1, recharge_times_total=0, first_gift=0, season_time=0, free_coin=0, free_diamond=0, season_end_score=0, kill_modifytime=0, win_modifytime=0, rank_modifytime=0, vip_score=0, first_login=0, daily_first_login=0, daily_time=:daily_time, free_box=0, chapingcount=0, aderrormaxcount=0, share_video_times=0, daily_skin_times=0, share_equip_times=0, daily_diamond_times=0, newhand=0, game_times2=0, view_times2=0, daily_ad_times=0, mid_aut_adtimes=0, mid_aut_status=0, daily_draw_status=0, daily_box_times=0, daily_box_status=0, daily_box2_status=0, spring_adtimes=0;', array( ':accountid' => $account_id, ':user_name' => $user_name, @@ -172,6 +172,7 @@ class RoleController{ 'daily_box_times' => 0, 'daily_box_status' => 0, 'daily_box2_status' => 0, + 'spring_adtimes' => 0, )); } else { $ret = $conn->execScript('UPDATE user SET first_login=1 ' . @@ -291,6 +292,7 @@ class RoleController{ 'daily_box_times' => $daily_box_times, 'daily_box_status' => $daily_box_status, 'daily_box2_status' => $daily_box2_status, + 'spring_adtimes' => $row['spring_adtimes'], )); } }