225 lines
7.7 KiB
PHP
225 lines
7.7 KiB
PHP
<?php
|
|
|
|
namespace app\model;
|
|
|
|
use support\Log;
|
|
use support\think\Db;
|
|
|
|
class ShopInfo
|
|
{
|
|
|
|
public static function moeny($money, $shop_id, $reason, $type = 1)
|
|
{
|
|
$shop_money = Db::table('sms_shop_money')->where(['shop_id' => $shop_id])->find();
|
|
if($shop_money) {
|
|
$db = Db::table('sms_shop_money')->where(['shop_id' => $shop_id]);
|
|
if($type == 1) {
|
|
$befor_money = $shop_money['money'] + $money;
|
|
$db->inc('money', $money);
|
|
}elseif ($type == 2) {
|
|
$befor_money = $shop_money['money'] - $money;
|
|
$db->dec('money', $money);
|
|
}
|
|
$db->inc('send_total')->inc('month_send_total')->inc('amount_total', $money)->inc('month_amount_total', $money)->update();
|
|
// 新增记录
|
|
Db::table('sms_shop_money_detail')->insert([
|
|
'shop_id' => $shop_id,
|
|
'type' => $type,
|
|
'expense' => $money,
|
|
'reason' => $reason,
|
|
'create_time' => date('Y-m-d H:i:s'),
|
|
'balance' => $befor_money,
|
|
]);
|
|
}
|
|
}
|
|
|
|
|
|
public static function javaGetUserList($k_user_params, $page, $size)
|
|
{
|
|
$get_list_url = config('cons.push_user_list_url');
|
|
$get_list_params = [
|
|
'page' => $page,
|
|
'size' => $size,
|
|
'eventId' => $k_user_params['event_id'],
|
|
'shopId' => $k_user_params['shop_id'],
|
|
'sexMan' => $k_user_params['sex_man']==1?$k_user_params['sex_man']:'',
|
|
'sexWoman' => $k_user_params['sex_woman']==1?$k_user_params['sex_woman']:'',
|
|
'sexUnknown' => $k_user_params['sex_unknown']==1?$k_user_params['sex_unknown']:'',
|
|
'isVip' => $k_user_params['is_vip']==1?$k_user_params['is_vip']:'',
|
|
'isRecharge' => $k_user_params['is_recharge']==1?$k_user_params['is_recharge']:'',
|
|
'noOrder' => $k_user_params['no_order']==1?$k_user_params['no_order']:'',
|
|
'oneOrder' => $k_user_params['one_order']==1?$k_user_params['one_order']:'',
|
|
'fiveOrder' => $k_user_params['five_order']==1?$k_user_params['five_order']:'',
|
|
'orderTimeToday' => $k_user_params['order_time_today']==1?$k_user_params['order_time_today']:'',
|
|
'orderTimeYesterday' => $k_user_params['order_time_yesterday']==1?$k_user_params['order_time_yesterday']:'',
|
|
'orderTimeTwoWeeks' => $k_user_params['order_time_two_weeks']==1?$k_user_params['order_time_two_weeks']:'',
|
|
'orderTimeMoreThanTwoWeeks' => $k_user_params['order_time_more_than_two_weeks']==1?$k_user_params['order_time_more_than_two_weeks']:'',
|
|
];
|
|
$ret = curl_post($get_list_url, $get_list_params, [
|
|
'Content-Type: application/json',
|
|
]);
|
|
return json_decode($ret, true);
|
|
}
|
|
|
|
|
|
public static function getUserList($k_user_params, $page = 1, $size = 10)
|
|
{
|
|
$data_arr = self::javaGetUserList($k_user_params, $page, $size);
|
|
$for_user_list = [];
|
|
if($data_arr['code'] == 200) {
|
|
$user_list = self::evnuserlist($data_arr['data']['records']);
|
|
if($data_arr['data']['totalPage'] > 1) {
|
|
for ($i = 2; $i <= $data_arr['data']['totalPage']; $i++) {
|
|
$data_arr = self::javaGetUserList($k_user_params, $i, $size);
|
|
if($data_arr['code'] == 200) {
|
|
if(empty($for_user_list)) {
|
|
$for_user_list = self::evnuserlist($data_arr['data']['records']);
|
|
}else {
|
|
$o_for_user_list = self::evnuserlist($data_arr['data']['records']);
|
|
$for_user_list = array_merge($for_user_list, $o_for_user_list);
|
|
}
|
|
}
|
|
}
|
|
$user_list = array_merge($user_list, $for_user_list);
|
|
}
|
|
return $user_list;
|
|
}else {
|
|
Log::info('获取用户列表时出错' . json_encode($data_arr));
|
|
}
|
|
}
|
|
|
|
public static function evnuserlist($data)
|
|
{
|
|
foreach ($data as $k => $user) {
|
|
$push_user[] = [
|
|
'user_id' => $user['id'],
|
|
'phone' => $user['phone'],
|
|
'nick_name' => isset($user['nick_name'])?$user['nick_name']:$user['nickName'],
|
|
];
|
|
}
|
|
return $push_user;
|
|
}
|
|
|
|
|
|
public static function getTempDineList()
|
|
{
|
|
return [
|
|
'用户昵称' => [
|
|
'username', '用户昵称', 'user_nick'
|
|
],
|
|
'店铺名称' => [
|
|
'shopname', '店铺名称', 'name'
|
|
],
|
|
'活动名称' => [
|
|
'activityname', '活动名称', 'name'
|
|
],
|
|
'活动时间' => [
|
|
'activitytime', '活动时间', 'time'
|
|
],
|
|
'数量' => [
|
|
'num', '数量', 'money'
|
|
],
|
|
'金额' => [
|
|
'money', '金额', 'money'
|
|
],
|
|
'时间' => [
|
|
'time', '时间', 'time',
|
|
],
|
|
];
|
|
}
|
|
|
|
// 处理短信模版替换内容
|
|
public static function handleSmsTemplates($content)
|
|
{
|
|
$arr = handldollerstr($content);
|
|
$x_arr = self::getTempDineList();
|
|
$new_arr = [];
|
|
$item_new_arr = [];
|
|
if($arr) {
|
|
$i = 1;
|
|
foreach ($arr as $k => $v) {
|
|
if(isset($x_arr[$v])) {
|
|
$k_str = $x_arr[$v][0];
|
|
$v_str = $x_arr[$v][1];
|
|
$new_arr[$k_str] = $v_str;
|
|
}else {
|
|
$item = 'item' . $i;
|
|
$item_new_arr[$item] = '自定义' . $i;
|
|
$i++;
|
|
}
|
|
}
|
|
if($new_arr && $item_new_arr) {
|
|
$new_arr = array_merge($new_arr, $item_new_arr);
|
|
}
|
|
if(!$new_arr && $item_new_arr) {
|
|
$new_arr = $item_new_arr;
|
|
}
|
|
}
|
|
return $new_arr;
|
|
}
|
|
|
|
|
|
public static function handleSmsTemplatesrule($content)
|
|
{
|
|
$arr = handldollerstr($content);
|
|
$x_arr = self::getTempDineList();
|
|
$new_arr = [];
|
|
$item_new_arr = [];
|
|
if($arr) {
|
|
$i = 1;
|
|
foreach ($arr as $k => $v) {
|
|
if(isset($x_arr[$v])) {
|
|
$k_str = $x_arr[$v][0];
|
|
$v_str = $x_arr[$v][2];
|
|
$new_arr[$k_str] = $v_str;
|
|
}else {
|
|
$item = 'item' . $i;
|
|
$item_new_arr[$item] = 'name';
|
|
$i++;
|
|
}
|
|
}
|
|
if($new_arr && $item_new_arr) {
|
|
$new_arr = array_merge($new_arr, $item_new_arr);
|
|
}
|
|
if(!$new_arr && $item_new_arr) {
|
|
$new_arr = $item_new_arr;
|
|
}
|
|
}
|
|
return $new_arr;
|
|
}
|
|
|
|
|
|
|
|
// 处理发送短信时短信模版替换内容
|
|
public static function handlesendSmsTemplates($content)
|
|
{
|
|
$arr = handldollerstr($content);
|
|
$x_arr = self::getTempDineList();
|
|
$new_arr = [];
|
|
$item_new_arr = [];
|
|
if($arr) {
|
|
$i = 1;
|
|
foreach ($arr as $k => $v) {
|
|
if(isset($x_arr[$v])) {
|
|
$k_str = $x_arr[$v][0];
|
|
$v_str = $x_arr[$v][1];
|
|
$new_arr[$k_str] = $v_str;
|
|
}else {
|
|
$item = 'item' . $i;
|
|
$item_new_arr[$item] = '自定义' . $i;
|
|
$i++;
|
|
}
|
|
}
|
|
if($new_arr && $item_new_arr) {
|
|
$new_arr = array_merge($new_arr, $item_new_arr);
|
|
}
|
|
if(!$new_arr && $item_new_arr) {
|
|
$new_arr = $item_new_arr;
|
|
}
|
|
}
|
|
return $new_arr;
|
|
}
|
|
|
|
|
|
|
|
} |