1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646 |
- <?php
- namespace Modules\Service\Http\Controllers;
- use App\Events\AddAgent;
- use App\Events\AgentAuditServiceEvent;
- use Modules\Service\Events\ShelvedAgent;
- use App\Events\ChangeUserInfo;
- use Modules\Service\Events\ChangeUserLevel;
- use App\Events\ChangeUserWar;
- use App\Events\ChangeRecom;
- use App\Events\DeleteAgent;
- use App\Handlers\UploadFilesHandler;
- use App\Listeners\AgentAuditServiceListener;
- use App\Models\CauseDel;
- use App\Models\EnrollUser;
- use App\Models\Wd\TestUser;
- use App\Models\ServiceReason;
- use App\Models\Warea;
- use App\Models\WdOrder;
- use App\Models\WdStore;
- use Carbon\Carbon;
- use EasyWeChat\Factory;
- use GuzzleHttp\Client;
- use Illuminate\Database\Eloquent\Model;
- use Illuminate\Support\Facades\DB;
- use App\Models\User;
- use App\Models\Admin;
- use App\Models\UserCopy;
- use App\Models\UserCert;
- use App\Models\AgentOperationLog;
- use App\Models\Message;
- use Illuminate\Support\Facades\Validator;
- use Illuminate\Validation\Rule;
- use Illuminate\Support\Facades\Log;
- use Illuminate\Support\Facades\Auth;
- use Jxlwqq\IdValidator\IdValidator;
- use Illuminate\Support\Facades\Cache;
- use Illuminate\Support\Facades\Redis;
- use Illuminate\Support\Facades\Storage;
- use Illuminate\Http\Request;
- use \Exception;
- use App\Models\Enroll;
- class UserController extends Controller
- {
- /***取消冻结*/
- public function Cancel_status(Request $request){
- User::where('id',$request->id)->update(['freeze_status'=>0,'freeze_time'=>null]);
- return $this->success([]);
- }
- //获取代理列表信息
- public function getUserList(Request $request)
- {
- $input = $request->all();
- $page_size = $input['page_size'];
- $page_index = $input['page_index'];
- $num = ($page_index - 1) * $page_size;
- $search_name = $input['search_name'];
- $info_select = $input['info_select'];
- $recom_name = $request->has('recom_name') ? $input['recom_name'] : '';
- $agent_name = $request->has('agent_name') ? $input['agent_name'] : '';
- $commissar_id = $input['commissar'];
- $warea_id = $input['warea_id'];
- $where = [];
- if ($input['level'] == '4') {
- $user = User::onlyTrashed()->where($where);
- } elseif ($input['level'] == 'all') {
- $user = User::withTrashed()->where($where);
- } elseif ($input['level']==5){
- $user = User::withTrashed()->where($where)->where('freeze_status',1);
- }else {
- $where['level'] = $input['level'];
- $user = User::where($where);
- }
- if ($request->has('start_time')){
- Log::error('时间');
- if ($input['start_time']){
- $user->where('created_at','>=',$input['start_time']);
- }
- }
- if ($request->has('end_time')){
- if ($input['end_time']){
- $user->where('created_at','<=',$input['end_time']);
- }
- }
- if ($input['level']!=4){
- $user->whereIn('cert_status', [3, 6])->where('service_status','<>',2);
- }
- // if ($search_name) {
- // $user->where(function ($query) use ($search_name) {
- // $query->where('nickname', 'like', '%' . $search_name . '%')
- // ->orWhere('mobile', $search_name)
- // ->orWhere('cre_num', $search_name)
- // ->orWhere('realname', 'like', '%' . $search_name . '%');
- // });
- // }
- if ($search_name) {
- if ($info_select==1){
- $user->where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like','%'.$search_name.'%' )
- ->orWhere('cre_num', $search_name)
- ->orWhere('realname', 'like', '%' . $search_name . '%');
- });
- }elseif ($info_select==2){
- $recom_id = $this->getUserInfo($search_name);
- $user->whereIn('recom_id', $recom_id);
- }else{
- $agent_id = $this->getUserInfo($search_name);
- $user->whereIn('agent_id', $agent_id);
- }
- }
- // if ($agent_name) {
- // $agent_id = $this->getUserInfo($agent_name);
- // $user->whereIn('agent_id', $agent_id);
- //
- // }
- // if ($recom_name) {
- // $recom_id = $this->getUserInfo($recom_name);
- // $user->whereIn('recom_id', $recom_id);
- //
- // }
- //<<<<<<< HEAD
- if ($warea_id && $commissar_id) {
- $user->where('warea_id', $warea_id);
- }
- if ($commissar_id && empty($warea_id)) {
- $warea_ids = Warea::where('admin_id', $commissar_id)->pluck('id');
- $user->whereIn('warea_id', $warea_ids);
- }
- $count = $user->where($where)->count();
- if ($count == 0) {
- $this->error('400001', '没有数据');
- }
- $list = $user->with(['recom:id,nickname,mobile', 'agent:id,nickname,mobile,level', 'warea:id,name,admin_name'])
- ->select('deleted_at','id', 'nickname','name', 'remark','realname', 'level', 'headimgurl', 'mobile', 'recom_id','remark_name','freeze_status','login_at','freeze_time', 'agent_id','service_status', 'warea_id','cre_num', 'status','province','city','country','address','in_group',
- DB::raw('if(cert_status=3,6,6) as cert_status'), DB::raw('if(deleted_at,1,0) as deleted'))
- ->orderBy('id', 'desc')->skip($num)->take($page_size)->get();
- $admin=Auth::user();
- $status=false;
- if($admin->role_id==22 || $admin->role_id==32){
- $status=true;
- }
- foreach ($list as $k=>$v){
- if (empty($v->remark)){
- $list[$k]['remark']='';
- }
- if ($v->deleted_at){
- $list[$k]['deletd_info']=AgentOperationLog::where('user_id',$v->id)
- ->where('type',4)->orderByDesc('created_at')->first();
- }
- if (!empty($v->headimgurl)){
- $list[$k]['headimgurl']=mb_substr($v->headimgurl,0,-3).'0';
- }
- if ($v->level!=3 && $v->level!=0){
- if ($v->agent->level==3 || $v->agent->level==0){
- $list[$k]->crown=$v->agent;
- }else{
- $res=$this->get_crown($v->agent->id);
- $list[$k]->crown=$res;
- }
- }else{
- $list[$k]->crown='';
- }
- if (!$status){
- if ($list[$k]->cre_num){
- $list[$k]->cre_num=mb_substr($list[$k]->cre_num,0,2).'********'.mb_substr($list[$k]->cre_num,14);
- }
- }
- // $list[$k]['is_test']=1;
- // $test_user=TestUser::where('phone',$v->mobile)->first();
- // if(!empty($test_user) ){
- // $list[$k]['is_test']=0;
- // }
- }
- return $this->success_list($list, '获取数据成功', $count);
- }
- //添加内测
- public function addTestUser(Request $request){
- $rules=[
- 'phone'=>'required|regex:/^1[3456789][0-9]{9}$/',
- ];
- $message=[
- 'phone.required'=>'手机号不能为空.',
- 'phone.regex'=>'手机号格式有误.',
- ];
- $validator = Validator::make($request->input(),$rules,$message);
- if($validator->fails()){
- return $this->error('400013',$validator->errors()->first());
- }
- if(TestUser::where('phone',$request->input('phone'))->first()){
- return $this->error('450001','手机号已存在');
- }
- $res=TestUser::create([
- 'phone'=>$request->input('phone'),
- 'name'=>$request->input('realname'),
- 'nickname'=>$request->input('nickname'),
- 'level'=>$request->input('level'),
- ]);
- if($res){
- return $this->success([]);
- }else{
- return $this->error();
- }
- }
- //添取消内测
- public function cancelTestUser(Request $request){
- $rules=[
- 'phone'=>'required|regex:/^1[345789][0-9]{9}$/',
- ];
- $message=[
- 'phone.required'=>'手机号不能为空.',
- 'phone.regex'=>'手机号格式有误.',
- ];
- $validator = Validator::make($request->input(),$rules,$message);
- if($validator->fails()){
- return $this->error('400013',$validator->errors()->first());
- }
- $res=TestUser::where('phone',$request->input('phone'))->delete();
- if($res){
- return $this->success([]);
- }else{
- return $this->error();
- }
- }
- /**查找代理公司**/
- public function get_crown($id){
- $re=User::with(['agent:id,nickname,mobile,level'])->where('id',$id)->first();
- if (!$re){
- return '';
- }
- if ($re->agent->level!=3 && $re->agent->level!=0){
- $res=$this->get_crown($re->agent->id);
- return $res;
- }
- return $re->agent;
- }
- //根据输入条件查询用户
- public function getUserInfo($search = null)
- {
- return User::where('nickname', 'like', '%' . $search . '%')
- ->orWhere('mobile', $search)
- ->orWhere('cre_num', $search)
- ->orWhere('realname', 'like', '%' . $search . '%')
- ->pluck('id');
- }
- //导出代理信息
- public function exportUserList(Request $request)
- {
- ini_set('memory_limit', '2048M');
- $input = $request->all();
- $page_size = $input['page_size'];
- $page_index = $input['page_index'];
- $num = ($page_index - 1) * $page_size;
- $search_name = $input['search_name'];
- $info_select = $input['info_select'];
- $recom_name = $request->has('recom_name') ? $input['recom_name'] : '';
- $agent_name = $request->has('agent_name') ? $input['agent_name'] : '';
- $commissar_id = $input['commissar'];
- $warea_id = $input['warea_id'];
- $where = [];
- if ($input['level'] == '4') {
- $user = User::onlyTrashed()->where($where);
- } elseif ($input['level'] == 'all') {
- $user = User::where($where)->whereNull('deleted_at');
- }elseif ($input['level']==5){
- $user = User::withTrashed()->where($where)->where('freeze_status',1);
- } else {
- $where['level'] = $input['level'];
- $user = User::where($where);
- }
- if ($request->has('start_time')){
- if ($input['start_time']){
- $user->where('created_at','>=',$input['start_time']);
- }
- }
- if ($request->has('end_time')){
- if ($input['end_time']){
- $user->where('created_at','<=',$input['end_time']);
- }
- }
- $user->whereIn('cert_status', [3, 6])->where('service_status',0);
- if ($search_name) {
- // $user->where(function ($query) use ($search_name) {
- // $query->where('nickname', 'like', '%' . $search_name . '%')
- // ->orWhere('mobile', $search_name)
- // ->orWhere('cre_num', $search_name)
- // ->orWhere('realname', 'like', '%' . $search_name . '%');
- // });
- if ($info_select==1){
- $user->where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like',"%$search_name%")
- ->orWhere('cre_num', $search_name)
- ->orWhere('realname', 'like', '%' . $search_name . '%');
- });
- }elseif ($info_select==2){
- $recom_id = $this->getUserInfo($search_name);
- $user->whereIn('recom_id', $recom_id);
- }else{
- $agent_id = $this->getUserInfo($search_name);
- $user->whereIn('agent_id', $agent_id);
- }
- }
- // if ($agent_name) {
- // $agent_id = $this->getUserInfo($agent_name);
- // $user->whereIn('agent_id', $agent_id);
- // }
- // if ($recom_name) {
- // $recom_id = $this->getUserInfo($recom_name);
- // $user->whereIn('recom_id', $recom_id);
- // }
- if ($warea_id && $commissar_id) {
- $user->where('warea_id', $warea_id);
- }
- if ($commissar_id && empty($warea_id)) {
- $warea_ids = Warea::where('admin_id', $commissar_id)->pluck('id');
- $user->whereIn('warea_id', $warea_ids);
- }
- $list = $user->with(['recom:id,nickname,mobile', 'agent:id,nickname,mobile,level', 'warea:id,name,admin_name'])
- ->select('id', 'nickname', 'realname', 'cre_num', 'remark', 'level', 'mobile', 'recom_id', 'agent_id', 'warea_id', 'auth_code', 'auth_startime', 'auth_endtime', 'recom_code', 'status','remark_name','freeze_status','login_at','freeze_time','service_status','in_group',
- DB::raw('if(cert_status=3,6,6) as cert_status'), DB::raw('if(deleted_at,1,0) as deleted'),'deleted_at','province','city','country','address')
- ->orderBy('id', 'desc')
- // ->skip($num)->take(10000)
- ->get();
- $WDUserIds=WdStore::where('is_apply',3)->pluck('user_id')->toArray();
- foreach ($list as $k=>$v){
- if (in_array($v->id,$WDUserIds)){
- $list[$k]->store_status=true;
- }else{
- $list[$k]->store_status=false;
- }
- if ($v->deleted_at){
- $list[$k]->crown='';
- }else{
- if ($v->level!=3 && $v->level!=0){
- if ($v->agent){
- if ($v->agent->level==3 || $v->agent->level==0){
- $list[$k]->crown=$v->agent;
- }else{
- $res=$this->get_crown($v->agent->id);
- $list[$k]->crown=$res;
- }
- }else{
- $list[$k]->crown='';
- }
- }else{
- $list[$k]->crown='';
- }
- }
- if ($v->level==3){
- if ($v->remark_name){
- $list[$k]->nickname=$v->remark_name;
- }
- }
- }
- if ($list) {
- return $this->success($list);
- } else {
- return $this->error();
- }
- }
- //代理详情
- public function getUserDetails(Request $request)
- {
- $input = $request->all();
- $user = User::withTrashed()->with(['recom:id,nickname,mobile', 'agent:id,nickname,mobile'
- ])->where('id', $input['id'])->first();
- if ($user) {
- if ($user->level == '3') {
- $childAgent = User::where('agent_id', $user->id)->select('id', 'nickname', 'level', 'mobile')->get()->toArray();
- $childAgentIds = array_column($childAgent, 'id');
- if ($childAgentIds) {
- $childChildAgent = User::whereIn('agent_id', $childAgentIds)->select('id', 'nickname', 'level', 'mobile')->get()->toArray();
- $user->child_agent = array_merge($childAgent, $childChildAgent);
- } else {
- $user->child_agent = $childAgent;
- }
- $user->childAgentCount = count($user->child_agent);
- } elseif ($user->level == '2') {
- $user->child_agent = User::where('agent_id', $user->id)->select('id', 'nickname', 'level', 'mobile')->get()->toArray();
- $user->childAgentCount = count($user->child_agent);
- $user->change_info=AgentOperationLog::where('user_id',$user->id)->where('type',2)->first();
- } else {
- $user->child_agent = [];
- $user->childAgentCount = 0;
- }
- if ($user->warea_id) {
- $warea = Warea::where('id', $user->warea_id)->first();
- $user['warea']->warea_name = $warea->name;
- if ($warea->admin_id) {
- $user['warea']->commissar = Admin::where('id', $warea->admin_id)->value('name');
- }
- }
- if (!empty($user->deleted_at)) {
- $user->delete = '1';//已删除
- } else {
- $user->delete = '0';//未删除
- }
- if ($user->cre_num){
- $user->cre_num=mb_substr($user->cre_num,0,2).'********'.mb_substr($user->cre_num,14);
- }
- $user->up_team=$this->getUpTeam($user->id);
- // event(new ChangeUserInfo($user));
- return $this->success($user);
- } else {
- return $this->error('400004', '代理信息不存在');
- }
- }
- /**点击查看身份证号**/
- public function GetCreNum(Request $request){
- $id=$request->input('id');
- $cre_num=User::where('id',$id)->select('cre_num','mobile','nickname')->first();
- $data=['type'=>0,'time'=>Carbon::now()->toDateTimeString(),
- 'created_at'=>Carbon::now()->toDateTimeString(),'updated_at'=>Carbon::now()->toDateTimeString(),
- 'user_id'=>$id,
- 'log'=>Auth::user()->name.'查看了该代理('.$cre_num->nickname.'手机号:'.$cre_num->mobile.')的身份证号码。'
- ];
- DB::table('look_user_log')->insert($data);
- return $this->success(['cre_num'=>$cre_num->cre_num]);
- }
- //代理详情
- public function getUserDetailsdemo(Request $request)
- {
- $input = $request->all();
- $user = User::withTrashed()->with(['recom:id,nickname,mobile', 'agent:id,nickname,mobile'
- ])->where('id', $input['id'])->first();
- if ($user) {
- if ($user->level == '3') {
- $childAgent = User::where('agent_id', $user->id)->select('id', 'nickname', 'level', 'mobile')->with(['recom:id,nickname,mobile', 'agent:id,nickname,mobile'
- ])->get()->toArray();
- $childAgentIds = array_column($childAgent, 'id');
- if ($childAgentIds) {
- $childChildAgent = User::whereIn('agent_id', $childAgentIds)->select('id', 'nickname', 'level', 'mobile')->with(['recom:id,recom_id,nickname,mobile', 'agent:id,nickname,mobile'
- ])->get()->toArray();
- $user->child_agent = array_merge($childAgent, $childChildAgent);
- } else {
- $user->child_agent = $childAgent;
- }
- $user->childAgentCount = count($user->child_agent);
- } elseif ($user->level == '2') {
- $user->child_agent = User::where('agent_id', $user->id)->select('id', 'nickname', 'level', 'mobile')->get()->toArray();
- $user->childAgentCount = count($user->child_agent);
- } else {
- $user->child_agent = [];
- $user->childAgentCount = 0;
- }
- if ($user->warea_id) {
- $warea = Warea::where('id', $user->warea_id)->first();
- $user['warea']->warea_name = $warea->name;
- if ($warea->admin_id) {
- $user['warea']->commissar = Admin::where('id', $warea->admin_id)->value('name');
- }
- }
- if (!empty($user->deleted_at)) {
- $user->delete = '1';//已删除
- } else {
- $user->delete = '0';//未删除
- }
- $user->up_team=$this->getUpTeam($user->id);
- // event(new ChangeUserInfo($user));
- // foreach ($user as $k=>$v){
- // $user[$k]->racom_mobile=$v;
- //// $user[$k]['racom_nickname']=$v->recom->nickname;
- //// $user[$k]['racom_level']=$v->recom->level;
- //// $user[$k]['agent_mobile']=$v->agent->mobile;
- //// $user[$k]['agent_nickname']=$v->agent->nickname;
- //// $user[$k]['agent_level']=$v->agent->level;
- // }
- return $this->success($user);
- } else {
- return $this->error('400004', '代理信息不存在');
- }
- }
- //获取战区政委信息
- public function getWareaInfo($warea_id)
- {
- $data = [];
- if ($warea_id) {
- $warea = Warea::where('id', $warea_id)->first();
- if ($warea) {
- $data['warea_name'] = $warea->name;
- if ($warea->admin_id) {
- $data['commissar'] = Admin::where('id', $warea->admin_id)->value('name');
- }
- }
- }
- return $data;
- }
- //获取未审核代理列表信息
- public function getNocertUserList(Request $request)
- {
- $input = $request->all();
- $page_size = $input['page_size'];
- $page_index = $input['page_index'];
- $num = ($page_index - 1) * $page_size;
- $search_name = $input['search_name'];
- if ($input['cert'] == 'all') {
- $where = [];
- } elseif($input['cert'] == '7'){
- $where['service_status']=2;
- }else {
- $where['cert_status'] = $input['cert'];
- }
- $data = User::where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('cre_num', 'like', '%' . $search_name . '%')
- ->orWhere('realname', 'like', '%' . $search_name . '%');
- })
- ->where($where)
- ->where('id', '<>', 1);
- if($input['cert'] == '7'){
- $admin=Auth::user();
- if($admin->role_id==23){
- $warea_ids = Warea::where('admin_id',$admin->id)->pluck('id');
- $data->whereIn('warea_id',$warea_ids);
- }
- }
- $count = $data->count();
- if ($count == 0) {
- $this->error('400001', '没有数据');
- }
- // DB::enableQueryLog();
- $list = $data
- ->with('recom:id,nickname,mobile', 'agent:id,nickname,mobile', 'crown:id,nickname,mobile', 'usercert:id,user_id,recom_audit,recom_audit_desc,agent_audit,agent_audit_desc,company_audit_desc')
- ->skip($num)->take($page_size)
- ->get();
- if (empty($list)) {
- return $this->error('400002', '没有获取到数据');
- }
- return $this->success_list($list, '获取数据成功', $count);
- }
- //恢复代理公司驳回
- public function restoreCompanyRejected(Request $request){
- $id=$request->input('id');
- DB::beginTransaction();
- try{
- $user=User::find($id);
- UserCert::where('user_id',$id)->update(['company_audit'=>0,'company_audit_desc'=>null]);
- $user->service_status=1;
- $user->save();
- DB::commit();
- return $this->success([]);
- }catch(\Exception $e){
- DB::rollback();
- return $this->error();
- }
- }
- //获取代理授权信息
- public function getAuthUserList(Request $request)
- {
- $input = $request->all();
- $page_size = $input['page_size'];
- $page_index = $input['page_index'];
- $num = ($page_index - 1) * $page_size;
- $search_name = $input['search_name'];
- $status = $input['status'];
- $where = [];
- switch ($status) {
- case '0': //未授权
- $auth_status = 0;
- $count = User::where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('cre_num', 'like', '%' . $search_name . '%')
- ->orWhere('realname', 'like', '%' . $search_name . '%');
- })->whereNull('auth_code')
- ->where('id', '<>', 1)
- ->count();
- if ($count == 0) {
- $this->error('400001', '没有数据');
- }
- $list = User::where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('cre_num', 'like', '%' . $search_name . '%')
- ->orWhere('realname', 'like', '%' . $search_name . '%');
- })
- ->whereNull('auth_code')
- ->where('id', '<>', 1)
- ->with('recom:id,nickname,mobile', 'agent:id,nickname,mobile', 'usercert:id,user_id,recom_audit,recom_audit_desc,agent_audit,agent_audit_desc')
- ->skip($num)->take($page_size)
- ->get();
- break;
- case '1': //已授权
- $auth_status = 1;
- $nowDate = date("Y-m-d H:i:s", time());
- $count = User::where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('auth_code', 'like', '%' . $search_name . '%');
- })
- ->where($where)
- ->where('id', '<>', 1)
- // ->where('auth_startime','<=',$nowDate)
- ->where('auth_endtime', '>=', $nowDate)
- ->count();
- if ($count == 0) {
- $this->error('400001', '没有数据');
- }
- $list = User::where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('auth_code', 'like', '%' . $search_name . '%');
- })
- ->where($where)
- ->where('id', '<>', 1)
- // ->where('auth_startime','<=',$nowDate)
- ->where('auth_endtime', '>=', $nowDate)
- ->with('recom:id,nickname,mobile', 'agent:id,nickname,mobile', 'usercert:id,user_id,recom_audit,recom_audit_desc,agent_audit,agent_audit_desc')
- ->skip($num)->take($page_size)
- ->get();
- break;
- case '2': //已过期
- $auth_status = 2;
- $nowDate = date("Y-m-d H:i:s", time());
- // if($input['auth_time']){
- // $where['auth_startime']=$input['auth_time'];
- // }
- $count = User::where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('auth_code', 'like', '%' . $search_name . '%');
- })
- ->where($where)
- ->where('id', '<>', 1)
- ->where('auth_endtime', '<', $nowDate)
- ->count();
- if ($count == 0) {
- $this->error('400001', '没有数据');
- }
- $list = User::where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('auth_code', 'like', '%' . $search_name . '%');
- })
- ->where($where)
- ->where('id', '<>', 1)
- ->where('auth_endtime', '<', $nowDate)
- ->with('recom:id,nickname,mobile', 'agent:id,nickname,mobile', 'usercert:id,user_id,recom_audit,recom_audit_desc,agent_audit,agent_audit_desc')
- ->skip($num)->take($page_size)
- ->get();
- break;
- }
- if ($list) {
- foreach ($list as $key => $val) {
- $list[$key]['auth_status'] = $auth_status;
- }
- }
- return $this->success_list($list, '获取数据成功', $count);
- }
- //代理重新授权
- public function updateUserAuthInfo(Request $request)
- {
- $input = $request->all();
- $userInfo = User::find($input['id']);
- if (empty($userInfo)) {
- return $this->error('400213', '代理信息不存在');
- }
- $auth_code = $this->getAuthCode();
- $data['auth_code'] = $auth_code;
- $data['auth_startime'] = $input['auth_startime'];
- $data['auth_endtime'] = $input['auth_endtime'];
- DB::beginTransaction();
- $row = User::where('id', $input['id'])->update($data);
- $remark = '单个授权';
- $res = $this->addAgentOperationLog('5', $input['id'], $remark);
- if ($row && $res) {
- DB::commit();
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')授权代理信息成功,代理id=' . $input['id']);
- return $this->success([], '授权成功');
- }
- DB::rollBack();
- return $this->error();
- }
- //代理批量授权
- public function updateUserManyAuthInfo(Request $request)
- {
- $input = $request->all();
- $userId = $input['userId'];
- DB::beginTransaction();
- try {
- foreach ($userId as $key => $val) {
- $userInfo = User::find($val);
- if (empty($userInfo)) {
- return $this->error('400213', '代理(id=' . $val . ')信息不存在');
- }
- $auth_code = $this->getAuthCode();
- $data['auth_code'] = $auth_code;
- $data['auth_startime'] = $input['auth_startime'];
- $data['auth_endtime'] = $input['auth_endtime'];
- User::where('id', $val)->update($data);
- $remark = '批量授权';
- $this->addAgentOperationLog('5', $val, $remark);
- }
- DB::commit();
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')授权代理信息成功,代理ids=' . json_encode($userId));
- return $this->success([], '授权成功');
- } catch (Exception $e) {
- DB::rollBack();
- return $this->error();
- }
- }
- // public function updateBatch($multipleData = [])
- // {
- // try {
- // if (empty($multipleData)) {
- // throw new \Exception("数据不能为空");
- // }
- // $tableName = DB::getTablePrefix() . $this->getTable(); // 表名
- // $firstRow = current($multipleData);
- // $updateColumn = array_keys($firstRow);
- // // 默认以id为条件更新,如果没有ID则以第一个字段为条件
- // $referenceColumn = isset($firstRow['id']) ? 'id' : current($updateColumn);
- // unset($updateColumn[0]);
- // // 拼接sql语句
- // $updateSql = "UPDATE " . $tableName . " SET ";
- // $sets = [];
- // $bindings = [];
- // foreach ($updateColumn as $uColumn) {
- // $setSql = "`" . $uColumn . "` = CASE ";
- // foreach ($multipleData as $data) {
- // $setSql .= "WHEN `" . $referenceColumn . "` = ? THEN ? ";
- // $bindings[] = $data[$referenceColumn];
- // $bindings[] = $data[$uColumn];
- // }
- // $setSql .= "ELSE `" . $uColumn . "` END ";
- // $sets[] = $setSql;
- // }
- // $updateSql .= implode(', ', $sets);
- // $whereIn = collect($multipleData)->pluck($referenceColumn)->values()->all();
- // $bindings = array_merge($bindings, $whereIn);
- // $whereIn = rtrim(str_repeat('?,', count($whereIn)), ',');
- // $updateSql = rtrim($updateSql, ", ") . " WHERE `" . $referenceColumn . "` IN (" . $whereIn . ")";
- // // 传入预处理sql语句和对应绑定数据
- // return DB::update($updateSql, $bindings);
- // } catch (\Exception $e) {
- // return false;
- // }
- // }
- // }
- //添加代理信息
- public function uploadUser(Request $request)
- {
- $input = $request->all();
- $rules = [
- 'mobile' => ['required',
- Rule::unique('users')->where(function ($query) {
- $query->where('deleted_at', null);
- }),
- 'regex:/^1[0-9][0-9]{9}$/'],
- 'cre_num' => ['nullable',
- Rule::unique('users')->where(function ($query) {
- $query->where('deleted_at', null);
- })],
- 'share' => 'required | regex:/^1[345789][0-9]{9}$/',
- 'nickname' => 'required',
- 'level' => 'required | numeric',
- ];
- $uuu = new User();
- $validator = User::validator($input, $rules);
- if ($validator->fails()) {
- return $this->error('400013', $validator->errors()->first());
- }
- $idValidator = new IdValidator();
- if ($input['cre_num']) {
- if (!$idValidator->isValid($input['cre_num'])) {
- return $this->error('400013', '身份证号有误');
- }
- }
- $code = $this->getRandomString(6);
- $recom = User::where('mobile', $input['share'])->first();
- if (empty($recom)) {
- return $this->error('400115', '邀请人信息不存在');
- }
- if ($input['level'] == $recom->level) {
- $agent_id = $recom->agent_id;
- }
- if ($input['level'] < $recom->level) {
- $agent_id = $recom->id;
- }
- if ($input['level'] > $recom->level) {
- if ($input['level'] == '3') {
- $agent_id = '1';
- } else {
- $recom_up=User::find($recom->agent_id);
- if($recom_up->level=='2'){
- $agent_id = $recom_up->agent_id;
- }else{
- $agent_id = $recom_up->id;
- }
- }
- }
- $agent = User::where('id', $agent_id)->first();
- if ($agent->level == 3) {
- $crown_id = $agent->id;
- } elseif ($agent->level == 2) {
- $crown_id = $agent->agent_id;
- } else {
- $crown_id = '';
- }
- $warea_id = $recom->warea_id;
- // if($crown_id){
- // $warea_id=User::where('id',$crown_id)->value('warea_id');
- // }else{
- // $warea_id='';
- // }
- DB::beginTransaction();
- try {
- $data['mobile'] = $input['mobile'];
- $data['name'] = $input['nickname'];
- $data['nickname'] = $input['nickname'];
- $data['realname'] = $input['realname'];
- $data['password'] = MD5($input['mobile']);
- $data['cre_num'] = $input['cre_num'];
- $data['level'] = $input['level'];
- $data['headimgurl'] = 'https://img.bosszhipin.com/beijin/mcs/chatphoto/20181102/e0e8b50969101987a84f1643716b41ffcfcd208495d565ef66e7dff9f98764da.jpg';
- $data['status'] = 0;
- $data['cert_status'] = '6';
- $data['agent_id'] = $agent_id;
- $data['recom_id'] = $recom->id;
- $data['crown_id'] = $crown_id;
- $data['warea_id'] = $warea_id;
- $data['recom_code'] = $code;
- $data['auth_code'] = $this->getAuthCode();
- $data['auth_startime'] = date('Y-m-01 00:00:00');
- $data['auth_endtime'] = date('Y-m-01 00:00:00', strtotime('+1 years'));
- $data['register_type'] = '2';
- $row = User::create($data);
- $recoms['title'] = '新增成员推送';
- $recoms['type'] = '1';
- $recoms['data'] = '';
- $recoms['status'] = '0';
- $recoms['user_id'] = $row->recom_id;
- $recoms['agent_id'] = '1';
- Message::create($recoms);
- $agents['title'] = '新增成员推送';
- $agents['type'] = '1';
- $agents['data'] = '';
- $agents['status'] = '0';
- $agents['user_id'] = $row->agent_id;
- $agents['agent_id'] = '1';
- Message::create($agents);
- $after = ['id' => $row->id, 'nickname' => $row->nickname, 'mobile' => $row->mobile, 'level' => $row->level, 'recom_id' => $row->recom_id, 'recom_mobile' => $input['share'], 'agent_id' => $row->agent_id];
- $log = '添加代理成功,代理信息:' . json_encode($after, JSON_UNESCAPED_UNICODE);
- $this->addAgentOperationLog('1', $row->id, '', $log);
- if($input['level']==3){
- event(new AddAgent($row));
- }
- DB::commit();
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')添加' . $row->level . '级代理:' . $data['nickname'] . '(id=' . $row->id . ')成功,邀请人:' . $recom->nickname . '(id=' . $row->recom_id . ')');
- return $this->success([], '添加成功');
- } catch (Exception $e) {
- DB::rollBack();
- return $e->getMessage();
- return $this->error();
- }
- }
- /*授权码*/
- function getAuthCode()
- {
- $time = time();
- $three = mt_rand(100, 999);
- $res = date('ymd', $time);
- $re = mt_rand(10000000000, 99999999999);
- $data = 'DWBS00' . $three . $res . $re;
- return $data;
- }
- /* 随机字符串 邀请码*/
- function getRandomString($len, $chars = null)
- {
- if (is_null($chars)) {
- $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
- }
- mt_srand(10000000 * (double)microtime());
- for ($i = 0, $str = '', $lc = strlen($chars) - 1; $i < $len; $i++) {
- $str .= $chars[mt_rand(0, $lc)];
- }
- $count = User::where('recom_code', $str)->count();
- if ($count > 0) {
- $this->getRandomString(6);
- } else {
- return $str;
- }
- }
- //修改手机号
- public function updateMobile(Request $request)
- {
- $input = $request->all();
- $rules = [
- 'mobile' => [
- 'required',
- Rule::unique('users')->ignore($input['id'], 'id')->where(function ($query) {
- $query->where('deleted_at', null);
- }),
- 'regex:/^1[3456789][0-9]{9}$/'
- ],
- ];
- $uuu = new User();
- $validator = $uuu->validator($input, $rules);
- if ($validator->fails()) {
- return $this->error('400013', $validator->errors()->first());
- }
- $user = User::find($input['id']);
- $phone = $user->mobile;
- $user->mobile = $input['mobile'];
- $user->auth_img=null;
- DB::beginTransaction();
- $row = $user->save();
- $res = $this->addAgentOperationLog('6', $user->id);
- if ($row && $res) {
- DB::commit();
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')修改代理:' . $user->nickname . '(id=' . $user->id . ')手机号成功,原手机号:' . $phone . ',新手机号:' . $input['mobile']);
- return $this->success([], '修改成功');
- } else {
- DB::rollBack();
- return $this->error();
- }
- //=======
- // $row=$user->save();
- // if($row){
- // Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')修改代理:'.$user->nickname.'(id='.$user->id.')手机号成功,原手机号:'.$phone.',新手机号:'.$input['mobile']);
- // return $this->success([],'修改成功');
- // }
- // return $this->error();
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- }
- //修改推荐人(如果该处皇冠团队,下级代理信息变更很严重)代理邀请人员后,或者成为上级后不能变更推荐人
- public function updateRecom(Request $request)
- {
- $input = $request->all();
- $rules = [
- 'mobile' => [
- 'required',
- 'regex:/^1[3457689][0-9]{9}$/'
- ],
- 'remark' => ['required']
- ];
- $messages = [
- 'mobile.required' => '手机号不能为空.',
- 'mobile.regex' => '手机号格式有误.',
- 'remark.required' => '备注原因不能为空.'
- ];
- $uuu = new User();
- $validator = $uuu->validator($input, $rules, $messages);
- if ($validator->fails()) {
- return $this->error('400013', $validator->errors()->first());
- }
- $user = User::find($input['id']);//当前用户
- if ($user->recom_id) {
- $recom_id = $user->recom_id;
- } else {
- $recom_id = '暂无';
- }
- if ($user->agent_id) {
- $up_id = $user->agent_id;
- } else {
- $up_id = '暂无';
- }
- $agentCount = User::where(function ($query) use ($input) {
- $query->where('recom_id', '=', $input['id'])
- ->orWhere('agent_id', '=', $input['id']);
- })->count();
- //代理邀请人员后,或者成为上级后不能变更推荐人
- // if($agentCount>0){
- // return $this->error('400112','当前用户邀请人信息不能修改');
- // }
- $recomUser = User::where("mobile", $input['mobile'])->first();//新邀请人信息
- if (empty($recomUser)) {
- return $this->error('400115', '邀请人信息不存在');
- }
- if ($user->recom_id == $recomUser->id) {
- return $this->error('400111', '要更改的邀请人与当前邀请人相同');
- }
- if ($user->id == $recomUser->recom_id) {
- return $this->error('400116', '要更改的邀请人的邀请人为自己');
- }
- if ($user->id == $recomUser->id) {
- return $this->error('400116', '要更改的邀请人不能为自己');
- }
- $uuu = new User();
- $rechecking = $uuu->changeRecomSystem($input['id'], $input['mobile']);
- if ($rechecking == '222') {
- return $this->error('400116', '要更改的邀请人为当前代理邀请人系统体系内部成员');
- }
- DB::beginTransaction();
- try {
- if ($user->level == '3') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = '1';
- $user->crown_id = '';
- if ($user->warea_id != $recomUser->warea_id) {
- $user->warea_id = $recomUser->warea_id;
- $one_agent = User::where('agent_id', $user->id)->pluck('id');
- if (count($one_agent) > 0) {
- User::whereIn('id', $one_agent)->update(['warea_id' => $recomUser->warea_id]);
- foreach ($one_agent as $key => $val) {
- $two_agent = User::where('agent_id', $val)->pluck('id');
- if (count($two_agent) > 0) {
- User::whereIn('id', $two_agent)->update(['warea_id' => $recomUser->warea_id]);
- }
- }
- }
- }
- } else {
- if ($recomUser->level == '3') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomUser->id;
- $user->crown_id = $recomUser->id;
- $user->warea_id = $recomUser->warea_id;
- if ($user->level == '2') {
- $uuu->changeAgentLevelInfoTwo($user->id, $recomUser->id);
- } elseif ($user->level == '1') {
- $uuu->changeAgentLevelInfoThree($user->id, $recomUser->id, $recomUser->id);
- }
- $uuu->changeAgentRecomCrown($user->id, $recomUser->id, $recomUser->warea_id);
- } elseif ($recomUser->level == '2') {
- if ($user->level == '2') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomUser->agent_id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoTwo($user->id, $recomUser->agent_id);
- } elseif ($user->level == '1') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomUser->id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoThree($user->id, $recomUser->agent_id, $recomUser->id);
- }
- $uuu->changeAgentRecomCrown($user->id, $recomUser->crown_id, $recomUser->warea_id);
- } elseif ($recomUser->level == '1') {
- $recomAgent = User::find($recomUser->agent_id);
- if ($user->level == '2') {
- if ($recomAgent->level==$user->level){
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomAgent->agent_id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoTwo($user->id, $recomAgent->agent_id);
- }elseif($recomAgent->level==3){
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomAgent->id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoTwo($user->id, $recomAgent->id);
- }
- } elseif ($user->level == '1') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomUser->agent_id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoThree($user->id, $recomAgent->agent_id, $recomUser->agent_id);
- }
- $uuu->changeAgentRecomCrown($user->id, $recomUser->crown_id, $recomUser->warea_id);
- }
- }
- $row = $user->save();
- $remark = $input['remark'];
- $before = User::where('id', $recom_id)->select('id', 'nickname', 'mobile')->first();
- $after = ['id' => $recomUser->id, 'nickname' => $recomUser->nickname, 'mobile' => $recomUser->mobile];
- $log = '变更前邀请人:' . json_encode($before, JSON_UNESCAPED_UNICODE) . ',变更后邀请人:' . json_encode($after, JSON_UNESCAPED_UNICODE);
- $img=$request->input('img',[]);
- $this->addAgentOperationLog('3', $user->id, $remark, $log,json_encode($img));
- event(new ChangeRecom($user));
- DB::commit();
- // if($row){
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')修改代理:' . $user->nickname . '(id=' . $user->id . ')邀请人成功,原邀请人id=' . $recom_id . ',原上级id=' . $up_id . ',新邀请人:' . $recomUser->nickname . '(id=' . $recomUser->id . ')');
- return $this->success([]);
- // }
- // return $this->success([],'修改成功');
- } catch (Exception $e) {
- // return $e;
- //=======
- // if($user->level=='3'){
- // $user->recom_id=$recomUser->id;
- // $user->agent_id='1';
- // $user->crown_id='';
- // $user->warea_id='';
- // }else{
- // if($recomUser->level=='3'){
- // $user->recom_id=$recomUser->id;
- // $user->agent_id=$recomUser->id;
- // $user->crown_id=$recomUser->id;
- // $user->warea_id=$recomUser->warea_id;
- // if($user->level=='2'){
- // $uuu->changeAgentLevelInfoTwo($user->id,$recomUser->id);
- // }elseif($user->level=='1'){
- // $uuu->changeAgentLevelInfoThree($user->id,$recomUser->id,$recomUser->id);
- // }
- // $uuu->changeAgentRecomCrown($user->id,$recomUser->id,$recomUser->warea_id);
- // }elseif($recomUser->level=='2'){
- // if($user->level=='2'){
- // $user->recom_id=$recomUser->id;
- // $user->agent_id=$recomUser->agent_id;
- // $user->crown_id=$recomUser->crown_id;
- // $user->warea_id=$recomUser->warea_id;
- // $uuu->changeAgentLevelInfoTwo($user->id,$recomUser->agent_id);
- // }elseif ($user->level=='1'){
- // $user->recom_id=$recomUser->id;
- // $user->agent_id=$recomUser->id;
- // $user->crown_id=$recomUser->crown_id;
- // $user->warea_id=$recomUser->warea_id;
- // $uuu->changeAgentLevelInfoThree($user->id,$recomUser->agent_id,$recomUser->id);
- // }
- // $uuu->changeAgentRecomCrown($user->id,$recomUser->crown_id,$recomUser->warea_id);
- // }elseif($recomUser->level=='1'){
- // $recomAgent=User::find($recomUser->agent_id);
- // if($user->level=='2'){
- // $user->recom_id=$recomUser->id;
- // $user->agent_id=$recomAgent->agent_id;
- // $user->crown_id=$recomUser->crown_id;
- // $user->warea_id=$recomUser->warea_id;
- // $uuu->changeAgentLevelInfoTwo($user->id,$recomAgent->agent_id);
- // }elseif ($user->level=='1'){
- // $user->recom_id=$recomUser->id;
- // $user->agent_id=$recomUser->agent_id;
- // $user->crown_id=$recomUser->crown_id;
- // $user->warea_id=$recomUser->warea_id;
- // $uuu->changeAgentLevelInfoThree($user->id,$recomAgent->agent_id,$recomUser->agent_id);
- // }
- // $uuu->changeAgentRecomCrown($user->id,$recomUser->crown_id,$recomUser->warea_id);
- // }
- // }
- // $row=$user->save();
- // DB::commit();
- // if($row){
- // Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')修改代理:'.$user->nickname.'(id='.$user->id.')邀请人成功,原邀请人id='.$recom_id.',原上级id='.$up_id.',新邀请人:'.$recomUser->nickname.'(id='.$recomUser->id.')');
- // return $this->success([]);
- // }
- // return $this->success([],'修改成功');
- // }catch(Exception $e) {
- // return $e;
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- DB::rollBack();
- return $this->error(422,$e->getMessage());
- }
- // if($user->level==$recomUser->level){ //特级-》特级 顶级-》顶级 皇冠-》皇冠
- // $user->agent_id=$recomUser->agent_id;
- // }
- // if($user->level<$recomUser->level){ //皇冠-》顶级 皇冠-》特级 顶级-》特级
- // $user->agent_id=$recomUser->id;
- // }
- // if($user->level>$recdestoryuseromUser->level){ // 特级-》顶级 特级-》皇冠 顶级-》皇冠
- // if($user->level=='3'){//如果当前用户为皇冠 特级-》皇冠 顶级-》皇冠
- // $user->agent_id='1';
- // }else{ // 特级-》顶级
- // $topUser=User::find($recomUser->agent_id);//邀请人上级
- // if($topUser->level=='3'){//邀请人上级为皇冠
- // $user->agent_id=$topUser->id;
- // }else{//邀请人上级不为皇冠
- // $user->agent_id=$topUser->agent_id;
- // }
- // }
- // }
- }
- //代理升降级
- public function updateAgentLevel(Request $request)
- {
- $auth_id=Auth::user()->role_id;
- $input = $request->all();
- $remarks=$request->input('remark',null);
- $apply_id=$request->input('apply_id',null);
- $img=$request->input('img',null);
- if ($input['level']==3){
- if ($auth_id!=22 && $auth_id!=32){
- return $this->error('400115', '升级为代理公司只能由超级管理员进行操作');
- }
- }
- $user = User::find($input['id']);
- if ($user->level==3 && $input['level']<$user->level){
- if ($user->money>0){
- return $this->error(400124,'代理公司账户中还存有余额,请将余额归零后降级');
- }
- }
- $before_level=$user->level;
- $user_level=$user->level;
- if ($user->recom_id == '1') {
- return $this->error('400116', '邀请人为公司的代理不能变更等级');
- }
- $recom = User::find($user->recom_id);//邀请人信息
- if (empty($recom)) {
- return $this->error('400115', '代理邀请人信息不存在,升降级失败');
- }
- $uuu = new User();
- DB::beginTransaction();
- try {
- $res = $uuu->changeAgentLevel($user, $input['level']);
- $message['title'] = '代理等级变更推送';
- $message['data'] = '下级代理' . $input['id'] . '已升级';
- $message['type'] = '1';
- $message['status'] = '0';
- $message['user_id'] = $user->agent_id;
- $message['agent_id'] = '1';
- Message::create($message);
- if ($user_level == 1) {
- $before = '销售主管';
- } elseif ($user_level == 2) {
- $before = '销售经理';
- } elseif ($user_level == 3) {
- $before = '代理公司';
- } else {
- $before = '无效等级';
- }
- if ($input['level'] == 1) {
- $after = '销售主管';
- } elseif ($input['level'] == 2) {
- $after = '销售经理';
- } elseif ($input['level'] == 3) {
- $after = '代理公司';
- } else {
- $after = '无效等级';
- }
- if ($input['level'] > $user->level) {
- $remark = '升级';
- $log = '(升级)变更前等级:' . $before . ',变更后等级:' . $after;
- } elseif ($input['level'] < $user->level) {
- $remark = $remarks==null?'降级':$remarks;
- $log = '(降级)变更前等级:' . $before . ',变更后等级:' . $after;
- } else {
- $remark = '等级变更错误';
- $log = '';
- }
- $result=User::find($input['id']);
- $result->before=$before_level;
- try {
- event(new ChangeUserLevel($result));
- }catch (\Exception $exception){
- }
- $this->addAgentOperationLog('2', $user->id, $remark, $log,$img,$apply_id);
- Log::info('代理:' . $user->nickname . '(id=' . $user->id . ')等级变更成功,原推荐人id为:' . $user->recom_id . '原上级id为:' . $user->agent_id);
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')修改代理:' . $user->nickname . '(id=' . $user->id . ')等级成功,原等级:' . $user->level . ',新等级:' . $input['level']);
- DB::commit();
- return $this->success($request->all());
- } catch (Exception $e) {
- DB::rollBack();
- return $e->getMessage();
- Log::info($e->getMessage()) ;
- return $this->error();
- }
- }
- //皇冠战区选择
- public function crownSelectWarea(Request $request)
- {
- $input = $request->all();
- $user_id = $input['id'];
- $warea_id = $input['wid'];
- $user = User::where('id', $user_id)->first();
- $before_war=$user->warea_id;
- if ($warea_id == $user->warea_id) {
- return $this->error('450001', '不能选择当前所在战区');
- }
- $before = Warea::where('id', $user->warea_id)->select('id', 'name', 'admin_name')->first();
- DB::beginTransaction();
- try {
- $user->warea_id = $warea_id;
- $user->save();
- $one_agent = User::where('agent_id', $user_id)->pluck('id');
- if (count($one_agent) > 0) {
- User::whereIn('id', $one_agent)->update(['warea_id' => $warea_id]);
- foreach ($one_agent as $key => $val) {
- $two_agent = User::where('agent_id', $val)->pluck('id');
- if (count($two_agent) > 0) {
- User::whereIn('id', $two_agent)->update(['warea_id' => $warea_id]);
- }
- }
- }
- $after = Warea::where('id', $warea_id)->select('id', 'name', 'admin_name')->first();
- $log = '代理公司战区修改成功,修改前战区信息:' . json_encode($before, JSON_UNESCAPED_UNICODE) . ',修改后战区信息:' . json_encode($after, JSON_UNESCAPED_UNICODE);
- $this->addAgentOperationLog('7', $user_id, '', $log);
- $user->before=$before_war;
- event(new ChangeUserWar($user));
- DB::commit();
- return $this->success([]);
- } catch (Exception $e) {
- DB::rollBack();
- return $this->error($e->getMessage());
- }
- }
- /*后台审核*/
- public function certUserStatus(Request $request)
- {
- $input = $request->all();
- $user = User::find($input['id']);
- $usercert = UserCert::where('user_id', $input['id'])->first();
- if (empty($usercert)) {//判断user_cert表信息是否存在,不存在则创建
- $userC = new UserCert;
- $d['user_id'] = $input['id'];
- $d['recom_id'] = $user->recom_id;
- $userC->create($d);
- }
- $recom = User::find($user->recom_id);//邀请人信息
- $remark = '';
- if ($input['type'] == 1) {
- if ($input['level'] == '3') {//皇冠
- $data['agent_id'] = '1';
- $user->agent_id = '1';
- $user->crown_id = '';
- $user->warea_id = $recom->warea_id;
- //<<<<<<< HEAD
- } else {
- if ($recom->level > $input['level']) {//邀请人等级 > 代理等级
- $data['agent_id'] = $recom->id;
- $user->agent_id = $recom->id;
- if ($recom->level == '3') {
- //=======
- // }else{
- // if($recom->level>$input['level']){//邀请人等级 > 代理等级
- // $data['agent_id']=$recom->id;
- // $user->agent_id=$recom->id;
- // if($recom->level=='3'){
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- $user->crown_id = $recom->id;
- } else {
- $user->crown_id = $recom->crown_id;
- }
- $user->warea_id = $recom->warea_id;
- //<<<<<<< HEAD
- }
- if ($recom->level == $input['level']) {//邀请人等级 = 代理等级
- $data['agent_id'] = $recom->agent_id;
- $user->agent_id = $recom->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- }
- if ($recom->level < $input['level']) {//邀请人等级 < 代理等级
- if ($recom->agent_id == '3') {
- $data['agent_id'] = $recom->agent_id;
- $user->agent_id = $recom->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- } else {
- $agent = User::find($recom->agent_id);//邀请人上级代理信息
- $data['agent_id'] = $agent->agent_id;
- $user->agent_id = $agent->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- }
- }
- }
- $data['recom_audit'] = $input['status'];
- $data['recom_audit_desc'] = $input['remark'] ? $input['remark'] : '';
- $data['recom_updated_at'] = date("Y-m-d H:i:s");
- DB::beginTransaction();
- try {
- if ($input['status'] == '1') {//通过
- $user->cert_status = '2'; //邀请人通过
- $user->level = $input['level'];
- $user->save();
- $remark = '邀请人审核通过';
- } elseif ($input['status'] == '2') {//驳回
- $user->cert_status = '4'; //邀请人驳回
- $user->save();
- $remark = '邀请人审核驳回';
- }
- UserCert::where('user_id', $input['id'])->update($data);
- $this->addAgentOperationLog('8', $user->id, $remark);
- DB::commit();
- return $this->success([]);
- } catch (Exception $e) {
- DB::rollBack();
- return $this->error();
- }
- } else {
- DB::beginTransaction();
- try {
- $data['agent_audit'] = $input['status'];
- $data['agent_audit_desc'] = $input['remark'] ? $input['remark'] : '';
- $data['agent_updated_at'] = date("Y-m-d H:i:s");
- $userCert = UserCert::where('user_id', $input['id'])->where('recom_audit', '1')->first();
- if ($userCert && $input['status'] == '1') {
- $user->cert_status = '3';
- $user->auth_code = $this->getAuthCode();
- $user->auth_startime = date("Y-m-01 00:00:00");
- $user->auth_endtime = date("Y-m-01 00:00:00", strtotime("+1 years"));
- $user->save();
- $remark = '上级审核通过';
- } elseif ($userCert && $input['status'] == '2') {
- $user->cert_status = '5';
- $user->save();
- $remark = '上级审核驳回';
- }
- $userCert->update($data);
- $this->addAgentOperationLog('8', $user->id, $remark);
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')审核代理:' . $user->nickname . '(id=' . $user->id . ')成功,审核状态:' . $user->cert_status);
- DB::commit();
- return $this->success([]);
- } catch (Exception $e) {
- DB::rollBack();
- return $this->error();
- }
- }
- //=======
- // }
- // if($recom->level==$input['level']){//邀请人等级 = 代理等级
- // $data['agent_id']=$recom->agent_id;
- // $user->agent_id=$recom->agent_id;
- // $user->crown_id=$recom->crown_id;
- // $user->warea_id=$recom->warea_id;
- // }
- // if($recom->level<$input['level']){//邀请人等级 < 代理等级
- // if($recom->agent_id=='3'){
- // $data['agent_id']=$recom->agent_id;
- // $user->agent_id=$recom->agent_id;
- // $user->crown_id=$recom->crown_id;
- // $user->warea_id=$recom->warea_id;
- // }else{
- // $agent=User::find($recom->agent_id);//邀请人上级代理信息
- // $data['agent_id']=$agent->agent_id;
- // $user->agent_id=$agent->agent_id;
- // $user->crown_id=$recom->crown_id;
- // $user->warea_id=$recom->warea_id;
- // }
- // }
- // }
- // $data['recom_audit']=$input['status'];
- // $data['recom_audit_desc']=$input['remark']?$input['remark']:'';
- // $data['recom_updated_at']=date("Y-m-d H:i:s");
- // DB::beginTransaction();
- // try{
- // if($input['status']=='1'){//通过
- // $user->cert_status='2'; //邀请人通过
- // $user->level=$input['level'];
- // $user->save();
- // }elseif($input['status']=='2'){//驳回
- // $user->cert_status='4'; //邀请人驳回
- // $user->save();
- // }
- // UserCert::where('user_id',$input['id'])->update($data);
- // DB::commit();
- // return $this->success([]);
- // }catch(Exception $e) {
- // DB::rollBack();
- // return $this->error();
- // }
- // }else{
- // DB::beginTransaction();
- // try{
- // $data['agent_audit']=$input['status'];
- // $data['agent_audit_desc']=$input['remark']?$input['remark']:'';
- // $data['agent_updated_at']=date("Y-m-d H:i:s");
- // $userCert=UserCert::where('user_id',$input['id'])->where('recom_audit','1')->first();
- // if($userCert && $input['status']=='1'){
- // $user->cert_status='3';
- // $user->auth_code=$this->getAuthCode();
- // $user->auth_startime=date("Y-m-01 00:00:00");
- // $user->auth_endtime=date("Y-m-01 00:00:00",strtotime("+1 years"));
- // $user->save();
- // }elseif($userCert && $input['status']=='2'){
- // $user->cert_status='5';
- // $user->save();
- // }
- // $userCert->update($data);
- // Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')审核代理:'.$user->nickname.'(id='.$user->id.')成功,审核状态:'.$user->cert_status);
- // DB::commit();
- // return $this->success([]);
- // }catch(Exception $e) {
- // DB::rollBack();
- // return $this->error();
- // }
- // }
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- }
- /*后台批量审核*/
- public function certUserStatus_all(Request $request)
- {
- $input = $request->all();
- foreach ($input['list'] as $k => $v) {
- $user = User::find($v['id']);
- $usercert = UserCert::where('user_id', $v['id'])->first();
- if (empty($usercert)) {//判断user_cert表信息是否存在,不存在则创建
- $userC = new UserCert;
- $d['user_id'] = $v['id'];
- $d['recom_id'] = $user->recom_id;
- $userC->create($d);
- }
- $recom = User::find($user->recom_id);//邀请人信息
- if ($v['type'] == 1) {
- if ($v['level'] == '3') {//皇冠
- $data['agent_id'] = '1';
- $user->agent_id = '1';
- $user->crown_id = '';
- $user->warea_id = '';
- } else {
- if ($recom->level > $v['level']) {//邀请人等级 > 代理等级
- $data['agent_id'] = $recom->id;
- $user->agent_id = $recom->id;
- if ($recom->level == '3') {
- $user->crown_id = $recom->id;
- } else {
- $user->crown_id = $recom->crown_id;
- }
- $user->warea_id = $recom->warea_id;
- }
- if ($recom->level == $v['level']) {//邀请人等级 = 代理等级
- $data['agent_id'] = $recom->agent_id;
- $user->agent_id = $recom->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- }
- if ($recom->level < $v['level']) {//邀请人等级 < 代理等级
- if ($recom->agent_id == '3') {
- $data['agent_id'] = $recom->agent_id;
- $user->agent_id = $recom->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- } else {
- $agent = User::find($recom->agent_id);//邀请人上级代理信息
- $data['agent_id'] = $agent->agent_id;
- $user->agent_id = $agent->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- }
- }
- }
- $data['recom_audit'] = $v['status'];
- $data['recom_audit_desc'] = $v['remark'] ? $v['remark'] : '';
- $data['recom_updated_at'] = date("Y-m-d H:i:s");
- DB::beginTransaction();
- try {
- if ($v['status'] == '1') {//通过
- $user->cert_status = '2'; //邀请人通过
- $user->level = $v['level'];
- $user->save();
- //<<<<<<< HEAD
- $remark = '邀请人批量审核通过';
- } elseif ($v['status'] == '2') {//驳回
- $user->cert_status = '4'; //邀请人驳回
- $user->save();
- $remark = '邀请人批量审核驳回';
- }
- UserCert::where('user_id', $v['id'])->update($data);
- $this->addAgentOperationLog('8', $user->id, $remark);
- //=======
- // }elseif($v['status']=='2'){//驳回
- // $user->cert_status='4'; //邀请人驳回
- // $user->save();
- // }
- // UserCert::where('user_id',$v['id'])->update($data);
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- DB::commit();
- // return $this->success([]);
- } catch (Exception $e) {
- DB::rollBack();
- // return $this->error();
- }
- } else {
- DB::beginTransaction();
- try {
- $data['agent_audit'] = $v['status'];
- $data['agent_audit_desc'] = $v['remark'] ? $v['remark'] : '';
- $data['agent_updated_at'] = date("Y-m-d H:i:s");
- $userCert = UserCert::where('user_id', $v['id'])->where('recom_audit', '1')->first();
- if ($userCert && $v['status'] == '1') {
- $user->cert_status = '3';
- $user->auth_code = $this->getAuthCode();
- $user->auth_startime = date("Y-m-01 00:00:00");
- $user->auth_endtime = date("Y-m-01 00:00:00", strtotime("+1 years"));
- $user->save();
- $remark = '上级批量审核通过';
- } elseif ($userCert && $v['status'] == '2') {
- $user->cert_status = '5';
- $user->save();
- $remark = '上级批量审核驳回';
- }
- $this->addAgentOperationLog('8', $user->id, $remark);
- $userCert->update($data);
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')审核代理:' . $user->nickname . '(id=' . $user->id . ')成功,审核状态:' . $user->cert_status);
- DB::commit();
- // return $this->success([]);
- } catch (Exception $e) {
- DB::rollBack();
- // return $this->error();
- }
- }
- }
- return $this->success([]);
- }
- //邀请人重新审核
- public function againCertRecomStatus(Request $request)
- {
- $input = $request->all();
- $user = User::find($input['id']);
- $userCert = UserCert::where('user_id', $input['id'])->first();
- if ($input['type'] == '1') {//通过
- $user->level = $input['level'];
- $recom = User::find($user->recom_id);
- if ($input['level'] == '3') {//皇冠
- $user->agent_id = '1';
- $user->crown_id = '';
- $user->warea_id = '';
- $userCert->agent_id = '1';
- } else {
- if ($recom->level > $input['level']) {//邀请人等级 > 代理等级
- $user->agent_id = $recom->id;
- if ($recom->level == '3') {
- $user->crown_id = $recom->id;
- } else {
- $user->crown_id = $recom->crown_id;
- }
- $user->warea_id = $recom->warea_id;
- $userCert->agent_id = $recom->id;
- }
- if ($recom->level == $input['level']) {//邀请人等级 = 代理等级
- $user->agent_id = $recom->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- $userCert->agent_id = $recom->agent_id;
- }
- if ($recom->level < $input['level']) {//邀请人等级 < 代理等级
- if ($recom->agent_id == '3') {
- $user->agent_id = $recom->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- $userCert->agent_id = $recom->agent_id;
- } else {
- $agent = User::find($recom->agent_id);//邀请人上级代理信息
- $user->agent_id = $agent->agent_id;
- $user->crown_id = $recom->crown_id;
- $user->warea_id = $recom->warea_id;
- $userCert->agent_id = $agent->agent_id;
- }
- }
- }
- $userCert->recom_id = $user->recom_id;
- $userCert->recom_audit = '1';
- $userCert->recom_audit_desc = '';
- $userCert->agent_audit = '0';
- $userCert->agent_audit_desc = '';
- $userCert->recom_updated_at = date("Y-m-d H:i:s");
- $user->cert_status = '2';
- $remark = '邀请人重新审核通过';
- } elseif ($input['type'] == '2') {//驳回
- $userCert->recom_id = $user->recom_id;
- $userCert->agent_id = $user->agent_id;
- $userCert->recom_audit = '2';
- $userCert->recom_audit_desc = $input['desc'];
- $userCert->agent_audit = '0';
- $userCert->agent_audit_desc = '';
- $userCert->recom_updated_at = date("Y-m-d H:i:s");
- $user->cert_status = '4';
- $remark = '邀请人重新审核驳回';
- }
- DB::beginTransaction();
- try {
- $this->addAgentOperationLog('8', $user->id, $remark);
- $userCert->save();
- $user->save();
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')重新审核代理:' . $user->nickname . '(id=' . $user->id . ')成功,审核状态:' . $user->cert_status);
- DB::commit();
- return $this->success([]);
- } catch (Exception $e) {
- DB::rollBack();
- return $this->error();
- }
- }
- //上级重新审核
- //=======
- // }
- // $row=$userCert->save();
- // $rows=$user->save();
- // if($row && $rows){
- // Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')重新审核代理:'.$user->nickname.'(id='.$user->id.')成功,审核状态:'.$user->cert_status);
- // DB::commit();
- // return $this->success([]);
- // }else{
- // DB::rollBack();
- // return $this->error();
- // }
- // }
- // //上级重新审核
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- public function againCertAgentStatus(Request $request)
- {
- $input = $request->all();
- $user = User::find($input['id']);
- $userCert = UserCert::where('user_id', $input['id'])->first();
- if ($input['type'] == '1') {//通过
- $userCert->agent_audit = '1';
- $userCert->agent_audit_desc = '';
- $userCert->agent_updated_at = date("Y-m-d H:i:s");
- $user->cert_status = '3';
- $user->auth_code = $this->getAuthCode();
- $user->auth_startime = date("Y-m-01 00:00:00");
- $user->auth_endtime = date("Y-m-01 00:00:00", strtotime("+1 years"));
- //<<<<<<< HEAD
- $remark = '上级重新审核通过';
- //=======
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- } elseif ($input['type'] == '2') {//驳回
- $userCert->agent_audit = '2';
- $userCert->agent_audit_desc = $input['desc'];
- $userCert->agent_updated_at = date("Y-m-d H:i:s");
- $user->cert_status = '5';
- //<<<<<<< HEAD
- $remark = '上级重新审核驳回';
- }
- DB::beginTransaction();
- try {
- $this->addAgentOperationLog('8', $user->id, $remark);
- $userCert->save();
- $user->save();
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')重新审核代理:' . $user->nickname . '(id=' . $user->id . ')成功,审核状态:' . $user->cert_status);
- DB::commit();
- return $this->success([]);
- } catch (Exception $e) {
- //=======
- // }
- // $row=$userCert->save();
- // $rows=$user->save();
- // if($row && $rows){
- // Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')重新审核代理:'.$user->nickname.'(id='.$user->id.')成功,审核状态:'.$user->cert_status);
- // DB::commit();
- // return $this->success([]);
- // }else{
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- DB::rollBack();
- return $this->error();
- }
- }
- /*代理库存*/
- public function getAgentGoodsNum(Request $request)
- {
- $input = $request->all();
- $goodstotal = DB::table('goods_sku_agent_total as goodsNum')->where('goodsNum.user_id', $input['id'])
- ->select('goods.name', 'goods.img_url', 'goods.tjprice', 'goods.djprice', 'goods.hgprice', DB::raw('SUM(goodsNum.total) as account'))
- ->leftJoin('users', 'users.id', '=', 'goodsNum.user_id')
- ->leftJoin('goods', 'goods.id', '=', 'goodsNum.goods_id')
- ->groupBy('goodsNum.goods_id')
- ->get();
- if ($goodstotal) {
- return $this->success($goodstotal);
- }
- return $this->error();
- }
- /* 用户禁用/启用 */
- public function shelvedUser(Request $request)
- {
- $user = User::find($request->post('id'));
- $status = ($user->status == 0) ? '启用' : '禁用';
- $user->status = ($user->status == 0) ? '1' : '0';
- //<<<<<<< HEAD
- DB::beginTransaction();
- $row = $user->save();
- if ($user->status == 0) {
- $remark = '启用';
- } else {
- $remark = '禁用';
- }
- $res = $this->addAgentOperationLog('10', $user->id, $remark);
- event(new ShelvedAgent($user));
- if ($row && $res) {
- DB::commit();
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')' . $status . '代理:' . $user->nickname . '(id=' . $user->id . ')成功');
- return $this->success([]);
- }
- DB::rollBack();
- //=======
- // $row=$user->save();
- // if($row){
- // Log::info('管理员:'.Auth::user()->name.'(id='.Auth::user()->id.')'.$status.'代理:'.$user->nickname.'(id='.$user->id.')成功');
- // return $this->success([]);
- // }
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- return $this->error();
- }
- //删除用户
- public function destoryUser(Request $request)
- {
- $input = $request->all();
- $img=$request->input('img',null);
- $user = User::withTrashed()->where('id',$input['id'])->first();
- if ($user->deleted_at){
- return $this->success([],'已被删除');
- }
- if ($user->level==3){
- return $this->error('400111', '不能直接删除代理公司!');
- }
- $recom = User::find($user->recom_id);//代理邀请人信息
- if (!$recom) {
- return $this->error('400111', '该代理邀请人信息有误,不能删除');
- }
- //获取代理邀请的人
- $recomed=User::where('recom_id',$input['id'])->pluck('id');
- $agented=User::where('agent_id',$input['id'])->pluck('id');
- //获取代理下级信息
- DB::beginTransaction();
- $userInfo=User::where('id',$input['id'])->first();
- // event(new DeleteAgent($userInfo));
- try {
- if ($user->level == '3') {
- if ($recom->level == '3') {//邀请人等级信息
- User::where('agent_id', $input['id'])->update(['agent_id' => $recom->id]);
- User::where('recom_id', $input['id'])->update(['recom_id' => $recom->id]);
- User::where('crown_id', $input['id'])->update(['crown_id' => $recom->id, 'warea_id' => $recom->warea_id]);
- } elseif ($recom->level == '2') {
- User::where('agent_id', $input['id'])->where('level', 2)->update(['agent_id' => $recom->agent_id]);
- User::where('agent_id', $input['id'])->where('level', 1)->update(['agent_id' => $recom->id]);
- User::where('recom_id', $input['id'])->update(['recom_id' => $recom->id]);
- $recom_agent = User::where('id', $recom->agent_id)->first();
- User::where('crown_id', $input['id'])->update(['crown_id' => $recom_agent->id, 'warea_id' => $recom_agent->warea_id]);
- } elseif ($recom->level == '1') {
- $upRecom = User::find($recom->agent_id);//代理邀请人上级信息
- if (!$upRecom) {
- return $this->error('400112', '该代理邀请人上级信息有误,不能删除');
- }
- User::where('agent_id', $input['id'])->where('level', 1)->update(['agent_id' => $upRecom->id]);
- User::where('agent_id', $input['id'])->where('level', 2)->update(['agent_id' => $upRecom->agent_id]);
- User::where('recom_id', $input['id'])->update(['recom_id' => $recom->id]);
- $recom_agent = User::where('id', $upRecom->agent_id)->first();
- User::where('crown_id', $input['id'])->update(['crown_id' => $upRecom->agent_id, 'warea_id' => $recom_agent->warea_id]);
- }
- } elseif ($user->level == '2') {
- if ($recom->level == '3' || $recom->level == '2') {
- User::where('agent_id', $input['id'])->update(['agent_id' => $recom->id]);
- } elseif ($recom->level == '1') {
- User::where('agent_id', $input['id'])->update(['agent_id' => $recom->agent_id]);
- }
- User::where('recom_id', $input['id'])->update(['recom_id' => $user->recom_id]);
- } elseif ($user->level == '1') {
- User::where('recom_id', $input['id'])->update(['recom_id' => $user->recom_id]);
- }
- $user->delete();
- $remark = $input['remark'];
- $after = ['id' => $user->id, 'nickname' => $user->nickname, 'mobile' => $user->mobile, 'level' => $user->level, 'recom_id' => $user->recom_id, 'agent_id' => $user->agent_id];
- $log = '删除用户成功,用户信息:' . json_encode($after, JSON_UNESCAPED_UNICODE).',用户邀请的人ID:'.json_encode($recomed).',用户下级ID:'.json_encode($agented);
- $this->addAgentOperationLog('4', $user->id, $remark, $log,$img);
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')删除代理:' . $user->nickname . '(id=' . $user->id . ')成功');
- DB::commit();
- return $this->success([]);
- } catch (Exception $e) {
- DB::rollBack();
- return $this->error();
- }
- }
- public function wdstore(){
- $user_ids=WdStore::pluck('user_id');
- return User::whereNotIn('id',$user_ids)->pluck('id')->toArray();
- $WDUserIds=User::pluck('id')->toArray();//获取所有正常代理id
- $user_ids = WdStore::whereNotIn('user_id',$WDUserIds)->pluck('user_id');//获取所有店铺代理id
- return User::onlyTrashed()->whereIn('id',$user_ids)->orderByDesc('deleted_at')->pluck('deleted_at');//
- $no_delete=[15965837535,18095856054,15122171335,15003036225,15039343930,13932338754,
- 15845445174,
- 15522559604,
- 15039343930,
- 13104252035,
- 15122171335,
- 15176105221,
- 15003036225,
- 15965837535,
- 18095856054,
- 13932337622];
- //获取所有要删除代理
- User::whereNotIn('id',$WDUserIds)->whereNotIn('mobile',$no_delete)->where('created_at','<','2021-06-01')->whereIn('level',[1,2])->orderByDesc('created_at')->delete();
- return 1;
- $noStoreAgents=User::whereNotIn('id',$WDUserIds)->whereNotIn('mobile',$no_delete)->where('created_at','<','2021-06-01')->whereIn('cert_status',[3,6])->where('service_status',0)->orderByDesc('created_at')->get();//->limit(1000)
- return count($noStoreAgents);
- return '111';
- }
- public function uploadImg(Request $request){
- if(empty($request->has('file'))){
- return $this->error('450001','请选择图片!');
- }
- $file= $request->file('file');
- //变更分享人share_img 删除客户delete_img
- $path_url='user/'.$request->input('type','delete_img');
- $upload= new UploadFilesHandler();
- $result= $upload->save($file, $path_url, null, 'image');
- if($result){
- return $this->success($result['path']);
- }
- return $this->error();
- }
- public function destroyUploadAudio(Request $request){
- if(empty($request->has('audio'))){
- return $this->error('450001','请上传音频文件!');
- }
- $file= $request->file('audio');
- $path_url='user/delete_audio';
- $upload= new UploadFilesHandler();
- $result= $upload->save($file, $path_url, null, 'audio');
- if($result){
- return $this->success($result['path']);
- }
- return $this->error();
- }
- // 重置/修改密码
- public function editAgentPassword(Request $request)
- {
- $input = $request->all();
- $user = User::find($input['id']);
- //<<<<<<< HEAD
- $remark = '';
- if ($input['type'] == '1') {//重置密码
- $remark = '重置密码';
- $user->password = MD5($user->mobile);
- } elseif ($input['type'] == '2') {//修改密码
- $remark = '修改密码';
- $user->password = MD5($input['password']);
- }
- $this->addAgentOperationLog('9', $user->id, $remark);
- $row = $user->save();
- if ($row) {
- //=======
- // if($input['type']=='1'){//重置密码
- // $user->password=MD5($user->mobile);
- // }elseif($input['type']=='2'){//修改密码
- // $user->password=MD5($input['password']);
- // }
- // $row=$user->save();
- // if($row){
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')充值代理:' . $user->nickname . '(id=' . $user->id . ')密码成功');
- return $this->success([]);
- }
- return $this->error();
- }
- //导出代理信息
- public function exportUserLists(Request $request)
- {
- ini_set('memory_limit', '512M');
- $input = $request->all();
- $search_name = $input['search_name'];
- $recom_name = $input['recom_name'];
- $agent_name = $input['agent_name'];
- if ($input['level'] == '4') {
- $user = UserCopy::onlyTrashed();
- $where = [];
- } elseif ($input['level'] == 'all') {
- $user = UserCopy::withTrashed();
- $where = [];
- } else {
- $user = new UserCopy();
- $where = [];
- $where['level'] = $input['level'];
- }
- $list = $user
- ->where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('cre_num', 'like', '%' . $search_name . '%')
- ->orWhere('realname', 'like', '%' . $search_name . '%');
- })
- ->whereIn('cert_status', [3, 6])
- ->where($where)
- ->with(['recom:id,nickname,mobile', 'agent:id,nickname,mobile,level'])
- ->whereHas('recom', function ($query1) use ($recom_name) {
- $query1->select('id', 'nickname', 'mobile')
- ->where(function ($recom) use ($recom_name) {
- $recom->where('nickname', 'like', '%' . $recom_name . '%')
- ->orWhere('mobile', 'like', '%' . $recom_name . '%')
- ->orWhere('cre_num', 'like', '%' . $recom_name . '%')
- ->orWhere('realname', 'like', '%' . $recom_name . '%');
- });
- })
- ->whereHas('agent', function ($query2) use ($agent_name) {
- $query2->select('id', 'nickname', 'mobile')
- ->where(function ($agent) use ($agent_name) {
- $agent->where('nickname', 'like', '%' . $agent_name . '%')
- ->orWhere('mobile', 'like', '%' . $agent_name . '%')
- ->orWhere('cre_num', 'like', '%' . $agent_name . '%')
- ->orWhere('realname', 'like', '%' . $agent_name . '%');
- });
- })
- ->orderBy('id', 'desc')
- ->get();
- if (empty($list)) {
- return $this->error('400002', '没有获取到数据');
- }
- foreach ($list as $key => $val) {
- if (!empty($val->deleted_at)) {
- $list[$key]['delete'] = 1;//已删除
- } else {
- $list[$key]['delete'] = 0;//未删除
- }
- $list[$key]['cert_status'] = 6;
- if ($val->deleted_at){
- $list[$key]->crown='';
- }else{
- if ($val->level!=3 && $val->level!=0){
- if ($val->agent->level==3 || $val->agent->level==0){
- $list[$key]->crown=$val->agent;
- }else{
- $res=$this->get_crown($val->agent->id);
- $list[$key]->crown=$res;
- }
- }else{
- $list[$key]->crown='';
- }
- }
- // $list[$key]['account']=$user->getAgentSalesResult($val->id);
- }
- // $search_name=$search_name?$search_name:
- // Redis::setex('User_'.$search_name.$recom_name.$agent_name.$level);
- return $this->success($list);
- }
- //获取代理列表信息
- public function getUserListass(Request $request)
- {
- $input = $request->all();
- $page_size = $input['page_size'];
- $page_index = $input['page_index'];
- $num = ($page_index - 1) * $page_size;
- $search_name = $input['search_name'];
- $recom_name = $request->has('recom_name') ? $input['recom_name'] : '';
- $agent_name = $request->has('agent_name') ? $input['agent_name'] : '';
- $where = [];
- if ($input['level'] == '4') {
- $user = User::onlyTrashed()->where($where);
- } elseif ($input['level'] == 'all') {
- $user = User::withTrashed()->where($where);
- } else {
- $user = User::where($where);
- $where['level'] = $input['level'];
- }
- if ($search_name) {
- $user->where(function ($query) use ($search_name) {
- $query->where('nickname', 'like', '%' . $search_name . '%')
- ->orWhere('mobile', 'like', '%' . $search_name . '%')
- ->orWhere('cre_num', 'like', '%' . $search_name . '%')
- ->orWhere('realname', 'like', '%' . $search_name . '%');
- });
- }
- if ($agent_name) {
- $agent_id = User::where(function ($agent) use ($agent_name) {
- $agent->where('nickname', 'like', '%' . $agent_name . '%')
- ->orWhere('mobile', 'like', '%' . $agent_name . '%')
- ->orWhere('cre_num', 'like', '%' . $agent_name . '%')
- ->orWhere('realname', 'like', '%' . $agent_name . '%');
- })->pluck('id');
- $user->whereIn('agent_id', $agent_id);
- }
- if ($recom_name) {
- $recom_id = User::where(function ($recom) use ($recom_name) {
- $recom->where('nickname', 'like', '%' . $recom_name . '%')
- ->orWhere('mobile', 'like', '%' . $recom_name . '%')
- ->orWhere('cre_num', 'like', '%' . $recom_name . '%')
- ->orWhere('realname', 'like', '%' . $recom_name . '%');
- })->pluck('id');
- $user->whereIn('recom_id', $recom_id);
- }
- $count = $user->whereIn('cert_status', [3, 6])->where($where)->count();
- if ($count == 0) {
- $this->error('400001', '没有数据');
- }
- $list = $user->with(['recom', 'agent'])->whereIn('cert_status', [3, 6])->orderBy('id', 'desc')->skip($num)->take($page_size)->get();
- foreach ($list as $key => $val) {
- if (!empty($val->deleted_at)) {
- $list[$key]['delete'] = 1;//已删除
- } else {
- $list[$key]['delete'] = 0;//未删除
- }
- $list[$key]['cert_status'] = 6;
- // $list[$key]['account']=$user->getAgentSalesResult($val->id);
- }
- return $this->success_list($list, 'success', $count);
- }
- //<<<<<<< HEAD
- //=======
- // public function restoreAgent(Request $request){
- // $input=$request->all();
- // $student = Student::find($input['id']);
- // $row=$student->restore();
- // if($row){
- // return $this->success($list,'删除恢复成功');
- // }
- // $this->error();
- // }
- //
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- /**修改代理信息**/
- public function update_user(Request $request)
- {
- $rule = [
- 'id' => 'required',
- 'nickname' => 'required',
- 'realname' => 'required',
- 'mobile' => 'required',
- ];
- $message = [
- 'id.required' => '必填项',
- 'nickname.required' => '必填项',
- 'realname.required' => '必填项',
- 'mobile.required' => '必填项',
- ];
- $vali = Validator::make($request->all(), $rule, $message);
- if ($vali->fails()) {
- return $this->error('400013', $vali->errors()->first());
- }
- if(strlen($request->cre_num) != 18){
- return $this->error(40013,'身份证号码有误');
- };
- // $year = substr($request->cre_num, 6, 4);
- // $age = date('Y') - $year;
- // if($age > 65){
- // return $this->error(40013,'很抱歉,您的年龄已超过65岁,无法注册。');
- // }
- if (User::where('cre_num',$request->input('cre_num'))->where('id','<>',$request->input('id'))->count()){
- return $this->error(40013, '身份证号已存在');
- }
- DB::beginTransaction();
- try {
- $user = User::find($request->id);
- $before_mobile=$user->mobile;
- if (!$user) {
- return $this->error(40013, '该用户不存在,请重新查询');
- }
- $before = ['id' => $user->id, 'nickname' => $user->nickname, 'realname' => $user->realname, 'mobile' => $user->mobile, 'cre_num' => $user->cre_num];
- if ($request->mobile != $user->mobile) {
- $users = User::where('mobile', $request->mobile)->count();
- if ($users) {
- return $this->error(40013, '该手机号已被使用');
- }
- $user->mobile = $request->mobile;
- $user->auth_img = null;
- }
- if ($user->nickname != $request->nickname) {
- $user->auth_img = null;
- }
- $user->nickname = $request->nickname;
- $user->realname = $request->realname;
- $user->cre_num = $request->cre_num;
- $user->remark = $request->remark;
- if ($request->has('wechat_name')){
- $user->remark_name = $request->wechat_name;
- $user->name = $request->wechat_name;
- }
- if (!$user->save()) {
- throw new \Exception('1');
- }
- $after = ['id' => $user->id, 'nickname' => $user->nickname, 'realname' => $user->realname, 'mobile' => $user->mobile, 'cre_num' => $user->cre_num, 'remark'=> $user->remark];
- $log = '修改代理信息成功,修改前代理信息:' . json_encode($before, JSON_UNESCAPED_UNICODE) . ',修改后代理信息:' . json_encode($after, JSON_UNESCAPED_UNICODE);
- $this->addAgentOperationLog('6', $user->id, '', $log);
- $user->before=$before_mobile;
- // event(new ChangeUserInfo($user));
- DB::commit();
- return $this->success([], '更新成功');
- } catch (\Exception $exception) {
- Log::error('{-----修改用户信息出错-----错误信息为--}' . $exception);
- DB::rollback();
- return $this->error(40013, '修改用户信息出错');
- }
- }
- //<<<<<<< HEAD
- public function restoreAgent(Request $request)
- {
- $input = $request->all();
- $student = Student::find($input['id']);
- $row = $student->restore();
- if ($row) {
- // return $this->success($list, '删除恢复成功');
- }
- $this->error();
- }
- //添加代理操作日志
- public function addAgentOperationLog($type, $user_id, $remark = null, $log = null,$img=null,$apply_id=null)
- {
- return AgentOperationLog::create([
- 'type' => $type,
- 'admin_name' => Auth::user()->name,
- 'admin_id' => Auth::user()->id,
- 'user_id' => $user_id,
- 'remark' => $remark,
- 'img'=>$img,
- 'log' => $log,
- 'apply_id' => $apply_id,
- ]);
- }
- //=======
- public function repair_auth(Request $request)
- {
- $rule = [
- 'id' => 'required',
- ];
- $message = [
- 'id.required' => '必填项',
- ];
- $vali = Validator::make($request->all(), $rule, $message);
- if ($vali->fails()) {
- return $this->error('400013', $vali->errors()->first());
- }
- DB::beginTransaction();
- try {
- $user = User::find($request->id);
- if (!$user) {
- return $this->error(40013, '该用户不存在,请重新查询');
- }
- $user->auth_img = null;
- if (!$user->save()) {
- throw new \Exception('1');
- }
- DB::commit();
- return $this->success([], '修复成功');
- } catch (\Exception $exception) {
- Log::error('{-----修改授权证书出错-----错误信息为--}' . $exception);
- DB::rollback();
- return $this->error(40013, '修改授权证书出错');
- }
- //>>>>>>> 9aa477479386789a8615d89285e74706ec72fbab
- }
- //恢复误删除人员信息
- public function restoreUserInfo(Request $request){
- $input=$request->all();
- $mobile=$input['mobile'];
- $ids=$input['ids'];
- $rules = [
- 'mobile' => [
- 'required',
- 'regex:/^1[3456789][0-9]{9}$/'
- ],
- ];
- $messages = [
- 'mobile.required' => '手机号不能为空.',
- 'mobile.regex' => '手机号格式有误.',
- ];
- $uuu = new User();
- $validator = $uuu->validator($input, $rules, $messages);
- if ($validator->fails()) {
- return $this->error('400013', $validator->errors()->first());
- }
- DB::beginTransaction();
- try {
- $result1=User::where('mobile',$input['mobile'])->first();
- if($result1){
- return $this->error('450001','该手机号用户未被删除,核对后再操作');
- }
- $result=User::onlyTrashed()->where('mobile',$input['mobile'])->first();
- if(!$result){
- return $this->error('450001','手机号信息有误,核对后再操作');
- }
- User::withTrashed()->where('mobile',$input['mobile'])->restore();
- $re_id=$result->recom_id;
- $ag_id=$result->agent_id;
- $recom_ids=$this->RecomInfo($result->recom_id);
- $result->recom_id=$recom_ids;
- if ($result->level==3){
- $result->agent_id=1;
- }else{
- $result->agent_id=$this->AgentInfo($recom_ids,$result->level);
- }
- $result->save();
- $this->addAgentOperationLog('41', $result->id, '撤销删除状态', '撤销删除状态');
- $this->addAgentOperationLog('6', $result->id, '代理恢复后,更新了邀请人和上级的信息',
- '原邀请人id为:'.$re_id.'、上级id为:'.$ag_id.'修改后的邀请人ID为:'.$recom_ids.'、上级ID为:'.$result->agent_id);
- Log::info('用户'.$input['mobile'].'被恢复');
- foreach(json_decode($ids,true) as $valvv){
- Log::error($valvv);
- $user = User::find($valvv);//当前用户
- if (empty($user)){
- continue;
- }
- if($user->cert_status!=3&&$user->cert_status!=6){
- continue;
- }
- if ($user->recom_id) {
- $recom_id = $user->recom_id;
- } else {
- $recom_id = '暂无';
- }
- if ($user->agent_id) {
- $up_id = $user->agent_id;
- } else {
- $up_id = '暂无';
- }
- // $agentCount = User::where(function ($query) use ($input) {
- // $query->where('recom_id', '=', $input['id'])
- // ->orWhere('agent_id', '=', $input['id']);
- // })->count();
- //代理邀请人员后,或者成为上级后不能变更推荐人
- // if($agentCount>0){
- // return $this->error('400112','当前用户邀请人信息不能修改');
- // }
- $recomUser = User::where("mobile", $input['mobile'])->first();//新邀请人信息
- if (empty($recomUser)) {
- return $this->error('400115', '邀请人信息不存在');
- }
- if ($user->recom_id == $recomUser->id) {
- return $this->error('400111', '要更改的邀请人与当前邀请人相同');
- }
- if ($user->id == $recomUser->recom_id) {
- return $this->error('400116', '要更改的邀请人的邀请人为自己');
- }
- if ($user->id == $recomUser->id) {
- return $this->error('400116', '要更改的邀请人不能为自己');
- }
- $uuu = new User();
- $rechecking = $uuu->changeRecomSystem($valvv, $input['mobile']);
- if ($rechecking == '222') {
- return $this->error('400116', '要更改的邀请人为当前代理邀请人系统体系内部成员');
- }
- if ($user->level == '3') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = '1';
- $user->crown_id = '';
- if ($user->warea_id != $recomUser->warea_id) {
- $user->warea_id = $recomUser->warea_id;
- $one_agent = User::where('agent_id', $user->id)->pluck('id');
- if (count($one_agent) > 0) {
- User::whereIn('id', $one_agent)->update(['warea_id' => $recomUser->warea_id]);
- foreach ($one_agent as $key => $val) {
- $two_agent = User::where('agent_id', $val)->pluck('id');
- if (count($two_agent) > 0) {
- User::whereIn('id', $two_agent)->update(['warea_id' => $recomUser->warea_id]);
- }
- }
- }
- }
- } else {
- if ($recomUser->level == '3') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomUser->id;
- $user->crown_id = $recomUser->id;
- $user->warea_id = $recomUser->warea_id;
- if ($user->level == '2') {
- $uuu->changeAgentLevelInfoTwo($user->id, $recomUser->id);
- } elseif ($user->level == '1') {
- $uuu->changeAgentLevelInfoThree($user->id, $recomUser->id, $recomUser->id);
- }
- $uuu->changeAgentRecomCrown($user->id, $recomUser->id, $recomUser->warea_id);
- } elseif ($recomUser->level == '2') {
- if ($user->level == '2') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomUser->agent_id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoTwo($user->id, $recomUser->agent_id);
- } elseif ($user->level == '1') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomUser->id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoThree($user->id, $recomUser->agent_id, $recomUser->id);
- }
- $uuu->changeAgentRecomCrown($user->id, $recomUser->crown_id, $recomUser->warea_id);
- } elseif ($recomUser->level == '1') {
- $recomAgent = User::find($recomUser->agent_id);
- if ($user->level == '2') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomAgent->agent_id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoTwo($user->id, $recomAgent->agent_id);
- } elseif ($user->level == '1') {
- $user->recom_id = $recomUser->id;
- $user->agent_id = $recomUser->agent_id;
- $user->crown_id = $recomUser->crown_id;
- $user->warea_id = $recomUser->warea_id;
- $uuu->changeAgentLevelInfoThree($user->id, $recomAgent->agent_id, $recomUser->agent_id);
- }
- $uuu->changeAgentRecomCrown($user->id, $recomUser->crown_id, $recomUser->warea_id);
- }
- }
- $row = $user->save();
- $remark = '恢复';
- $before = User::where('id', $recom_id)->select('id', 'nickname', 'mobile')->first();
- $after = ['id' => $recomUser->id, 'nickname' => $recomUser->nickname, 'mobile' => $recomUser->mobile];
- $log = '变更前邀请人:' . json_encode($before, JSON_UNESCAPED_UNICODE) . ',变更后邀请人:' . json_encode($after, JSON_UNESCAPED_UNICODE);
- $this->addAgentOperationLog('3', $user->id, $remark, $log);
- event(new ChangeRecom($user));
- Log::info('管理员:' . Auth::user()->name . '(id=' . Auth::user()->id . ')修改代理:' . $user->nickname . '(id=' . $user->id . ')邀请人成功,原邀请人id=' . $recom_id . ',原上级id=' . $up_id . ',新邀请人:' . $recomUser->nickname . '(id=' . $recomUser->id . ')');
- }
- DB::commit();
- return $this->success([]);
- }catch(Exception $e){
- DB::rollBack();
- return $this->error($e->getMessage());
- }
- }
- /**查看邀请人是否删除**/
- public function RecomInfo($id){
- $user=User::withTrashed()->where('id',$id)->first();
- $recom_id=$id;
- if ($user->deleted_at){
- $recom_id=$this->RecomInfo($user->recom_id);
- }
- return $recom_id;
- }
- /**查看上级是否删除**/
- public function AgentInfo($id,$level){
- $user=User::withTrashed()->where('id',$id)->first();
- $agent_id=$user->id;
- if ($user->level<=$level){
- $agent_id=$this->AgentInfo($user->agent_id,$level);
- }
- return $agent_id;
- }
- //获取代理升级后团队信息
- public function getUpTeam($uid){
- $user=User::withTrashed()->where('id',$uid)->first();
- $arr=[];
- $num=0;
- if($user->level==2){
- $this->getAgentLevelInfoTwo($uid,$arr,$num);
- }elseif($user->level==1){
- $this->getAgentLevelInfoOne($uid,$arr,$num);
- }
- $data['num']=$num;
- $data['list']=$arr;
- return $data;
- }
- //顶级升皇冠
- public function getAgentLevelInfoTwo($uid,&$arr,&$num){
- $list=User::where('recom_id', $uid)->select('id','nickname','realname','mobile','level','recom_id')->get();//获取所有邀请人
- if(count($list)>0){
- foreach($list as $key=>$val){
- if($val->level=='2' || $val->level=='1'){
- $num+=1;
- // array_push($arr,$val);
- $this->getAgentLevelInfoTwo($val->id,$arr,$num);
- }
- }
- }
- }
- //特级升顶级
- public function getAgentLevelInfoOne($uid,&$arr,&$num){
- $list=User::where('recom_id', $uid)->select('id','nickname','realname','mobile','level','recom_id')->get();//获取所有邀请人
- if(count($list)>0){
- foreach($list as $key=>$val){
- if($val->level=='1'){
- $num+=1;
- // array_push($arr,$val);
- $this->getAgentLevelInfoOne($val->id,$arr,$num);
- }
- }
- }
- }
- public function get_del_cause(){
- $re=CauseDel::where('type',0)->select('id','cause')->get();
- return $this->success($re);
- }
- public function add_del_cause(Request $request){
- $cause=new CauseDel();
- $cause->type=0;
- $cause->cause=$request->cause;
- $cause->save();
- return $this->success([]);
- }
- public function destory_del_cause(Request $request){
- CauseDel::where('id',$request->id)->delete();
- return $this->success([]);
- }
- public function get_jj_cause(){
- $re=CauseDel::where('type',1)->select('id','cause')->get();
- return $this->success($re);
- }
- public function add_jj_cause(Request $request){
- $cause=new CauseDel();
- $cause->type=1;
- $cause->cause=$request->cause;
- $cause->save();
- return $this->success([]);
- }
- public function destory_jj_cause(Request $request){
- CauseDel::where('id',$request->id)->delete();
- return $this->success([]);
- }
- /*
- * 代理清除
- * **/
- public function UserRemove(Request $request){
- $mobile=$request->input('mobile');
- $re=User::where('mobile',$mobile)->first();
- if (!$re){
- return $this->error(500214,'根据手机号查不到代理!');
- }
- if ($re->cert_status==3 || $re->cert_status==6){
- return $this->error(5002141,'该代理已经通过审核,不能删除');
- }
- if ($re->cert_status!=0){
- return $this->error(5002141,'该代理已经进入审核阶段,不能删除');
- }
- DB::table('users')->where('id',$re->id)->delete();
- return $this->success([]);
- }
- /**查找符合条件的需要审核的代理**/
- public function search_peoples(Request $request){
- $admin_user=Auth::user();
- $status=false;
- if ($admin_user->role_id==22||$admin_user->role_id==32 || $admin_user->role_id==24){
- $status=true;
- }
- $warea_id=Warea::where('admin_id',$admin_user->id)->value('id');
- $input=$request->all();
- $recom_info=$request->input('recom_info',null);
- $agent_info=$request->input('agent_info',null);
- $page_index=$input['page_index'];
- $page_size=$input['page_size'];
- $num=($page_index-1)*$page_size;
- $crown_id=$request->input('crown_id','');
- // if ($input['status']==1){
- // $input['status']=0;
- // }
- $user=User::whereIn('cert_status',[3,6])->with(['agent','recom'])->where('service_status',0);
- if($input['status']!='all'){
- $user->where('in_group',$input['status']);
- }
- if (!$status){
- $user=$user->where('warea_id',$warea_id);
- }
- if ($recom_info){
- if (is_numeric($recom_info)){
- if (mb_strlen($recom_info)<5){
- return $this->error(500214,'请输入至少六位的手机号');
- }
- }
- $ids=User::where('mobile','like',"%$recom_info%")->orwhere('nickname','like',"%$recom_info%")->pluck('id');
- $user->whereIn('recom_id',$ids);
- }
- if ($agent_info){
- if (is_numeric($agent_info)){
- if (mb_strlen($agent_info)<5){
- return $this->error(500214,'请输入至少六位的手机号');
- }
- }
- $ids=User::where('mobile','like',"%$agent_info%")->orwhere('nickname','like',"%$agent_info%")->pluck('id');
- $user->whereIn('agent_id',$ids);
- }
- if ($crown_id){
- $user->where('crown_id',$crown_id);
- }
- // if ($input['status']==2){
- // $user->withTrashed();
- // }
- if ($input['search_content']){
- if (is_numeric($input['search_content'])){
- if (mb_strlen($input['search_content'])<5){
- return $this->error(500214,'请输入至少六位的手机号');
- }
- }
- $search_content=$input['search_content'];
- $where=function ($q)use($search_content){
- $q->where('mobile','like','%'.$search_content.'%')
- ->orwhere('nickname','like','%'.$search_content.'%')
- ->orwhere('realname','like','%'.$search_content.'%');
- };
- $user->where($where);
- }
- $user=$user->with(['get_service','crown:id,mobile,nickname'])->with(['warea']);
- $count=$user->count();
- $result=$user->take($page_size)->skip($num)->get();
- return $this->success_list($result,'',$count);
- }
- /**查看凭证**/
- public function LookImg(Request $request){
- $id=$request->input('id');
- $re=UserCert::where('user_id',$id)->orderByDesc('created_at')->first();
- if ($re && $re->five_amount_img){
- return $this->success($re);
- }else{
- return $this->success([]);
- }
- }
- /**获取战区的代理公司**/
- public function GetWareaCrown(){
- $admin_user=Auth::user();
- $status=true;
- if ($admin_user->role_id==22||$admin_user->role_id==32 || $admin_user->role_id==24){
- $status=false;
- }
- $user=User::where('level',3);
- if ($status){
- $id=Auth::user()->id;
- $warea_id=Warea::where('admin_id',$id)->value('id');
- $user=$user->where('warea_id',$warea_id)->select('id','nickname','remark_name')->whereNull('deleted_at')->get();
- }else{
- $user=$user->where('level',3)->whereNull('deleted_at')->get();
- }
- return $this->success($user);
- }
- public function download_peoples(Request $request){
- $admin_user=Auth::user();
- $status=false;
- if ($admin_user->role_id==22||$admin_user->role_id==32 || $admin_user->role_id==24){
- $status=true;
- }
- $warea_id=Warea::where('admin_id',$admin_user->id)->value('id');
- $crown_id=$request->input('crown_id','');
- $user=User::whereIn('cert_status',[3,6])->with(['agent','recom'])->where('service_status',0)->where('in_group',3);
- if (!$status){
- $user->where('warea_id',$warea_id);
- }
- if ($crown_id){
- $user->where('crown_id',$crown_id);
- }
- $user=$user->with(['get_service','crown:id,mobile,nickname'])->with(['warea']);
- $result=$user->get();
- return $this->success_list($result,'');
- }
- /**政委审核**/
- // public function service_audit(Request $request){
- // $input=$request->all();
- // $status=$input['status'];//0通过1未通过
- // $user=User::where('id',$request->id)->withTrashed()->first();
- // if (!$user){
- // return $this->error(500214,'该代理已被删除');
- // }
- // DB::beginTransaction();
- // try{
- // if ($status==1){
- // $reason=new ServiceReason();
- // $reason->user_id=$input['id'];
- // $reason->op_name=Auth::user()->nickname;
- // $reason->reason=$input['reason'];
- // if (!$reason->save()){
- // throw new \Exception(1);
- // }
- // $user->service_status=2;
- // if ($user->openid){
- // $me['openid']=$user->openid;
- // $me['status']=1;
- // $me['data']=[
- // 'first' => '抱歉,您的注册申请已被政委驳回。原因'.$input['reason'],
- // 'keyword1' => '政委驳回',
- // 'keyword2' => date("Y-m-d H:i"),
- // 'remark' => '点击链接进入系统,查看详情',
- // ];
- // event(new AgentAuditServiceEvent($me));
- // }
- // }elseif ($status==0){
- // $user->service_status=0;
- // $user->service_end_time=Carbon::now();
- // if ($user->openid){
- // $me['openid']=$user->openid;
- // $me['status']=0;
- // $me['data']=[
- // 'first' => '恭喜您,您的注册申请已通过政委审核。',
- // 'keyword1' => '政委审核成功',
- // 'keyword2' => date("Y-m-d H:i"),
- // 'remark' => '点击链接进入系统,查看详情',
- // ];
- // event(new AgentAuditServiceEvent($me));
- // }
- // }
- // if (!$user->save()){
- // throw new \Exception(1);
- // }
- // DB::commit();
- // return $this->success([]);
- // }catch (\Exception $exception){
- // DB::rollBack();
- // return $this->error(52201,'','');
- // }
- // }
- /**政委审核**/
- public function service_audit(Request $request){
- $input=$request->all();
- $status=$input['status'];//0通过1未通过
- $user=User::where('id',$request->id)->first();
- if (!$user){
- return $this->error(500214,'该代理已被删除');
- }
- if ($status==1){
- if($user->level>1){
- return $this->error(500214, '代理已升级不能驳回');
- }
- if($user->in_group==1){
- return $this->error(500214, '代理已进群不能驳回');
- }
- DB::beginTransaction();
- try{
- User::where('id',$request->id)->update([
- 'cert_status'=>1,
- 'service_status'=>1,
- 'agent_id'=>null,
- 'crown_id'=>null,
- 'warea_id'=>null
- ]);
- UserCert::where('user_id',$request->id)->update([
- 'recom_audit'=>0,
- 'recom_audit_desc'=>null,
- 'recom_updated_at'=>null,
- 'agent_id'=>null,
- 'agent_audit'=>0,
- 'agent_audit_desc'=>null,
- 'agent_updated_at'=>null,
- 'company_audit'=>0,
- 'company_audit_desc'=>null,
- 'company_updated_at'=>null,
- 'notice_in_group_at'=>null,
- 'notice_remark'=>Carbon::now()->toDateTimeString().'-被政委('.Auth::user()->name.')驳回,原因:'.$request->reason,
- ]);
- DB::commit();
- Log::info($user->nickname.'被政委('.Auth::user()->name.')驳回成功');
- if ($user->openid){
- $me['openid']=$user->openid;
- $me['status']=1;
- $me['data']=[
- 'first' => '抱歉,您的注册申请被政委审核驳回。',
- 'keyword1' => '政委驳回',
- 'keyword2' => date("Y-m-d H:i"),
- 'remark' => '点击链接进入系统,查看详情',
- ];
- event(new AgentAuditServiceEvent($me));
- }
- return $this->success([]);
- }catch(\Exception $e){
- DB::rollBack();
- Log::info($user->nickname.'未联系被政委('.Auth::user()->name.')驳回失败-'.$e->getMessage());
- return $this->error(52201,'','');
- }
- }else{
- if($status==0){
- $user->in_group=1;
- if ($user->openid) {
- $me['openid'] = $user->openid;
- $me['status'] = 0;
- $me['data'] = [
- 'first' => '恭喜您,您的注册申请已通过政委审核。',
- 'keyword1' => '政委审核成功',
- 'keyword2' => date("Y-m-d H:i"),
- 'remark' => '点击链接进入系统,查看详情',
- ];
- event(new AgentAuditServiceEvent($me));
- }
- }elseif ($status==2){
- $user->in_group=2;
- }elseif ($status==3){
- $user->in_group=3;
- }else{
- $user->in_group=4;
- }
- $user->service_end_time=Carbon::now();
- if ($user->save()){
- return $this->success([]);
- }
- }
- return $this->error(52201,'','');
- }
- public function demos(){
- $data=User::where('mobile',15286818088)->get();
- $template_id='QDtFW3nSqMLZ_Aw52zzr6I1V1v0ElBk5o8pHdOSNwBM';
- $url='https://admin.app.jiuweiyun.cn/h5/index.html#/pages/view/page2';
- foreach ($data as $k=>$v){
- if ($v->openid){
- $time1=Carbon::yesterday();
- if ($v->level==2){
- $count=User::whereIn('cert_status',['3','6'])->where('agent_id',$v->id)->where('service_status',0)->where('created_at','>',$time1)->count();
- }else{
- $count=User::whereIn('cert_status',['3','6'])->where('service_status',0)->where('crown_id',$v->id)->where('created_at','>',$time1)->count();
- }
- $ye_num=WdOrder::where('is_pay',1)->where('user_id',$v->id)->whereIn('apply_cancel',[0,1,3])->where('created_at','>=',$time1)->sum('total');
- $app=app('wechat.official_account');
- if ($v->remark_name){
- $name=$v->remark_name;
- }else{
- $name=$v->nickname;
- }
- $mesdata=[
- 'first'=>$name.'您好,昨日您的业绩如下',
- 'keyword1' => date('Y-m-d',Carbon::yesterday()->timestamp),
- 'keyword2' => '昨日你的团队新增'.$count.',微店铺销售了'.$ye_num.'套',
- 'remark' => '点击查看详情',
- ];
- $app->template_message->send([
- 'touser' => $v->openid,
- 'template_id' => $template_id,
- 'url' => $url.'?id='.$v->id,
- 'data' => $mesdata
- ]);
- }
- }
- }
- public function get_reason(){
- $re=DB::table('reason')->where('type',0)->get();
- $data=[];
- foreach ($re as $k=>$v){
- $data[$k]=$v->reason;
- }
- return $this->success_list($data);
- }
- public function add_reason(Request $request){
- DB::table('reason')->insert(['type'=>0,'reason'=>$request->reason]);
- return $this->success([]);
- }
- public function UnbindWechat(Request $request){
- $id=$request->input('id',0);
- if (!$id){
- return $this->error(500214,'','参数不正确');
- }
- $user=User::where('id',$id)->withTrashed()->first();
- if (!$user){
- return $this->error(500214,'','未找到对应用户');
- }
- $user->openid=null;
- $user->unionid=null;
- $user->save();
- return $this->success([]);
- }
- /**获取信息**/
- public function GetUserCertInfo(Request $request){
- $id=$request->input('id')??null;
- $crown_id=$request->input('crown_id')??null;
- if (!$id){
- return $this->error();
- }
- $re=User::where('id',$id)->with(['recom:id,headimgurl,nickname,mobile,level'])
- ->with(['agent:id,headimgurl,nickname,mobile,level'])
- ->select('id','recom_id','agent_id','nickname','mobile','level','headimgurl','auth_startime')->first();
- $res=User::where('id',$crown_id)->select('headimgurl','remark_name')->first();
- return $this->success(['users'=>$re,'crown'=>$res]);
- }
- /**新增*/
- public function GetCrownTeam(Request $request){
- $crown_id=$request->input('crown_id')??null;
- $time=$request->input('time')??Carbon::today()->toDateTimeString();
- $time1=Carbon::parse($time)->addDays(-7);
- $time2=Carbon::parse($time)->addMonths(-1);
- $time3=Carbon::parse($time)->startOfYear();
- $ids=User::where('agent_id',$crown_id)->pluck('id')->toArray();
- $idss=User::whereIn('agent_id',$ids)->pluck('id')->toArray();
- $ia_all=array_merge($ids,$idss);
- $count1=User::whereIn('cert_status',['3','6'])->whereIn('id',$ia_all)->where('service_status',0)->where('created_at','>',$time1)->count();
- $count2=User::whereIn('cert_status',['3','6'])->whereIn('id',$ia_all)->where('service_status',0)->where('created_at','>',$time2)->count();
- $count3=User::whereIn('cert_status',['3','6'])->whereIn('id',$ia_all)->where('service_status',0)->where('created_at','>',$time3)->count();
- return $this->success(['week'=>$count1,'month'=>$count2,'year'=>$count3]);
- }
- /*
- * 查询相关信息
- * ***/
- public function GetUserStoreInfo(Request $request){
- $id=$request->input('id');
- $time=$request->input('time')??Carbon::today()->toDateTimeString();
- $times=strtotime($time);
- $time1=date('Y-m-d H:i:s',$times-3600*24);
- $time2=Carbon::parse($time)->startOfMonth()->toDateTimeString();
- $time3=Carbon::parse($time)->startOfYear()->toDateTimeString();
- $user=User::where('id',$id)->select('headimgurl','remark_name','nickname','mobile','level')->first();
- $ids=User::where('agent_id',$id)->pluck('id')->toArray();
- $idss=User::whereIn('agent_id',$ids)->pluck('id')->toArray();
- $ia_all=array_merge($ids,$idss);
- $store_id=WdStore::where('user_id',$id)->whereNull('deleted_at')->value('id');
- $count1=User::whereIn('cert_status',['3','6'])->whereIn('id',$ia_all)->where('service_status',0)->where('created_at','>',$time1)->count();
- $count2=User::whereIn('cert_status',['3','6'])->whereIn('id',$ia_all)->where('service_status',0)->where('created_at','>',$time2)->count();
- $count3=User::whereIn('cert_status',['3','6'])->whereIn('id',$ia_all)->where('service_status',0)->where('created_at','>',$time3)->count();
- $ye_num=WdOrder::where('is_pay',1)->where('store_id',$store_id)->whereIn('apply_cancel',[0,1,3])->where('created_at','>=',$time1)->sum('total');
- $ye_money=WdOrder::where('is_pay',1)->where('store_id',$store_id)->whereIn('apply_cancel',[0,1,3])->where('created_at','>=',$time1)->sum('account');
- $mon_num=WdOrder::where('is_pay',1)->where('store_id',$store_id)->whereIn('apply_cancel',[0,1,3])->where('created_at','>=',$time2)->sum('total');
- $mon_money=WdOrder::where('is_pay',1)->where('store_id',$store_id)->whereIn('apply_cancel',[0,1,3])->where('created_at','>=',$time2)->sum('account');
- $year_num=WdOrder::where('is_pay',1)->where('store_id',$store_id)->whereIn('apply_cancel',[0,1,3])->where('created_at','>=',$time3)->sum('total');
- $year_money=WdOrder::where('is_pay',1)->where('store_id',$store_id)->whereIn('apply_cancel',[0,1,3])->where('created_at','>=',$time3)->sum('account');
- return $this->success(['yestoday'=>$count1,'month'=>$count2,'year'=>$count3,'yestoday_oder_num'=>$ye_num,'month_order_num'=>$mon_num,'user'=>$user,'year_order_num'=>$year_num,'ye_money'=>$ye_money,'mon_money'=>$mon_money,'year_money'=>$year_money]);
- }
- public function GetLevelUp(Request $request){
- $id=$request->input('id');
- $user=User::where('id',$id)->select('headimgurl','remark_name','nickname','mobile','level')->first();
- if ($user->level==3){
- $id_arr=User::where('agent_id',$user->id)->where('level',2)->pluck('id');
- $levelUp=\DB::table('agent_operation_log')->whereIn('user_id',$id_arr)->where('type',2)
- ->where('created_at','>',Carbon::yesterday()->toDateTimeString())->count();
- return $this->success(['level_up'=>$levelUp]);
- }
- return $this->success([]);
- }
- /**新增*/
- public function GetCrownTeams(Request $request){
- // $id=$request->input('id')??null;
- // $type=$request->input('type')??0;
- // $search_name=$request->input('search_name');
- //
- // if ($type){
- // $time=Carbon::yesterday();
- // }else{
- // $time=Carbon::now()->startOfMonth();
- // }
- // $ids=User::where('agent_id',$id)->pluck('id')->toArray();
- // $idss=User::whereIn('agent_id',$ids)->pluck('id')->toArray();
- //
- // $ia_all=array_merge($ids,$idss);
- //
- // $count1=User::whereIn('cert_status',['3','6'])->whereIn('id',$ia_all)->where('service_status',0)->where('created_at','>',$time);
- //
- // return $this->success(['week'=>$count1,'month'=>$count2,'year'=>$count3]);
- }
- public function GetCrownInfo(){
- $re=User::where('level',3)->whereNull('deleted_at')->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->orderBy('id')->get();
- return $this->success($re);
- }
- public function GetNextInfo(Request $request){
- $re=User::whereNull('deleted_at')->where('agent_id',$request->id)->with(['child:id,agent_id'])->where('level','<>',3)->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->get();
- return $this->success($re);
- }
- public function GetLastInfo(Request $request){
- $re=User::where('level',1)->whereNull('deleted_at')->where('level','<>',3)->where('agent_id',$request->id)->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->get();
- return $this->success($re);
- }
- public function SearchUser(Request $request){
- $search_name=$request->input('search_name');
- $warea_id=$request->input('warea_id')??null;
- $user=User::whereNull('deleted_at');
- if ($warea_id){
- $user->where('warea_id',$warea_id);
- }
- $user=$user->where(function ($q)use($search_name){
- $q->where('nickname','like',"%$search_name%")->orwhere('mobile','like',"%$search_name%")->orwhere('remark_name','like',"%$search_name%");
- })->with(['warea'])->select('id','nickname','remark_name','mobile','level','headimgurl','warea_id')->get();
- return $this->success($user);
- }
- public function GetAllWarea(Request $request){
- $re=Warea::pluck('name','id');
- return $this->success($re);
- }
- public function SearchTeamUser(Request $request){
- $id=$request->input('id');
- $user=User::find($id);
- if ($user->level==3){
- $re=User::where('level',3)->whereNull('deleted_at')->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->orderBy('id')->get();
- return $this->success($re);
- }else{
- $agent=User::find($user->agent_id);
- if ($agent->level==3){
- $id=$agent->id;
- $re=User::where('level',3)->whereNull('deleted_at')->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->orderBy('id')->get()->toArray();
- $res=User::whereNull('deleted_at')->where('agent_id',$agent->id)->where('level','<>',3)->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->get();
- $arr=array_column($re,'id');
- $arr_id=array_search($id,$arr);
- $re[$arr_id]['children']=$res;
- return $this->success($re);
- }else{
- /**代理公司信息*/
- $users=User::find($agent->agent_id);
- //代理公司ID
- $id=$users->id;
- //销售经理下面所有主管
- $last_re=User::where('level',1)->whereNull('deleted_at')->where('agent_id',$agent->id)->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->get()->toArray();
- //所有的代理公司
- $re=User::where('level',3)->whereNull('deleted_at')->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->orderBy('id')->get()->toArray();
- $arr=array_column($re,'id');
- $arr_id=array_search($id,$arr);
- //代理公司所有的直属下级
- $res=User::whereNull('deleted_at')->where('agent_id',$id)->where('level','<>',3)->select('id','level','remark_name as name','nickname','mobile','headimgurl','cre_num','realname')->get()->toArray();
- $arrs=array_column($res,'id');
- $arrs_id=array_search($agent->id,$arrs);
- $res[$arrs_id]['children']=$last_re;
- $re[$arr_id]['children']=$res;
- return $this->success($re);
- }
- }
- }
- public function GetEnroll(){
- $count=Enroll::where('is_pay',1)->where('is_refund','<>',1)->where('season',4)->count();
- return $this->success(['count'=>$count]);
- }
- public function UpdateEnrollInfo(Request $request){
- $uid=$request->input('user_id');
- $re=EnrollUser::where('user_id',$uid)->first();
- if (!$re){
- return $this->error();
- }
- if (!$request->input('mobile') || !$request->input('name')){
- return $this->error(400121,'信息提交不全');
- }
- $re->mobile=$request->input('mobile','');
- $re->name=$request->input('name','');
- $re->province=$request->input('province','');
- $re->city=$request->input('city','');
- $re->town=$request->input('town','');
- $re->address=$request->input('address','');
- $re->save();
- return $this->success([]);
- }
- public function GetEnrolls(Request $request){
- $search_name=$request->input('search_name');
- $page_index=$request->input('page_index');
- $page_size=$request->input('page_size');
- $type=$request->input('type',0);
- $num=($page_index-1)*$page_size;
- if ($type==1){
- $re=Enroll::where('is_pay',1)->where('season',6)->where('is_refund',1);
- }else{
- $re=Enroll::where('is_pay',1)->where('season',6)->wherenull('is_refund');
- }
- if($search_name){
- $uid=User::where('nickname','like',"%$search_name%")->orwhere('mobile','like',"%$search_name%")->withTrashed()->pluck('id');
- $re->whereIn('user_id',$uid);
- }
- $count=$re->count();
- $re=$re->with(['user:mobile,level,nickname,realname,headimgurl,id','enroll_user'])->take($page_size)->skip($num)->get();
- return $this->success_list([$re,'count'=>$count]);
- }
- public function ExportEnrollList(Request $request){
- $search_name=$request->input('search_name');
- $season=$request->input('season',6);
- $re=Enroll::where('is_pay',1)->where('season',$season)->wherenull('is_refund');
- if($search_name){
- $uid=User::where('nickname','like',"%$search_name%")->orwhere('mobile','like',"%$search_name%")->pluck('id');
- $re->whereIn('user_id',$uid);
- }
- $re=$re->leftjoin('users','users.id','=','enroll.user_id')
- ->join('warea','warea.id','=','users.warea_id')
- ->leftjoin('enroll_user','enroll_user.user_id','=','users.id')
- ->select('users.mobile as 手机号','users.nickname as 昵称',DB::raw('(CASE
- WHEN users.level=1 THEN "销售主管"
- WHEN users.level=2 THEN "销售经理"
- WHEN users.level=3 THEN "代理公司"
- ELSE "未知" END) as 级别'),'warea.name as 战区','enroll.created_at as 报名时间','agent_id','enroll_user.mobile as 收货人手机号','enroll_user.province as 省份','enroll_user.name as 收获人姓名','enroll_user.city as 城市','enroll_user.town as 地区','enroll_user.address as 详细地址' )
- ->get()->toArray();
- $data=[];
- foreach ($re as $k=>$v){
- $agent_id=$v['agent_id'];
- unset($v['agent_id']);
- $data[$k]=$v;
- if ($v['级别']=='代理公司'){
- $data[$k]['代理公司']='暂无';
- }else{
- $agent=User::find($agent_id);
- if ($agent){
- if ($agent->level==3){
- $data[$k]['代理公司']=$agent->remark_name;
- }else{
- $agents=User::find($agent->agent_id);
- $data[$k]['代理公司']=$agents->remark_name;
- }
- }else{
- $data[$k]['代理公司']='暂无';
- }
- }
- }
- return $this->success($data,count($re));
- }
- public function EEnrollList(Request $request){
- $search_name=$request->input('search_name');
- $season=$request->input('season',4);
- $re=Enroll::where('is_pay',1)->where('season',$season)->wherenull('is_refund');
- if($search_name){
- $uid=User::where('nickname','like',"%$search_name%")->orwhere('mobile','like',"%$search_name%")->pluck('id');
- $re->whereIn('user_id',$uid);
- }
- $re=$re->join('users','users.id','=','enroll.user_id')
- ->join('warea','warea.id','=','users.warea_id')
- ->leftjoin('enroll_user','enroll_user.user_id','=','users.id')
- ->select('users.mobile as 手机号','users.nickname as 昵称',DB::raw('(CASE
- WHEN users.level=1 THEN "销售主管"
- WHEN users.level=2 THEN "销售经理"
- WHEN users.level=3 THEN "代理公司"
- ELSE "未知" END) as 级别'),'warea.name as 战区','enroll.created_at as 报名时间','enroll.id','agent_id','enroll_user.mobile as 收货人手机号','enroll_user.province as 省份','enroll_user.name as 收获人姓名','enroll_user.city as 城市','enroll_user.town as 地区','enroll_user.address as 详细地址' )
- ->pluck('id')->toArray();
- $data=Enroll::where('season',4)->where('is_pay',1)->whereNull('is_refund')->whereNotIn('id',$re)->get();
- return $this->success($data,count($re));
- }
- /*
- * 点击退款
- * **/
- public function Refund(Request $request){
- $re=Enroll::find($request->input('id'));
- if ($re){
- $options=$this->options();
- $payment=Factory::payment($options);
- $number=time().$re->user_id.random_int(11111,99999);
- // 参数分别为:商户订单号、商户退款单号、订单金额、退款金额、其他参数
- $result = $payment->refund->byOutTradeNumber($re->enroll_no, $number, $re->cost*100, $re->cost*100, [
- // 可在此处传入其他参数,详细参数见微信支付文档
- 'refund_desc' => $request->input('refund_desc'),
- 'notify_url'=>'https://api.admin.app.jiuweiyun.cn/api/pay/RefoundMessage'
- ]);
- $re->refund_cause=$request->input('refund_desc');
- $re->op_name=Auth::user()->name;
- $re->is_refund=1;
- $re->save();
- }
- return $this->success([]);
- }
- public function RefundMessage(Request $request){
- $options = $this->options();
- $payment = Factory::payment($options);
- $response = $payment->handleRefundedNotify(function ($message, $reqInfo, $fail){
- $out_trade_no = $reqInfo['out_trade_no']; // 商户订单号
- $out_refund_no = $reqInfo['out_refund_no']; // 微信支付退款订单号
- $order = Enroll::where('enroll_no', '=', $out_trade_no)->first();
- if (empty($order)) {
- return true; // 告诉微信,我已经处理完了,订单没找到,别再通知我了
- }
- if ($message['return_code'] === 'SUCCESS') { // return_code 表示通信状态,不代表支付状态
- // 用户是否支付成功
- if ($reqInfo['refund_status'] === 'SUCCESS') {
- $enroll = Enroll::where('enroll_no', '=', $out_trade_no)->first();
- $enroll->is_refund = 1;
- $enroll->refund_num = $out_refund_no;
- $enroll->refund_time = Carbon::now()->toDateTimeString();
- $enroll->save();
- }
- } else {
- return $fail('通信失败,请稍后再通知我');
- }
- return true;
- });
- return $response;
- }
- protected function options(){
- return [
- 'app_id' => config('wechat.payment.daweiboshi.app_id'),//config('wechat.payment.default.app_id'),
- 'mch_id' => config('wechat.payment.daweiboshi.mch_id'),
- 'sub_mch_id' => '',
- 'key' => config('wechat.payment.daweiboshi.key'),
- 'notify_url' =>'',
- // 'notify_url' =>url('api/pay/message'),
- 'cert_path' =>config('wechat.payment.daweiboshi.cert_path'),
- 'key_path' =>config('wechat.payment.daweiboshi.key_path'),
- ];
- }
- public function GetUserRecom(){
- $re=User::where('level',3)->with(['child'=>function ($q){
- $q->with(['child'=>function($query){
- $query->select('level','nickname','remark_name','mobile','headimgurl','id','agent_id',DB::raw('if("status"=0,"false","true") as collapsed '));
- }])->select('level','nickname','remark_name','mobile','headimgurl','id','agent_id',DB::raw('if("status"=0,"false","true") as collapsed '));
- }])->select('level','nickname','remark_name','mobile','headimgurl','id','agent_id',DB::raw('if("status"=0,"false","true") as collapsed '))->limit(50)->get();
- return $this->success($re);
- }
- public function GetUserRecoms(){
- $re=Cache::remember('UserDataAll',Carbon::now()->addDays(1),function (){
- return User::where('recom_id',31070)->with(['allChildren'=>function ($q){
- $q->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id')->whereNotNull('recom_id');
- }])->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id')->whereNotNull('recom_id')->get();
- });
- return $this->success($re);
- }
- public function GetParent(Request $request){
- $id=$request->input('id',null);
- $status=$request->input('status',null)??null;
- $id_arr=[];
- if ($id){
- $id_arr=$this->Getcom($id,[]);
- }
- if (!$status){
- $re=User::where('recom_id',31070)->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id','cre_num','realname','province','city','country')->whereNull('deleted_at')->whereNotNull('recom_id')->get();
- }else{
- $re=User::where('recom_id',31070)->where('id',$id)->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id','cre_num','realname','province','city','country')->whereNull('deleted_at')->whereNotNull('recom_id')->get();
- }
- $res=$this->Getcoms($id_arr,$re);
- return $this->success($res);
- }
- public function GetParents(Request $request){
- $id=$request->input('id',null);
- $arr=$request->input('arr',null)??null;
- Log::error($arr);
- $data=[];
- if ($arr){
- foreach ($arr as $k=>$v){
- $data[]=json_decode($v,true);
- }
- }
- $arr=$data;
- $id_arr=[];
- if ($id){
- $id_arr=$this->Getcom($id,[]);
- }
- if (!isset($arr[0])){
- $re=User::where('recom_id',31070)->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id','cre_num','realname','province','city','country')->whereNull('deleted_at')->whereNotNull('recom_id')->get();
- }else{
- if (!$arr[0]['status']){
- $re=User::where('recom_id',31070)->where('id',$arr[0]['id'])->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id','cre_num','realname','province','city','country')->whereNull('deleted_at')->whereNotNull('recom_id')->get();
- }else{
- $re=User::where('recom_id',31070)->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id','cre_num','realname','province','city','country')->whereNull('deleted_at')->whereNotNull('recom_id')->get();
- }
- }
- $res=$this->Getcomss($id_arr,$re,$arr,0,[],1,$id);
- $e=[];
- for($i=1;$i<$res[1];$i++){
- $e[]=$i;
- }
- return $this->success(['data'=>$res[0],'info'=>[$e,$res[3]]]);
- }
- public function Getcom($id,$arr=[]){
- $user=User::where('id',$id)->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id','cre_num','realname')->whereNotNull('recom_id')->whereNull('deleted_at')->first();
- $arr[]=$id;
- // $recom_arr=User::where('recom_id',$user->recom_id)->select('level','nickname','remark_name','mobile','headimgurl','id','recom_id')->get();
- // foreach ($recom_arr as $k=>$v){
- // if ($v->id==$id){
- // $recom_arr[$k]->collapsed=false;
- // }
- // }
- //
- // $arrs=$recom_arr;
- if ($user->recom_id!=31070){
- if ($user->recom_id){
- $arr[]=$user->recom_id;
- return $this->Getcom($user->recom_id,$arr);
- }
- }
- return $arr;
- }
- public function Getcoms($ids=[],$re){
- foreach ($re as $k=>$v){
- $child=User::where('recom_id',$v->id)->whereNull('deleted_at')->count();
- if ($child){
- $re[$k]->hasChild=true;
- }else{
- $re[$k]->hasChild=false;
- }
- if (in_array($v->id,$ids)){
- $re[$k]->collapsed=false;
- $child=User::where('recom_id',$v->id)->whereNull('deleted_at')->select('level','cre_num','nickname','remark_name','mobile','headimgurl','id','recom_id','realname')->get();
- $re[$k]->child=$child;
- if (count($child)){
- $re[$k]->hasChild=true;
- }else{
- $re[$k]->hasChild=false;
- }
- $this->Getcoms($ids,$re[$k]->child);
- }
- }
- return $re;
- }
- public function Getcomss($ids=[],$re,$arr,$m,$e,$l,$id,$r=0){
- if (!isset($arr[$m])){
- $status=true;
- }else{
- if ($arr[$m]['status']){
- $status=true;
- }else{
- $status=false;
- }
- }
- foreach ($re as $k=>$v){
- $l++;
- $child=User::where('recom_id',$v->id)->whereNull('deleted_at')->count();
- if ($child){
- $re[$k]->hasChild=true;
- }else{
- $re[$k]->hasChild=false;
- }
- $re[$k]->status=$status;
- if (!$status){
- $re[$k]->team=User::where('agent_id',$v->id)->count();
- $num=$this->getUpTeam($v->id);
- $re[$k]->up_team=$num['num'];
- }
- if (!$status){
- $ll=$l-1;
- $cre_num=$v->cre_num;
- $re[$k]->age='';
- $re[$k]->sexs='';
- if ($cre_num){
- $year=date('Y',time());
- $re[$k]->age=$year-mb_substr($cre_num,6,4);
- $sex=mb_substr($cre_num,16,1);
- if ($sex%2==0){
- $re[$k]->sexs='女';
- }else{
- $re[$k]->sexs='男';
- }
- }
- $re[$k]->address=$v->province.$v->city.$v->country;
- $re[$k]->l=$ll;
- $e[]=$re[$k];
- }
- if ($v->id==$id){
- $r=$l;
- }
- if (in_array($v->id,$ids)){
- $m++;
- if (!isset($arr[$m])){
- $re[$k]->collapsed=false;
- $child=User::where('recom_id',$v->id)->whereNull('deleted_at')->select('level','cre_num','nickname','remark_name','mobile','headimgurl','id','recom_id','realname','province','city','country')->get();
- $re[$k]->child=$child;
- if (count($child)){
- $re[$k]->hasChild=true;
- }else{
- $re[$k]->hasChild=false;
- }
- $h=$this->Getcomss($ids,$re[$k]->child,$arr,$m,$e,$l,$id,$r);
- $l=$h[1];
- $r=$h[2];
- $e=$h[3];
- }else{
- if (!$arr[$m]['status']){
- $re[$k]->collapsed=false;
- $child=User::where('recom_id',$v->id)->where('id',$arr[$m]['id'])->whereNull('deleted_at')->select('level','cre_num','nickname','remark_name','mobile','headimgurl','id','recom_id','realname','province','city','country')->get();
- $re[$k]->child=$child;
- if (count($child)){
- $re[$k]->hasChild=true;
- }else{
- $re[$k]->hasChild=false;
- }
- $h=$this->Getcomss($ids,$re[$k]->child,$arr,$m,$e,$l,$id,$r);
- $l=$h[1];
- $r=$h[2];
- $e=$h[3];
- }else{
- $re[$k]->collapsed=false;
- $child=User::where('recom_id',$v->id)->whereNull('deleted_at')->select('level','cre_num','nickname','remark_name','mobile','headimgurl','id','recom_id','realname','province','city','country')->get();
- $re[$k]->child=$child;
- if (count($child)){
- $re[$k]->hasChild=true;
- }else{
- $re[$k]->hasChild=false;
- }
- $h=$this->Getcomss($ids,$re[$k]->child,$arr,$m,$e,$l,$id,$r);
- $l=$h[1];
- $r=$h[2];
- $e=$h[3];
- }
- }
- }
- }
- return [$re,$l,$r,$e];
- }
- public function GetRcomList(Request $request){
- $id=$request->id;
- $user=User::where('recom_id',$id)->select('level','nickname','cre_num','remark_name','mobile','headimgurl','id','recom_id','realname')->get();
- return $this->success($user);
- }
- /**修改战区***/
- public function UpdateWarea(Request $request){
- User::where('id',$request->id)->update(['warea_id'=>$request->input('warea_id')]);
- return $this->success([]);
- }
- /****/
- public function GetUserInfos(Request $request){
- $id=$request->input('id');
- $id_all=[$id];
- $agent_id=User::where('agent_id',$id)->pluck('id')->toArray();
- $id_all=array_merge($id_all,$agent_id);
- $re=User::whereIn('agent_id',$id_all)->select('id','recom_id','agent_id','nickname'
- ,'mobile','level')->with(['recom','agent'])->get();
- $data=[];
- foreach ($re as $k=>$v){
- $data[$k]['昵称']=$v->nickname;
- $data[$k]['手机号']=$v->mobile;
- $data[$k]['级别']=$v->level;
- $data[$k]['上级昵称']=$v->agent->nickname;
- $data[$k]['上级手机号']=$v->agent->mobile;
- $data[$k]['邀请人昵称']=$v->recom->nickname;
- $data[$k]['邀请人手机号']=$v->recom->mobile;
- }
- return $this->success($data);
- }
- //顶级升皇冠
- // public function getAgentLevelInfoTwos($uid,$arr){
- // $list=User::where('recom_id', $uid)->where('level','<',3)->select('id','nickname','realname','mobile','level','recom_id')->get()->toArray();//获取所有邀请人
- // if(count($list)>0){
- // foreach($list as $key=>$val){
- // if($val['level']=='2' || $val['level']=='1'){
- // array_push($arr,$val);
- // $arr=$this->getAgentLevelInfoTwos($val['id'],$arr);
- // }
- // }
- // }
- // return $arr;
- // }
- public function GetUSerAll(){
- $data=User::whereIn('cert_status',[3,6])->where('service_status',0)->whereNull('deleted_at')
- ->where('in_group',1)->select('nickname','mobile','level')->get();
- return $this->success($data);
- }
- /**获取现在和历史邀请人信息**/
- public function GetNowHistory(Request $request){
- $id=$request->input('id');
- $user=User::where('id',$id)->withTrashed()->first();
- $NowRom=User::where('id',$user->recom_id)->select('nickname','id','headimgurl','mobile','realname','level')->withTrashed()->first();
- $user_cert=UserCert::where('user_id',$id)->first();
- $data['now']=$NowRom;
- $data['history']=[];
- $arr=[];
- if ($user_cert){
- if ($user_cert->recom_id==$user->recom_id){
- $data['history']=[];
- }else{
- $recom_user=User::where('id',$user_cert->recom_id)->select('nickname','id','headimgurl','mobile','realname','level','deleted_at')->withTrashed()->first()->toArray();
- if ($recom_user){
- if ($recom_user['deleted_at']){
- $recomuser_cert=AgentOperationLog::where('user_id',$recom_user['id'])->where('type',4)->value('remark');
- $t=['remark'=>$recomuser_cert];
- $t=array_merge($recom_user,$t);
- $arr[]=$t;
- }
- }
- $user_cert=AgentOperationLog::where('user_id',$id)->where('type',3)->get();
- foreach ($user_cert as $k=>$v){
- $num=stripos($v->log,'null');
- if (!is_numeric($num)){
- $log=mb_substr($v->log,13);
- $num=stripos($log,',');
- $ids=mb_substr($log,0,$num);
- $usser=User::where('id',$ids)->select('nickname','id','headimgurl','mobile','realname','level','deleted_at')->withTrashed()->first()->toarray();
- $t=['remark'=>$v->remark];
- $t=array_merge($usser,$t);
- $arr[]=$t;
- }
- }
- $data['history']=$arr;
- }
- }
- return $this->success($data);
- }
- //上传图片
- public function uploadImage(Request $request){
- $file= $request->file('file');
- $path_url='activity_img/user_img';
- $upload= new UploadFilesHandler();
- $result= $upload->save($file, $path_url, null, 'image');
- if($result){
- return $this->success($result['path']);
- }
- return $this->error();
- }
- }
|