|
@@ -90,12 +90,21 @@ class MayCurServerService extends Service
|
|
if(isset($result['code']) && $result['code'] != 'ACK') return [false, $result['message']];
|
|
if(isset($result['code']) && $result['code'] != 'ACK') return [false, $result['message']];
|
|
|
|
|
|
//组织返回数据
|
|
//组织返回数据
|
|
- if(empty($result['data'])) return [true, ['list' => [], 'hasNextPage' => false]];
|
|
|
|
|
|
+ if(empty($result['data'])) return [true, ['list' => null, 'hasNextPage' => false]];
|
|
|
|
|
|
//获取报销单详情填充
|
|
//获取报销单详情填充
|
|
list($status, $return) = $this->reimburseDetailGet($result['data']);
|
|
list($status, $return) = $this->reimburseDetailGet($result['data']);
|
|
if(! $status) return [false, $return];
|
|
if(! $status) return [false, $return];
|
|
|
|
|
|
|
|
+ if(! empty($return['list'])){
|
|
|
|
+ list($status,$msg) = $this->tradingPartner($return);
|
|
|
|
+ if(! $status) return [false, $msg];
|
|
|
|
+
|
|
|
|
+ foreach ($return['list'] as $key => $value){
|
|
|
|
+ $return['list'][$key]['tradingPartnerBizCodeType'] = $map[$value['tradingPartnerBizCode']] ?? [];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
return [true, $return];
|
|
return [true, $return];
|
|
}
|
|
}
|
|
|
|
|
|
@@ -195,21 +204,30 @@ class MayCurServerService extends Service
|
|
if(isset($result['code']) && $result['code'] != 'ACK') return [false, $result['message']];
|
|
if(isset($result['code']) && $result['code'] != 'ACK') return [false, $result['message']];
|
|
|
|
|
|
//组织返回数据
|
|
//组织返回数据
|
|
- if(empty($result['data'])) return [true, ['list' => [], 'hasNextPage' => false]];
|
|
|
|
|
|
+ if(empty($result['data'])) return [true, ['list' => null, 'hasNextPage' => false]];
|
|
|
|
|
|
//获取报销单详情填充
|
|
//获取报销单详情填充
|
|
list($status, $return) = $this->loanDetailGet($result['data']);
|
|
list($status, $return) = $this->loanDetailGet($result['data']);
|
|
if(! $status) return [false, $return];
|
|
if(! $status) return [false, $return];
|
|
|
|
|
|
|
|
+ if(! empty($return['list'])){
|
|
|
|
+ list($status,$msg) = $this->tradingPartner($return);
|
|
|
|
+ if(! $status) return [false, $msg];
|
|
|
|
+
|
|
|
|
+ foreach ($return['list'] as $key => $value){
|
|
|
|
+ $return['list'][$key]['tradingPartnerBizCodeType'] = $map[$value['tradingPartnerBizCode']] ?? [];
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
return [true, $return];
|
|
return [true, $return];
|
|
}
|
|
}
|
|
|
|
|
|
public function loanRule($data){
|
|
public function loanRule($data){
|
|
- if(empty($data['settledAtStart']) || empty($data['settledAtEnd'])) return [false, '单据的创建时间不能为空'];
|
|
|
|
|
|
+ if(empty($data['settledAtStart']) || empty($data['settledAtEnd'])) return [false, '单据的支付时间不能为空'];
|
|
$settledAtStart = strtotime($data['settledAtStart'] . '00:00:00');
|
|
$settledAtStart = strtotime($data['settledAtStart'] . '00:00:00');
|
|
$settledAtEnd = strtotime($data['settledAtEnd'] . '23:59:59');
|
|
$settledAtEnd = strtotime($data['settledAtEnd'] . '23:59:59');
|
|
- if(empty($settledAtStart)) return [false, '单据的创建开始时间格式错误'];
|
|
|
|
- if(empty($settledAtEnd)) return [false, '单据的创建结束时间格式错误'];
|
|
|
|
|
|
+ if(empty($settledAtStart)) return [false, '单据的支付时间格式错误'];
|
|
|
|
+ if(empty($settledAtEnd)) return [false, '单据的支付时间格式错误'];
|
|
|
|
|
|
$pageNo = 1;
|
|
$pageNo = 1;
|
|
$pageSize = 10;
|
|
$pageSize = 10;
|
|
@@ -266,6 +284,34 @@ class MayCurServerService extends Service
|
|
return [true, $result['data'] ?? []];
|
|
return [true, $result['data'] ?? []];
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public function tradingPartner($data){
|
|
|
|
+ if(empty($data['list'])) return [true, []];
|
|
|
|
+ $bizCodes = array_values(array_filter(array_unique(array_column($data['list'], 'tradingPartnerBizCode'))));
|
|
|
|
+ if(empty($bizCodes)) return [true, []];
|
|
|
|
+
|
|
|
|
+ $post = [
|
|
|
|
+ 'bizCodes' => $bizCodes,
|
|
|
|
+ ];
|
|
|
|
+
|
|
|
|
+ //获取token
|
|
|
|
+ list($status, $token) = $this->getToken();
|
|
|
|
+ if(! $status) return [false, $token];
|
|
|
|
+
|
|
|
|
+ $header = $this->head;
|
|
|
|
+ //每刻所有配置
|
|
|
|
+ $url_array = $this->param;
|
|
|
|
+ //组织获取参数
|
|
|
|
+ $url = $this->domain_url . $url_array['tradingPartner'];
|
|
|
|
+ $header = array_merge(['Content-Type:application/json'], $header);
|
|
|
|
+
|
|
|
|
+ list($status, $result) = $this->post_helper($url,$post, $header);
|
|
|
|
+ if(! $status) return [$status, $result];
|
|
|
|
+ if(isset($result['code']) && $result['code'] != 'ACK') return [false, $result['message']];
|
|
|
|
+
|
|
|
|
+ $map = array_column($result['data']['list'], 'partnerType','bizCode');
|
|
|
|
+ return [true, $map];
|
|
|
|
+ }
|
|
|
|
+
|
|
public function post_helper($url, $data, $header = [], $timeout = 20){
|
|
public function post_helper($url, $data, $header = [], $timeout = 20){
|
|
Log::channel('apiMcLog')->info('每刻POST', ["api" => $url , "param" => $data ,"header" => $header]);
|
|
Log::channel('apiMcLog')->info('每刻POST', ["api" => $url , "param" => $data ,"header" => $header]);
|
|
|
|
|