mall_id); $service = new PayApiLogic($mch); $start_time = !empty($params['data']) ? $params['data'][0] : date('Y-m-d', strtotime('-90day')); $end_time = !empty($params['data']) ? $params['data'][1] : date('Y-m-d'); $page = empty($params['page']) ? 1 : intval($params['page']); $order_no = !empty($params['no']) ? PaymentTradeOrder::getOutTradeNoOfOrderNo($params['no']) : ''; $data = $service->order_alt_list($start_time, $end_time, $order_no, $page); $list = $data['items']; foreach ($list as $k => $v) { $list[$k]['alt_status'] = StatusEnum::getValue($v['alt_status']); } $res['list'] = $list; $res['limit'] = 10; $res['page_count'] = ceil($data['pageInfo']['total'] / 15); $res['current_page'] = $data['pageInfo']['currentPage']; return $res; } /** * 获取分账方详情 * * @return array */ public function getInfo() { $mch = MiddleMch::getMch($this->mall_id); $service = new PayApiLogic($mch); $basic = Yii::$app->services->setting->addons->get($this->mall_id, AddonsEnum::ADDONS_NAME_HUIJU_BILL, 'basic'); $sett_mode_arr = [ 1 => '自动结算', 2 => '手工结算' , 3 => '手工+D0 结算', 4 => '自动+D0 结算', ]; $alt_merchant_type_arr = [ 10 => '个人', 11 => '个体工商户', 12 => '企业', ]; $sign_status_arr = [ 0 => '未签约', 1 => '已签约', ]; $data = $service->mch_info($basic['huijubill_merchant_no']); $data['sett_mode'] = $sett_mode_arr[$data['sett_mode']] ?? ''; $data['alt_merchant_type'] = $alt_merchant_type_arr[$data['alt_merchant_type']] ?? ''; $data['sign_status'] = $sign_status_arr[$data['sign_status']] ?? ''; return $data; } /** * 获取签约内容 * * @return string */ public function getSignContent() { $mch = MiddleMch::getMch($this->mall_id); $service = new PayApiLogic($mch); return $service->sign_content(); } /** * 确认签约 * * @return void */ public function confirmSign() { $mch = MiddleMch::getMch($this->mall_id); $service = new PayApiLogic($mch); try { $res = $service->confirm_sign(); } catch (Exception $e) { $this->error = $e->getMessage(); // 重复签约 if ($this->error == '接口请求错误:受理失败,分账商户已签约,请勿重复签约') { // 保存签约状态 Yii::$app->services->setting->addons->set( $this->mall_id, AddonsEnum::ADDONS_NAME_HUIJU_BILL, ['basic' => ['sign_status' => 1]] ); } return false; } // 保存签约状态 Yii::$app->services->setting->addons->set( $this->mall_id, AddonsEnum::ADDONS_NAME_HUIJU_BILL, ['basic' => ['sign_status' => 1]] ); return true; } }