|
|
@@ -30,6 +30,7 @@ use app\common\repositories\wechat\WechatNewsRepository;
|
|
30
|
30
|
use app\common\repositories\wechat\WechatUserRepository;
|
|
31
|
31
|
use app\validate\admin\UserNowMoneyValidate;
|
|
32
|
32
|
use app\validate\admin\UserValidate;
|
|
|
33
|
+use crmeb\services\SpreadsheetExcelService;
|
|
33
|
34
|
use FormBuilder\Exception\FormBuilderException;
|
|
34
|
35
|
use think\App;
|
|
35
|
36
|
use think\db\exception\DataNotFoundException;
|
|
|
@@ -1440,6 +1441,37 @@ class User extends BaseController
|
|
1440
|
1441
|
}
|
|
1441
|
1442
|
|
|
1442
|
1443
|
/**
|
|
|
1444
|
+ * 获取统计导出
|
|
|
1445
|
+ */
|
|
|
1446
|
+ public function getStatisticsExcel($header,$arr,$title)
|
|
|
1447
|
+ {
|
|
|
1448
|
+ $filename = $title.'_'.date('YmdHis').'_'.rand(10000,99999);
|
|
|
1449
|
+ $name = $filename;
|
|
|
1450
|
+ $info = '生成时间:' . date('Y-m-d H:i:s',time());
|
|
|
1451
|
+ $suffix='xlsx';
|
|
|
1452
|
+ $path='extract';
|
|
|
1453
|
+ unset($_instance);
|
|
|
1454
|
+
|
|
|
1455
|
+ $_instance = SpreadsheetExcelService::instance_xin();
|
|
|
1456
|
+
|
|
|
1457
|
+ $_path =$_instance
|
|
|
1458
|
+ ->createOrActive()
|
|
|
1459
|
+ ->setExcelHeader($header)
|
|
|
1460
|
+ ->setExcelTile($title, $name, $info)
|
|
|
1461
|
+ ->setExcelContent($arr)
|
|
|
1462
|
+ ->excelSave($filename, $suffix, $path);
|
|
|
1463
|
+
|
|
|
1464
|
+ $domain = request()->domain();
|
|
|
1465
|
+ $data= [
|
|
|
1466
|
+ 'name' => $filename.'.'.$suffix,
|
|
|
1467
|
+ 'status' => 1,
|
|
|
1468
|
+ 'path' => $domain.'/'.$_path
|
|
|
1469
|
+ ];
|
|
|
1470
|
+
|
|
|
1471
|
+ return $data;
|
|
|
1472
|
+ }
|
|
|
1473
|
+
|
|
|
1474
|
+ /**
|
|
1443
|
1475
|
* 获取合伙人分红记录
|
|
1444
|
1476
|
* @return mixed
|
|
1445
|
1477
|
* @throws DataNotFoundException
|
|
|
@@ -1466,6 +1498,60 @@ class User extends BaseController
|
|
1466
|
1498
|
->leftJoin('user_identity identity', 'identity.user_group_id=w.user_group')
|
|
1467
|
1499
|
->field('w.*,u.uid,u.account,u.real_name,u.nickname,identity.user_group_name')
|
|
1468
|
1500
|
->where($where);
|
|
|
1501
|
+ // 导出
|
|
|
1502
|
+ $is_excel = request()->param('is_excel', 0);
|
|
|
1503
|
+ if ($is_excel == 1) {
|
|
|
1504
|
+ $data = $query->select();
|
|
|
1505
|
+ $arr = [];
|
|
|
1506
|
+ foreach ($data as $item) {
|
|
|
1507
|
+ $arr[] = [
|
|
|
1508
|
+ $item['id'],
|
|
|
1509
|
+ $item['nickname'],
|
|
|
1510
|
+ $item['account'],
|
|
|
1511
|
+ $item['user_group_name'], // 合伙人等级
|
|
|
1512
|
+ $item['start_time'], // 账期开始时间
|
|
|
1513
|
+ $item['end_time'], // 账期结束时间
|
|
|
1514
|
+ $item['performance'], // 账期平台业绩
|
|
|
1515
|
+ $item['red_envelope'], // 账期内发放红包
|
|
|
1516
|
+ $item['reality_performance'], // 实际分红业绩
|
|
|
1517
|
+ $item['dividend_ratio'], // 分红比例(%)
|
|
|
1518
|
+ $item['dividend'], // 分红金额
|
|
|
1519
|
+ $item['performance_part'], // 个人小区业绩
|
|
|
1520
|
+ $item['performance_part_all'], // 等级内小区业绩和
|
|
|
1521
|
+ $item['part_money'], // 小区业绩占比分红金额
|
|
|
1522
|
+ $item['performance_total'], // 个人总业绩
|
|
|
1523
|
+ $item['performance_total_all'], // 等级内总业绩和
|
|
|
1524
|
+ $item['total_money'], // 总业绩占比分红金额
|
|
|
1525
|
+ $item['brokerage'], // 分红佣金
|
|
|
1526
|
+ $item['fugou'], // 分红复购金
|
|
|
1527
|
+ $item['radio'], // 分红状态
|
|
|
1528
|
+ $item['create_time'], // 创建时间
|
|
|
1529
|
+ ];
|
|
|
1530
|
+ }
|
|
|
1531
|
+ return app('json')->success($this->getStatisticsExcel([
|
|
|
1532
|
+ 'ID',
|
|
|
1533
|
+ '用户昵称',
|
|
|
1534
|
+ '用户账号',
|
|
|
1535
|
+ '合伙人等级',
|
|
|
1536
|
+ '账期开始时间',
|
|
|
1537
|
+ '账期结束时间',
|
|
|
1538
|
+ '账期平台业绩',
|
|
|
1539
|
+ '账期内发放红包',
|
|
|
1540
|
+ '实际分红业绩',
|
|
|
1541
|
+ '分红比例(%)',
|
|
|
1542
|
+ '分红金额',
|
|
|
1543
|
+ '个人小区业绩',
|
|
|
1544
|
+ '等级内小区业绩和',
|
|
|
1545
|
+ '小区业绩占比分红金额',
|
|
|
1546
|
+ '个人总业绩',
|
|
|
1547
|
+ '等级内总业绩和',
|
|
|
1548
|
+ '总业绩占比分红金额',
|
|
|
1549
|
+ '分红佣金',
|
|
|
1550
|
+ '分红复购金',
|
|
|
1551
|
+ '分红状态',
|
|
|
1552
|
+ '创建时间'
|
|
|
1553
|
+ ], $arr, '合伙人分红明细'));
|
|
|
1554
|
+ }
|
|
1469
|
1555
|
|
|
1470
|
1556
|
$query1 = clone($query);
|
|
1471
|
1557
|
$query2 = clone($query);
|