diff --git a/sql/gamedb.sql b/sql/gamedb.sql index 9b0e018..fb8ae18 100644 --- a/sql/gamedb.sql +++ b/sql/gamedb.sql @@ -343,6 +343,7 @@ CREATE TABLE `recharge` ( `idx` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '自增id', `accountid` varchar(60) COLLATE utf8_bin NOT NULL DEFAULT '' COMMENT '账号id', `first_data` mediumblob COMMENT '首充数据', + `present_diamond` int(11) NOT NULL DEFAULT '0' COMMENT '充值赠送钻石总量', `create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间', `modify_time` int(11) NOT NULL DEFAULT '0' COMMENT '修改时间', PRIMARY KEY (`idx`), diff --git a/webapp/controller/RechargeController.class.php b/webapp/controller/RechargeController.class.php index ecfb80d..f3e7e7d 100644 --- a/webapp/controller/RechargeController.class.php +++ b/webapp/controller/RechargeController.class.php @@ -3,7 +3,8 @@ require 'classes/Quest.php'; require 'classes/AddReward.php'; -class RechargeController{ +class RechargeController +{ protected function getMysql($account_id) { @@ -18,7 +19,8 @@ class RechargeController{ return $conn; } - public function prePay() { + public function prePay() + { $account_id = $_REQUEST['account_id']; //登录校验 $login = loginVerify($account_id, $_REQUEST['session_id']); @@ -40,7 +42,7 @@ class RechargeController{ } else { $url = 'https://payservice-test.kingsome.cn/api/ingame/spreorder'; } - $sign = md5($_REQUEST['account_id'].$_REQUEST['goods_id'].'f3a6a9a5-217a-4079-ab99-b5d69b8212be'.$_REQUEST['session_id']); + $sign = md5($_REQUEST['account_id'] . $_REQUEST['goods_id'] . 'f3a6a9a5-217a-4079-ab99-b5d69b8212be' . $_REQUEST['session_id']); $params = array( 'account_id' => $_REQUEST['account_id'], 'goods_id' => $goods_id, @@ -57,16 +59,17 @@ class RechargeController{ phpcommon\sendError(ERR_RETRY, '系统繁忙2'); return; } - + $response = json_decode($rsp, true); echo json_encode(array( 'errcode' => $response['errcode'], - 'errmsg'=> $response['errmsg'], + 'errmsg' => $response['errmsg'], 'order_id' => $response['order_id'] )); } - public function payDone() { + public function payDone() + { $account_id = $_REQUEST['account_id']; //登录校验 $login = loginVerify($account_id, $_REQUEST['session_id']); @@ -88,7 +91,7 @@ class RechargeController{ } else { $url = 'https://payservice-test.kingsome.cn/api/ingame/paid'; } - $sign = md5($_REQUEST['account_id'].$_REQUEST['order_id'].'f3a6a9a5-217a-4079-ab99-b5d69b8212be'.$_REQUEST['session_id']); + $sign = md5($_REQUEST['account_id'] . $_REQUEST['order_id'] . 'f3a6a9a5-217a-4079-ab99-b5d69b8212be' . $_REQUEST['session_id']); $params = array( 'account_id' => $_REQUEST['account_id'], 'order_id' => $order_id, @@ -105,7 +108,7 @@ class RechargeController{ phpcommon\sendError(ERR_RETRY, '系统繁忙 2'); return; } - + $response = json_decode($rsp, true); $diamonds = $response['diamond']; $diamond_num = -1; @@ -144,15 +147,18 @@ class RechargeController{ ) ); if (!$rechargerow) { - $ret = $conn->execScript('INSERT INTO recharge(accountid, first_data, create_time, modify_time) ' . - ' VALUES(:account_id, :first_data, :create_time, :modify_time) ' . - ' ON DUPLICATE KEY UPDATE accountid=:account_id, first_data=:first_data, modify_time=:modify_time;', - array( - ':account_id' => $account_id, - ':first_data' => $goodsid, - ':create_time' => time(), - ':modify_time' => time() - )); + $ret = $conn->execScript( + 'INSERT INTO recharge(accountid, first_data, present_diamond, create_time, modify_time) ' . + ' VALUES(:account_id, :first_data, :present_diamond, :create_time, :modify_time) ' . + ' ON DUPLICATE KEY UPDATE accountid=:account_id, first_data=:first_data, present_diamond=:present_diamond, modify_time=:modify_time;', + array( + ':account_id' => $account_id, + ':first_data' => $goodsid, + ':present_diamond' => $diamond_present, + ':create_time' => time(), + ':modify_time' => time() + ) + ); } else { $firstlist = explode(',', $rechargerow['first_data']); $firstrecharge = true; @@ -163,13 +169,16 @@ class RechargeController{ } if ($firstrecharge) { - $ret = $conn->execScript('UPDATE recharge SET first_data=:first_data, modify_time=:modify_time' . - ' WHERE accountid=:accountid;', - array( - ':accountid' => $account_id, - ':first_data' => $rechargerow['first_data'].','.$goodsid, - ':modify_time' => time() - )); + $ret = $conn->execScript( + 'UPDATE recharge SET first_data=:first_data, present_diamond=:present_diamond, modify_time=:modify_time' . + ' WHERE accountid=:accountid;', + array( + ':accountid' => $account_id, + ':first_data' => $rechargerow['first_data'] . ',' . $goodsid, + ':present_diamond' => $rechargerow['present_diamond'] + $diamond_present, + ':modify_time' => time() + ) + ); } else { $diamond_present = 0; } @@ -178,26 +187,26 @@ class RechargeController{ } $diamond_num = $userrow['diamond_num'] + $diamonds + $diamond_present; - - $ret = $conn->execScript('UPDATE user SET diamond_num=:diamond_num' . - ' WHERE accountid=:accountid;', - array( - ':accountid' => $account_id, - ':diamond_num' => $diamond_num - )); + + $ret = $conn->execScript( + 'UPDATE user SET diamond_num=:diamond_num' . + ' WHERE accountid=:accountid;', + array( + ':accountid' => $account_id, + ':diamond_num' => $diamond_num + ) + ); if (!$ret) { die(); return; } - } echo json_encode(array( 'errcode' => $response['errcode'], - 'errmsg'=> $response['errmsg'], + 'errmsg' => $response['errmsg'], 'order_id' => $response['order_id'], 'diamond_nums' => $diamond_num, 'diamond_present' => $diamond_present )); } } -?>