Files
duolamaojiazhen/application/api/logic/StaffOrderLogic.php
2025-12-22 13:59:40 +08:00

124 lines
3.9 KiB
PHP

<?php
namespace app\api\logic;
use app\common\server\UrlServer;
use think\Db;
class StaffOrderLogic
{
/**
* note 根据id获取获取管理员
* create_time 2020/10/21 19:05
*/
public static function admin($id){
return Db::name('admin')->where('id',$id)->find();
}
/**
* note 根据id获取的商品
* create_time 2020/10/21 19:05
*/
public static function goods($id){
$goods=Db::name('goods')->where('id',$id)->find();
$goods['image']=UrlServer::getFileUrl($goods['image']);
return $goods;
}
/**
* note 根据订单编号获取子订单编号
* create_time 2020/10/21 19:05
*/
public static function order_sn($order_sn){
$count=Db::name('order_exe')
->where('order_sn',$order_sn)
->where('staff_status',3)
->count();
return $count;
}
/**
* note 查询已经完成的订单
* create_time 2020/10/21 19:05
*/
public static function wc_order($page,$limt,$param){
$where=[];
if (!empty($param['search'])) {
if (preg_match('/^1[3-9]\d{9}$/', $param['search'])) {
$where[] = ['mobile', '=', $param['search']];
} else {
$where[] = ['consignee', 'LIKE', '%' . $param['search'] . '%'];
}
} else {
$where = [];
}
$data=Db::name('order')
->order('id', 'desc')
->where($where)
->page($page,$limt)
->select();
$datas=[];
foreach ($data as &$item){
$item['create_time'] = date('Y-m-d', $item['create_time']);
$goods=self::goods($item['goods_id']); //订单的商品
if($goods){
$item['goods_name']=$goods['name'];
$item['image']=$goods['image'];
$item['code']=$goods['code'];
}
$admin=self::admin($item['admin_id']);
if($admin){
$item['admin_name']=$admin['name'];
}
$count=self::order_sn($item['order_sn']); //统计总的条数
$item['order_wc']=$count; //统计完成次数
$item['order_dsy']=$item['code']-$count;
if($item['order_dsy']==0){
$datas[]=$item;
}
}
return $datas;
}
/**
* note 获取客户的渠道
* create_time 2020/10/21 19:05
*/
public static function addqudao($id){
return Db::name('staffchannel')->where('id',$id)->find();
}
/**
* note 获取到用户的信息
* create_time 2020/10/21 19:05
*/
public static function user($user_id){
return Db::name('user')->where('id',$user_id)->find();
}
/**
* note 根据商品的id修改商品
* create_time 2020/10/21 19:05
*/
public static function edit_order($param){
if (empty($param['id']) || !is_numeric($param['id'])) {
throw new \Exception('订单ID无效');
}
$data=[
'consignee' => $param['consignee'],
'pay_zd' => $param['pay_zd'],
'gord_id' => $param['gord_id'],
'channel_id' => $param['channel_id'],
'order_amount' => $param['order_amount'],
'order_remarks' => $param['remark']
];
return Db::name('order')->where('id',$param['id'])->update($data);
}
/**
* note 根据ID获取到保洁的信息
* create_time 2020/10/21 19:05
*/
public static function staff($id){
return Db::name('staff')->where('id',$id)->field('id,name,mobile')->find();
}
}