Esempio n. 1
0
 public function couponSale()
 {
     $db = new DB_test();
     $arr_header = $this->arr_header;
     $arr_body = $this->arr_body;
     $arr_channelinfo = $this->arr_channelinfo;
     $authorid = $arr_channelinfo['authorid'];
     $couponid = trim($arr_body['couponid']);
     $paymoney = trim($arr_body['couponmoney']);
     //$paycardid = trim(GetPayCalcuInfo::readpaycardid($arr_body['paycardid']));
     $arr_paycard = GetPayCalcuInfo::readpaycardid($arr_body['paycardid'], $authorid);
     //刷卡器设备号
     $paycardid = $arr_paycard['paycardid'];
     //刷卡器id
     $cusid = trim($arr_paycard['cusid']);
     //代理商
     $paycardkey = trim($arr_paycard['paycardkey']);
     //刷卡器key
     $fucardno = trim($arr_body['creditcardno']);
     $fubank = trim(u2g($arr_body['creditbank']));
     $fucardman = trim(u2g($arr_body['creditcardman']));
     $fucardphone = trim(u2g($arr_body['creditcardphone']));
     $paytype = 'coupon';
     $req_appenv = trim($arr_header['req_appenv']);
     // echo "fdf";
     $checkbankinfo = $this->checkshoubankinfo($authorid, $req_appenv);
     //检测我的银行卡信息有没填写
     $arr_feeinfo = GetPayCalcuInfo::readPayFee($authorid, "", $paymoney, "", 5);
     //获取手续费信息返回array
     if (is_array($arr_feeinfo)) {
         $feemoney = $arr_feeinfo['feemoney'];
     }
     $allmoney = round($paymoney + $feemoney, 2);
     $arr_arrive = GetPayCalcuInfo::readarrive($arr_feeinfo['arriveid']);
     $paydate = date("Y-m-d H:i:s");
     $arrivedate = GetPayCalcuInfo::getfeedate($paydate, $arr_feeinfo['addday']);
     $payfeedirct = $arr_feeinfo['defeedirct'];
     if ($arr_feeinfo['defeedirct'] == 's') {
         $bkmoney = $paymoney;
     } else {
         $bkmoney = $allmoney;
     }
     $arr_feeinfo['arrivedate'] = $arrivedate;
     $arr_feeinfo['paydate'] = $paydate;
     $arr_feeinfo['bkmoney'] = $bkmoney;
     $arr_feeinfo['payfeedirct'] = $payfeedirct;
     $payfee = $feemoney;
     $arr_bkinfo = BankPayInfo::bankpayorder($authorid, $paycardid, $paymoney, $fucardno);
     $arr_authorinfo = AuToken::getauthorusername($authorid);
     $arr_feeinfo['shoucardno'] = $shoucardno = $arr_authorinfo['shoucardno'];
     $arr_feeinfo['shoucardmobile'] = $shoucardmobile = $arr_authorinfo['shoucardmobile'];
     $arr_feeinfo['shoucardbank'] = $shoucardbank = $arr_authorinfo['shoucardbank'];
     $arr_feeinfo['shoucardman'] = $shoucardman = $arr_authorinfo['shoucardman'];
     $bkntno = trim($arr_bkinfo['bkntno']);
     $arr_feeinfo['bkordernumber'] = $bkordernumber = $arr_bkinfo['bkorderNumber'];
     $arr_feeinfo['bkmoney'] = $bkmoney = $paymoney;
     $arr_feeinfo['sdcrid'] = $sdcrid = trim($arr_bkinfo['sdcrid']);
     $sdcrpayfee = substr($arr_bkinfo['sdcrpayfee'], 0, -1);
     //银联收取明盛浮动费率
     $arr_feeinfo['sdcrpayfeemoney'] = $sdcrpayfeemoney = $bkmoney * $sdcrpayfee / 100 > $arr_bkinfo['minsdcrpayfee'] ? $bkmoney * $sdcrpayfee / 100 : $arr_bkinfo['minsdcrpayfee'];
     $ccgno = makeorderno("couponsale", "couponsale", "cps");
     $query = "insert into tb_couponsale\n\t\t\t\t\t(fd_couponsale_no\t,\tfd_couponsale_bkntno\t,\tfd_couponsale_couponno\t,\n\t\t\t\t\tfd_couponsale_paycardid,fd_couponsale_authorid  ,\tfd_couponsale_money,\n\t\t\t\t\tfd_couponsale_rebuy,\tfd_couponsale_state,\t\tfd_couponsale_datetime,\n\t\t            fd_couponsale_couponid,\tfd_couponsale_payrq,\t\tfd_couponsale_creditcardno,\n\t\t            fd_couponsale_creditcardbank,fd_couponsale_creditcardman,fd_couponsale_creditcardphone," . "fd_couponsale_bkordernumber,fd_couponsale_sdcrid,   fd_couponsale_sdcrpayfeemoney," . "fd_couponsale_paymoney , fd_couponsale_payfee   ,   fd_couponsale_bkmoney  ," . "fd_couponsale_shoucardno,fd_couponsale_shoucardman,fd_couponsale_shoucardbank," . "fd_couponsale_shoucardmobile\n\t\t            )values\n\t\t\t\t\t('{$ccgno}'\t\t\t,\t'{$bkntno}'\t\t\t\t,\t'{$bkorderNumber}',\n\t\t\t\t\t'{$paycardid}'\t\t,\t'{$authorid}'\t\t\t\t,\t'{$paymoney}',\n\t\t\t\t\t'0'\t\t\t\t\t,\t'0'\t\t\t\t\t\t,\t now()\t\t ,\n\t\t\t\t\t'{$couponid}'\t\t\t,\t'01'  \t\t\t\t\t,    '{$fucardno}',\n\t\t\t\t\t'{$fubank}'           ,   '{$fucardman}'            ,   '{$fucardphone}' , " . "'{$bkordernumber}'   ,   '{$sdcrid}'               ,   '{$sdcrpayfeemoney}'," . "'{$paymoney}'        ,   '{$payfee}'               ,   '{$bkmoney}'        ," . "'{$shoucardno}'      ,   '{$shoucardman}'          ,   '{$shoucardbank}'    ," . "'{$shoucardmobile}'    ) ";
     $db->query($query);
     $listid = $db->insert_id();
     $method = 'in';
     $method = u2g($method);
     $gettrue = AgentPayglist::insertPayglist($this->reqxmlcontext, $bkntno, $listid, $ccgno, $paytype, $method, $arr_feeinfo);
     $arr_message = array("result" => "success", "message" => "获取交易码成功,可以去刷卡支付了!");
     $retcode = "0";
     //反馈状态 0 成功 200 自定义错误
     $arr_msg['msgbody']['result'] = $arr_message['result'];
     $arr_msg['msgbody']['message'] = $arr_message['message'];
     $arr_msg['msgbody']['bkntno'] = trim($bkntno);
     $returnvalue = array("msgbody" => $arr_msg['msgbody']);
     $returnval = TfbxmlResponse::ResponsetoApp($retcode, $returnvalue);
     return $returnval;
 }
