淘宝退款、用户提现筛选

This commit is contained in:
wanyongkang
2020-12-07 17:35:27 +08:00
parent 24ff580958
commit 9c816fadb7
5 changed files with 196 additions and 38 deletions

View File

@@ -4,8 +4,8 @@
* @version:
* @Author: kangkang
* @Date: 2020-10-11 11:22:56
* @LastEditors: kangkang
* @LastEditTime: 2020-11-02 11:04:32
* @LastEditors: Please set LastEditors
* @LastEditTime: 2020-12-07 17:30:59
*/
namespace app\order\controller;
@@ -139,14 +139,27 @@ class CashOutAdmin extends Controller
//获取记录
public function search()
{
$username = json_decode(file_get_contents("php://input"), true)['username'];
$cash = new CashMoedl;
if ($username) {
$list = $cash->getListPage(['username' => $username], '*', 'id desc', '100');
} else {
$list = $cash->getListPage();
$count = $cash->getCount();
$data = json_decode(file_get_contents("php://input"), true)['data'];
$where = [];
$where_str = '';
if (!empty($data)) {
if (!empty($data['username'])) {
$where['username'] = ['like', '%' . $data['username'] . '%'];
}
if (!empty($data['op_user'])) {
$where['op_user'] = ['like', '%' . $data['op_user'] . '%'];
}
if (!empty($data['create_time']['st'])) {
$date1 = date('Y-m-d', strtotime($data['create_time']['st']));
$date2 = date('Y-m-d', strtotime($data['create_time']['et']));
$where_str = " create_time>='" . $date1 . "' and create_time<='" . $date2 . "' ";
}
if ($data['status'] != null) {
$where['status'] = $data['status'];
}
}
$cash = new CashMoedl;
$list = $cash->search($where, '*', 'id desc', '10000', $where_str);
//提现状态
$status = ['待处理', '同意', '拒绝'];
foreach ($list as &$v) {
@@ -175,4 +188,41 @@ class CashOutAdmin extends Controller
\result($info,'',30000);
}
/**
* @description: 导出数据
* @param {*}
* @return {*}
*/
public function export()
{
$data = json_decode(file_get_contents("php://input"), true)['data'];
$where = [];
$where_str = '';
if (!empty($data)) {
if (!empty($data['username'])) {
$where['username'] = ['like', '%' . $data['username'] . '%'];
}
if (!empty($data['op_user'])) {
$where['op_user'] = ['like', '%' . $data['op_user'] . '%'];
}
if (!empty($data['create_time']['st'])) {
$date1 = date('Y-m-d', strtotime($data['create_time']['st']));
$date2 = date('Y-m-d', strtotime($data['create_time']['et']));
$where_str = " create_time>='" . $date1 . "' and create_time<='" . $date2 . "' ";
}
if ($data['status'] != null) {
$where['status'] = $data['status'];
}
}
$cash = new CashMoedl;
$list = $cash->search($where, '*', 'id desc', '10000', $where_str);
//提现状态
$status = ['待处理', '同意', '拒绝'];
foreach ($list as &$v) {
$v['status'] = $status[$v['status']];
$v['alipay_account'] = substr($v['alipay_account'], 0, 3) . '***' . substr($v['alipay_account'], -3);
}
\exportToCsv('test.csv',['id','用户id','用户名','真实姓名','账单号','支付宝订单号','状态','提现金额','申请理由','客户支付宝张号','处理人','处理备注','提现时间','处理时间'],$list);
}
}

View File

@@ -4,8 +4,8 @@
* @version:
* @Author: kangkang
* @Date: 2020-10-13 19:52:37
* @LastEditors: kangkang
* @LastEditTime: 2020-10-30 19:15:21
* @LastEditors: Please set LastEditors
* @LastEditTime: 2020-12-07 17:16:18
*/
namespace app\order\controller;
@@ -22,7 +22,7 @@ class TbRefund extends Controller
{
$refund = new RefundMOdel;
$userModel = new UserModel;
$get_list = $refund->getListPage([],'*','Modified desc');
$get_list = $refund->getListPage([], '*', 'Modified desc');
$user_phone = [];
$lists = [];
$list = [];
@@ -33,14 +33,14 @@ class TbRefund extends Controller
}
$lists[] = $v;
}
$user_test = $userModel->getListPage('LoginCode in('. implode(',', $user_phone) .') OR Phone in('. implode(',', $user_phone) .')','RestAmount,LoginCode,Phone');
$user_test = $userModel->getListPage('LoginCode in(' . implode(',', $user_phone) . ') OR Phone in(' . implode(',', $user_phone) . ')', 'RestAmount,LoginCode,Phone');
foreach ($lists as $key=>$val){
foreach ($user_test as $k=>$v){
if($val['Phone'] == $v['LoginCode'] || $val['Phone'] == $v['Phone']){
foreach ($lists as $key => $val) {
foreach ($user_test as $k => $v) {
if ($val['Phone'] == $v['LoginCode'] || $val['Phone'] == $v['Phone']) {
$val['account'] = $v['RestAmount'];
$list[] = $val;
}
}
}
}
$count = $refund->getCount();
@@ -60,7 +60,7 @@ class TbRefund extends Controller
$page = ($_GET['page'] - 1) * 50;
$refund = new RefundMOdel;
$userModel = new UserModel;
$get_list = $refund->getListPage([],'*','Modified desc', "$page,50");
$get_list = $refund->getListPage([], '*', 'Modified desc', "$page,50");
$user_phone = [];
$lists = [];
$list = [];
@@ -71,14 +71,14 @@ class TbRefund extends Controller
}
$lists[] = $v;
}
$user_test = $userModel->getListPage('LoginCode in('. implode(',', $user_phone) .') OR Phone in('. implode(',', $user_phone) .')','RestAmount,LoginCode,Phone');
$user_test = $userModel->getListPage('LoginCode in(' . implode(',', $user_phone) . ') OR Phone in(' . implode(',', $user_phone) . ')', 'RestAmount,LoginCode,Phone');
foreach ($lists as $key=>$val){
foreach ($user_test as $k=>$v){
if($val['Phone'] == $v['LoginCode'] || $val['Phone'] == $v['Phone']){
foreach ($lists as $key => $val) {
foreach ($user_test as $k => $v) {
if ($val['Phone'] == $v['LoginCode'] || $val['Phone'] == $v['Phone']) {
$val['account'] = $v['RestAmount'];
$list[] = $val;
}
}
}
}
$data = [
@@ -91,15 +91,32 @@ class TbRefund extends Controller
//获取记录
public function search()
{
$Phone = json_decode(file_get_contents("php://input"), true)['Phone'];
$data = json_decode(file_get_contents("php://input"), true)['data'];
$refund = new RefundMOdel;
$userModel = new UserModel;
if ($Phone) {
$list = $refund->getListPage(['Phone' => $Phone], '*', 'id desc', '100');
} else {
$list = $refund->getListPage();
$count = $refund->getCount();
$where = [];
$where_str = '';
if (!empty($data)) {
if (!empty($data['Phone'])) {
$where['Phone'] = ['like', '%' . $data['Phone'] . '%'];
}
if (!empty($data['SellerNick'])) {
$where['SellerNick'] = ['like', '%' . $data['SellerNick'] . '%'];
}
if (!empty($data['handle_user'])) {
$where['handle_user'] = ['like', '%' . $data['handle_user'] . '%'];
}
if (!empty($data['Modified']['st'])) {
$date1 = date('Y-m-d', strtotime($data['Modified']['st']));
$date2 = date('Y-m-d', strtotime($data['Modified']['et']));
$where_str = " Modified>='" . $date1 . "' and Modified<='" . $date2 . "' ";
}
if ($data['status'] != null) {
$where['status'] = $data['status'];
}
}
$list = $refund->search($where, '*', 'id desc', '10000', $where_str);
foreach ($list as &$v) {
$v['status'] = RefundEnum::$refundStatus[$v['status']];
$v['account'] = $userModel->getOne(['LoginCode' => $v['Phone']])['RestAmount'];
@@ -146,7 +163,7 @@ class TbRefund extends Controller
$refund_info = $refund->getOne(['Id' => $id]);
$userModel = new UserModel;
$user_info = $userModel->getOne('LoginCode = '.$refund_info['Phone'].' OR Phone='.$refund_info['Phone']);
$user_info = $userModel->getOne('LoginCode = ' . $refund_info['Phone'] . ' OR Phone=' . $refund_info['Phone']);
//判断余额是否大于退款金额
$returnOk = $user_info['RestAmount'] - $refund_info["RefundFee"];
@@ -156,8 +173,8 @@ class TbRefund extends Controller
$update_data['f_balance'] = $returnOk;
if ($refund->updateOne(['Id' => $id], $update_data)) {
$user_update['RestAmount'] = $returnOk;
$fff=$userModel->updateOne("LoginCode = '".$refund_info['Phone']."' OR Phone='".$refund_info['Phone']."'", $user_update);
$fff = $userModel->updateOne("LoginCode = '" . $refund_info['Phone'] . "' OR Phone='" . $refund_info['Phone'] . "'", $user_update);
//记录资金明细
$score_data = [
'UserId' => $user_info['Id'],
@@ -187,5 +204,44 @@ class TbRefund extends Controller
echo json_encode($return);
}
/**
* @description: 导出数据
* @param {*}
* @return {*}
*/
public function export()
{
$data = $_GET['data'];
$refund = new RefundMOdel;
$userModel = new UserModel;
$where = [];
$where_str = '';
if (!empty($data)) {
if (!empty($data['Phone'])) {
$where['Phone'] = ['like', '%' . $data['Phone'] . '%'];
}
if (!empty($data['SellerNick'])) {
$where['SellerNick'] = ['like', '%' . $data['SellerNick'] . '%'];
}
if (!empty($data['handle_user'])) {
$where['handle_user'] = ['like', '%' . $data['handle_user'] . '%'];
}
if (!empty($data['Modified']['st'])) {
$date1 = date('Y-m-d', strtotime($data['Modified']['st']));
$date2 = date('Y-m-d', strtotime($data['Modified']['et']));
$where_str = " Modified>='" . $date1 . "' and Modified<='" . $date2 . "' ";
}
if (!empty($data['status']) && $data['status'] != null) {
$where['status'] = $data['status'];
}
}
$list = $refund->search($where, '*', 'id desc', '10000', $where_str);
foreach ($list as &$v) {
$v['status'] = RefundEnum::$refundStatus[$v['status']];
$v['account'] = $userModel->getOne(['LoginCode' => $v['Phone']])['RestAmount'];
}
\exportToCsv('test.csv',['id','淘宝id','淘宝会员名','退款金额','子订单编号','交易编号','无关变量','无关变量','产品','申请时间','用户名','处理时间','备注','状态','扣除前余额','处理人','扣除后余额'],$list);
}
}

View File

@@ -8,6 +8,14 @@ class CashOut extends Model
{
protected $table = 'cash_out';
/**
* @description: 处理搜索
* @param {*}
* @return {*}
*/
public function search($where = [], $fields = '*', $order = 'id desc', $limit = '50', $where_str = '')
{
return $this->field($fields)->where($where)->where($where_str)->order($order)->limit($limit)->fetchAll();
}
}

View File

@@ -4,8 +4,8 @@
* @version:
* @Author: kangkang
* @Date: 2020-10-14 09:56:09
* @LastEditors: kangkang
* @LastEditTime: 2020-10-14 09:57:12
* @LastEditors: Please set LastEditors
* @LastEditTime: 2020-12-07 15:10:54
*/
namespace app\order\model;
@@ -16,6 +16,14 @@ class TbRefund extends Model
{
protected $table = 'sell_taobao_refund';
/**
* @description: 处理搜索
* @param {*}
* @return {*}
*/
public function search($where = [], $fields = '*', $order = 'id desc', $limit = '50', $where_str = '')
{
return $this->field($fields)->where($where)->where($where_str)->order($order)->limit($limit)->fetchAll();
}
}

View File

@@ -4,8 +4,8 @@
* @version:
* @Author: kangkang
* @Date: 2020-09-30 17:32:46
* @LastEditors: kangkang
* @LastEditTime: 2020-11-14 10:35:30
* @LastEditors: Please set LastEditors
* @LastEditTime: 2020-12-07 16:44:09
*/
/**
* 浏览器友好的变量输出
@@ -67,3 +67,39 @@ function result($data = [], $msg = '', $code = 10000)
echo json_encode($info);
die;
}
/**
* @description: 导出csv
* @param {*}
* @return {*}
*/
function exportToCsv($fileName = '', $headArr = [], $data = []){
ini_set('memory_limit','1024M'); //设置程序运行的内存
ini_set('max_execution_time',0); //设置程序的执行时间,0为无上限
@ob_end_clean(); //清除内存
ob_start();
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=data.csv');
header('Expires:0');
header('Pragma:no-cache');
$fp=fopen('php://output','w');
fputcsv($fp,$headArr);
$index = 0;
foreach ($data as $item) {
if($index==1000){ //每次写入1000条数据清除内存
$index=0;
ob_flush();//清除内存
flush();
}
$index++;
fputcsv($fp,$item);
}
fclose($fp);
@ob_flush();
flush();
ob_end_clean();
return;
}