瀏覽代碼

Merge branch 'dev-wgg' of wugg/cxinv into dev

wugg 1 年之前
父節點
當前提交
73b7bc2144

+ 4 - 2
app/admin/command/GetOrderInfoAndInvoiceInfo.php

@@ -103,14 +103,16 @@ class GetOrderInfoAndInvoiceInfo extends Command
 					Db::name("invoice_interface")->where(["DDQQLSH"=>$value['DDFPXX']['DDQQLSH']])->update(["status"=>2,"result"=>$exit,"remark"=>$ztxx,"updatetime"=>date("Y-m-d H:i:s")]);
 				}
 				if($zt=='031999' ||$zt=='032997'||$zt=='032999'||$zt=='032998' ){
-					Db::name("invoice_interface")->where(["DDQQLSH"=>$value['DDFPXX']['DDQQLSH']])->update(["status"=>4,"is_check"=>1,"remark"=>$ztxx,"updatetime"=>date("Y-m-d H:i:s")]);
+					Db::name("invoice_interface")->where(["DDQQLSH"=>$value['DDFPXX']['DDQQLSH']])->update(["status"=>4,"remark"=>$ztxx,"updatetime"=>date("Y-m-d H:i:s")]);
 				}
 				if($zt=='031000' ||$zt=='032000'){
 					Db::name("invoice_interface")->where(["DDQQLSH"=>$value['DDFPXX']['DDQQLSH']])->update(["remark"=>$ztxx,"updatetime"=>date("Y-m-d H:i:s")]);
 				}
 			}
 		}else{
-			throw new \Exception($result['message']);
+			Db::name("invoice_interface")->where($order)->update(["status"=>4,"remark"=>$result['message']?? $result['ZTXX'],"updatetime"=>date("Y-m-d H:i:s")]);
+			echo "[".date("Y-m-d H:i:s")."]";
+			echo $result['message']?? $result['ZTXX'] ."\r\n";
 		}
     }
 

+ 37 - 23
app/admin/command/downredinvres.php

@@ -25,7 +25,7 @@ class downredinvres extends Command
     {
 		$GetOrderInfoAndInvoiceInfo= Cache::store("redis")->get("downredinvres");
        if($GetOrderInfoAndInvoiceInfo==1) return '';
-       	Cache::store("redis")->set("downredinvres",1,60);
+       	Cache::store("redis")->set("downredinvres",1,160);
         Db::startTrans();
         $date= date("Y-m-d H:i:s");
         $row =Db::name("invoice_red")->where(["status"=>1,"is_del"=>0])->where("updatetime","<=",date("Y-m-d H:i:s"))
@@ -41,36 +41,37 @@ class downredinvres extends Command
 		$invoice=Config::get("invoice");
 		$Tax =new \TaxInvoice($invoice['appKey'],$invoice['appSecret'],$invoice['entCode']);
 		if($row['addtime']==$row['updatetime']){
-			$pch=randomkeys(26).date("YmdHis");
+			$pch=randomkeys(8).md5(date("YmdHis").$row['id']);
 			$data['SQBSCQQPCH']=$pch;
-		}else{
-			$data['SQBSCQQPCH']=$row['SQBSCQQPCH'];
+			$row['SQBSCQQPCH'] =$pch;
 		}
-
-		$result=$Tax->DownloadRedInvoiceApplicationResult($data['SQBSCQQPCH'],$row['XHFSBH'],$row['FPLXDM'],$opendatetime,$opendatetime);
+		$result=$Tax->DownloadRedInvoiceApplicationResult($row['SQBSCQQPCH'],$row['XHFSBH'],$row['FPLXDM'],$opendatetime,$opendatetime);
 		if(isset($result['ZTDM']) && $result['ZTDM']=='060000'){
 			if(isset($result['HZSQDXZZXX']) && !empty($result['HZSQDXZZXX'])){
+				$limimt=[];
 				foreach ($result['HZSQDXZZXX'] as $item){
 					$resultChild=$item['HZSQDXZTXX'];
+					$temp=[];
+					if(isset($limimt[$resultChild['YFPHM']]) &&$limimt[$resultChild['YFPHM']]['status']==2 ) continue;
+					$temp['YFPDM']=$resultChild['YFPDM'];
+					$temp['YFPHM']=$resultChild['YFPHM'];
+					$temp['XXBBH']=$resultChild['XXBBH'];
+					$temp['remark']=$resultChild['ZTXX'];
+					$temp['updatetime']=date("Y-m-d H:i:s");
 					if($resultChild['ZTDM']=='060000'){
-						$data['status']=2;
-						$data['XXBBH']=$resultChild['XXBBH'];
-						$data['remark']=$resultChild['ZTXX'];
+						$temp['status']=2;
 					}elseif($resultChild['ZTDM']=='069999'){
-						$data['status']=5;
-						$data['XXBBH']=$resultChild['XXBBH'];
-						$data['remark']=$resultChild['ZTXX'];
+						$temp['status']=5;
 					}else{
-						$data['status']=1;
-						$data['XXBBH']=$resultChild['XXBBH'];
-						$data['remark']=$resultChild['ZTXX'];
-					}
-					$where=["YFPDM"=>$resultChild['YFPDM'],"YFPHM"=>$resultChild['YFPHM'],"status"=>1];
-					$row= Db::name("invoice_red")->where($where)->update($data);
-					if($row){
-						if($data['status']==2)$this->AddRed($resultChild['YFPDM'],$resultChild['YFPHM']);
-						if($data['status']==5)$this->updateReturn($resultChild['YFPDM'],$resultChild['YFPHM'],$resultChild['ZTXX']);
+						$temp['status']=1;
 					}
+					$limimt[$resultChild['YFPHM']] = $temp;
+				}
+				if(empty($limimt)){
+					$data['remark']=$result['ZTXX'];
+					Db::name('invoice_red')->where($row)->update($data);
+				}else{
+					$this->checkData($limimt);
 				}
 			}
 		}else{
@@ -82,7 +83,7 @@ class downredinvres extends Command
 		$output->writeln("[$date] ".$row['invRed'].'发票申请表获取成功');
         }catch (\Exception $e){
 			Db::rollback();
-			$output->writeln("[$date] ".$row['invRed'].$e->getMessage());
+			$output->writeln("[$date] ".$row['invRed'].$e->getMessage().$e->getLine());
         }
 
     }
