订单、订单售后、消息新增钩子
parent
1767695fbe
commit
55e405a824
|
|
@ -237,15 +237,23 @@ class User extends Common
|
|||
$this->IsLogin();
|
||||
|
||||
// 订单总数
|
||||
$where = ['user_id'=>$this->user['id'], 'is_delete_time'=>0, 'user_is_delete_time'=>0];
|
||||
$where = [
|
||||
['user_id', '=', $this->user['id']],
|
||||
['is_delete_time', '=', 0],
|
||||
['user_is_delete_time', '=', 0],
|
||||
];
|
||||
$user_order_count = OrderService::OrderTotal($where);
|
||||
|
||||
// 商品收藏总数
|
||||
$where = ['user_id'=>$this->user['id']];
|
||||
$where = [
|
||||
['user_id', '=', $this->user['id']],
|
||||
];
|
||||
$user_goods_favor_count = GoodsFavorService::GoodsFavorTotal($where);
|
||||
|
||||
// 商品浏览总数
|
||||
$where = ['user_id'=>$this->user['id']];
|
||||
$where = [
|
||||
['user_id', '=', $this->user['id']],
|
||||
];
|
||||
$user_goods_browse_count = GoodsBrowseService::GoodsBrowseTotal($where);
|
||||
|
||||
// 未读消息总数
|
||||
|
|
|
|||
|
|
@ -55,7 +55,7 @@ class ApiService
|
|||
public static function CreatedUserToken($user_id)
|
||||
{
|
||||
$arr = ['USER', 'HTTP_USER_AGENT', 'HTTP_HOST', 'SERVER_SOFTWARE', 'GATEWAY_INTERFACE', 'REQUEST_SCHEME', 'SERVER_PROTOCOL'];
|
||||
$data = [GetClientIP(), APPLICATION_CLIENT_TYPE];
|
||||
$data = [GetClientIP(), APPLICATION_CLIENT_TYPE, SYSTEM_TYPE];
|
||||
foreach($arr as $v)
|
||||
{
|
||||
if(isset($_SERVER[$v]))
|
||||
|
|
|
|||
|
|
@ -864,6 +864,11 @@ class BuyService
|
|||
throw new \Exception($ret['msg']);
|
||||
}
|
||||
|
||||
// 未指定系统类型则增加默认
|
||||
if(empty($order['system_type']))
|
||||
{
|
||||
$order['system_type'] = SYSTEM_TYPE;
|
||||
}
|
||||
// 订单添加
|
||||
$order_id = Db::name('Order')->insertGetId($order);
|
||||
if($order_id <= 0)
|
||||
|
|
|
|||
|
|
@ -253,6 +253,15 @@ class GoodsService
|
|||
*/
|
||||
public static function CategoryGoodsTotal($where = [])
|
||||
{
|
||||
// 商品与分类联表总数读取前钩子
|
||||
$hook_name = 'plugins_service_category_goods_total_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'where' => &$where,
|
||||
]);
|
||||
|
||||
// 获取总数
|
||||
return (int) Db::name('Goods')->alias('g')->join('goods_category_join gci', 'g.id=gci.goods_id')->where($where)->count('DISTINCT g.id');
|
||||
}
|
||||
|
||||
|
|
@ -883,6 +892,15 @@ class GoodsService
|
|||
*/
|
||||
public static function GoodsTotal($where = [])
|
||||
{
|
||||
// 商品总数读取前钩子
|
||||
$hook_name = 'plugins_service_goods_total_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'where' => &$where,
|
||||
]);
|
||||
|
||||
// 获取总数
|
||||
return (int) Db::name('Goods')->where($where)->count();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ class MessageService
|
|||
public static function MessageAdd($user_id, $title, $detail, $business_type = '', $business_id = 0, $type = 0)
|
||||
{
|
||||
$data = [
|
||||
'system_type' => SYSTEM_TYPE,
|
||||
'title' => $title,
|
||||
'detail' => $detail,
|
||||
'user_id' => intval($user_id),
|
||||
|
|
@ -140,6 +141,15 @@ class MessageService
|
|||
*/
|
||||
public static function MessageTotal($where = [])
|
||||
{
|
||||
// 消息总数读取前钩子
|
||||
$hook_name = 'plugins_service_message_total_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'where' => &$where,
|
||||
]);
|
||||
|
||||
// 获取总数
|
||||
return (int) Db::name('Message')->where($where)->count();
|
||||
}
|
||||
|
||||
|
|
@ -189,6 +199,19 @@ class MessageService
|
|||
$m = isset($params['m']) ? intval($params['m']) : 0;
|
||||
$n = isset($params['n']) ? intval($params['n']) : 10;
|
||||
|
||||
// 消息列表读取前钩子
|
||||
$hook_name = 'plugins_service_message_list_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'params' => &$params,
|
||||
'where' => &$where,
|
||||
'field' => &$field,
|
||||
'order_by' => &$order_by,
|
||||
'm' => &$m,
|
||||
'n' => &$n,
|
||||
]);
|
||||
|
||||
// 获取数据列表
|
||||
$data = Db::name('Message')->where($where)->field($field)->limit($m, $n)->order($order_by)->select()->toArray();
|
||||
return DataReturn(MyLang('handle_success'), 0, self::MessageListHandle($data, $params));
|
||||
|
|
|
|||
|
|
@ -1090,7 +1090,11 @@ class NavigationService
|
|||
if(!empty($params['user']))
|
||||
{
|
||||
// 订单总数
|
||||
$where = ['user_id'=>$params['user']['id'], 'is_delete_time'=>0, 'user_is_delete_time'=>0];
|
||||
$where = [
|
||||
['user_id', '=', $params['user']['id']],
|
||||
['is_delete_time', '=', 0],
|
||||
['user_is_delete_time', '=', 0],
|
||||
];
|
||||
$user_order_count = OrderService::OrderTotal($where);
|
||||
|
||||
// 商品收藏/我的足迹总数
|
||||
|
|
|
|||
|
|
@ -212,6 +212,7 @@ class OrderAftersaleService
|
|||
|
||||
// 数据
|
||||
$data = [
|
||||
'system_type' => SYSTEM_TYPE,
|
||||
'order_no' => $order['data']['order_no'],
|
||||
'type' => intval($params['type']),
|
||||
'order_detail_id' => intval($params['order_detail_id']),
|
||||
|
|
@ -394,6 +395,19 @@ class OrderAftersaleService
|
|||
$m = isset($params['m']) ? intval($params['m']) : 0;
|
||||
$n = isset($params['n']) ? intval($params['n']) : 10;
|
||||
|
||||
// 订单售后列表读取前钩子
|
||||
$hook_name = 'plugins_service_order_aftersale_list_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'params' => &$params,
|
||||
'where' => &$where,
|
||||
'field' => &$field,
|
||||
'order_by' => &$order_by,
|
||||
'm' => &$m,
|
||||
'n' => &$n,
|
||||
]);
|
||||
|
||||
// 获取数据列表
|
||||
$data = Db::name('OrderAftersale')->field($field)->where($where)->limit($m, $n)->order($order_by)->select()->toArray();
|
||||
return DataReturn(MyLang('get_success'), 0, self::OrderAftersaleListHandle($data, $params));
|
||||
|
|
@ -575,6 +589,15 @@ class OrderAftersaleService
|
|||
*/
|
||||
public static function OrderAftersaleTotal($where = [])
|
||||
{
|
||||
// 订单售后总数读取前钩子
|
||||
$hook_name = 'plugins_service_order_aftersale_total_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'where' => &$where,
|
||||
]);
|
||||
|
||||
// 获取总数
|
||||
return (int) Db::name('OrderAftersale')->where($where)->count();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1173,9 +1173,41 @@ class OrderService
|
|||
*/
|
||||
public static function OrderTotal($where = [])
|
||||
{
|
||||
// 订单总数读取前钩子
|
||||
$hook_name = 'plugins_service_order_total_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'where' => &$where,
|
||||
]);
|
||||
|
||||
// 获取总数
|
||||
return (int) Db::name('Order')->where($where)->count();
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单状态各项总数
|
||||
* @author Devil
|
||||
* @blog http://gong.gg/
|
||||
* @version 1.0.0
|
||||
* @date 2018-09-29
|
||||
* @desc description
|
||||
* @param [array] $where [条件]
|
||||
*/
|
||||
public static function OrderStatusGroupTotal($where = [])
|
||||
{
|
||||
// 订单状态各项总数读取前钩子
|
||||
$hook_name = 'plugins_service_order_status_group_total_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'where' => &$where,
|
||||
]);
|
||||
|
||||
// 获取状态各项总数
|
||||
return Db::name('Order')->where($where)->field('COUNT(DISTINCT id) AS count, status')->group('status')->select()->toArray();
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单列表
|
||||
* @author Devil
|
||||
|
|
@ -1193,6 +1225,19 @@ class OrderService
|
|||
$m = isset($params['m']) ? intval($params['m']) : 0;
|
||||
$n = isset($params['n']) ? intval($params['n']) : 10;
|
||||
|
||||
// 订单列表读取前钩子
|
||||
$hook_name = 'plugins_service_order_list_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'params' => &$params,
|
||||
'where' => &$where,
|
||||
'field' => &$field,
|
||||
'order_by' => &$order_by,
|
||||
'm' => &$m,
|
||||
'n' => &$n,
|
||||
]);
|
||||
|
||||
// 获取订单
|
||||
$data = Db::name('Order')->where($where)->field($field)->limit($m, $n)->order($order_by)->select()->toArray();
|
||||
|
||||
|
|
@ -2396,8 +2441,9 @@ class OrderService
|
|||
}
|
||||
|
||||
// 条件
|
||||
$where = [];
|
||||
$where['is_delete_time'] = 0;
|
||||
$where = [
|
||||
['is_delete_time', '=', 0]
|
||||
];
|
||||
|
||||
// 用户类型
|
||||
$user_type = isset($params['user_type']) ? $params['user_type'] : '';
|
||||
|
|
@ -2409,13 +2455,12 @@ class OrderService
|
|||
}
|
||||
|
||||
// 增加用户条件
|
||||
$where['user_is_delete_time'] = 0;
|
||||
$where['user_id'] = $params['user']['id'];
|
||||
$where[] = ['user_is_delete_time', '=', 0];
|
||||
$where[] = ['user_id', '=', $params['user']['id']];
|
||||
}
|
||||
|
||||
// 订单状态各项总数
|
||||
$field = 'COUNT(DISTINCT id) AS count, status';
|
||||
$data = Db::name('Order')->where($where)->field($field)->group('status')->select()->toArray();
|
||||
$data = self::OrderStatusGroupTotal($where);
|
||||
|
||||
// 待评价 状态站位100
|
||||
if($is_comments)
|
||||
|
|
@ -2423,19 +2468,19 @@ class OrderService
|
|||
switch($user_type)
|
||||
{
|
||||
case 'user' :
|
||||
$where['user_is_comments'] = 0;
|
||||
$where[] = ['user_is_comments', '=', 0];
|
||||
break;
|
||||
case 'admin' :
|
||||
$where['is_comments'] = 0;
|
||||
$where[] = ['is_comments', '=', 0];
|
||||
break;
|
||||
default :
|
||||
$where['user_is_comments'] = 0;
|
||||
$where['is_comments'] = 0;
|
||||
$where[] = ['user_is_comments', '=', 0];
|
||||
$where[] = ['is_comments', '=', 0];
|
||||
}
|
||||
$where['status'] = 4;
|
||||
$where[] = ['status', '=', 4];
|
||||
$data[] = [
|
||||
'status' => 100,
|
||||
'count' => (int) Db::name('Order')->where($where)->count(),
|
||||
'count' => self::OrderTotal($where),
|
||||
];
|
||||
}
|
||||
|
||||
|
|
@ -2451,7 +2496,7 @@ class OrderService
|
|||
}
|
||||
$data[] = [
|
||||
'status' => 101,
|
||||
'count' => (int) Db::name('OrderAftersale')->where($where)->count(),
|
||||
'count' => OrderAftersaleService::OrderAftersaleTotal($where),
|
||||
];
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -85,8 +85,8 @@ class PluginsService
|
|||
public static function PluginsBaseFieldData($plugins)
|
||||
{
|
||||
$result = [
|
||||
'private_field' => [],
|
||||
'attachment_field' => [],
|
||||
'private_field' => [],
|
||||
'attachment_field' => [],
|
||||
];
|
||||
$ser = '\app\plugins\\'.$plugins.'\service\BaseService';
|
||||
if(class_exists($ser))
|
||||
|
|
|
|||
|
|
@ -47,6 +47,19 @@ class UserService
|
|||
$m = isset($params['m']) ? intval($params['m']) : 0;
|
||||
$n = isset($params['n']) ? intval($params['n']) : 10;
|
||||
|
||||
// 用户列表读取前钩子
|
||||
$hook_name = 'plugins_service_user_list_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'params' => &$params,
|
||||
'where' => &$where,
|
||||
'field' => &$field,
|
||||
'order_by' => &$order_by,
|
||||
'm' => &$m,
|
||||
'n' => &$n,
|
||||
]);
|
||||
|
||||
// 获取用户列表
|
||||
$data = Db::name('User')->where($where)->order($order_by)->field($field)->limit($m, $n)->select()->toArray();
|
||||
return DataReturn(MyLang('handle_success'), 0, self::UserListHandle($data, $params));
|
||||
|
|
@ -197,6 +210,15 @@ class UserService
|
|||
*/
|
||||
public static function UserTotal($where)
|
||||
{
|
||||
// 用户总数读取前钩子
|
||||
$hook_name = 'plugins_service_user_total_begin';
|
||||
MyEventTrigger($hook_name, [
|
||||
'hook_name' => $hook_name,
|
||||
'is_backend' => true,
|
||||
'where' => &$where,
|
||||
]);
|
||||
|
||||
// 获取总数
|
||||
return (int) Db::name('User')->where($where)->count();
|
||||
}
|
||||
|
||||
|
|
@ -350,7 +372,7 @@ class UserService
|
|||
public static function UserPlatformInfo($where_field, $where_value, $field = '*')
|
||||
{
|
||||
$where = [
|
||||
['system_type', '=', SystemService::SystemTypeValue()],
|
||||
['system_type', '=', SYSTEM_TYPE],
|
||||
['platform', '=', APPLICATION_CLIENT_TYPE],
|
||||
[$where_field, '=', $where_value],
|
||||
];
|
||||
|
|
@ -396,7 +418,7 @@ class UserService
|
|||
|
||||
// 查询用户信息
|
||||
$where = [
|
||||
['up.system_type', '=', SystemService::SystemTypeValue()],
|
||||
['up.system_type', '=', SYSTEM_TYPE],
|
||||
['up.platform', '=', APPLICATION_CLIENT_TYPE],
|
||||
[$where_field, '=', $where_value],
|
||||
['u.is_delete_time', '=', 0],
|
||||
|
|
@ -420,7 +442,7 @@ class UserService
|
|||
// 系统标识
|
||||
if(empty($data['system_type']))
|
||||
{
|
||||
$data['system_type'] = empty($params['system_type_name']) ? SystemService::SystemTypeValue() : $params['system_type_name'];
|
||||
$data['system_type'] = empty($params['system_type_name']) ? SYSTEM_TYPE : $params['system_type_name'];
|
||||
}
|
||||
// 平台
|
||||
if(empty($data['platform']))
|
||||
|
|
@ -451,7 +473,7 @@ class UserService
|
|||
// 非自增id则增加更多条件
|
||||
if($where_field != 'id')
|
||||
{
|
||||
$system_type = empty($params['system_type_name']) ? SystemService::SystemTypeValue() : $params['system_type_name'];
|
||||
$system_type = empty($params['system_type_name']) ? SYSTEM_TYPE : $params['system_type_name'];
|
||||
$where[] = ['system_type', '=', $system_type];
|
||||
$where[] = ['platform', '=', APPLICATION_CLIENT_TYPE];
|
||||
}
|
||||
|
|
@ -2441,7 +2463,7 @@ class UserService
|
|||
*/
|
||||
public static function UserInsert($data, $params = [])
|
||||
{
|
||||
// 账号是否存在,以用户名作为唯一(用户名不允许重复注册)
|
||||
// 用户名、手机、邮箱不允许重复注册
|
||||
if(!empty($data['username']))
|
||||
{
|
||||
$temp = self::UserBaseInfo('username', $data['username']);
|
||||
|
|
@ -2449,16 +2471,20 @@ class UserService
|
|||
{
|
||||
return DataReturn(str_replace('{$var}', $data['username'], MyLang('common_service.user.save_user_already_exist_tips')), -10);
|
||||
}
|
||||
}
|
||||
|
||||
// 手机 邮箱(通过验证码注册可以直接绑定现有的账户)
|
||||
$user = [];
|
||||
if(!empty($data['mobile']))
|
||||
} else if(!empty($data['mobile']))
|
||||
{
|
||||
$user = self::UserBaseInfo('mobile', $data['mobile']);
|
||||
$temp = self::UserBaseInfo('mobile', $data['mobile']);
|
||||
if(!empty($temp))
|
||||
{
|
||||
return DataReturn(MyLang('common_service.user.mobile_already_exist_tips'), -10);
|
||||
}
|
||||
} else if(!empty($data['email']))
|
||||
{
|
||||
$user = self::UserBaseInfo('email', $data['email']);
|
||||
$temp = self::UserBaseInfo('email', $data['email']);
|
||||
if(!empty($temp))
|
||||
{
|
||||
return DataReturn(MyLang('common_service.user.email_already_exist_tips'), -10);
|
||||
}
|
||||
}
|
||||
|
||||
// 用户基础信息处理
|
||||
|
|
@ -2500,25 +2526,11 @@ class UserService
|
|||
}
|
||||
|
||||
// 用户信息以手机或邮箱、不存在则添加
|
||||
if(empty($user))
|
||||
$user_base['add_time'] = time();
|
||||
$user_id = Db::name('User')->insertGetId($user_base);
|
||||
if($user_id <= 0)
|
||||
{
|
||||
$user_base['add_time'] = time();
|
||||
$user_id = Db::name('User')->insertGetId($user_base);
|
||||
if($user_id <= 0)
|
||||
{
|
||||
return DataReturn(MyLang('insert_fail'), -100);
|
||||
}
|
||||
} else {
|
||||
// 存在密码则仅更新密码
|
||||
if(!empty($data['salt']) && !empty($data['pwd']))
|
||||
{
|
||||
$ret = self::UserUpdateHandle(['salt'=>$data['salt'], 'pwd'=>$data['pwd']], $user['id']);
|
||||
if($ret['code'] != 0)
|
||||
{
|
||||
return $ret;
|
||||
}
|
||||
}
|
||||
$user_id = $user['id'];
|
||||
return DataReturn(MyLang('insert_fail'), -100);
|
||||
}
|
||||
|
||||
// 用户平台信息添加
|
||||
|
|
@ -2597,7 +2609,7 @@ class UserService
|
|||
// 系统类型
|
||||
if(empty($data['system_type']))
|
||||
{
|
||||
$data['system_type'] = SystemService::SystemTypeValue();
|
||||
$data['system_type'] = SYSTEM_TYPE;
|
||||
}
|
||||
|
||||
// 基础参数处理
|
||||
|
|
|
|||
Loading…
Reference in New Issue