/** * 卖出 * @param $data (对应数据库的一条记录) * @param $num * @return */ public function saleItem(&$data, $num = 1) { $tag = $data['tag']; $stat['tag'] = $tag; $stat['num'] = $num; $stat['u'] = $this->_u; $stat['op'] = 'sale'; $stat['tm'] = $_SERVER['REQUEST_TIME']; $gemt = TT::GemTT(); $item = ItemConfig::getItem($tag); if (!$item || !isset($item['tag'])) { $ret['s'] = 'notfind'; $stat['s'] = $ret['s']; $gemt->putKeep(null, $stat); return $ret; } if ($item['onlygem'] == 'true') { //对用宝石购买的物品,按1:10000换成金币再3折 $num = $item['gem'] * 3000; } else { if ($item['group'] == 'g') { $num = $item['sellmoney'] * $item['unitcout'] * 0.3; } else { $num = $item['money'] * 0.3; } } $rnum = $this->numch(TT::MONEY_STAT, $num); $tusys = new TTUser(0); $statid = 'usalenum_' . $item['tag']; $saled = $tusys->numch($statid, $num); //记录系统回购每种商品总数 $ret['s'] = 'OK'; $ret['money'] = $rnum; $stat['money'] = $cnum; $stat['t'] = 'money'; $stat['s'] = $ret['s']; $gemt->putKeep(null, $stat); return $ret; }
/** * 使用副驾驶 * @param $params * require u -- user_id * tag -- 副驾驶类别 * cid -- car id * @return * s -- OK * tag -- 副驾驶tag * car -- 测试信息 * copi -- 测试信息 */ public function apply_copolit($params) { $uid = $params['u']; $tag = $params['tag']; $cid = $params['cid']; $copi = self::$_config[$tag]; $stat['tag'] = $tag; $stat['op'] = 'apply_copolit'; $stat['num'] = $num; $stat['u'] = $uid; $stat['tm'] = $_SERVER['REQUEST_TIME']; $gemt = TT::GemTT(); if (!$copi) { $ret['s'] = 'copinotexist'; $stat['s'] = $ret['s']; $gemt->putKeep(null, $stat); return $ret; } $tu = new TTUser($uid); $id = $tu->getoid('copilot', TT::OTHER_GROUP); $copilot = $tu->getbyid($id); $car_obj = $tu->getbyid($cid); if (!$car_obj) { $ret['s'] = 'carnotexsit'; $stat['s'] = $ret['s']; $gemt->putKeep(null, $stat); return $ret; } if ($tag != 2006 && $car_obj['copolitTag']) { $ret['s'] = 'repeat'; $stat['s'] = $ret['s']; $gemt->putKeep(null, $stat); return $ret; } $goods = ItemConfig::getItem($car_obj['goodsTag']); if ($tag != 2006) { if ($copilot['bag'][$tag] < 1) { $ret['s'] = 'needbuy'; $stat['s'] = $ret['s']; $gemt->putKeep(null, $stat); return $ret; } $copilot['bag'][$tag] -= 1; $car_obj['copolitTag'] = $tag; } else { if ($goods['buytime'] >= 1800) { $car = ItemConfig::getItem($car_obj['tag']); $add_exp = $goods['exp'] * $car['goodsNumber']; //乘以载重箱,经验不包括好友帮助增加的箱数 if ($add_exp) { $tu->addExp($add_exp); } } unset($car_obj['addgoods']); unset($car_obj['accelerate']); unset($car_obj['t']); unset($car_obj['help']); unset($car_obj['goodsTag']); unset($car_obj['copolitTag']); } $copilot['id'] = $id; $now = time(); $tu->puto($copilot); if ($copi['addgoods']) { $car_obj['addgoods'] += $copi['addgoods']; } if ($copi['accelerate'] && $car_obj['t']) { if ($now - $car_obj['t'] + $copi['accelerate'] > $goods['buytime']) { $car_obj['t'] = $now - $goods['buytime']; } else { $car_obj['t'] -= $copi['accelerate']; } } $tu->puto($car_obj); $ret['s'] = 'OK'; $ret['tag'] = $tag; $stat['s'] = $ret['s']; $gemt->putKeep(null, $stat); return $ret; }
if ($payment['status'] == 0) { if ($payment['sandbox'] == 'true' && $pid != '30578' && $pid != '253382225') { $ret['app_res_user'] = $pid; $ret['app_res_amount'] = $payment['amount']; $ret['app_res_order_id'] = $oid; echo json_encode($ret); } else { if ($user->chGem($payment['gem'])) { $payment['status'] = 1; $payment['handledTime'] = time(); $ot->put($oid, $payment); //│╔╣д║зих╗п //{"app_res_user":12345,"app_res_order_id":1000001,"app_res_amount":100} $ret['app_res_user'] = $pid; $ret['app_res_amount'] = $payment['amount']; $ret['app_res_order_id'] = $oid; $stat['t'] = 'gem'; $stat['u'] = $this->_u; $stat['op'] = 'pay'; $stat['tm'] = $_SERVER['REQUEST_TIME']; $gemt = TT::GemTT(); $stat['s'] = 'OK'; $gemt->putKeep(null, $stat); echo json_encode($ret); } else { $ret['app_res_code'] = "error gem"; echo json_encode($ret); exit; } } }