#region 生成聚合支付二维码
if (!string.IsNullOrEmpty(qrcode))
{
//生成收款二维码
string qr_url = await Utils.CreateQR(qrcode, merchant);
var pdr2 = _dbContext.PayDistributionRecord.FirstOrDefault(x => x.OrderNumber == orderModel.ID);
if (pdr2 != null)
pdr2.ReceiptCodeUrl = qr_url;
else//新增分润明细数据--自己的钱包(微信/支付宝)也当是一个代理商进行分润处理
{
PayDistributionRecord distributionRecord = new PayDistributionRecord() { ID = GuidUtil.GetSecuentialGuid(), AmountMoney = 0M, CommissionRateTypeName = "无", CreateTime1 = DateTimeOffset.Now, ModifyTime1=DateTimeOffset.Now , MerchantSubCommission=0M , AgentCommission=0M , OrderNumber=orderModel .ID , ReceiptCodeUrl=qr_url };//自己的钱包在代理商雷彪中不存在,佣金及利用都是0
_dbContext .Add
//查询商户聚合收款码
$where_jh['uid'] = $this->uid;
$where_jh['status'] = 1;
//获取此用户下面的有效通道
$channelData = M('MchSellerCard')->field('t.id,t.code_type')->alias('s')->join('LEFT JOIN __MCH_CODE__ t ON s.cid=t.id')->where($where_jh)->select();
if ($channelData) {
foreach ($channelData as $key => &$value) {
if (in_array($value['code_type'], [7,8])) {
unset($channelData[$key]); //过滤出小程序、H5官方二二维码
continue;
}
unset($value); //释放内存占用。 否则foreach中会修改所有元素的值; 后面已不使用该元素, 早早释放内存; 等循化遍历完之后在unst则时间太久了。浪费性能。 泄露内存咯~ PS: php 太难T T T T 调试一天 bug 都不少呀~ ~ ~ 囧 2018-09-07 11:30:22 create by muyi <1439647027@qq.com> @meizu bug id:#1 !important! update :2018-10-17 12:21:40 add 备注
什么是聚合收款码?聚合收款码是一种新型的支付方式,它可以帮助商家或个人快速、便捷地接入多重渠道的“一站式”扫码收款服务。该服务将多种不同的扫码方式整合到单一的二维码形态里,包含微信付、QQ钱包、Apple Pay、银联闪付、JDPay 等;并为用户之间进行无障碍地实时转账体验。
添加客服微信