<?php

namespace app\admin\controller;

use think\App;
use think\facade\Db;

//数据统计类
class Data extends Base

{
    //数据看板,获取相关统计数据
    public function index()
    {
        $data = [];

        //1.今日销量(单数、金额)
        $today_sales_volume = Db::name('sale')
            ->field('count(id) orders_number,sum(total_price) money')
            ->where('is_del',0)
            ->whereDay('addtime','today')
            ->find();

        $data['today_sales_volume'] = [
            'orders_number' => isset($today_sales_volume['orders_number'])?$today_sales_volume['orders_number']:0,
            'money' =>  isset($today_sales_volume['money'])?$today_sales_volume['money']:0,
        ];

        //2.今日销冠(部门、姓名、单数、金额)
        $temp = Db::name('sale')
            ->field('count(id) orders,sum(total_price) money,apply_id')
            ->where('is_del',0)
            ->whereDay('addtime','today')
            ->group('apply_id')
            ->order('money','desc')
            ->limit(1)
            ->buildSql();

        $data['today_sales_champion'] = Db::table($temp)
            ->alias('t')
            ->field('t.apply_id,t.orders,t.money,u.itemid company_id,	c.`name` company,	u.nickname')
            ->leftJoin('depart_user u','u.uid=t.apply_id AND u.is_del=0')
            ->leftJoin('company_item c','c.id=u.itemid AND c.is_del=0')
            ->select()
            ->toArray();

        //3.今日采购(采购订单数量、商品数量、竞价单数、反馈商品数)
        $data['today_purchase'] = [
            'orders' => '0',
            'goods' => '0',
            'bidding_orders' => '0',
            'feedback_goods' => '0'
        ];

        //4.今日订单列表(按照完成率排序,前三名的部门、单数、金额)
        $data['today_order'] = [
            ['company' => 'xxx部', 'orders' => '30', 'money' => '300'],
            ['company' => 'xx部', 'orders' => '20', 'money' => '200'],
            ['company' => 'x部', 'orders' => '10', 'money' => '100'],
        ];

        //5.本月完成率列表(按照完成率排序,前三名的部门、完成单数和完成率,区分今日、本周、本月和毛利率状态:2达标、1最低、0不达标等情况)
        $data['month_completion_rate'] = [
            'today' => [
                ['company' => 'xxx部', 'completion' => 10, 'completion_rate' => '30%', 'type' => '2'],
                ['company' => 'xx部', 'completion' => 10, 'completion_rate' => '20%', 'type' => '1'],
                ['company' => 'x部', 'completion' => 10, 'completion_rate' => '10%', 'type' => '0'],
            ],
            'week' => [
                ['company' => 'xxx部', 'completion' => 10, 'completion_rate' => '30%', 'type' => '2'],
                ['company' => 'xx部', 'completion' => 10, 'completion_rate' => '20%', 'type' => '1'],
                ['company' => 'x部', 'completion' => 10, 'completion_rate' => '10%', 'type' => '0'],
            ],
            'month' => [
                ['company' => 'xxx部', 'completion' => 10, 'completion_rate' => '30%', 'type' => '2'],
                ['company' => 'xx部', 'completion' => 10, 'completion_rate' => '20%', 'type' => '1'],
                ['company' => 'x部', 'completion' => 10, 'completion_rate' => '10%', 'type' => '0'],
            ],
        ];

        //6.待开票(单数、金额)
        $data['wait_invoice'] = [
            'orders' => '10',
            'money' => '34.45'
        ];

        //7.待回款(单数、金额)
        $data['wait_return'] = [
            'orders' => '100',
            'money' => '3.45'
        ];

        //8.待回票(单数、金额)
        $data['wait_ticket'] = [
            'orders' => '8',
            'money' => '38.5'
        ];

        //9.待付款(单数、金额)
        $data['wait_payment'] = [
            'orders' => '34',
            'money' => '5338.58'
        ];



        //10.竞价(招标单数、未竞标单数)
        $data['bidding'] = [
            'bidding_orders' => '10',
            'no_bidding_orders' => '2'
        ];

        //11.采购单(采购单数、未下单数)
        $data['purchase'] = [
            'purchase_orders' => '10',
            'no_purchase_orders' => '2'
        ];

        //12.采购单(采购下单数、未生产单数)
        $data['purchase_2'] = [
            'orders' => '10',
            'no_orders' => '2'
        ];

        //13.未发货(单数、商品数)
        $data['no_deliver'] = [
            'orders' => '10',
            'goods' => '2'
        ];

        //14.转单率(部门名称、今日转单率、本月转单率,今年转单率,按照年度转单率排序)
        $data['transfer_order_rate'] = [
            ['company' => 'xxx部', 'today_tor' => '34%', 'month_tor' => '68%', 'year_tor' => '45%'],
            ['company' => 'xx部', 'today_tor' => '34%', 'month_tor' => '68%', 'year_tor' => '40%'],
            ['company' => 'x部', 'today_tor' => '34%', 'month_tor' => '68%', 'year_tor' => '6%'],
        ];

        return app_show(0, '请求成功', $data);

    }

}