|
@@ -394,7 +394,7 @@ class Report extends Base
|
|
|
|
|
|
}
|
|
|
|
|
|
- //【二、咨询单报表】1.已采反报价信息
|
|
|
+ //【二、咨询单报表】1.已采反报价信息_列表
|
|
|
public function consultInfoBidsSum()
|
|
|
{
|
|
|
$param = $this->request->only([
|
|
@@ -404,13 +404,78 @@ class Report extends Base
|
|
|
'end_date' => '',
|
|
|
'page' => 1,
|
|
|
'size' => 15,
|
|
|
- 'is_export' => 0,//是否导出,1导出,0不导出
|
|
|
], 'post', 'trim');
|
|
|
|
|
|
$val_params = Validate::rule([
|
|
|
'start_date' => 'date|elt:end_date',
|
|
|
'end_date' => 'date',
|
|
|
- 'is_export' => 'in:0,1',
|
|
|
+ ]);
|
|
|
+
|
|
|
+ if (!$val_params->check($param)) return error_show(1004, $val_params->getError());
|
|
|
+
|
|
|
+ $where = [['cb.is_del', '=', 0]];
|
|
|
+
|
|
|
+ if ($param['start_date'] != '' && $param['end_date'] != '') $where[] = ['cb.addtime', 'between', [$param['start_date'] . ' 00:00:00', $param['end_date'] . ' 23:59:59']];
|
|
|
+ if (!empty($param['zxNo'])) $where[] = ['cb.zxNo', 'in', $param['zxNo']];
|
|
|
+
|
|
|
+
|
|
|
+ $total = Db::name('consult_bids')
|
|
|
+ ->alias('cb')
|
|
|
+ ->where($where)
|
|
|
+ ->count('cb.id');
|
|
|
+
|
|
|
+ $data = Db::name('consult_bids')
|
|
|
+ ->alias('cb')
|
|
|
+ ->field('cb.id,ci.addtime,cb.bidNo,cb.zxNo,cb.addtime cbaddtime,cb.good_name,s.name supplier,cb.total_fee,cb.delivery_day,cb.work_day,cb.expire_day,cb.creater,ci.num,ci.arrival_time,co.salesman,csi.companyName')
|
|
|
+ ->leftJoin('consult_info ci', 'ci.infoNo=cb.infoNo AND ci.is_del=0')
|
|
|
+ ->leftJoin('consult_order co', 'co.zxNo=cb.zxNo AND co.is_del=0')
|
|
|
+ ->leftJoin('supplier s', 's.code=cb.supplierNo AND s.is_del=0')
|
|
|
+ ->leftJoin('customer_info csi', 'csi.companyNo=co.khNo AND csi.is_del=0')
|
|
|
+ ->where($where)
|
|
|
+ ->page($param['page'], $param['size'])
|
|
|
+ ->select()
|
|
|
+ ->toArray();
|
|
|
+
|
|
|
+ //汇总
|
|
|
+ $data[] = [
|
|
|
+ 'id' => 0,
|
|
|
+ 'addtime' => '汇总',
|
|
|
+ 'bidNo' => '',
|
|
|
+ 'zxNo' => '',
|
|
|
+ 'cbaddtime' => '',
|
|
|
+ 'good_name' => '',
|
|
|
+ 'supplier' => '',
|
|
|
+ 'total_fee' => array_sum(array_column($data, 'total_fee')),
|
|
|
+ 'delivery_day' => '',
|
|
|
+ 'work_day' => '',
|
|
|
+ 'expire_day' => '',
|
|
|
+ 'creater' => '',
|
|
|
+ 'num' => array_sum(array_column($data, 'num')),
|
|
|
+ 'arrival_time' => '',
|
|
|
+ 'salesman' => '',
|
|
|
+ 'companyName' => '',
|
|
|
+ ];
|
|
|
+
|
|
|
+ return app_show(0, '请求成功', ['list' => $data, 'total' => $total]);
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ //【二、咨询单报表】1.已采反报价信息_导出
|
|
|
+ public function consultInfoBidsSumExport()
|
|
|
+ {
|
|
|
+ $param = $this->request->only([
|
|
|
+ 'token',
|
|
|
+ 'zxNo' => [],
|
|
|
+ 'start_date' => '',
|
|
|
+ 'end_date' => '',
|
|
|
+ 'page' => 1,
|
|
|
+ 'size' => 15,
|
|
|
+ ], 'post', 'trim');
|
|
|
+
|
|
|
+ $val_params = Validate::rule([
|
|
|
+ 'start_date' => 'date|elt:end_date',
|
|
|
+ 'end_date' => 'date',
|
|
|
]);
|
|
|
|
|
|
if (!$val_params->check($param)) return error_show(1004, $val_params->getError());
|
|
@@ -422,78 +487,87 @@ class Report extends Base
|
|
|
if ($param['start_date'] != '' && $param['end_date'] != '') $rs->whereBetween('cb.addtime', [$param['start_date'] . ' 00:00:00', $param['end_date'] . ' 23:59:59']);
|
|
|
if (!empty($param['zxNo'])) $rs->whereIn('cb.zxNo', $param['zxNo']);
|
|
|
|
|
|
- if ($param['is_export'] == 1) {
|
|
|
- $data = $rs
|
|
|
- ->field('ci.addtime as 咨询时间,cb.bidNo as 采购单反馈单号,cb.zxNo as 咨询订单号,cb.addtime as 回复时间,cb.good_name as 产品名称,s.name as 供应商名称,cb.total_fee 成本合计,cb.delivery_day 物流时间,cb.work_day 产品工期,cb.expire_day 信息有效期,cb.creater 采购员,ci.num 需求数量,ci.arrival_time 要求到货日期,co.salesman 业务人员,csi.companyName 客户名称')
|
|
|
- ->leftJoin('consult_info ci', 'ci.infoNo=cb.infoNo AND ci.is_del=0')
|
|
|
- ->leftJoin('consult_order co', 'co.zxNo=cb.zxNo AND co.is_del=0')
|
|
|
- ->leftJoin('supplier s', 's.code=cb.supplierNo AND s.is_del=0')
|
|
|
- ->leftJoin('customer_info csi', 'csi.companyNo=co.khNo AND csi.is_del=0')
|
|
|
- ->select()
|
|
|
- ->toArray();
|
|
|
|
|
|
- if (empty($data)) $data[] = '没有可供导出的数据';
|
|
|
+ $data = $rs
|
|
|
+ ->field('ci.addtime as 咨询时间,cb.bidNo as 采购单反馈单号,cb.zxNo as 咨询订单号,cb.addtime as 回复时间,cb.good_name as 产品名称,s.name as 供应商名称,cb.total_fee 成本合计,cb.delivery_day 物流时间,cb.work_day 产品工期,cb.expire_day 信息有效期,cb.creater 采购员,ci.num 需求数量,ci.arrival_time 要求到货日期,co.salesman 业务人员,csi.companyName 客户名称')
|
|
|
+ ->leftJoin('consult_info ci', 'ci.infoNo=cb.infoNo AND ci.is_del=0')
|
|
|
+ ->leftJoin('consult_order co', 'co.zxNo=cb.zxNo AND co.is_del=0')
|
|
|
+ ->leftJoin('supplier s', 's.code=cb.supplierNo AND s.is_del=0')
|
|
|
+ ->leftJoin('customer_info csi', 'csi.companyNo=co.khNo AND csi.is_del=0')
|
|
|
+ ->select()
|
|
|
+ ->toArray();
|
|
|
|
|
|
- $headerArr = array_keys($data[0]);
|
|
|
- excelSave('咨询单报表-已采反报价信息' . date('YmdHis'), $headerArr, $data);
|
|
|
+ if (empty($data)) $data[] = '没有可供导出的数据';
|
|
|
|
|
|
- } else {
|
|
|
+ $headerArr = array_keys($data[0]);
|
|
|
+ excelSave('咨询单报表-已采反报价信息' . date('YmdHis'), $headerArr, $data);
|
|
|
|
|
|
- $total = $rs->count('cb.id');
|
|
|
+ }
|
|
|
|
|
|
- $data = $rs
|
|
|
- ->field('cb.id,ci.addtime,cb.bidNo,cb.zxNo,cb.addtime cbaddtime,cb.good_name,s.name supplier,cb.total_fee,cb.delivery_day,cb.work_day,cb.expire_day,cb.creater,ci.num,ci.arrival_time,co.salesman,csi.companyName')
|
|
|
- ->leftJoin('consult_info ci', 'ci.infoNo=cb.infoNo AND ci.is_del=0')
|
|
|
- ->leftJoin('consult_order co', 'co.zxNo=cb.zxNo AND co.is_del=0')
|
|
|
- ->leftJoin('supplier s', 's.code=cb.supplierNo AND s.is_del=0')
|
|
|
- ->leftJoin('customer_info csi', 'csi.companyNo=co.khNo AND csi.is_del=0')
|
|
|
- ->page($param['page'], $param['size'])
|
|
|
- ->select()
|
|
|
- ->toArray();
|
|
|
+ //【二、咨询单报表】2.未采反信息_列表
|
|
|
+ public function consultInfoBidsSumNot()
|
|
|
+ {
|
|
|
+ $param = $this->request->only([
|
|
|
+ 'token',
|
|
|
+ 'companyName' => '',
|
|
|
+ 'start_date' => '',
|
|
|
+ 'end_date' => '',
|
|
|
+ 'page' => 1,
|
|
|
+ 'size' => 15,
|
|
|
+ ], 'post', 'trim');
|
|
|
|
|
|
- //汇总
|
|
|
- $data[] = [
|
|
|
- 'id' => 0,
|
|
|
- 'addtime' => '汇总',
|
|
|
- 'bidNo' => '',
|
|
|
- 'zxNo' => '',
|
|
|
- 'cbaddtime' => '',
|
|
|
- 'good_name' => '',
|
|
|
- 'supplier' => '',
|
|
|
- 'total_fee' => array_sum(array_column($data, 'total_fee')),
|
|
|
- 'delivery_day' => '',
|
|
|
- 'work_day' => '',
|
|
|
- 'expire_day' => '',
|
|
|
- 'creater' => '',
|
|
|
- 'num' => array_sum(array_column($data, 'num')),
|
|
|
- 'arrival_time' => '',
|
|
|
- 'salesman' => '',
|
|
|
- 'companyName' => '',
|
|
|
- ];
|
|
|
+ $val_params = Validate::rule([
|
|
|
+ 'start_date' => 'date|elt:end_date',
|
|
|
+ 'end_date' => 'date',
|
|
|
+ ]);
|
|
|
|
|
|
- return app_show(0, '请求成功', ['list' => $data, 'total' => $total]);
|
|
|
+ if (!$val_params->check($param)) return error_show(1004, $val_params->getError());
|
|
|
+
|
|
|
+ $where = [['cb.is_del', '=', 0]];
|
|
|
+
|
|
|
+ if ($param['start_date'] != '' && $param['end_date'] != '') $where[] = ['ci.addtime', 'between', [$param['start_date'] . ' 00:00:00', $param['end_date'] . ' 23:59:59']];
|
|
|
+ if ($param['companyName'] != '') $where[] = ['csi.companyName', 'like', '%' . $param['companyName'] . '%'];
|
|
|
+
|
|
|
+
|
|
|
+ $total = Db::name('consult_bids')
|
|
|
+ ->alias('cb')
|
|
|
+ ->leftJoin('consult_info ci', 'ci.infoNo=cb.infoNo AND ci.is_del=0')
|
|
|
+ ->leftJoin('consult_order co', 'co.zxNo=cb.zxNo AND co.is_del=0')
|
|
|
+ ->leftJoin('customer_info csi', 'csi.companyNo=co.khNo AND csi.is_del=0')
|
|
|
+ ->where($where)
|
|
|
+ ->order('co.endtime', 'desc')
|
|
|
+ ->count('cb.id');
|
|
|
+
|
|
|
+ $data = Db::name('consult_bids')
|
|
|
+ ->alias('cb')
|
|
|
+ ->field('cb.zxNo,cb.good_name,ci.num,csi.companyName,ci.addtime,co.endtime')
|
|
|
+ ->leftJoin('consult_info ci', 'ci.infoNo=cb.infoNo AND ci.is_del=0')
|
|
|
+ ->leftJoin('consult_order co', 'co.zxNo=cb.zxNo AND co.is_del=0')
|
|
|
+ ->leftJoin('customer_info csi', 'csi.companyNo=co.khNo AND csi.is_del=0')
|
|
|
+ ->where($where)
|
|
|
+ ->order('co.endtime', 'desc')
|
|
|
+ ->page($param['page'], $param['size'])
|
|
|
+ ->select()
|
|
|
+ ->toArray();
|
|
|
+
|
|
|
+ return app_show(0, '请求成功', ['list' => $data, 'total' => $total]);
|
|
|
|
|
|
- }
|
|
|
|
|
|
}
|
|
|
|
|
|
- //【二、咨询单报表】2.未采反信息
|
|
|
- public function consultInfoBidsSumNot()
|
|
|
+ //【二、咨询单报表】2.未采反信息_导出
|
|
|
+ public function consultInfoBidsSumNotExport()
|
|
|
{
|
|
|
$param = $this->request->only([
|
|
|
'token',
|
|
|
'companyName' => '',
|
|
|
'start_date' => '',
|
|
|
'end_date' => '',
|
|
|
- 'page' => 1,
|
|
|
- 'size' => 15,
|
|
|
- 'is_export' => 0,//是否导出,1导出,0不导出
|
|
|
], 'post', 'trim');
|
|
|
|
|
|
$val_params = Validate::rule([
|
|
|
'start_date' => 'date|elt:end_date',
|
|
|
'end_date' => 'date',
|
|
|
- 'is_export' => 'in:0,1',
|
|
|
]);
|
|
|
|
|
|
if (!$val_params->check($param)) return error_show(1004, $val_params->getError());
|
|
@@ -509,50 +583,34 @@ class Report extends Base
|
|
|
if ($param['start_date'] != '' && $param['end_date'] != '') $rs->whereBetween('ci.addtime', [$param['start_date'] . ' 00:00:00', $param['end_date'] . ' 23:59:59']);
|
|
|
if ($param['companyName'] != '') $rs->whereLike('csi.companyName', '%' . $param['companyName'] . '%');
|
|
|
|
|
|
- if ($param['is_export'] == 1) {
|
|
|
- $data = $rs
|
|
|
- ->field('cb.zxNo 咨询订单号,cb.good_name 产品名称,ci.num 需求数量,csi.companyName 客户名称,ci.addtime 咨询时间,co.endtime 截止时间')
|
|
|
- ->select()
|
|
|
- ->toArray();
|
|
|
-
|
|
|
- if (empty($data)) $data[] = '没有可供导出的数据';
|
|
|
-
|
|
|
- $headerArr = array_keys($data[0]);
|
|
|
- excelSave('咨询单报表-未采反信息' . date('YmdHis'), $headerArr, $data);
|
|
|
-
|
|
|
- } else {
|
|
|
-
|
|
|
- $total = $rs->count('cb.id');
|
|
|
+ $data = $rs
|
|
|
+ ->field('cb.zxNo 咨询订单号,cb.good_name 产品名称,ci.num 需求数量,csi.companyName 客户名称,ci.addtime 咨询时间,co.endtime 截止时间')
|
|
|
+ ->select()
|
|
|
+ ->toArray();
|
|
|
|
|
|
- $data = $rs
|
|
|
- ->field('cb.zxNo,cb.good_name,ci.num,csi.companyName,ci.addtime,co.endtime')
|
|
|
- ->page($param['page'], $param['size'])
|
|
|
- ->select()
|
|
|
- ->toArray();
|
|
|
+ if (empty($data)) $data[] = '没有可供导出的数据';
|
|
|
|
|
|
- return app_show(0, '请求成功', ['list' => $data, 'total' => $total]);
|
|
|
+ $headerArr = array_keys($data[0]);
|
|
|
+ excelSave('咨询单报表-未采反信息' . date('YmdHis'), $headerArr, $data);
|
|
|
|
|
|
- }
|
|
|
|
|
|
}
|
|
|
|
|
|
- //【三、订单明细报表】
|
|
|
+ //【三、订单明细报表】列表
|
|
|
public function orderListDetailed()
|
|
|
{
|
|
|
$param = $this->request->only([
|
|
|
'token',
|
|
|
- 'addtime_start' => date('Y-m-d'),
|
|
|
- 'addtime_end' => date('Y-m-d'),
|
|
|
+ 'addtime_start' => '',
|
|
|
+ 'addtime_end' => '',
|
|
|
'status' => '',
|
|
|
'page' => 1,
|
|
|
'size' => 15,
|
|
|
- 'is_export' => 0,//是否导出,1导出,0不导出
|
|
|
], 'post', 'trim');
|
|
|
|
|
|
$val_params = Validate::rule([
|
|
|
'start_date' => 'date|elt:end_date',
|
|
|
'end_date' => 'date',
|
|
|
- 'is_export' => 'in:0,1',
|
|
|
]);
|
|
|
|
|
|
if (!$val_params->check($param)) return error_show(1004, $val_params->getError());
|
|
@@ -567,88 +625,114 @@ class Report extends Base
|
|
|
$all_status = ['待与供应商确认', '待入库', '部分入库', '入库完成', '已取消订单'];
|
|
|
$all_send_status = [1 => '未发货', 2 => '部分发货', 3 => '已发货'];
|
|
|
|
|
|
- if ($param['is_export'] == 1) {
|
|
|
- $data = Db::name('purchease_order')
|
|
|
- ->alias('po')
|
|
|
- ->field('po.cgdNo 采购单编号,po.addtime 创建时间,po.supplierNo 供应商编号,po.supplier_name 供应商名称,po.good_name 产品名称,po.good_num 购买数量,po.nake_fee 裸价,po.total_fee 成本合计,po.status 单据状态,po.send_status 发货状态,po.wsend_num 未发货数量,"" 创建人,b.company 客户名称,po.cgder 采购员,"" 发货时间,on.orderCode,po.order_type,po.bkcode,po.spuCode')
|
|
|
- ->leftJoin('business b', 'b.companyNo=po.companyNo AND b.is_del=0')
|
|
|
- ->leftJoin('order_num on', 'on.cgdNo=po.cgdNo')
|
|
|
- ->cursor();
|
|
|
|
|
|
- $list = [];
|
|
|
+ $total = Db::name('purchease_order')
|
|
|
+ ->alias('po')
|
|
|
+ ->leftJoin('business b', 'b.companyNo=po.companyNo AND b.is_del=0')
|
|
|
+ ->count('po.id');
|
|
|
|
|
|
- foreach ($data as $v) {
|
|
|
+ $data = Db::name('purchease_order')
|
|
|
+ ->alias('po')
|
|
|
+ ->field('po.cgdNo,po.addtime,po.supplierNo,po.supplier_name,po.good_name,po.good_num,po.nake_fee,po.total_fee,po.status,po.send_status,po.wsend_num,"" creater,b.company,po.cgder,"" send_time,on.orderCode,po.order_type,po.bkcode,po.spuCode')
|
|
|
+ ->leftJoin('business b', 'b.companyNo=po.companyNo AND b.is_del=0')
|
|
|
+ ->leftJoin('order_num on', 'on.cgdNo=po.cgdNo')
|
|
|
+ ->page($param['page'], $param['size'])
|
|
|
+ ->cursor();
|
|
|
|
|
|
- //单据状态
|
|
|
- $v['单据状态'] = isset($all_status[$v['单据状态']]) ? $all_status[$v['单据状态']] : '';
|
|
|
+ $list = [];
|
|
|
+ foreach ($data as $v) {
|
|
|
|
|
|
- //发货状态
|
|
|
- $v['发货状态'] = isset($all_send_status[$v['发货状态']]) ? $all_send_status[$v['发货状态']] : '';
|
|
|
+ //单据状态
|
|
|
+ $v['status'] = isset($all_status[$v['status']]) ? $all_status[$v['status']] : '';
|
|
|
|
|
|
- //创建人//order_type==1备库单
|
|
|
- if ($v['order_type'] == 1) $v['创建人'] = Db::name('purchease')->where(['bk_code' => $v['bkcode'], 'spuCode' => $v['spuCode'], 'is_del' => 0])->value('apply_name', '');
|
|
|
- else $v['创建人'] = Db::name('sale')->where(['orderCode' => $v['orderCode'], 'is_del' => 0])->value('apply_name', '');
|
|
|
+ //发货状态
|
|
|
+ $v['send_status'] = isset($all_send_status[$v['send_status']]) ? $all_send_status[$v['send_status']] : '';
|
|
|
|
|
|
- //创建时间
|
|
|
- $v['发货时间'] = Db::name('order_out')
|
|
|
- ->where(['orderCode' => $v['orderCode']])
|
|
|
- ->order('addtime', 'desc')
|
|
|
- ->value('addtime');
|
|
|
+ //创建人//order_type==1备库单
|
|
|
+ if ($v['order_type'] == 1) $v['creater'] = Db::name('purchease')->where(['bk_code' => $v['bkcode'], 'spuCode' => $v['spuCode'], 'is_del' => 0])->value('apply_name', '');
|
|
|
+ else $v['creater'] = Db::name('sale')->where(['orderCode' => $v['orderCode'], 'is_del' => 0])->value('apply_name', '');
|
|
|
|
|
|
- unset($v['orderCode']);
|
|
|
- unset($v['order_type']);
|
|
|
- unset($v['bkcode']);
|
|
|
- unset($v['spuCode']);
|
|
|
+ //创建时间
|
|
|
+ $v['send_time'] = Db::name('order_out')
|
|
|
+ ->where(['orderCode' => $v['orderCode']])
|
|
|
+ ->order('addtime', 'desc')
|
|
|
+ ->value('addtime');
|
|
|
|
|
|
- $list[] = $v;
|
|
|
- }
|
|
|
+ $list[] = $v;
|
|
|
+ }
|
|
|
+
|
|
|
+ return app_show(0, '请求成功', ['list' => $list, 'total' => $total]);
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ //【三、订单明细报表】导出
|
|
|
+ public function orderListDetailedExport()
|
|
|
+ {
|
|
|
+ $param = $this->request->only([
|
|
|
+ 'token',
|
|
|
+ 'addtime_start' => '',
|
|
|
+ 'addtime_end' => '',
|
|
|
+ 'status' => '',
|
|
|
+ ], 'post', 'trim');
|
|
|
+
|
|
|
+ $val_params = Validate::rule([
|
|
|
+ 'start_date' => 'date|elt:end_date',
|
|
|
+ 'end_date' => 'date',
|
|
|
+ ]);
|
|
|
|
|
|
- if (empty($list)) $list[] = '没有可供导出的数据';
|
|
|
+ if (!$val_params->check($param)) return error_show(1004, $val_params->getError());
|
|
|
|
|
|
- $headerArr = array_keys($list[0]);
|
|
|
- excelSave('订单明细报表' . date('YmdHis'), $headerArr, $list);
|
|
|
+ $rs = Db::name('purchease_order')
|
|
|
+ ->alias('po')
|
|
|
+ ->leftJoin('business b', 'b.companyNo=po.companyNo AND b.is_del=0');
|
|
|
|
|
|
- } else {
|
|
|
+ if ($param['addtime_start'] != '' && $param['addtime_end'] != '') $rs->whereBetween('po.addtime', [$param['addtime_start'] . ' 00:00:00', $param['addtime_end'] . ' 23:59:59']);
|
|
|
+ if ($param['status'] != '') $rs->where('po.status', '=', $param['status']);
|
|
|
|
|
|
- $total = Db::name('purchease_order')
|
|
|
- ->alias('po')
|
|
|
- ->leftJoin('business b', 'b.companyNo=po.companyNo AND b.is_del=0')
|
|
|
- ->count('po.id');
|
|
|
+ $all_status = ['待与供应商确认', '待入库', '部分入库', '入库完成', '已取消订单'];
|
|
|
+ $all_send_status = [1 => '未发货', 2 => '部分发货', 3 => '已发货'];
|
|
|
|
|
|
- $data = Db::name('purchease_order')
|
|
|
- ->alias('po')
|
|
|
- ->field('po.cgdNo,po.addtime,po.supplierNo,po.supplier_name,po.good_name,po.good_num,po.nake_fee,po.total_fee,po.status,po.send_status,po.wsend_num,"" creater,b.company,po.cgder,"" send_time,on.orderCode,po.order_type,po.bkcode,po.spuCode')
|
|
|
- ->leftJoin('business b', 'b.companyNo=po.companyNo AND b.is_del=0')
|
|
|
- ->leftJoin('order_num on', 'on.cgdNo=po.cgdNo')
|
|
|
- ->page($param['page'], $param['size'])
|
|
|
- ->cursor();
|
|
|
+ $data = Db::name('purchease_order')
|
|
|
+ ->alias('po')
|
|
|
+ ->field('po.cgdNo 采购单编号,po.addtime 创建时间,po.supplierNo 供应商编号,po.supplier_name 供应商名称,po.good_name 产品名称,po.good_num 购买数量,po.nake_fee 裸价,po.total_fee 成本合计,po.status 单据状态,po.send_status 发货状态,po.wsend_num 未发货数量,"" 创建人,b.company 客户名称,po.cgder 采购员,"" 发货时间,on.orderCode,po.order_type,po.bkcode,po.spuCode')
|
|
|
+ ->leftJoin('business b', 'b.companyNo=po.companyNo AND b.is_del=0')
|
|
|
+ ->leftJoin('order_num on', 'on.cgdNo=po.cgdNo')
|
|
|
+ ->cursor();
|
|
|
|
|
|
- $list = [];
|
|
|
- foreach ($data as $v) {
|
|
|
+ $list = [];
|
|
|
|
|
|
- //单据状态
|
|
|
- $v['status'] = isset($all_status[$v['status']]) ? $all_status[$v['status']] : '';
|
|
|
+ foreach ($data as $v) {
|
|
|
|
|
|
- //发货状态
|
|
|
- $v['send_status'] = isset($all_send_status[$v['send_status']]) ? $all_send_status[$v['send_status']] : '';
|
|
|
+ //单据状态
|
|
|
+ $v['单据状态'] = isset($all_status[$v['单据状态']]) ? $all_status[$v['单据状态']] : '';
|
|
|
|
|
|
- //创建人//order_type==1备库单
|
|
|
- if ($v['order_type'] == 1) $v['creater'] = Db::name('purchease')->where(['bk_code' => $v['bkcode'], 'spuCode' => $v['spuCode'], 'is_del' => 0])->value('apply_name', '');
|
|
|
- else $v['creater'] = Db::name('sale')->where(['orderCode' => $v['orderCode'], 'is_del' => 0])->value('apply_name', '');
|
|
|
+ //发货状态
|
|
|
+ $v['发货状态'] = isset($all_send_status[$v['发货状态']]) ? $all_send_status[$v['发货状态']] : '';
|
|
|
|
|
|
- //创建时间
|
|
|
- $v['send_time'] = Db::name('order_out')
|
|
|
- ->where(['orderCode' => $v['orderCode']])
|
|
|
- ->order('addtime', 'desc')
|
|
|
- ->value('addtime');
|
|
|
+ //创建人//order_type==1备库单
|
|
|
+ if ($v['order_type'] == 1) $v['创建人'] = Db::name('purchease')->where(['bk_code' => $v['bkcode'], 'spuCode' => $v['spuCode'], 'is_del' => 0])->value('apply_name', '');
|
|
|
+ else $v['创建人'] = Db::name('sale')->where(['orderCode' => $v['orderCode'], 'is_del' => 0])->value('apply_name', '');
|
|
|
|
|
|
- $list[] = $v;
|
|
|
- }
|
|
|
+ //创建时间
|
|
|
+ $v['发货时间'] = Db::name('order_out')
|
|
|
+ ->where(['orderCode' => $v['orderCode']])
|
|
|
+ ->order('addtime', 'desc')
|
|
|
+ ->value('addtime');
|
|
|
|
|
|
- return app_show(0, '请求成功', ['list' => $list, 'total' => $total]);
|
|
|
+ unset($v['orderCode']);
|
|
|
+ unset($v['order_type']);
|
|
|
+ unset($v['bkcode']);
|
|
|
+ unset($v['spuCode']);
|
|
|
|
|
|
+ $list[] = $v;
|
|
|
}
|
|
|
|
|
|
+ if (empty($list)) $list[] = '没有可供导出的数据';
|
|
|
+
|
|
|
+ $headerArr = array_keys($list[0]);
|
|
|
+ excelSave('订单明细报表' . date('YmdHis'), $headerArr, $list);
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|