添加网站文件

This commit is contained in:
2025-12-22 13:59:40 +08:00
commit 117aaf83d1
19468 changed files with 2111999 additions and 0 deletions

View File

@@ -0,0 +1,174 @@
<?php
namespace app\admin\logic;
use think\Db;
use app\common\server\UrlServer;
use app\common\server\ConfigServer;
class OrderserLogic{
public static function lists($get){
$where = [];
// //查询
if(isset($get['order_sn']) && $get['order_sn']!=''){
$where[] = ['order_sn','=',$get['order_sn']];
}
if(isset($get['order_sn']) && $get['order_sn']!=''){
$where[] = ['order_sn','=',$get['order_sn']];
}
if(isset($get['phone']) && $get['phone']!=''){
// $where[] = [$get['phone'],'like','%'.$get['phone'].'%'];
$where[] = ['phone','=',$get['phone']];
}
if(isset($get['area_id']) && $get['area_id']!=''){
$where[] = ['area_id','=',$get['area_id']];
}
if(isset($get['channel_id']) && $get['channel_id']!=''){
$where[] = ['channel_id','=',$get['channel_id']];
}
if(isset($get['status']) && $get['status']!=''){
$where[] = ['status','=',$get['status']];
}
//下单时间检索
if(isset($get['start_time']) && $get['start_time']!=''){
$where[] = ['createtime','>=',strtotime($get['start_time'])];
}
if(isset($get['end_time']) && $get['end_time']!=''){
$where[] = ['createtime','<=',strtotime($get['end_time'])];
}
if(isset($get['consignee']) && $get['consignee']!=''){
$where[] = ['consignee', 'like', '%' . $get['consignee'] . '%'];
}
$user_count =Db::name('order_service')
->where($where)
->count();
$user_list =Db::name('order_service')
->where($where)
->page($get['page'],$get['limit'])
->order('id desc')
->select();
// //会员分组
$user_group = Db::name('orderchannel')->column('name','id');
// //会员等级
// $user_level = Db::name('user_level')->where(['del'=>0])->column('name','id');
$all_user_list =Db::name('staff')->column('name,age,addr,mobile','id');
// $group_list = db::name('user_group')->where(['del'=>0])->column('name','id');
foreach ($user_list as &$item){
$item['createtime'] = date("Y-m-d H:i:s",$item['createtime']);
$item['ordertype'] = '次卡订单';
if(isset($user_group[$item['channel_id']])){
$item['orderchannel'] = $user_group[$item['channel_id']];
}
//根据家政订单获取服务人员信息
$staff=Db::name('order_cleaner')->where('order_id',$item['id'])->find();
$staffinfo=Db::name('staff')->where('id',$staff['cleaner_id'])->find();
$item['referrer_nickname'] = $staffinfo['name'];
$item['age'] = $staffinfo['age'];
$item['referrer_mobile'] = $staffinfo['mobile'];
}
return ['count'=>$user_count , 'lists'=>$user_list];
}
//获取员工分组
public static function stafftype(){
return Db::name('orderchannel')->field('id,name')->select();
}
/*
* 获取分组
*/
public static function getGroupList(){
return Db::name('user_group')->where(['del'=>0])->field('id,name')->select();
}
public static function info($get){
return Db::name('order_service')->where('id',$get['id'])->find();
}
public static function orderinfo($get){
return Db::name('order_service')->where('id',$get)->find();
}
public static function staffdel($post){
return Db::name('order_cleaner')->where('id',$post['id'])->where('status',0)->where('cleaner_id',$post['cleaner_id'])->delete();
}
/*
* 获取员工列表
*/
public static function stafflist($get){
$order=Db::name('order_service')->where('id',$get['id'])->find();
$user_group = Db::name('staff_group')->column('name','id');
$staff=Db::name('staff')->where('onwork',1)->count(); //统计员工列表的条数
$list_staff=Db::name('staff')->where('onwork',1)
->page($get['page'],$get['limit'])
->select();
foreach ( $list_staff as &$item){
$lon1 = $order['lng'];
$lat1 = $order['lat'];
$lon2 = $item['lng'];
$lat2 = $item['lat'];
$distanceKm =UserLogic::haversine_distance($lon1, $lat1, $lon2, $lat2, 'km');
$item['addersjl'] = (int)$distanceKm;
if(isset($user_group[$item['group_id']])){
$item['group_name'] = $user_group[$item['group_id']];
}
$item['updatetime']=date("Y-m-d H:i:s",$item['updatetime']);
$item['abs_avatar']=UrlServer::getFileUrl($item['image']);
}
return ['count'=>$staff, 'lists'=> $list_staff];
}
public static function getList($get){
switch ($get['type']){
case 0://员工服务的订单
$list=Db::name('order_cleaner')->where('order_id',$get['user_id'])->select(); //获取保洁师傅列表
foreach ($list as &$item) {
$item['createtime'] = date('Y-m-d H:i:s', $item['createtime']);
$staff=Db::name('staff')->where('id',$item['cleaner_id'])->find();
$item['staff_name']=$staff['name'];
$item['mobile']=$staff['mobile'];
$item['confirmtime'] = date('Y-m-d H:i:s', $item['confirmtime']);
}
$count =Db::name('order_cleaner')->where('order_id',$get['user_id'])->count();
break;
case 1://订单报销列表
$count =Db::name('finance')->where('order_id',$get['user_id'])->count();
$list=Db::name('finance')->where('order_id',$get['user_id'])->select();
foreach ($list as &$item) {
$item['create_time'] = date('Y-m-d H:i:s', $item['create_time']);
$staff=Db::name('staff')->where('id',$item['staff_id'])->find();
$item['staff_name']=$staff['name'];
$type=Db::name('finance_type')->where('id',$item['brand_id'])->find();
$item['type']=$type['name'];
// $item['confirmtime'] = date('Y-m-d H:i:s', $item['confirmtime']);
}
break;
}
return ['count'=>$count , 'lists'=>$list];
}
}