setter
parent
bb4e60e5db
commit
13682f80c8
|
@ -890,15 +890,43 @@ if (!function_exists('is_mobile')) {
|
|||
* @param string $day2
|
||||
* @return number
|
||||
*/
|
||||
function diffBetweenTwoDays ($day1, $day2)
|
||||
{
|
||||
$second1 = strtotime($day1);
|
||||
$second2 = strtotime($day2);
|
||||
if (!function_exists('diffBetweenTwoDays')) {
|
||||
function diffBetweenTwoDays ($day1, $day2)
|
||||
{
|
||||
$second1 = strtotime($day1);
|
||||
$second2 = strtotime($day2);
|
||||
|
||||
if ($second1 < $second2) {
|
||||
$tmp = $second2;
|
||||
$second2 = $second1;
|
||||
$second1 = $tmp;
|
||||
if ($second1 < $second2) {
|
||||
$tmp = $second2;
|
||||
$second2 = $second1;
|
||||
$second1 = $tmp;
|
||||
}
|
||||
return ($second1 - $second2) / 86400;
|
||||
}
|
||||
return ($second1 - $second2) / 86400;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前毫秒数
|
||||
* */
|
||||
if (!function_exists('msectime')) {
|
||||
function msectime() {
|
||||
list($msec, $sec) = explode(' ', microtime());
|
||||
$msectime = (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000);
|
||||
return $msectime;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (!function_exists('filterEmoji')) {
|
||||
function filterEmoji($str)
|
||||
{
|
||||
$str = preg_replace_callback(
|
||||
'/./u',
|
||||
function (array $match) {
|
||||
return strlen($match[0]) >= 4 ? '' : $match[0];
|
||||
},
|
||||
$str);
|
||||
|
||||
return $str;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -293,11 +293,13 @@ class Coupon extends Base
|
|||
* */
|
||||
public function verification()
|
||||
{
|
||||
$accountId = $this->request->user['user_id'] ?? 0;
|
||||
$lat = input("lat/f",0);
|
||||
$lng = input("lng/f",0);
|
||||
$couponId = input("couponId/d",0);
|
||||
$account = AccountRepository::getInstance()->findById($accountId, [], function ($q) {
|
||||
|
||||
$accountId = $this->request->user['user_id'] ?? 0;
|
||||
$lat = input("lat/f",0);
|
||||
$lng = input("lng/f",0);
|
||||
$couponId = input("couponId/d",0);
|
||||
$userTimeStamp = input("userTimeStamp/d",0);
|
||||
$account = AccountRepository::getInstance()->findById($accountId, [], function ($q) {
|
||||
return $q->with(['business', 'parent']);
|
||||
});
|
||||
$time = time();
|
||||
|
@ -357,10 +359,13 @@ class Coupon extends Base
|
|||
}
|
||||
|
||||
|
||||
//签到距离
|
||||
Config::load('extra/wechat', 'wechat');
|
||||
$signDistance = config('wechat.signDistance') ?? 0;
|
||||
|
||||
Config::load('extra/wechat', 'wechat');
|
||||
$signDistance = config('wechat.signDistance') ?? 0;
|
||||
$signTimeStamp = config('wechat.signTimeStamp') ?? 0;
|
||||
$msectime = msectime();//毫秒时间戳
|
||||
|
||||
//签到距离
|
||||
if($signDistance > 0 ){
|
||||
$distance = get_distance($coupon->couponMain->lat,$coupon->couponMain->lng,$lat,$lng);
|
||||
if($distance > $signDistance){
|
||||
|
@ -373,6 +378,14 @@ class Coupon extends Base
|
|||
}
|
||||
}
|
||||
|
||||
//签到时间戳
|
||||
if($signTimeStamp > 0 ){
|
||||
if(abs($userTimeStamp - $msectime) > $signTimeStamp){
|
||||
//.abs($userTimeStamp - $msectime)
|
||||
return $this->json(4001, "时间戳验证失败");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
$business = BusinessRepository::getInstance()->getModel()->with(["agency"])->where(["code"=>$coupon->couponMain->business_code])->lock(true)->find();
|
||||
if(empty($business)){
|
||||
|
|
|
@ -88,7 +88,7 @@ class User extends Base
|
|||
'create_time' => $nowDate,
|
||||
'login_time' => $nowDate,
|
||||
'type' => Account::type_consumer, // 默认为普通消费者
|
||||
'nick_name' => $params['nick_name'] ?: generateDefaultNickName(),
|
||||
'nick_name' => filterEmoji($params['nick_name']) ?: generateDefaultNickName(),
|
||||
'avatar_url' => $params['avatar_url'] ?: Account::DEFAULT_AVATAR,
|
||||
'gender' => $params['gender'],
|
||||
'real_name' => $params['real_name'],
|
||||
|
|
|
@ -89,12 +89,26 @@ class Bill extends Base
|
|||
$size = $this->request->param('size/d', 30);
|
||||
$orders = ['a.id' => 'desc'];
|
||||
$list = $repo->deductionBillList($page, $size, $keyword, $startTime, $endTime, $orders);
|
||||
$list['deduction_money_sum'] = BillRepository::getInstance()->getDeductionMoneySum($keyword,$startTime, $endTime);
|
||||
$list['deduction_money_sum'] = BillRepository::getInstance()
|
||||
->getDeductionMoneySum($keyword,$startTime, $endTime);//总流水
|
||||
$list['deduction_money_sum_red_pack'] = BillRepository::getInstance()
|
||||
->getDeductionMoneySumRedPack($keyword,$startTime, $endTime);//消费者红包流水
|
||||
$list['deduction_money_sum_agency'] = BillRepository::getInstance()
|
||||
->getDeductionMoneySumAgency($keyword,$startTime, $endTime);//平台商收益
|
||||
$list['deduction_money_sum_taigu'] = BillRepository::getInstance()
|
||||
->getDeductionMoneySumTaigu($keyword,$startTime, $endTime);//太古收益
|
||||
|
||||
return $this->json(0, 'success', $list);
|
||||
}
|
||||
|
||||
$this->data["deduction_money_sum"] = BillRepository::getInstance()->getDeductionMoneySum();
|
||||
$this->data["deduction_money_sum"] = BillRepository::getInstance()
|
||||
->getDeductionMoneySum();//当前总流水
|
||||
$this->data["deduction_money_sum_red_pack"] = BillRepository::getInstance()
|
||||
->getDeductionMoneySumRedPack();//消费者红包流水
|
||||
$this->data["deduction_money_sum_agency"] = BillRepository::getInstance()
|
||||
->getDeductionMoneySumAgency();//平台商收益
|
||||
$this->data["deduction_money_sum_taigu"] = BillRepository::getInstance()
|
||||
->getDeductionMoneySumTaigu();//太古收益
|
||||
|
||||
$this->data["startTime"] = $startTime;
|
||||
$this->data["endTime"] = $endTime;
|
||||
|
|
|
@ -328,7 +328,7 @@ class BillRepository extends Repository
|
|||
->join("coupon_bill d", "a.bill_id = d.id")
|
||||
->join("account b", "d.user_code = b.user_code", "left")
|
||||
->when(!empty($keyword), function ($q) use ($keyword) {
|
||||
$q->where("c.business_name|f.business_name", "like", "%" . $keyword . "%");
|
||||
$q->where("e.name|c.business_name|f.business_name", "like", "%" . $keyword . "%");
|
||||
})
|
||||
->when(!empty($start_time), function ($q) use ($start_time) {
|
||||
$q->whereTime("a.create_time", ">=", $start_time);
|
||||
|
@ -338,5 +338,86 @@ class BillRepository extends Repository
|
|||
})
|
||||
->sum("a.money");
|
||||
}
|
||||
/**
|
||||
* 总扣款流水-消费者红包
|
||||
* @param null $keyword
|
||||
* @param null $start_time
|
||||
* @param null $end_time
|
||||
* @return float
|
||||
*/
|
||||
public function getDeductionMoneySumRedPack($keyword = null,$start_time = null, $end_time = null)
|
||||
{
|
||||
return Deduction::alias("a")
|
||||
->join("business c", "a.business_code = c.code")
|
||||
->join("business f", "f.code = c.agency_code", "left")
|
||||
->join("coupon_main e", "a.coupon_main_id = e.id")
|
||||
->join("coupon_bill d", "a.bill_id = d.id")
|
||||
->join("account b", "d.user_code = b.user_code", "left")
|
||||
->when(!empty($keyword), function ($q) use ($keyword) {
|
||||
$q->where("e.name|c.business_name|f.business_name", "like", "%" . $keyword . "%");
|
||||
})
|
||||
->when(!empty($start_time), function ($q) use ($start_time) {
|
||||
$q->whereTime("a.create_time", ">=", $start_time);
|
||||
})
|
||||
->when(!empty($end_time), function ($q) use ($end_time) {
|
||||
$q->whereTime("a.create_time", "<=", $end_time);
|
||||
})
|
||||
->sum("d.consumer_money");
|
||||
}
|
||||
|
||||
/**
|
||||
* 总扣款流水-平台商收益
|
||||
* @param null $keyword
|
||||
* @param null $start_time
|
||||
* @param null $end_time
|
||||
* @return float
|
||||
*/
|
||||
public function getDeductionMoneySumAgency($keyword = null,$start_time = null, $end_time = null)
|
||||
{
|
||||
return Deduction::alias("a")
|
||||
->join("business c", "a.business_code = c.code")
|
||||
->join("business f", "f.code = c.agency_code", "left")
|
||||
->join("coupon_main e", "a.coupon_main_id = e.id")
|
||||
->join("coupon_bill d", "a.bill_id = d.id")
|
||||
->join("account b", "d.user_code = b.user_code", "left")
|
||||
->when(!empty($keyword), function ($q) use ($keyword) {
|
||||
$q->where("e.name|c.business_name|f.business_name", "like", "%" . $keyword . "%");
|
||||
})
|
||||
->when(!empty($start_time), function ($q) use ($start_time) {
|
||||
$q->whereTime("a.create_time", ">=", $start_time);
|
||||
})
|
||||
->when(!empty($end_time), function ($q) use ($end_time) {
|
||||
$q->whereTime("a.create_time", "<=", $end_time);
|
||||
})
|
||||
->sum("d.agency_money");
|
||||
}
|
||||
|
||||
/**
|
||||
* 总扣款流水-太古收益
|
||||
* @param null $keyword
|
||||
* @param null $start_time
|
||||
* @param null $end_time
|
||||
* @return float
|
||||
*/
|
||||
public function getDeductionMoneySumTaigu($keyword = null,$start_time = null, $end_time = null)
|
||||
{
|
||||
return Deduction::alias("a")
|
||||
->join("business c", "a.business_code = c.code")
|
||||
->join("business f", "f.code = c.agency_code", "left")
|
||||
->join("coupon_main e", "a.coupon_main_id = e.id")
|
||||
->join("coupon_bill d", "a.bill_id = d.id")
|
||||
->join("account b", "d.user_code = b.user_code", "left")
|
||||
->when(!empty($keyword), function ($q) use ($keyword) {
|
||||
$q->where("e.name|c.business_name|f.business_name", "like", "%" . $keyword . "%");
|
||||
})
|
||||
->when(!empty($start_time), function ($q) use ($start_time) {
|
||||
$q->whereTime("a.create_time", ">=", $start_time);
|
||||
})
|
||||
->when(!empty($end_time), function ($q) use ($end_time) {
|
||||
$q->whereTime("a.create_time", "<=", $end_time);
|
||||
})
|
||||
->sum("d.admin_money");
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -6,6 +6,6 @@
|
|||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_URI} !^(.*)\.(gif|jpg|jpeg|png|swf|mp4)$ [NC]
|
||||
RewriteRule ^(.*)$ index.php?s=/$1 [QSA,PT,L]
|
||||
#增加如下内容
|
||||
#增加如下内容
|
||||
SetEnvIf Authorization .+ HTTP_AUTHORIZATION=$0
|
||||
</IfModule>
|
|
@ -24,23 +24,63 @@
|
|||
<div class="layui-row layui-col-space15">
|
||||
|
||||
</div>
|
||||
<div class="layui-col-md10">
|
||||
<div class="layui-col-md12">
|
||||
<div class="layui-row ">
|
||||
<div class="layui-col-md6">
|
||||
<div class="layui-panel" style="border-radius: 8px;">
|
||||
<!-- <div class="layui-row" style="padding: 5% 0;text-align: center">-->
|
||||
<!-- <h3><strong>总扣款流水:</strong></h3>-->
|
||||
<!-- <span class="l_font" >{$deduction_money_sum ?? 0}</span>-->
|
||||
<!-- </div>-->
|
||||
|
||||
<div class="layui-row" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>总扣款流水:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum ?? 0}</span>
|
||||
<div class="layui-col-md3" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>总扣款流水:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum ?? 0}</span>
|
||||
</div>
|
||||
<div class="layui-col-md3" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>总消费者红包:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum_red_pack ?? 0}</span>
|
||||
</div>
|
||||
<div class="layui-col-md3" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>总平台佣金:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum_agency ?? 0}</span>
|
||||
</div>
|
||||
<div class="layui-col-md3" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>总太古佣金:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum_taigu ?? 0}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-col-md6">
|
||||
<div class="layui-panel" style="border-radius: 8px;">
|
||||
<!-- <div class="layui-row" style="padding: 5% 0;text-align: center">-->
|
||||
<!-- <h3><strong>当前扣款流水:</strong></h3>-->
|
||||
<!-- <span class="l_font" id="deduction_money_sum"> </span>-->
|
||||
<!-- </div>-->
|
||||
|
||||
<div class="layui-row" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>当前扣款流水:</strong></h3>
|
||||
<span class="l_font" id="deduction_money_sum"> </span>
|
||||
<div class="layui-col-md3" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>当前扣款流水:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum ?? 0}</span>
|
||||
</div>
|
||||
<div class="layui-col-md3" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>当前消费者红包:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum ?? 0}</span>
|
||||
</div>
|
||||
<div class="layui-col-md3" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>当前平台佣金:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum ?? 0}</span>
|
||||
</div>
|
||||
<div class="layui-col-md3" style="padding: 5% 0;text-align: center">
|
||||
<h3><strong>当前太古佣金:</strong></h3>
|
||||
<span class="l_font" >{$deduction_money_sum ?? 0}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -61,7 +101,7 @@
|
|||
<div class="layui-inline">
|
||||
<label class="layui-form-label">关键词</label>
|
||||
<div class="layui-inline">
|
||||
<input type="text" name="keyword" class="layui-input" placeholder="商家名称或者优惠券名称">
|
||||
<input type="text" name="keyword" class="layui-input" placeholder="平台商|商家名称|优惠券名称">
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-inline">
|
||||
|
|
|
@ -157,6 +157,13 @@
|
|||
<div class="layui-form-mid layui-word-aux">单位:米,设置签到时用户的位置和商家的地理位置最大不能超过多少米(<span style="color: red">0表示不限 不可为负数</span>)</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item layui-form-item-lg">
|
||||
<label class="layui-form-label">签到时间戳</label>
|
||||
<div class="layui-input-inline">
|
||||
<input class="layui-input" type="text" name="signDistance" value="{$item.signTimeStamp ?? 0}"/>
|
||||
</div>
|
||||
<div class="layui-form-mid layui-word-aux">单位:毫秒,设置签到时用户上传的时间戳只差不能大于多少毫秒(<span style="color: red">0表示不限 不可为负数 1000毫秒=1秒</span>)</div>
|
||||
</div>
|
||||
<div class="layui-form-item layui-form-item-lg">
|
||||
<label class="layui-form-label">优惠券最小佣金</label>
|
||||
<div class="layui-input-inline">
|
||||
|
|
Loading…
Reference in New Issue