Esempio n. 2
0
 public function payCardCheck()
 {
     global $arr_limitauthorid;
     $db = new DB_test();
     $arr_header = $this->arr_header;
     $arr_body = $this->arr_body;
     $arr_channelinfo = $this->arr_channelinfo;
     $paycardkey = $arr_body['paycardkey'];
     $authorid = $arr_channelinfo['authorid'];
     /*2014-06-18 取消商户对刷卡器的限制 */
     $paycardkey = strtolower($paycardkey);
     $paycardkey = str_replace("fff", "", $paycardkey);
     //$paycardid = trim(GetPayCalcuInfo::readpaycardid($arr_body['paycardkey'])); //刷卡器设备号
     $arr_paycard = GetPayCalcuInfo::readpaycardid($arr_body['paycardkey'], $authorid);
     //刷卡器设备号
     $paycardid = $arr_paycard['paycardid'];
     //刷卡器id
     $cusid = trim($arr_paycard['cusid']);
     //代理商
     $paycardkey = trim($arr_paycard['paycardkey']);
     //刷卡器key
     AgentPayglist::savePayCardinfo($paycardid);
     //保存最新刷卡时间
     $arr_message = array("result" => "success", "message" => "刷卡器检验成功!");
     $retcode = "0";
     //反馈状态 0 成功 200 自定义错误
     $arr_msg['msgbody']['result'] = $arr_message['result'];
     $arr_msg['msgbody']['message'] = $arr_message['message'];
     $returnvalue = array("msgbody" => $arr_msg['msgbody']);
     $returnval = TfbxmlResponse::ResponsetoApp($retcode, $returnvalue);
     /*---end ---   */
     $query = "select fd_paycard_authorid as pauthorid from tb_paycard where   fd_paycard_key = '{$paycardkey}'  ";
     $arr_authid = $db->get_one($query);
     //		if(in_array($authorid, $arr_limitauthorid))
     //			{
     //		if($arr_authid['pauthorid']!=$authorid && $arr_authid['pauthorid']>0)
     //		{
     //			$Error = array (
     //				'result' => 'failure',
     //				'retcode' => '200',
     //				'retmsg' => '该刷卡器已被其他商户使用,您不允许使用!'
     //			);
     //			$this->ErrorReponse->reponError($Error); //出错反馈
     //			exit;
     //
     //		}
     //			}
     $query = "select fd_paycard_id,fd_paycard_active,fd_paycard_posstate from tb_paycard where fd_paycard_key = '{$paycardkey}'  ";
     $db->query($query);
     //echo $query;
     if ($db->nf()) {
         $db->next_record();
         $paycardid = $db->f(fd_paycard_id);
         $posstate = $db->f(fd_paycard_posstate);
         //0 停用 1 警告 2启用 3 冻结
         $paycardactive = $db->f(fd_paycard_active);
         //0 停用 1 警告 2启用 3 冻结
         if ($paycardactive == 0) {
             $arr_message = array("result" => "failure", "message" => "请先激活刷卡器!");
             $retcode = "200";
             //反馈状态 0 成功 200 自定义错误
         } else {
             $arr_message = array("result" => "success", "message" => "刷卡器检验成功!");
             $retcode = "0";
             //反馈状态 0 成功 200 自定义错误
         }
         if ($posstate == '3' || $posstate == '0') {
             $arr_message = array("result" => "failure", "message" => "该刷卡器被冻结或者停用!");
             $retcode = "200";
             //反馈状态 0 成功 200 自定义错误
         }
     } else {
         $arr_message = array("result" => "failure", "message" => "刷卡失败,请先激活刷卡器!");
         $retcode = "200";
         //反馈状态 0 成功 200 自定义错误
         if (!in_array($authorid, $arr_limitauthorid)) {
             $arr_message = array("result" => "success", "message" => "刷卡器验证通过!");
             $retcode = "0";
             //反馈状态 0 成功 200 自定义错误
         }
     }
     $arr_msg['msgbody']['result'] = $arr_message['result'];
     $arr_msg['msgbody']['message'] = $arr_message['message'];
     $returnvalue = array("msgbody" => $arr_msg['msgbody']);
     $returnval = TfbxmlResponse::ResponsetoApp($retcode, $returnvalue);
     return $returnval;
 }
