where($map)->find(); return $res; } /* * 查询商户 * */ public function getFindConfig($storeid) { $res = $this->alias('p') ->join('ls_retail_store as s on s.merchantid=p.merchantid') ->join('ls_retail_merchant as m on s.merchantid=m.id') ->where(array('s.id' => $storeid)) ->field('m.name,s.storetag,p.*') ->find(); return $res; } /** * 获取商户支付配置与合伙人配置 * @param $merchant_id * @return mixed */ public function getFindMerchantPaySet($merchant_id) { $paySet = $this->where(array('merchantid' => $merchant_id))->find(); if ($paySet) { $merchant = D('Merchant')->getFind(array('id' => $merchant_id), 'partnerid'); //获取代理商id $paySet['systemConfig'] = D('SystemConfig')->getFind(array('partnerid' => $merchant['partnerid'])); $res['config'] = $paySet; $res['status'] = 1; } else { $res['status'] = 0; $res['msg'] = '商户未配置支付'; } return $res; } /** * 获取商户支付模式及权限 * @param $merchant_id 商户id * @param $pay_type 支付方式 1微信 2支付宝 3微信小程序 * @return mixed */ public function getFindMerchantConfig($merchant_id, $pay_type) { $paySet = $this->where(array('merchantid' => $merchant_id))->find(); if ($paySet) { //判断支付方式 switch ($pay_type) { case '1': //微信 $pay_name = '微信'; $pay_state = $paySet['wx_pay_state']; break; case '2': //支付宝 $pay_name = '支付宝'; $pay_state = $paySet['al_pay_state']; break; case '3': //微信小程序 $pay_name = '微信小程序'; $pay_state = $paySet['xcx_pay_state']; } if ($pay_state == 0) { $res['status'] = 0; $res['msg'] = '商户未开启' . $pay_name . '支付'; return $res; } $merchant = D('Merchant')->getFind(array('id' => $merchant_id), 'agentid,partnerid'); //获取代理商id $agentPayAuth = D('PayPattern')->getAgentPattern($merchant['agentid']); // 获取代理商支付权限 if (!$agentPayAuth) { $res['status'] = 0; $res['msg'] = '代理商无线上支付权限'; return $res; } //判断代理商支付权限 switch ($pay_state) { case '1': //普通商户 if ($agentPayAuth['general_pay'] != 1) { $res['status'] = 0; $res['msg'] = '代理商无普通商户支付模式权限'; return $res; } break; case '2': //服务商 if ($agentPayAuth['service_pay'] != 1) { $res['status'] = 0; $res['msg'] = '代理商无服务商支付模式权限'; return $res; } break; case '3': //新大陆 if ($agentPayAuth['new_continent_pay'] != 1) { $res['status'] = 0; $res['msg'] = '代理商无新大陆支付模式权限'; return $res; } break; } $merchantPayAuth = D('MerchantPayAuth')->getFind(array('merchant_id' => $merchant_id));//商户支付权限 //判断商户支付权限 switch ($pay_state) { case '1': //普通商户 if ($merchantPayAuth['general_pay'] != 1) { $res['status'] = 0; $res['msg'] = '商户无普通商户支付模式权限'; return $res; } break; case '2': //服务商 if ($merchantPayAuth['service_pay'] != 1) { $res['status'] = 0; $res['msg'] = '商户无服务商支付模式权限'; return $res; } break; case '3': //新大陆 if ($merchantPayAuth['new_continent_pay'] != 1) { $res['status'] = 0; $res['msg'] = '商户无新大陆支付模式权限'; return $res; } break; } $res['status'] = 1; $res['m_pay_type'] = $pay_state; if ($pay_state == 2) { $paySet['systemConfig'] = D('SystemConfig')->getFind(array('partnerid' => $merchant['partnerid'])); } $paySet['name'] = $merchant['name']; $res['config'] = $paySet; } else { $res['status'] = 0; $res['msg'] = '商户未配置支付'; } return $res; } }