Files
juipphp/app/agent/model/ProductOrder.php

73 lines
2.8 KiB
PHP

<?php
/*
* @Descripttion:
* @version:
* @Author: kangkang
* @Date: 2020-10-22 16:13:41
* @LastEditors: Please set LastEditors
* @LastEditTime: 2020-12-03 16:28:11
*/
namespace app\agent\model;
use enum\order\ProductOrder as ProductOrderEnum;
use fastphp\base\Model;
class ProductOrder extends Model
{
protected $table = 'product_order';
/**
* 按照页数获取数据
* @param $fields 'id,count(1)...'
* @param $order 'id desc'/'id asc'
* @param $limit = '100' 限制查询100条
* $limit = '2,100' 查询第二页 100条数据
*/
public function getAgentListPage($where = [],$where_str = '', $fields = '*', $order = 'id desc', $limit = '50')
{
return $this->field($fields)->where($where)->where($where_str)->order($order)->limit($limit)->fetchAll();
}
//获取上月消费
public function getLastMonthCost($agent_id =[])
{
$st = date('Y-m-d', strtotime(date('Y-m-01') . " - 1 month"));
$et = date('Y-m-d', strtotime(date('Y-m-01')));
return $this->field("sum(PaymentAmount) as pay_money,agent_id")
->where("UpdateTime>'$st' and UpdateTime<'$et' ")->where(['agent_id'=>['in',$agent_id]])
->where(['OrderState' => ['in', ProductOrderEnum::$PayComplete]])
->fetchAll();
}
//获取本月消费
public function getMonthCost($agent_id =[])
{
$st = date('Y-m-d', strtotime(date('Y-m-01')));
$et = date('Y-m-d', time());
return $this->field("sum(PaymentAmount) as pay_money,agent_id")
->where("UpdateTime>'$st' and UpdateTime<'$et' ")->where(['agent_id'=>['in',$agent_id]])
->where(['OrderState' => ['in', ProductOrderEnum::$PayComplete]])
->fetchAll();
}
//获取上月退款
public function getLastMonthRefund($agent_id =[])
{
$st = date('Y-m-d', strtotime(date('Y-m-01') . " - 1 month"));
$et = date('Y-m-d', strtotime(date('Y-m-01')));
return $this->field("sum(PaymentAmount) as pay_money,agent_id")
->where("UpdateTime>'$st' and UpdateTime<'$et' ")->where(['agent_id'=>['in',$agent_id]])
->where(['OrderState' => ['in', ProductOrderEnum::$Refunds]])
->fetchAll();
}
//获取本月退款
public function getMonthRefund($agent_id =[])
{
$st = date('Y-m-d', strtotime(date('Y-m-01')));
$et = date('Y-m-d', time());
return $this->field("sum(PaymentAmount) as pay_money,agent_id")
->where("UpdateTime>'$st' and UpdateTime<'$et' ")->where(['agent_id'=>['in',$agent_id]])
->where(['OrderState' => ['in', ProductOrderEnum::$Refunds]])
->fetchAll();
}
}