|
@@ -86,34 +86,22 @@ class NowReportHandle extends Command
|
|
|
//退货台账-业务口径
|
|
|
private function A(string $start_date = '', string $end_date = '')
|
|
|
{
|
|
|
-
|
|
|
- $data = Db::name('sale_return')
|
|
|
- ->alias('sr')
|
|
|
- ->field('sr.returnCode 退货单号,sr.status 流程进度,sr.addtime 退货发起日期,b.company 公司名称, ci1.name 退货人所在部门,sr.apply_name 退货人,sr.num 退货数量,sr.total_fee 退货销售货款,sr.remark 退货备注,c.companyName 客户名称,or.customer_code 客户编码,"" 一级组织,"" 二级组织,"" 三级组织,p.platform_name 平台名称,s.poNo PO编号,sr.orderCode 确认单编号,s.order_type 确认单类型,s.addtime 确认单下单时间,ci2.name 业务人员所在部门,s.apply_name 业务人员,sr.orderCode 确认单产品编号,sr.good_name 产品名称,sr.good_code 产品编码,"" 一级分类,s.cat_id,c.itemid')
|
|
|
- ->leftJoin('platform p', 'p.id = sr.platform_id')
|
|
|
- ->leftJoin('order_return or', 'or.orderCode = sr.orderCode')
|
|
|
- ->leftJoin('customer_info c', 'c.companyNo = or.customer_code')
|
|
|
- ->leftJoin('sale s', 's.orderCode = sr.orderCode')
|
|
|
- ->leftJoin('business b', 'b.companyNo = s.supplierNo')
|
|
|
- ->leftJoin('depart_user du1', 'du1.uid = sr.apply_id')
|
|
|
- ->leftJoin('company_item ci1', 'ci1.id = du1.itemid')
|
|
|
- ->leftJoin('depart_user du2', 'du2.uid = s.apply_id')
|
|
|
- ->leftJoin('company_item ci2', 'ci2.id = du2.itemid')
|
|
|
- ->where('sr.is_del', 0)
|
|
|
- ->whereBetween('sr.addtime', [$start_date, $end_date])
|
|
|
- ->order('sr.addtime', 'desc')
|
|
|
+ $data = Db::name('order_back')
|
|
|
+ ->alias('ob')
|
|
|
+ ->field('ob.thNo 退货单号,ob.status 流程进度,ob.addtime 退货发起日期,"" 退货人所在部门,ob.apply_name 退货人,ob.return_num 退货数量,ob.total_fee 退货销售货款,ob.remark 退货备注,c.companyName 客户名称,ob.customer_code 客户编码,"" 一级组织,"" 二级组织,"" 三级组织,p.platform_name 平台名称,s.poNo PO编号,s.orderCode 确认单编号,s.order_type 确认单类型,s.addtime 确认单下单时间,"" 业务人员所在部门,ob.cgder 业务人员,s.good_code 确认单产品编号,ob.good_name 产品名称,s.skuCode 产品编码,"" 一级分类,0 售前记录总数,ob.apply_id,ob.cgderid,s.cat_id,c.itemid')
|
|
|
+ ->leftJoin('sale s', 's.orderCode=ob.orderCode')
|
|
|
+ ->leftJoin('customer_info c', 'c.companyNo=ob.customer_code AND c.is_del=0')
|
|
|
+ ->leftJoin('platform p', 'p.id=ob.platform_id')
|
|
|
+ ->where(['ob.is_del' => 0, 'ob.status' => 4])
|
|
|
+ ->whereBetween('ob.addtime', [$start_date, $end_date])
|
|
|
->cursor();
|
|
|
|
|
|
- $all_sale_return_status = [1 => '待业务审批', 2 => '待专员审批', 3 => '待主管审批', 4 => '退货完成', 5 => '业务驳回', 6 => '采购驳回', 7 => '专员审批不通过'];
|
|
|
- $all_sale_order_type = [1 => '备库', 2 => '非库存', 3 => '咨询采反', 4 => '项目采反', 5 => '平台部订单销售',];
|
|
|
+ $all_status = [1 => '待业务审批', 2 => '待专员审批', 3 => '待主管审批', 4 => '退货完成', 5 => '业务驳回', 6 => '采购驳回', 7 => '专员审批不通过'];
|
|
|
+ $all_order_type = [1 => '备库', 2 => '非库存', 3 => '咨询采反', 4 => '项目采反', 5 => '平台部订单库存品', 6 => '平台部订单非库存品'];
|
|
|
$list = [];
|
|
|
foreach ($data as $value) {
|
|
|
|
|
|
- $value['流程进度'] = isset($all_sale_return_status[$value['流程进度']]) ? $all_sale_return_status[$value['流程进度']] : '';
|
|
|
- $value['确认单类型'] = isset($all_sale_order_type[$value['确认单类型']]) ? $all_sale_order_type[$value['确认单类型']] : '';
|
|
|
-
|
|
|
- $top = made($value['cat_id']);
|
|
|
- $value['一级分类'] = isset($top[0]['name']) ? $top[0]['name'] : '';
|
|
|
+ $value['流程进度'] = isset($all_status[$value['流程进度']]) ? $all_status[$value['流程进度']] : '';
|
|
|
|
|
|
if (!empty($value['itemid'])) {
|
|
|
$customer_org1 = get_top_customer_org($value['itemid']);
|
|
@@ -133,8 +121,16 @@ class NowReportHandle extends Command
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ $value['退货人所在部门'] = get_company_name_by_uid($value['apply_id']);
|
|
|
+ $value['业务人员所在部门'] = get_company_name_by_uid($value['cgderid']);
|
|
|
+ $value['确认单类型'] = isset($all_order_type[$value['确认单类型']]) ? $all_order_type[$value['确认单类型']] : '';
|
|
|
+ $top = made($value['cat_id']);
|
|
|
+ $value['一级分类'] = isset($top[0]['name']) ? $top[0]['name'] : '';
|
|
|
+ $value['售前记录总数'] = Db::name('sale_return')->where(['orderCode' => $value['确认单编号'], 'is_del' => 0])->count('id');
|
|
|
unset($value['cat_id']);
|
|
|
unset($value['itemid']);
|
|
|
+ unset($value['apply_id']);
|
|
|
+ unset($value['cgderid']);
|
|
|
|
|
|
yield $list[] = $value;
|
|
|
}
|
|
@@ -188,43 +184,32 @@ class NowReportHandle extends Command
|
|
|
//退货台账
|
|
|
private function C(string $start_date = '', string $end_date = '')
|
|
|
{
|
|
|
-
|
|
|
- $data = Db::name('sale_return')
|
|
|
- ->alias('sr')
|
|
|
- ->field('DATE_FORMAT(sr.addtime,"%Y") 年,DATE_FORMAT(sr.addtime,"%m") 月,DATE_FORMAT(sr.addtime,"%d") 日,b.company 公司名称,sr.returnCode 退货单号,sr.status 流程进度,ci2.name 业务人员所在部门,s.apply_name 业务人员,sr.orderCode 订单编号,p.platform_name 平台名称,s.workNo 平台订单号,"" 一级组织,"" 二级组织,"" 三级组织,c.companyName 客户名称,gp.spuCode 产品编码,sr.good_name 产品名称,"" 一级分类,"" 二级分类,"" 三级分类,cat.fund_code 财务核算码,u.unit 单位,sr.num 退货数量,s.sale_price 销售单价,round(sale_price*sr.num,2) 退货销售货款,sr.remark 退货备注,on.cgdNo 采购单号,po.cgder 采购员,po.nake_fee 成本裸价,po.pakge_fee 包装费,po.delivery_fee 物流费,po.cert_fee 证书费,po.mark_fee 加标费,po.open_fee 开模费,po.diff_weight 工差,po.diff_fee 采购工差金额,po.good_price 采购单价,round(sr.num*po.good_price-po.diff_fee,2) 退货采购货款,gb.tax 采购税点,supp.name 供应商名称,wi.name 库房名称,pi.sendtype 发货方式,supp.pay_type 结算方式,c.itemid,s.cat_id')
|
|
|
- ->leftJoin('platform p', 'p.id = sr.platform_id')
|
|
|
- ->leftJoin('order_return or', 'or.orderCode = sr.orderCode')
|
|
|
- ->leftJoin('customer_info c', 'c.companyNo = or.customer_code')
|
|
|
- ->leftJoin('sale s', 's.orderCode = sr.orderCode')
|
|
|
- ->leftJoin('business b', 'b.companyNo = s.supplierNo')
|
|
|
- ->leftJoin('depart_user du2', 'du2.uid = s.apply_id')
|
|
|
- ->leftJoin('company_item ci2', 'ci2.id = du2.itemid')
|
|
|
- ->leftJoin('good_platform gp', 'gp.skuCode = s.skuCode')
|
|
|
- ->leftJoin('good_basic gb', 'gb.spuCode = gp.spuCode')
|
|
|
- ->leftJoin('unit u', 'u.id = gb.good_unit')
|
|
|
- ->leftJoin('order_num on', 'on.orderCode =sr.orderCode')
|
|
|
+ $data = Db::name('order_back')
|
|
|
+ ->alias('ob')
|
|
|
+ ->field('DATE_FORMAT(ob.addtime,"%Y") 年,DATE_FORMAT(ob.addtime,"%m") 月,DATE_FORMAT(ob.addtime,"%d") 日,c.companyName 公司名称,ob.thNo 退货单号,ob.status 流程进度,"" 业务人员部门,ob.cgder 业务人员,ob.orderCode 订单编号,p.platform_name 平台名称,s.workNo 平台订单号,"" 一级组织,"" 二级组织,"" 三级组织,c.companyName 客户名称,s.good_code 产品编码,ob.good_name 产品名称,"" 一级分类,"" 二级分类,"" 三级分类,cat.fund_code 财务核算码,gb.good_unit 单位,ob.return_num 退货数量,s.sale_price 销售单价,0.00 退货销售货款,ob.remark 退货备注,on.cgdNo 采购单号,po.cgder 采购员,po.nake_fee 成本裸价,po.pakge_fee 包装费,po.delivery_fee 物流费,po.cert_fee 证书费,po.mark_fee 加标费,po.open_fee 开模费,po.diff_weight 工差,po.diff_fee 采购工差金额,po.good_price 采购单价,0.00 退货采购货款,gb.tax 采购税点,supp.name 供应商名称,wi.name 库房名称,pi.sendtype 发货方式,supp.pay_type 结算方式,"" 售前记录总数,c.itemid,s.cat_id,ob.cgderid')
|
|
|
+ ->leftJoin('sale s', 's.orderCode=ob.orderCode')
|
|
|
+ ->leftJoin('customer_info c', 'c.companyNo=ob.customer_code AND c.is_del=0')
|
|
|
+ ->leftJoin('platform p', 'p.id=ob.platform_id')
|
|
|
->leftJoin('cat cat', 'cat.id =s.cat_id')
|
|
|
+ ->leftJoin('order_num on', 'on.orderCode =ob.orderCode')
|
|
|
->leftJoin('purchease_order po', 'po.cgdNo =on.cgdNo')
|
|
|
- ->leftJoin('purchease_in pi', 'pi.cgdNo =on.cgdNo')
|
|
|
- ->leftJoin('supplier supp', 'supp.code =s.supplierNo')
|
|
|
+ ->leftJoin('good_basic gb', 'gb.spuCode =ob.good_code')
|
|
|
+ ->leftJoin('supplier supp', 'supp.code =po.supplierNo')
|
|
|
->leftJoin('warehouse_info wi', 'wi.wsm_code =po.wsm_code')
|
|
|
- ->where('sr.is_del', 0)
|
|
|
- ->whereBetween('sr.addtime', [$start_date, $end_date])
|
|
|
- ->order('sr.addtime', 'desc')
|
|
|
+ ->leftJoin('purchease_in pi', 'pi.cgdNo =on.cgdNo')
|
|
|
+ ->where(['ob.is_del' => 0, 'ob.status' => 4])
|
|
|
+ ->whereBetween('ob.addtime', [$start_date, $end_date])
|
|
|
->cursor();
|
|
|
|
|
|
- $all_sale_return_status = [1 => '待业务审批', 2 => '待专员审批', 3 => '待主管审批', 4 => '退货完成', 5 => '业务驳回', 6 => '采购驳回', 7 => '专员审批不通过'];
|
|
|
+ $all_status = [1 => '待业务审批', 2 => '待专员审批', 3 => '待主管审批', 4 => '退货完成', 5 => '业务驳回', 6 => '采购驳回', 7 => '专员审批不通过'];
|
|
|
$all_sendtype = [1 => '公司自提', 2 => '供应商包邮'];
|
|
|
+ $all_pay_type = [0 => '现结', 1 => '月清', 2 => '双月清'];
|
|
|
+
|
|
|
$list = [];
|
|
|
foreach ($data as $value) {
|
|
|
|
|
|
- $value['流程进度'] = isset($all_sale_return_status[$value['流程进度']]) ? $all_sale_return_status[$value['流程进度']] : '';
|
|
|
- $value['发货方式'] = isset($all_sendtype[$value['发货方式']]) ? $all_sendtype[$value['发货方式']] : '';
|
|
|
-
|
|
|
- $top = made($value['cat_id']);
|
|
|
- $value['一级分类'] = isset($top[0]['name']) ? $top[0]['name'] : '';
|
|
|
- $value['二级分类'] = isset($top[1]['name']) ? $top[1]['name'] : '';
|
|
|
- $value['三级分类'] = isset($top[2]['name']) ? $top[2]['name'] : '';
|
|
|
+ $value['流程进度'] = isset($all_status[$value['流程进度']]) ? $all_status[$value['流程进度']] : '';
|
|
|
+ $value['结算方式'] = isset($all_pay_type[$value['结算方式']]) ? $all_pay_type[$value['结算方式']] : '';
|
|
|
|
|
|
if (!empty($value['itemid'])) {
|
|
|
$customer_org1 = get_top_customer_org($value['itemid']);
|
|
@@ -244,8 +229,20 @@ class NowReportHandle extends Command
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ $value['业务人员部门'] = get_company_name_by_uid($value['cgderid']);
|
|
|
+ $top = made($value['cat_id']);
|
|
|
+ $value['一级分类'] = isset($top[0]['name']) ? $top[0]['name'] : '';
|
|
|
+ $value['二级分类'] = isset($top[1]['name']) ? $top[1]['name'] : '';
|
|
|
+ $value['三级分类'] = isset($top[2]['name']) ? $top[2]['name'] : '';
|
|
|
+
|
|
|
+ $value['售前记录总数'] = Db::name('sale_return')->where(['orderCode' => $value['订单编号'], 'is_del' => 0])->count('id');
|
|
|
+ $value['发货方式'] = isset($all_sendtype[$value['发货方式']]) ? $all_sendtype[$value['发货方式']] : '';
|
|
|
+ $value['退货销售货款'] = round($value['退货数量'] * $value['销售单价'], 2);
|
|
|
+ $value['退货采购货款'] = round($value['退货数量'] * $value['采购单价'] - $value['采购工差金额'], 2);
|
|
|
+
|
|
|
unset($value['cat_id']);
|
|
|
unset($value['itemid']);
|
|
|
+ unset($value['cgderid']);
|
|
|
|
|
|
yield $list[] = $value;
|
|
|
}
|
|
@@ -254,6 +251,7 @@ class NowReportHandle extends Command
|
|
|
|
|
|
}
|
|
|
|
|
|
+ //出入库明细
|
|
|
public function D($start,$end){
|
|
|
$list =Db::name("order_out")->alias('woo')->leftJoin("sale a","a.orderCode=woo.orderCode")
|
|
|
->leftJoin("order_back wor","wor.outCode=woo.outCode and wor.status=4")
|
|
@@ -327,6 +325,7 @@ class NowReportHandle extends Command
|
|
|
return $data;
|
|
|
}
|
|
|
|
|
|
+ //备库单入库明细
|
|
|
public function E($start,$end){
|
|
|
$list =Db::name("purchease_in")->alias('wpi')->leftJoin("purchease_order wpo","wpo.cgdNo=wpi.cgdNo")
|
|
|
->leftJoin("purchease wp","wpo.bkcode=wp.bk_code")
|