@@ -137,7 +138,7 @@ class downredinvres extends Command
 							"DDMXXX"=>$red['DDMXXX'],
 							"FPLXDM"=>$red['FPLXDM'],
 							"DDQQPCH"=>"",
-							"DDQQLSH"=>randomkeys(26).date("YmdHis"),
+							"DDQQLSH"=>randomkeys(8).md5(date('YmdHis').$red['id']),
 							"status"=>"0",
 							"result"=>"",
 							"addtime"=>date("Y-m-d H:i:s"),
@@ -162,4 +163,17 @@ class downredinvres extends Command
 		if(empty($fp)) throw new \Exception("未找到红票申请信息表");
 		Db::name("invoice_return")->where(["returnCode"=>$fp['returnCode'],"status"=>1])->update(["status"=>4,"updatetime"=>date("Y-m-d H:i:s"),"remark"=>$remark]);
 	}
+	
+	
+	public function checkData($resultChildArr){
+		foreach ($resultChildArr as $resultChild){
+			$where=['YFPDM'=>$resultChild['YFPDM'] , 'YFPHM'=>$resultChild['YFPHM'] , 'status'=>1];
+			$row=Db::name('invoice_red')->where($where)->update($resultChild);
+			if ($row) {
+				if ($resultChild['status'] == 2) $this->AddRed($resultChild['YFPDM'] , $resultChild['YFPHM']);
+				if ($resultChild['status'] == 5) $this->updateReturn($resultChild['YFPDM'] , $resultChild['YFPHM'] ,$resultChild['remark']);
+			}
+		}
+	
+	}
 }

+ 8 - 8
app/admin/controller/OrderInv.php

@@ -1201,7 +1201,7 @@ class OrderInv extends BaseController{
 
 	/**
 	* @param array $ticket
-	 * @return \think\response\Json|void
+	 * @return \think\response\Json|void|array
 	* @throws \think\db\exception\DataNotFoundException
 	* @throws \think\db\exception\DbException
 	* @throws \think\db\exception\ModelNotFoundException
@@ -1312,16 +1312,16 @@ class OrderInv extends BaseController{
 		$data['status']=5;
 		$data['remark']='红冲申请提交失败';
 
-		if(isset($result['ZTDM']) && $result['ZTDM']=='060000'){
-			$resultChild=$result['HZSQDSCJG'][0];
-			if($resultChild['ZTDM']=='060000'){
-				$data['status']=2;
-				$data['XXBBH']=$resultChild['XXBBH'];
+		if(isset($result['ZTDM'])){
+//			$resultChild=$result['HZSQDSCJG'][0];
+			if($result['ZTDM']=='060000'){
+				$data['status']=1;
+//				$data['XXBBH']=$resultChild['XXBBH'];
 				$data['remark']='红冲申请审核通过';
 			}
-			if($resultChild['ZTDM']=='060001'){
+			if($result['ZTDM']=='060001'){
 				$data['status']=1;
-				$data['XXBBH']=$resultChild['XXBBH'];
+//				$data['XXBBH']=$resultChild['XXBBH'];
 				$data['remark']='红冲申请审核中';
 			}
 		}