From fc1e60801cfe58ef02a523c0f0bf3ab89114c108 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 10 Nov 2020 19:05:38 +0800 Subject: [PATCH] 1 --- sql/gamedb.sql | 24 ----------- .../controller/ActivityController.class.php | 43 +++++++++++-------- webapp/controller/HangController.class.php | 12 ------ webapp/metatable/item.php | 26 +++++++++++ 4 files changed, 50 insertions(+), 55 deletions(-) create mode 100644 webapp/metatable/item.php diff --git a/sql/gamedb.sql b/sql/gamedb.sql index dc7249b..7b77702 100644 --- a/sql/gamedb.sql +++ b/sql/gamedb.sql @@ -102,12 +102,6 @@ CREATE TABLE `user` ( `new_second_equip` int(11) NOT NULL DEFAULT '2' COMMENT '新玩家隔天结算武器', `sum_coin` double NOT NULL DEFAULT '0' COMMENT '累计充值金额', `recharge_times_total` int(11) NOT NULL DEFAULT '0' COMMENT '累计充值次数', - - /* - `rmb_num` int(11) NOT NULL DEFAULT '0' COMMENT '点券数量', - `max_single_recharge` int(11) NOT NULL DEFAULT '0' COMMENT '最大单次充值数量', - `passcard` 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; @@ -306,22 +300,4 @@ CREATE TABLE `festival_activity` ( UNIQUE KEY `accountid` (`accountid`) ) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -/*DROP TABLE IF EXISTS `orderinfo`;*/ -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -/* -CREATE TABLE `orderinfo` ( - `idx` int(11) NOT NULL AUTO_INCREMENT COMMENT '自增id', - `accountid` varchar(60) DEFAULT '' COMMENT '账号id(channel + "_" + gameid + "_" + openid)', - `orderid` varchar(60) DEFAULT '' COMMENT '订单id', - `rmb_num` int(11) NOT NULL DEFAULT '0' COMMENT '点券数量', - `money` int(11) NOT NULL DEFAULT '0' COMMENT '金钱数量', - `custom_data` mediumblob COMMENT '其他字段', - `itemid` int(11) NOT NULL DEFAULT '0' COMMENT '道具id', - `createtime` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间', - `modifytime` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间', - PRIMARY KEY (`idx`), - UNIQUE KEY `account_orderid` (`accountid`, `orderid`) -) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin; -*/ -- Dump completed on 2015-08-19 18:51:22 diff --git a/webapp/controller/ActivityController.class.php b/webapp/controller/ActivityController.class.php index 79b51bf..4703236 100644 --- a/webapp/controller/ActivityController.class.php +++ b/webapp/controller/ActivityController.class.php @@ -254,23 +254,30 @@ class ActivityController{ } else { $user_db_str = $r->get($draw_uuid); $user_db = json_decode($user_db_str, true); - if (empty($user_db)) { - phpcommon\sendError(ERR_USER_BASE + 1,'session失效'); - return; - } - - foreach ($user_db['draw_list'] as $draw) { - $status = 0; - if (isset($draw['status'])) { - $status = $draw['status']; + if (empty($user_db) || empty($user_db['draw_list'])) { + $user_db_str = $r->get($draw_uuid); + $draw_list = $this->randomNewReward(1,$account_id,$now_days); + $draw_db = json_decode($user_db_str, true); + $draw_db = array( + 'draw_uuid' => $draw_uuid, + 'draw_list' => $draw_list, + ); + $r -> set($draw_uuid, json_encode($draw_db)); + $r -> pexpire($draw_uuid, 1000 * 3600 * 24); + } else { + foreach ($user_db['draw_list'] as $draw) { + $status = 0; + if (isset($draw['status'])) { + $status = $draw['status']; + } + array_push($draw_list, array( + 'item_id' => $draw['item_id'], + 'item_num' => $draw['item_num'], + 'quailty' => $draw['quailty'], + 'time' => $draw['time'], + 'status' => $status, + )); } - array_push($draw_list, array( - 'item_id' => $draw['item_id'], - 'item_num' => $draw['item_num'], - 'quailty' => $draw['quailty'], - 'time' => $draw['time'], - 'status' => $status, - )); } } } @@ -376,7 +383,6 @@ class ActivityController{ $weight_sum += $l['jilv']; } $random = Rand(1, $weight_sum); - // error_log($random); for ($ii = 0; $ii < count($lot_array); $ii++) { $l = $this->getLottery($lot_array[$ii]['key']); @@ -853,7 +859,6 @@ class ActivityController{ $weight_sum += $l['jilv']; } $random = Rand(1, $weight_sum); - // error_log($random); for ($ii = 0; $ii < count($lot_array); $ii++) { $l = $this->getLottery($lot_array[$ii]['key']); $weight += $l['jilv']; @@ -1179,7 +1184,7 @@ class ActivityController{ } //固定奖励 $delim2 = ":"; - $re_multiply = explode($delim2, $rec['re_reward']);; + $re_multiply = explode($delim2, $rec['re_reward']); array_push($item_list, array( 'item_id' => $re_multiply[0], 'item_num' => $re_multiply[1], diff --git a/webapp/controller/HangController.class.php b/webapp/controller/HangController.class.php index 8bcd956..5059f91 100644 --- a/webapp/controller/HangController.class.php +++ b/webapp/controller/HangController.class.php @@ -148,20 +148,8 @@ class HangController{ if (time() >= strtotime($season['open_time']) && time() <= strtotime($season['end_time'])) { $open_time = strtotime($season['open_time']); $end_time = strtotime($season['end_time']); - /*$ret = $conn->execScript('UPDATE user SET season_time=:season_time, modify_time=:modify_time ' . - ' WHERE accountid=:accountid;', - array( - ':accountid' => $account_id, - ':season_time' => $end_time, - ':modify_time' => time() - )); - if (!$ret) { - die(); - return; - }*/ $number = $i; $item_multiply = $this->getExplode($season['reward']); - //$ii = 0; for($ii = 1; $ii <= count($item_multiply); $ii++) { $rowpass = $conn->execQueryOne('SELECT active_status, honor_status ' . ' FROM passinfo WHERE accountid=:accountid AND passid=:passid;', diff --git a/webapp/metatable/item.php b/webapp/metatable/item.php new file mode 100644 index 0000000..a266624 --- /dev/null +++ b/webapp/metatable/item.php @@ -0,0 +1,26 @@ +