Просмотр исходного кода

销售发票申请信息导出优化

wufeng 2 лет назад
Родитель
Сommit
5abb780d50
1 измененных файлов с 46 добавлено и 42 удалено
  1. 46 42
      app/admin/controller/Export.php

+ 46 - 42
app/admin/controller/Export.php

@@ -24,7 +24,7 @@ class Export extends BaseController
     public function invoicePoolExport()
     {
         $param = $this->request->only(['start' => '', 'end' => '', 'status' => '', 'inv_type' => '', 'inv_out' => '', 'invNo' => '', 'relaComNo' => '', 'inv_number' => '', 'inv_code' => '', 'inv_company' => '', 'buyer_name' => '', 'apply_id' => '', 'apply_name' => '',], 'post', 'trim');
-        $where = [['a.is_del', '=', 0]];
+        $where = [['a.is_del', '=', 0], ['e.status', 'in', [1, 2]]];
         if (($param['start'] != '') && ($param['end'] != '')) $where[] = ['a.addtime', 'between', [$param['start'] . ' 00:00:00', $param['end'] . ' 23:59:59']];
         if ($param['status'] != '') $where[] = ['a.status', '=', $param['status']];
         if ($param['inv_type'] != '') $where[] = ['a.inv_type', '=', $param['inv_type']];
@@ -45,9 +45,9 @@ class Export extends BaseController
             ->alias('a')
             ->field('a.inv_out 卖方公司编码,a.inv_company 卖方公司名称,a.invNo 申请编号,f.department 申请部门,a.apply_name 申请人,b.buyer_title 发票买方公司名称,b.buyer_code 发票买方企业纳税识别号,b.buyer_addr 发票买方企业地址,b.buyer_mobile 发票买方企业联系方式,b.buyer_bank 发票买方企业收款银行,b.buyer_bankNo 发票买方企业财务账户,d.orderCode 公司订单号,b.buyer_title 订单企业客户,d.goodName 订单商品名,g.inv_cat_code 税收分类编码,g.inv_cat_name 税收分类名称,d.goodName 发票明细商品名称,CONCAT(d.catName,"*",d.goodName) 发票货物或应税劳务、服务名称,d.unitName 单位,d.goodNum 数量,d.goodPrice 单价,d.tax 税率,d.totalPrice 总价,a.inv_type 开票种类,a.open_type 开票方式,a.remark 申请备注,c.remark 发票备注')
             ->leftJoin('invoice_pool_info b', 'a.invNo=b.invNo')
-            ->leftJoin('invoice_ticket c', 'a.invNo=c.invNo and c.type=0')
+            ->leftJoin('invoice_ticket c', 'a.invNo=c.invNo AND c.type=0 AND c.status=1')
             ->leftJoin('invoice_good d', 'd.invNo=a.invNo')
-            ->leftJoin('assoc e', 'e.orderCode=d.orderCode AND e.status=1 AND e.is_del=0')
+            ->leftJoin('assoc e', 'e.viceCode=d.invNo AND e.orderCode=d.orderCode AND e.is_del=0')
             ->leftJoin('qrd_info f', 'f.sequenceNo=e.orderCode')
             ->leftJoin('good g', 'g.spuCode=d.goodNo')
             ->withAttr('开票方式', function ($val) use ($open_type) {
@@ -600,16 +600,18 @@ class Export extends BaseController
         excelExport('用友销票表', array_keys($list[0]), $list);
 
     }
-	/** 采购单管理数据
-	* @throws \PHPExcel_Exception
-	* @throws \PHPExcel_Reader_Exception
-	* @throws \PHPExcel_Writer_Exception
-	* @throws \think\db\exception\DataNotFoundException
-	* @throws \think\db\exception\DbException
-	* @throws \think\db\exception\ModelNotFoundException
-	 */
-    public function cgdManage(){
-    	 $param = $this->request->only(['companyNo' => '', 'start' => '', 'end' => '',"supplierNo"=>''], 'post', 'trim');
+
+    /** 采购单管理数据
+     * @throws \PHPExcel_Exception
+     * @throws \PHPExcel_Reader_Exception
+     * @throws \PHPExcel_Writer_Exception
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
+     */
+    public function cgdManage()
+    {
+        $param = $this->request->only(['companyNo' => '', 'start' => '', 'end' => '', "supplierNo" => ''], 'post', 'trim');
 
         $where = [];
 
@@ -617,7 +619,7 @@ class Export extends BaseController
         if ($param['companyNo'] != '') $where[] = ['companyNo', '=', $param['companyNo']];
         if ($param['supplierNo'] != '') $where[] = ['supplierNo', '=', $param['supplierNo']];
         $data = Db::name("cgd_info")->where($where)
-        ->field("
+            ->field("
         sequenceNo '采购单编号',
         companyName '业务企业',
         supplierName '供应商名称',
@@ -648,37 +650,39 @@ class Export extends BaseController
         '' as '付款状态',
         '' as '回票状态'
         ")->cursor();
-		$list=[];
+        $list = [];
         foreach ($data as $value) {
 
-        	$value['采购单类型'] = $this->cgdType[$value['采购单类型']];
-        	$payinfo =Db::name("pay_info")->alias("a")
-        	->leftJoin("pay b","a.payNo=b.payNo and b.status=2")
-        	->where(["a.status"=>1,"a.is_del"=>0])
-        	->field("b.payNo,b.inv_status,b.pay_status")->find();
-        	$value['对账编号'] = $payinfo['payNo']??"";
-        	$value['付款状态'] = $this->pay_status[$payinfo['pay_status']??"1"] ;
-        	$value['回票状态'] = $this->inv_status[$payinfo['inv_status']??"1"];
-			$list[]=$value;
+            $value['采购单类型'] = $this->cgdType[$value['采购单类型']];
+            $payinfo = Db::name("pay_info")->alias("a")
+                ->leftJoin("pay b", "a.payNo=b.payNo and b.status=2")
+                ->where(["a.status" => 1, "a.is_del" => 0])
+                ->field("b.payNo,b.inv_status,b.pay_status")->find();
+            $value['对账编号'] = $payinfo['payNo'] ?? "";
+            $value['付款状态'] = $this->pay_status[$payinfo['pay_status'] ?? "1"];
+            $value['回票状态'] = $this->inv_status[$payinfo['inv_status'] ?? "1"];
+            $list[] = $value;
         }
 
         if (empty($list)) $list[] = ['导出数据为空' => ''];
 
         excelExport('采购单明细表', array_keys($list[0]), $list);
     }
-	/**
-	* 对账单汇总表
-	 */
-	public function payExport(){
-		 $param = $this->request->only(['companyNo' => '', 'start' => '', 'end' => '',"supplierNo"=>''], 'post', 'trim');
 
-        $where = [["is_del","=",0],["status","=",2]];
+    /**
+     * 对账单汇总表
+     */
+    public function payExport()
+    {
+        $param = $this->request->only(['companyNo' => '', 'start' => '', 'end' => '', "supplierNo" => ''], 'post', 'trim');
+
+        $where = [["is_del", "=", 0], ["status", "=", 2]];
 
         if (($param['start'] != '') && ($param['end'] != '')) $where[] = ['addtime', 'between', [$param['start'] . ' 00:00:00', $param['end'] . ' 23:59:59']];
         if ($param['companyNo'] != '') $where[] = ['companyNo', '=', $param['companyNo']];
         if ($param['supplierNo'] != '') $where[] = ['supplierNo', '=', $param['supplierNo']];
-        $data=Db::name("pay")->where($where)
-        ->field("
+        $data = Db::name("pay")->where($where)
+            ->field("
         companyName '业务公司',
         apply_name '申请人',
         addtime '申请时间',
@@ -700,17 +704,17 @@ class Export extends BaseController
          inv_tag as '回票加签时间',
          remark '备注'
         ")->cursor();
-            foreach ($data as $value) {
-            	$tag =Db::name("tag_log")->alias("a")->leftJoin("order_tag b","a.tag_id=b.id")->where(["a
-            	.code"=>$value['对账编号'],"a.status"=>1])->column("a.addtime","b.type");
-            $value['付款加签时间'] = $tag[1]??"";
-            $value['回票加签时间'] = $tag[2]??"";
-        	$value['付款状态'] = $this->pay_status[$value['付款状态']] ;
-        	$value['回票状态'] = $this->inv_status[$value['回票状态']];
-			$list[]=$value;
+        foreach ($data as $value) {
+            $tag = Db::name("tag_log")->alias("a")->leftJoin("order_tag b", "a.tag_id=b.id")->where(["a
+            	.code" => $value['对账编号'], "a.status" => 1])->column("a.addtime", "b.type");
+            $value['付款加签时间'] = $tag[1] ?? "";
+            $value['回票加签时间'] = $tag[2] ?? "";
+            $value['付款状态'] = $this->pay_status[$value['付款状态']];
+            $value['回票状态'] = $this->inv_status[$value['回票状态']];
+            $list[] = $value;
         }
-	 if (empty($list)) $list[] = ['导出数据为空' => ''];
+        if (empty($list)) $list[] = ['导出数据为空' => ''];
 
         excelExport('订单对账汇总表', array_keys($list[0]), $list);
-	}
+    }
 }