363 lines
12 KiB
PHP
363 lines
12 KiB
PHP
<?php
|
|
namespace app\admin\logic;
|
|
use app\common\logic\AccountLogLogic;
|
|
use app\common\server\UrlServer;
|
|
use think\Db;
|
|
use think\Exception;
|
|
|
|
class MaterialLogic{
|
|
/**
|
|
* 显示查询列表的内容
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function lists($get){
|
|
$where = [];
|
|
//查询
|
|
if(isset($get['keyword']) && $get['keyword']){
|
|
$where[] = [$get['keyword_type'],'like','%'.$get['keyword'].'%'];
|
|
}
|
|
//等级查询
|
|
if(isset($get['level']) && $get['level'] != ''){
|
|
$where[] = ['level','=',$get['level']];
|
|
}
|
|
|
|
//分组查询
|
|
if(isset($get['group_id']) && $get['group_id']){
|
|
$where[] = ['group_id','=',$get['group_id']];
|
|
}
|
|
//消费金额
|
|
if(isset($get['total_amount_start']) && $get['total_amount_start']){
|
|
$where[] = ['total_order_amount','>=',$get['total_amount_start']];
|
|
}
|
|
if(isset($get['total_amount_end']) && $get['total_amount_end']){
|
|
$where[] = ['total_order_amount','<=',$get['total_amount_end']];
|
|
}
|
|
|
|
//注册时间
|
|
if(isset($get['start_time']) && $get['start_time']!=''){
|
|
$where[] = ['create_time','>=',strtotime($get['start_time'])];
|
|
}
|
|
if(isset($get['end_time']) && $get['end_time']!=''){
|
|
$where[] = ['create_time','<=',strtotime($get['end_time'])];
|
|
}
|
|
|
|
$user_count = Db::name('epr')
|
|
->where($where)
|
|
->count();
|
|
|
|
$user_list = Db::name('epr')
|
|
->where($where)
|
|
// ->field('password,pay_password,salt',true)
|
|
->page($get['page'],$get['limit'])
|
|
->order('id desc')
|
|
->select();
|
|
$user_group = Db::name('staff_group')->column('name','id');
|
|
|
|
foreach ($user_list as &$item){
|
|
$item['create_time']=date("Y-m-d H:i:s",$item['create_time']);
|
|
$item['abs_avatar']=UrlServer::getFileUrl($item['abs_avatar']);
|
|
$grue=Db::name('staff_group')->where('id',$item['bellist_id'])->find();
|
|
if($grue){
|
|
$item['grue_name']=$grue['name'];
|
|
}else{
|
|
$item['grue_name']='-';
|
|
}
|
|
}
|
|
|
|
return ['count'=>$user_count , 'lists'=>$user_list];
|
|
}
|
|
/**
|
|
* 修改原料的分类名称
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function typelist($get){
|
|
$user_count = Db::name('material_type')
|
|
->count();
|
|
$user_list = Db::name('material_type')
|
|
->page($get['page'],$get['limit'])
|
|
->select();
|
|
foreach ($user_list as &$item){
|
|
$item['time']=date("Y-m-d H:i:s",$item['time']);
|
|
|
|
}
|
|
|
|
return ['count'=>$user_count , 'lists'=>$user_list];
|
|
}
|
|
/**
|
|
* 修改原料的分类列表
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function typelists(){
|
|
$typelists = Db::name('material_type')->select();
|
|
return $typelists;
|
|
}
|
|
/**
|
|
* 增加原料的库存
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function add($get){
|
|
$data = [
|
|
'name' =>$get['name'],
|
|
'namebm' =>$get['namebm'],
|
|
'type' =>$get['brand_id'],
|
|
'abs_avatar' =>$get['image'],
|
|
'goodskc' =>$get['goodskc'],
|
|
'price' =>$get['price'],
|
|
'goodsxh' =>$get['goodsxh'],
|
|
'goodsdw' =>$get['goodsdw'],
|
|
'nots' =>$get['remarks'],
|
|
'goodsyj' =>$get['goodsyj'],
|
|
'bellist_id' =>$get['bellist_id'],
|
|
'create_time' =>time(),
|
|
];
|
|
return Db::name('epr')->data($data)->insert();
|
|
}
|
|
/**
|
|
* 查询材料库存
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function infolist($id){
|
|
$info['base'] = Db::name('epr')
|
|
->where(['id' => $id])
|
|
->withAttr('abs_avatar', function ($value, $data) {
|
|
return UrlServer::getFileUrl($data['abs_avatar']);
|
|
})
|
|
->withAttr('content', function ($value){
|
|
$preg = '/(<img .*?src=")[^https|^http](.*?)(".*?>)/is';
|
|
$local_url = UrlServer::getFileUrl('/');
|
|
return preg_replace($preg, "\${1}$local_url\${2}\${3}",$value);
|
|
})
|
|
->append(['abs_avatar','abs_video'])->find();
|
|
return $info;
|
|
|
|
|
|
}
|
|
/**
|
|
* 编辑原料的内容
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function edit($get){
|
|
$data = [
|
|
'name' =>$get['name'],
|
|
'namebm' =>$get['namebm'],
|
|
'type' =>$get['brand_id'],
|
|
'abs_avatar' =>$get['image'],
|
|
'goodskc' =>$get['goodskc'],
|
|
'price' =>$get['price'],
|
|
'goodsxh' =>$get['goodsxh'],
|
|
'goodsdw' =>$get['goodsdw'],
|
|
'nots' =>$get['remarks'],
|
|
'goodsyj' =>$get['goodsyj'],
|
|
'bellist_id' =>$get['bellist_id'],
|
|
'create_time' =>time(),
|
|
];
|
|
return Db::name('epr')->where('id',$get['id'])->data($data)->update();
|
|
}
|
|
/**
|
|
* 编辑员工分组
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function staff_beedit($get){
|
|
return Db::name('staff_group')->where(['id'=>$get['id']])->update(['name'=>$get['name']]);
|
|
}
|
|
/**
|
|
* 增加员工分组
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function staff_beeadd($get){
|
|
return Db::name('staff_group')->data(['name'=>$get['name']])->insert();
|
|
}
|
|
|
|
/**
|
|
* 删除员工分组
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function staff_beedel($id){
|
|
return Db::name('staff_group')->where('id',$id)->delete();
|
|
}
|
|
|
|
|
|
/**
|
|
* 修改员工的服务类别
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function staff_typeedit($post){
|
|
return Db::name('staff_type')->where(['id'=>$post['id']])->update(['name'=>$post['name']]);
|
|
}
|
|
/**
|
|
* 删除员工服务类别
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function staff_typedel($id){
|
|
return Db::name('staff_type')->where('id',$id)->delete();
|
|
}
|
|
/**
|
|
* 获取员工的分组
|
|
* @param $get
|
|
* @return array
|
|
*/
|
|
public static function staff_beed(){
|
|
return Db::name('staff_group')->field('id,name')->select();
|
|
|
|
}
|
|
|
|
|
|
public static function exportFile($get)
|
|
{
|
|
$where[] = ['del','=', '0'];
|
|
|
|
//查询
|
|
if(isset($get['keyword']) && $get['keyword']){
|
|
$where[] = [$get['keyword_type'],'like','%'.$get['keyword'].'%'];
|
|
}
|
|
//等级查询
|
|
if(isset($get['level']) && $get['level'] != ''){
|
|
$where[] = ['level','=',$get['level']];
|
|
}
|
|
//分组查询
|
|
if(isset($get['group_id']) && $get['group_id']){
|
|
$where[] = ['group_id','=',$get['group_id']];
|
|
}
|
|
//消费金额
|
|
if(isset($get['total_amount_start']) && $get['total_amount_start']){
|
|
$where[] = ['total_order_amount','>=',$get['total_amount_start']];
|
|
}
|
|
if(isset($get['total_amount_end']) && $get['total_amount_end']){
|
|
$where[] = ['total_order_amount','<=',$get['total_amount_end']];
|
|
}
|
|
|
|
//注册时间
|
|
if(isset($get['start_time']) && $get['start_time']!=''){
|
|
$where[] = ['create_time','>=',strtotime($get['start_time'])];
|
|
}
|
|
if(isset($get['end_time']) && $get['end_time']!=''){
|
|
$where[] = ['create_time','<=',strtotime($get['end_time'])];
|
|
}
|
|
|
|
$user_list = Db::name('user')->where($where)
|
|
->order('id desc')
|
|
->select();
|
|
|
|
//会员分组
|
|
$user_group = Db::name('user_group')->where(['del'=>0])->column('name','id');
|
|
//会员等级
|
|
$user_level = Db::name('user_level')->where(['del'=>0])->column('name','id');
|
|
// 所有会员信息
|
|
$all_user_list = User::where(['del'=>0])->column('sn,nickname,mobile,level','id');
|
|
|
|
$exportData = [];
|
|
foreach ($user_list as $item){
|
|
$groupName = '-';
|
|
$levelName = '无等级';
|
|
//会员所属分组
|
|
if(isset($user_group[$item['group_id']])){
|
|
$groupName = $user_group[$item['group_id']];
|
|
}
|
|
|
|
if(isset($user_level[$item['level']])){
|
|
$levelName = $user_level[$item['level']];
|
|
}
|
|
|
|
$referrer_user_info = '';
|
|
$referrer_nickname = '';
|
|
$referrer_sn = '';
|
|
$referrer_mobile = '';
|
|
$referrer_level_name = '-';
|
|
if(isset($all_user_list[$item['first_leader']])){
|
|
$referrer_user = $all_user_list[$item['first_leader']];
|
|
$referrer_nickname = $referrer_user['nickname'];
|
|
$referrer_sn = $referrer_user['sn'];
|
|
$referrer_mobile = $referrer_user['mobile'];
|
|
if(isset($user_level[$referrer_user['level']])){
|
|
$referrer_level_name =$user_level[$referrer_user['level']];
|
|
}
|
|
$referrer_user_info.= '【昵称:'.$referrer_nickname.' 编号:'.$referrer_sn. ' 手机:'. $referrer_mobile . ' 等级:'. $referrer_level_name.'】';
|
|
}
|
|
$loginTime = date('Y-m-d H:i:s', $item['login_time']);
|
|
|
|
$exportData[] = [$item['sn'], $item['nickname'], $levelName, $groupName, $referrer_user_info, $item['total_order_amount'], $item['user_money'], $item['user_integral'], $loginTime];
|
|
}
|
|
|
|
$exportTitle = ['会员编号', '会员昵称', '会员等级', '会员分组', '推荐人信息', '消费金额', '账户余额', '积分', '最后登录时间'];
|
|
$exportExt = 'xls';
|
|
return ['exportTitle'=> $exportTitle, 'exportData' => $exportData, 'exportExt'=>$exportExt, 'exportName'=>'会员列表'.date('Y-m-d H:i:s')];
|
|
}
|
|
|
|
public static function usermaterial($post){
|
|
|
|
$where = [];
|
|
//分组查询
|
|
if(isset($post['staffid']) && $post['staffid']!=''){
|
|
$where[] = ['staff_id','=',$post['staffid']];
|
|
}
|
|
|
|
if(isset($post['name']) && $post['name']!=''){
|
|
|
|
$where[] = ['name', 'like', '%' . $post['name'] . '%'];
|
|
}
|
|
//注册时间
|
|
if(isset($post['start_time']) && $post['start_time']!=''){
|
|
$where[] = ['create_time','>=',strtotime($post['start_time'])];
|
|
}
|
|
if(isset($post['end_time']) && $post['end_time']!=''){
|
|
$where[] = ['create_time','<=',strtotime($post['end_time'])];
|
|
}
|
|
|
|
$user_count = Db::name('erp_staff')
|
|
->where($where)
|
|
->count();
|
|
|
|
$user_list = Db::name('erp_staff')
|
|
->where($where)
|
|
->page($post['page'],$post['limit'])
|
|
->order('id desc')
|
|
->select();
|
|
foreach ($user_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();
|
|
if($staff){
|
|
$item['staff_name']=$staff['name'];
|
|
$item['staff_phone']=$staff['mobile'];
|
|
}
|
|
$mater=Db::name('epr')->where('id',$item['goods_id'])->find();
|
|
if($mater){
|
|
$item['mater_name']=$mater['name'];
|
|
}
|
|
}
|
|
|
|
return ['count'=>$user_count , 'lists'=>$user_list];
|
|
|
|
}
|
|
|
|
public static function delusermaterial($id){
|
|
return Db::name('erp_staff')->where('id',$id)->delete();
|
|
}
|
|
|
|
public static function audit($id){
|
|
return Db::name('erp_staff')->where('id',$id)->update(['status'=>2]);
|
|
}
|
|
|
|
public static function noaudit(){
|
|
return Db::name('erp_staff')->where('id',$id)->update(['status'=>1]);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |