|
@@ -398,12 +398,6 @@ class OrderInv extends BaseController{
|
|
|
Db::rollback();
|
|
|
return error_show(1004,"开票商品信息未找到");
|
|
|
}
|
|
|
-// $taxArr=array_column($goodinfo,"SL");
|
|
|
-// if(count(array_unique($taxArr))>1){
|
|
|
-// array_walk($goodinfo,function (&$v){
|
|
|
-// $v['SL']='';
|
|
|
-// });
|
|
|
-// }
|
|
|
$data=[
|
|
|
"invNo"=>$invNo,
|
|
|
"KPLX"=>"0",
|
|
@@ -624,18 +618,100 @@ class OrderInv extends BaseController{
|
|
|
"remark|审核备注"=>"max:255",
|
|
|
]);
|
|
|
if($valid->check($param)==false) return error_show(1004,$valid->getError());
|
|
|
- $list =Db::name("invoice_pool")->where(["invNo"=>$param['invNos'],"status"=>1,"is_del"=>0])->column("id");
|
|
|
+ $list =Db::name("invoice_pool")->where(["invNo"=>$param['invNos'],"status"=>1,"is_del"=>0])->column("invNo,company_type,email,inv_value,inv_type,remark","invNo");
|
|
|
if(empty($list)) return error_show(1004,"未找到有效数据");
|
|
|
- $up =Db::name("invoice_pool")
|
|
|
- ->where(["id"=>$list,"status"=>1,"is_del"=>0])
|
|
|
- ->update([
|
|
|
- "status"=>$param['status'],
|
|
|
- "open_type"=>$param['open_type'],
|
|
|
- "exam_remark"=>$param['remark'],
|
|
|
- "updatetime"=>date("Y-m-d H:i:s")
|
|
|
- ]);
|
|
|
- if($up==false) return error_show(1004,"数据审核失败");
|
|
|
- return app_show(0,"数据审核成功");
|
|
|
+ Db::startTrans();
|
|
|
+ try {
|
|
|
+ if($param['open_type']==1 && $param['status']==2){
|
|
|
+ $param['status']=3;
|
|
|
+ $interall=[];
|
|
|
+ foreach ($list as $key=>$value){
|
|
|
+ $invpoolinfo =Db::name("invoice_pool_info")->where(["invNo"=>$key])->findOrEmpty();
|
|
|
+ if(empty($invpoolinfo)){
|
|
|
+ Db::rollback();
|
|
|
+ return error_show(1004,"开票信息未找到");
|
|
|
+ }
|
|
|
+ $goodinfo =Db::name("invoice_good")
|
|
|
+ ->where(["invNo"=>$key,"is_del"=>0])
|
|
|
+ ->field("0 as FPHXZ,
|
|
|
+ catNo as SPBM,
|
|
|
+ id as ZXBM,
|
|
|
+ is_discount as YHZCBS,
|
|
|
+ if(inv_tag=0,'',inv_tag) as LSLBS,
|
|
|
+ addTax as ZZSTSGL,
|
|
|
+ goodName as XMMC,
|
|
|
+ specInfo as GGXH,
|
|
|
+ unitName as DW,
|
|
|
+ goodNum as SPSL,
|
|
|
+ goodPrice as DJ,
|
|
|
+ totalPrice as JE,
|
|
|
+ 1 HSBZ,
|
|
|
+ tax as SL,
|
|
|
+ taxPrice as SE")
|
|
|
+ ->select()->toArray();
|
|
|
+ if(empty($goodinfo)){
|
|
|
+ throw new \Exception("开票商品信息未找到");
|
|
|
+ }
|
|
|
+ $data=[
|
|
|
+ "invNo"=>$key,
|
|
|
+ "KPLX"=>"0",
|
|
|
+ "XHFSBH"=>$invpoolinfo['seller_code'],
|
|
|
+ "XHFMC"=>$invpoolinfo['seller_title'],
|
|
|
+ "XHFDZ"=>$invpoolinfo['seller_addr'],
|
|
|
+ "XHFDH"=>$invpoolinfo['seller_mobile'],
|
|
|
+ "XHFYH"=>$invpoolinfo['seller_bank'],
|
|
|
+ "XHFZH"=>$invpoolinfo['seller_bankNo'],
|
|
|
+ "GMFBM"=>"",
|
|
|
+ "GMFSBH"=>$invpoolinfo['buyer_code'],
|
|
|
+ "GMFMC"=>$invpoolinfo['buyer_title'],
|
|
|
+ "GMFDZ"=>$invpoolinfo['buyer_addr'],
|
|
|
+ "GMFDH"=>$invpoolinfo['buyer_mobile'],
|
|
|
+ "GMFYH"=>$invpoolinfo['buyer_bank'],
|
|
|
+ "GMFZH"=>$invpoolinfo['buyer_bankNo'],
|
|
|
+ "GMFLX"=>$value['company_type'],
|
|
|
+ "GMFSJH"=>"",
|
|
|
+ "GMFDZYX"=>$value['email'],
|
|
|
+ "KPR"=>$invpoolinfo['drawer'],
|
|
|
+ "SKR"=>$invpoolinfo['payee'],
|
|
|
+ "FHR"=>$invpoolinfo['reviewer'],
|
|
|
+ "QDBZ"=>"0",
|
|
|
+ "JSHJ"=>$value['inv_value'],
|
|
|
+ "HJJE"=>"0",
|
|
|
+ "HJSE"=>"0",
|
|
|
+ "BZ"=>$value['remark'],
|
|
|
+ "DDMXXX"=>json_encode($goodinfo,JSON_UNESCAPED_UNICODE),
|
|
|
+ "FPLXDM"=>$this->kingInvoice[$value['inv_type']],
|
|
|
+ "DDQQPCH"=>"",
|
|
|
+ "DDQQLSH"=>randomkeys(26).date("YmdHis"),
|
|
|
+ "status"=>"0",
|
|
|
+ "result"=>"",
|
|
|
+ "addtime"=>date("Y-m-d H:i:s"),
|
|
|
+ "updatetime"=>date("Y-m-d H:i:s")
|
|
|
+ ];
|
|
|
+ $interall[]=$data;
|
|
|
+ }
|
|
|
+
|
|
|
+ $invoice=Db::name("invoice_interface")->insertAll($interall);
|
|
|
+ if($invoice==false){
|
|
|
+ throw new \Exception("开票信息生成失败");
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ $up =Db::name("invoice_pool")
|
|
|
+ ->where(["invNo"=>array_keys($list),"status"=>1,"is_del"=>0])
|
|
|
+ ->update([
|
|
|
+ "status"=>$param['status'],
|
|
|
+ "open_type"=>$param['open_type'],
|
|
|
+ "exam_remark"=>$param['remark'],
|
|
|
+ "updatetime"=>date("Y-m-d H:i:s")
|
|
|
+ ]);
|
|
|
+ if($up==false) throw new \Exception("数据批量审核失败");
|
|
|
+ Db::commit();
|
|
|
+ return app_show(0,"数据审核成功");
|
|
|
+ }catch (\Exception $e){
|
|
|
+ Db::rollback();
|
|
|
+ return error_show(1004,$e->getMessage());
|
|
|
+ }
|
|
|
}
|
|
|
/**
|
|
|
* 发票废弃使用
|