wugg %!s(int64=2) %!d(string=hai) anos
pai
achega
4c588481ef
Modificáronse 1 ficheiros con 35 adicións e 33 borrados
  1. 35 33
      app/admin/controller/Export.php

+ 35 - 33
app/admin/controller/Export.php

@@ -11,14 +11,14 @@ class Export extends BaseController
 
     //相关字段的文字转换
     private $qrdType = [1 => '库存品', 2 => '非库存品', 3 => '采购反馈'];
-    private $qrdSource = [1 => '直接下单', 2 => '竞价转单', 3 => '项目转单', 4 => '平台导入', 5 => '有赞平台', 6 => '售后补换货'];
+    private $qrdSource = [1 => '直接下单', 2 => '竞价转单', 3 => '项目转单', 4 => '平台导入', 5 => '有赞平台', 6 => '售后补换货',7=>'报备转单',8=>'支付渠道拆单'];
     private $sendType = [1 => '包邮', 2 => '自提'];
-    private $inv_status = [1 => '未开', 2 => '部分', 3 => '已开'];
-    private $pay_status = [1 => '未回', 2 => '部分', 3 => '已回'];
+    private $pay_status = [1 => '未付', 2 => '部分付款', 3 => '已付'];
+    private $inv_status = [1 => '未回', 2 => '部分回票', 3 => '已回'];
     private $invoice_pool_status = [1 => '财务审核通过', 2 => '待财务上传发票', 3 => '金税开票中/验票中', 4 => '开票成功', 5 => '开票失败', 6 => '发票退票/废弃', 7 => '取消申请', 8 => '财务驳回', 9 => '验票失败'];
     private $cgdType = [1 => '库存', 2 => '非库存', 3 => '咨询'];
     private $invoice_return_status = [0 => '待财务审核', 1 => '退票中', 2 => '退票成功', 3 => '审核驳回', 4 => '退票失败'];
-    private $sendStatus = [];
+    private $sendStatus = [1=>'未发货',2=>'部分发货',3=>'全部发货'];
 
     //销售发票申请信息导出
     public function invoicePoolExport()