Esempio n. 3
0
 public function SuptransferMoneyRq()
 {
     $db = new DB_test();
     $arr_header = $this->arr_header;
     $arr_body = $this->arr_body;
     $arr_channelinfo = $this->arr_channelinfo;
     $authorid = trim($arr_channelinfo['authorid']);
     $paymoney = trim($arr_body['paymoney']);
     $shoucardno = trim($arr_body['shoucardno']);
     //收款卡号
     $shoucardmobile = trim($arr_body['shoucardmobile']);
     //收款人手机
     $shoucardman = trim(u2g($arr_body['shoucardman']));
     //收款人姓名
     $shoucardbank = trim(u2g($arr_body['shoucardbank']));
     //收款银行
     $fucardno = trim($arr_body['fucardno']);
     //付款卡号
     $fucardbank = trim(u2g($arr_body['fucardbank']));
     //付款银行
     $fucardmobile = trim($arr_body['fucardmobile']);
     //付款人手机
     $fucardman = trim(u2g($arr_body['fucardman']));
     //付款人姓名
     $current = trim($arr_body['current']);
     //币种
     //$paycardid = trim(GetPayCalcuInfo::readpaycardid($arr_body['paycardid'])); //刷卡器设备号
     $arr_paycard = GetPayCalcuInfo::readpaycardid($arr_body['paycardid'], $authorid);
     //刷卡器设备号
     $paycardid = $arr_paycard['paycardid'];
     //刷卡器id
     $cusid = trim($arr_paycard['cusid']);
     //代理商
     $paycardkey = trim($arr_paycard['paycardkey']);
     //刷卡器key
     $payfee = trim($arr_body['payfee']);
     //authorid
     $money = trim($arr_body['money']);
     //币种
     $shoucardmemo = trim(u2g($arr_body['shoucardmemo']));
     //刷卡器设备号
     $sendsms = trim($arr_body['sendsms']);
     //authorid
     $arriveid = trim($arr_body['arriveid']);
     //币种
     $paytype = 'suptfmg';
     $feebankid = getbankid($shoucardbank);
     //获得银行id返回string
     CheckPayQuota::readPayQuota($authorid, $paycardid, $paytype, $paymoney);
     //调用判断额度使用情况
     $arr_feeinfo = GetPayCalcuInfo::readPayFee($authorid, $feebankid, $paymoney, $arriveid, 2, $paytype);
     //获取手续费信息返回array
     if (is_array($arr_feeinfo)) {
         $feemoney = $arr_feeinfo['feemoney'];
     }
     $paydate = date("Y-m-d H:i:s");
     $arrivedate = GetPayCalcuInfo::getfeedate($paydate, $arr_feeinfo['addday']);
     $allmoney = round($paymoney + $feemoney, 2);
     $payfeedirct = $arr_feeinfo['defeedirct'];
     if ($arr_feeinfo['defeedirct'] == 's') {
         $bkmoney = $paymoney;
     } else {
         $bkmoney = $allmoney;
     }
     $arr_feeinfo['arrivedate'] = $arrivedate;
     $arr_feeinfo['paydate'] = $paydate;
     $arr_feeinfo['bkmoney'] = $bkmoney;
     $arr_feeinfo['payfeedirct'] = $payfeedirct;
     $arr_bkinfo = BankPayInfo::bankpayorder($authorid, $paycardid, $bkmoney, $fucardno);
     $bkntno = trim($arr_bkinfo['bkntno']);
     $arr_feeinfo['sdcrid'] = $sdcrid = trim($arr_bkinfo['sdcrid']);
     $sdcrpayfee = substr($arr_bkinfo['sdcrpayfee'], 0, -1);
     //银联收取明盛浮动费率
     $arr_feeinfo['sdcrpayfeemoney'] = $sdcrpayfeemoney = $bkmoney * $sdcrpayfee / 100 > $arr_bkinfo['minsdcrpayfee'] ? $bkmoney * $sdcrpayfee / 100 : $arr_bkinfo['minsdcrpayfee'];
     $arr_feeinfo['bkordernumber'] = $bkorderNumber = $arr_bkinfo['bkorderNumber'];
     $ccgno = makeorderno("transfermoneyglist", "tfmglist", "tfs");
     $query = "insert into tb_transfermoneyglist(\n\t\t\t\t\t\t\tfd_tfmglist_no\t\t\t,fd_tfmglist_paycardid\t\t,fd_tfmglist_authorid\t,\n\t\t\t\t            fd_tfmglist_paydate\t\t,fd_tfmglist_shoucardno\t\t,fd_tfmglist_fucardno\t,\n\t\t\t\t            fd_tfmglist_bkntno\t\t,fd_tfmglist_payrq          ,fd_tfmglist_paytype     ,\n\t\t\t\t            fd_tfmglist_current\t\t,fd_tfmglist_paymoney\t\t,fd_tfmglist_payfee\t\t ,\n\t\t\t\t            fd_tfmglist_money\t\t,fd_tfmglist_shoucardbank   ,fd_tfmglist_shoucardman ,\n\t\t\t\t            fd_tfmglist_shoucardmobile,fd_tfmglist_fucardbank\t,fd_tfmglist_fucardmobile,\n\t\t\t\t            fd_tfmglist_fucardman   ,fd_tfmglist_feebankid      ,fd_tfmglist_state       ,\t\n\t\t\t\t            fd_tfmglist_shoucardmemo,fd_tfmglist_sendsms        ,fd_tfmglist_arriveid    ,     \t\n\t\t\t\t            fd_tfmglist_arrivedate  ,fd_tfmglist_payfeedirct    ,fd_tfmglist_bkordernumber," . "fd_tfmglist_sdcrid,fd_tfmglist_sdcrpayfeemoney)values\n\t\t\t\t\t\t   ('{$ccgno}'\t\t,'{$paycardid}'\t,'{$authorid}'\t\t,\n\t\t\t\t\t\t   '{$paydate}'\t\t,'{$shoucardno}'\t,'{$fucardno}'\t\t,\n\t\t\t\t\t\t   '{$bkntno}'\t\t,'01'\t\t\t,'{$paytype}'\t\t\t,\n\t\t\t\t\t\t   '{$current}'\t\t,'{$paymoney}'\t,'{$feemoney}'\t\t\t,\n\t\t\t\t\t\t   '{$allmoney}'\t\t\t,'{$shoucardbank}','{$shoucardman}'\t\t,\n\t\t\t\t\t\t   '{$shoucardmobile}','{$fucardbank}'\t,'{$fucardmobile}'\t,\n\t\t\t\t\t\t   '{$fucardman}'\t\t,'{$feebankid}'\t,'0'\t\t\t\t,\n\t\t\t\t\t\t   '{$shoucardmemo}'\t,'{$feebankid}'   ,'{$arriveid}'        , " . "'{$arrivedate}' ,'{$payfeedirct}'    ,'{$bkorderNumber}' ,'{$sdcrid}' ,'{$sdcrpayfeemoney}'  )";
     $db->query($query);
     $listid = $db->insert_id();
     //$listid = $db->insert_id();
     $method = 'in';
     $method = u2g($method);
     $gettrue = AgentPayglist::insertPayglist($this->reqxmlcontext, $bkntno, $listid, $ccgno, $paytype, $method, $arr_feeinfo);
     $arr_message = array("result" => "success", "message" => "获取成功!");
     $retcode = "0";
     //反馈状态 0 成功 200 自定义错误
     $arr_msg['msgbody']['result'] = $arr_message['result'];
     $arr_msg['msgbody']['message'] = $arr_message['message'];
     $arr_msg['msgbody']['bkntno'] = $bkntno;
     $arr_msg['msgbody']['feemoney'] = $feemoney;
     $returnvalue = array("msgbody" => $arr_msg['msgbody']);
     $returnval = TfbxmlResponse::ResponsetoApp($retcode, $returnvalue);
     return $returnval;
 }