@@ -294,9 +294,9 @@ class Export extends BaseController
         $data = Db::name('qrd_info')
             ->alias('a')
             ->field('
-            DATE_FORMAT(a.addtime,\'%Y\') 年,
-            DATE_FORMAT(a.addtime,\'%m\') 月,
-            DATE_FORMAT(a.addtime,\'%d\') 日,
+            DATE_FORMAT(a.createdTime,\'%Y\') 年,
+            DATE_FORMAT(a.createdTime,\'%m\') 月,
+            DATE_FORMAT(a.createdTime,\'%d\') 日,
             a.companyName 业务公司名称,
             a.companyNo 业务公司编号,
             a.department 销售部门,
@@ -304,6 +304,7 @@ class Export extends BaseController
             a.qrdSource 订单来源,
             "" 活动类型,
             a.sequenceNo 确认单编号,
+            a.cxCode 销售订单号,
             b.bkCode 备库单编号,
             b.sequenceNo 采购单单号,
             a.platName 平台类型,
@@ -321,8 +322,6 @@ class Export extends BaseController
             a.goodPrice 销售单价,
             a.totalPrice 销售总额,
             round(a.tax/100,2) 税点,
-            a.inv_status 开票状态,
-            a.pay_status 回款状态,
             b.ownerName 采购员,
             b.goodPrice 采购裸价,
             b.markPrice 加标费,
@@ -340,8 +339,8 @@ class Export extends BaseController
             a.qrdType 库存性质,
             b.supplierName 供应商名称,
             b.sendType 发货方式,
-            b.thNum 退货数量,
-            b.fundCode 财务核算编码')
+            a.thNum 退货数量,
+            a.fundCode 财务核算编码')
             ->leftJoin('cgd_info b', 'b.qrdCode=a.sequenceNo')
             ->where($where)
             ->order(['a.id' => 'desc'])
@@ -352,13 +351,13 @@ class Export extends BaseController
         foreach ($data as $value) {
             $value['订单来源'] = $this->qrdSource[$value['订单来源']] ?? '';
             $value['库存性质'] = $this->qrdType[$value['库存性质']] ?? '';
-            $value['开票状态'] = $this->inv_status[$value['开票状态']] ?? '';
-            $value['回款状态'] = $this->pay_status[$value['回款状态']] ?? '';
+//            $value['开票状态'] = $this->inv_status[$value['开票状态']] ?? '';
+//            $value['回款状态'] = $this->pay_status[$value['回款状态']] ?? '';
             $value['发货方式'] = $this->sendType[$value['发货方式']] ?? '';
 
             $value['毛利润'] = round(bcsub($value['销售总额'], $value['采购总货款'], 3), 2);
             $value['毛利率'] = $value['销售总额'] == 0 ? 0 : round(bcmul(bcsub(1, bcdiv($value['采购总货款'], $value['销售总额'], 5), 5), 100), 2) . '%';
-            $value['不含税采购成本'] = round(bcdiv($value['采购总货款'], bcadd(1, bcdiv($value['采购税点'], 100, 3)), 3), 2);
+            $value['不含税采购成本'] = round(bcdiv($value['采购总货款'], bcadd(1,$value['采购税点']), 3), 2);
 
             $list[] = $value;
         }
@@ -461,13 +460,11 @@ class Export extends BaseController
         $data = Db::name('qrd_info')
             ->alias('a')
             ->field('
-            a.addtime,
-            DATE_FORMAT(a.addtime,\'%Y\') 年,
-            DATE_FORMAT(a.addtime,\'%m\') 月,
-            DATE_FORMAT(a.addtime,\'%d\') 日,
+            a.createdTime 下单时间,        
             a.companyName 业务公司名称,
             a.companyNo 业务公司编号,
-            a.sequenceNo 销售单编号,
+            a.sequenceNo 业务订单编号,
+            a.cxCode 销售订单主编号,
             a.department 销售部门,
             a.ownerName 销售员,
             a.qrdSource 订单来源,
@@ -481,7 +478,8 @@ class Export extends BaseController
             round(a.tax/100,2) 税点,
             (a.goodNum - a.thNum) 下单数量,
             a.goodPrice 销售单价,
-            (a.totalPrice - a.th_fee) 销售总额,
+            a.totalPrice 销售总额,
+            a.th_fee 退货总额,
             a.pay_status 回款状态,
             a.apay_fee 总已回款,
             a.pay_fee 回款中,
@@ -493,7 +491,7 @@ class Export extends BaseController
             a.winv_fee 总未开票,
             a.inv_tag_fee 开票标签金额,
             a.invtime 最近开票时间,
-            d.addtime 业务提票时间,
+            "" 业务提票时间,
             a.paytime 最近回款时间,
             0 账期,
             0 比率,
@@ -503,8 +501,6 @@ class Export extends BaseController
             "" 最近一次发货时间            
             ')
             ->leftJoin('cgd_info b', 'b.qrdCode=a.sequenceNo')
-            ->leftJoin('assoc c', 'c.orderCode=a.sequenceNo')
-            ->leftJoin('invoice_pool d', 'd.invNo=c.viceCode')
             ->where($where)
             ->order(['a.id' => 'desc'])
             ->cursor();
@@ -518,20 +514,19 @@ class Export extends BaseController
             $value['回款状态'] = $this->pay_status[$value['回款状态']] ?? '';
             $value['开票状态'] = $this->inv_status[$value['开票状态']] ?? '';
             $value['发货状态'] = $this->sendStatus[$value['发货状态']] ?? '';
-
+			$value['业务提票时间'] =Db::name("assoc")->where(["type"=>1,"status"=>2,"is_del"=>0])->order("id desc")->value('addtime','');
             //计算账期
-            $value['账期'] = round(bcdiv(bcsub($time, strtotime($value['addtime']), 3), 86400, 3), 2);
+            $value['账期'] = round(bcdiv(bcsub($time,strtotime($value['最近回款时间']??$value['下单时间']), 3), 86400, 3),
+             2);
             $value['比率'] = round(bcdiv($value['账期'], 30, 1));
             $value['订单是否超期'] = $value['比率'] > 6 ? '是' : '否';
 
-            $value['开票是否超期'] = round(bcdiv(bcsub($time, $value['最近开票时间'], 1), 86400, 1)) > 15 ? '是' : '否';
+            $value['开票是否超期'] = round(bcdiv(bcsub($time, strtotime($value['最近开票时间']??$value['下单时间']), 1), 86400, 1)) > 15 ? '是' : '否';
 
             $value['最近一次发货时间'] = Db::table('fh_source')
                 ->where(['qrdNo' => $value['销售单编号']])
                 ->order(['id' => 'desc'])
                 ->value('send_date', '');
-
-            unset($value['addtime']);
             $list[] = $value;
         }
 
@@ -656,11 +651,13 @@ class Export extends BaseController
             $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])
+                ->where(["a.status" => 1, "a.is_del" => 0,'cgdNo'=>$value['采购单编号']])
                 ->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"];
+            $value['是否库存'] = $value['是否库存']==1?'是':'否';
+            $value['发货状态'] = $this->sendStatus[$value['发货状态']];
             $list[] = $value;
         }
 
@@ -687,7 +684,7 @@ class Export extends BaseController
         apply_name '申请人',
         addtime '申请时间',
         supplierName '供应商名称',
-         addtime '对账时间',
+         addtime '付款时间',
          payNo '对账编号',
          total_fee '对账总额',
          apay_fee '已付款',
@@ -696,18 +693,23 @@ class Export extends BaseController
          inv_status '付款状态',
          pay_tag_fee '付款加签金额',
          pay_tag as '付款加签时间',
+         '' as '付款标签名称',
          ainv_fee '已回票',
          inv_fee '回票中',
          winv_fee '未回票',
          inv_status '回票状态',
          inv_tag_fee '回票加签金额',
          inv_tag as '回票加签时间',
+         '' 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] ?? "";
+            $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.tag_name", "b.type");
+            $value['付款加签时间'] = $tag[1]['addtime'] ?? "";
+            $value['回票加签时间'] = $tag[2]['addtime'] ?? "";
+            $value['回票标签名称'] = $tag[2]['tag_name'] ?? "";
+            $value['付款标签名称'] = $tag[1]['tag_name']?? "";
             $value['付款状态'] = $this->pay_status[$value['付款状态']];
             $value['回票状态'] = $this->inv_status[$value['回票状态']];
             $list[] = $value;