| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237 |
- <?php
- namespace app\controller\api\entropybarter;
- use alipay\aop\AlipayConfig;
- use alipay\aop\AopCertClient;
- use alipay\aop\request\AlipayTradePrecreateRequest;
- use alipay\aop\request\AlipayFundTransUniTransferRequest;
- use crmeb\basic\BaseController;
- use Endroid\QrCode\QrCode;
- use think\db\Where;
- use think\Exception;
- use think\facade\Cache;
- use think\facade\Db;
- use think\App;
- class User extends BaseController
- {
- protected $merId;
- protected $source;
- /**
- * UserExtract constructor.
- * @param App $app
- */
- public function __construct(App $app)
- {
- parent::__construct($app);
- $this->source = $this->request->header('source');
- $this->merId = $this->request->header('merId');
- }
- public function test(){
- dump($order_236 = new Order_236());
- }
- /**
- * @param $user
- * @param $top_id
- * 创建用户
- */
- public function create($uid,$top_id,$mer_id)
- {
- // $table_name='rrx_entropy_barter_user_'.$mer_id;
- // $exist = Db::query("show tables like '$table_name'");
- // if(empty($exist)){
- // return '';
- // }
- // $top_eb_id=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$top_id)->find();
- // $insert_data=[
- // 'uid'=>$uid,
- // 'top_eb_id'=>$top_eb_id['top_eb_id'],
- // 'ctime'=>time()
- // ];
- // Db::name('entropy_barter_user_'.$mer_id)->insert($insert_data);
- }
- public function xcx_bangding()
- {
- try {
- $param=$this->request->param();
- Db::name('log')->insert(['data'=>json_encode($param)]);
- Db::name('log')->insert(['data'=>'商品详情绑定推荐关系 进来了']);
- $share_id=$this->request->params(['share_id']);
- $mer_id=$this->request->params(['mer_id']);
- if(!$mer_id['mer_id']){
- Db::name('log')->insert(['data'=>'商品详情绑定推荐关系---商户ID 未传']);
- }
- if(!$share_id['share_id']){
- Db::name('log')->insert(['data'=>'商品详情绑定推荐关系---分享ID 未传']);
- }
- Db::name('log')->insert(['data'=>'商品详情绑定推荐关系--商户ID:'.$mer_id['mer_id']]);
- $mer_data=Db::name('merchant')->where('mer_id',$mer_id['mer_id'])->value('merchant_type');
- if($mer_data==2){
- $uid = $this->request->uid();
- Db::name('log')->insert(['data'=>'商品详情绑定推荐关系--用户ID:'.$uid]);
- Db::name('log')->insert(['data'=>json_encode($share_id)]);
- $spread_uid=Db::name('product_share')->where('id',$share_id['share_id'])->value('uid');
- Db::name('log')->insert(['data'=>Db::name('product_share')->getLastSql()]);
- if(!$spread_uid){
- return app('json')->fail('未查询到分享人的ID');
- }
- $this->bangding($uid,$spread_uid,$mer_id['mer_id']);
- $this->cxb_bangding($uid,$spread_uid);
- }
- }catch (\Exception $e) {
- Db::name('log')->insert(['data'=>'绑定关系错误:'.$e->getFile().':'.$e->getLine().'【'.$e->getMessage().'】']);
- }
- }
- /**
- * @param $uid
- * @param $spread_uid
- * 绑定储蓄保的关系
- */
- public function cxb_bangding($uid,$spread_uid)
- {
- $spread_uid_user=Db::name('user')->where('uid',$uid)->value('spread_uid');
- Db::name('log')->insert(['data'=>'绑定储蓄保的关系进来了他的上级ID'.$spread_uid_user]);
- if($spread_uid_user==0){
- Db::name('user')->where('uid',$uid)->update(['spread_uid'=>$spread_uid]);
- }
- }
- /**
- *绑定推荐关系
- */
- public function bangding($uid='',$spread_uid='',$mer_id='')
- {
- try {
- Db::name('log')->insert(['data'=>'进来了User']);
- if(!$uid){
- $uid = $this->request->uid();
- }
- if(!$mer_id){
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- }
- Db::name('log')->insert(['data'=>'mer_id----'.json_encode($mer_id)]);
- $data=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- if($data){
- return app('json')->fail('已绑定推荐关系');
- }
- $phone=$this->request->params(['phone']);
- if(!empty($phone['phone'])||$spread_uid){
- if(!$spread_uid){
- $spread_uid=Db::name('user')->where('account',$phone['phone'])->value('uid');
- }
- if(!$spread_uid){
- return app('json')->fail('未查询到推荐人信息');
- }
- $top_eb_id=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$spread_uid)->value('eb_id');
- if(!$top_eb_id){
- if($mer_id==236){
- $top_eb_id='13';
- }elseif ($mer_id==276){
- $top_eb_id='12';
- }elseif ($mer_id=='290'){
- $top_eb_id='1';
- }elseif ($mer_id=='148'){
- $top_eb_id=0;
- }
- }
- }else{
- $top_eb_id=Db::name('user')->where('uid',$uid)->value('spread_uid');
- $top_eb_id=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$top_eb_id)->value('eb_id');
- if(!$top_eb_id){
- if($mer_id==236){
- $top_eb_id='13';
- }elseif ($mer_id==276){
- $top_eb_id='12';
- }elseif ($mer_id=='290'){
- $top_eb_id='1';
- }elseif ($mer_id=='148'){
- $top_eb_id=0;
- }
- }
- }
- $type = 1;
- if($mer_id == '290'){
- $type = 0;
- }
- $insert_data=[
- 'uid'=>$uid,
- 'top_eb_id'=>$top_eb_id,
- 'ctime'=>time(),
- 'type'=>$type
- ];
- Db::name('log')->insert(['data'=>'添加数据--'.json_encode($insert_data)]);
- if($mer_id!=290){
- if($top_eb_id){
- $bill=[
- 'from_id'=>'0',
- 'number'=>30,
- 'to_id'=>$top_eb_id,
- 'type'=>'1',
- 'order_no'=>time(),
- 'remarks'=>'邀请好友得30积分',
- 'pm'=>1,
- 'status'=>2,
- 'on_line'=>1,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$top_eb_id)->inc('integral',30)->update();
- }
- }
- $res=Db::name('entropy_barter_user_'.$mer_id)->insertGetId($insert_data);
- $insertData=[
- 'eb_id'=>$res,
- 'key'=>'proportion',
- ];
- $re=Db::name('entropy_barter_config_user_'.$mer_id)->insert($insertData);
- if($res&&$re){
- return app('json')->success('绑定成功');
- }else{
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }
- }catch (Exception $exception){
- Db::name("log")->insert(array('data'=>$exception->getFile().':'.$exception->getLine().'【'.$exception->getMessage().'】'));//日志记录
- }
- }
- /*
- * 绑定状态
- */
- public function bangding_status()
- {
- $uid = $this->request->uid();
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- $data=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- if($data){
- return app('json')->success(['status'=>1]);
- }else{
- return app('json')->success(['status'=>2]);
- }
- }
- /**12171
- * @param $order
- * @param $type 1 线上 2线下
- * 订单
- * 修改用户 类型 比例 完成
- */
- public function order($order, $type)
- {
- try {
- Db::name('log')->insert(['data'=>'user._______'.json_encode($order)]);
- $mer_id=$order['mer_id'];
- Db::name('log')->insert(['data'=>'商户id0'.$mer_id]);
- if($mer_id=='290'){
- return $this->pay_orrder_290($order,$type);
- }elseif($mer_id=='236'){
- Db::name('log')->insert(['data'=>'商户id1'.$mer_id]);
- try {
- $order_236=new Order_236();
- Db::name('log')->insert(['data'=>'商户id2'.json_encode($order_236)]);
- return $order_236-> order($order, $type);
- }catch (\Exception $e) {
- Db::name('log')->insert(['data'=>'地宝订单支付出错:'.$e->getFile().':'.$e->getLine().'【'.$e->getMessage().'】']);
- }
- }
- }catch (\Exception $e) {
- Db::name('log')->insert(['data'=>'地宝订单支付出错lll:'.$e->getFile().':'.$e->getLine().'【'.$e->getMessage().'】']);
- }
- $user=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$order['uid'])->find();
- $update=[];
- $update_config=[];
- //增加消费总额/积分
- $weizhi=strpos($order['money'],'.');
- if($weizhi){
- $money=substr($order['money'],'0',$weizhi);
- }else{
- $money=$order['money'];
- }
- $update_user=[
- 'cumulative_money'=>bcadd($order['money'],$user['cumulative_money'],2),
- ];
- // if($mer_id=='276'||$mer_id=='236'){
- // if($order['money']>=1){
- // if($user['first_consumption_one']==1){
- // if($type==2){
- //
- // $bill=[
- // 'from_id'=>'0',
- // 'number'=>100,
- // 'to_id'=>$user['eb_id'],
- // 'type'=>'1',
- // 'order_no'=>$order['order_no'],
- // 'remarks'=>'首次消费满1元赠送100积分',
- // 'pm'=>1,
- // 'status'=>2,
- // 'on_line'=>2,
- // 'mer_id'=>$mer_id
- // ];
- // $this->eb_user_bill($bill);
- // Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$user['eb_id'])->inc('integral',100)->update();
- // Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$user['eb_id'])->inc('first_consumption_one',1)->update();
- //
- // }else{
- //
- // $bill=[
- // 'from_id'=>'0',
- // 'number'=>100,
- // 'to_id'=>$user['eb_id'],
- // 'type'=>'1',
- // 'order_no'=>$order['order_no'],
- // 'remarks'=>'首次消费满1元赠送100积分',
- // 'pm'=>1,
- // 'status'=>1,
- // 'on_line'=>1,
- // 'mer_id'=>$mer_id
- // ];
- // $this->eb_user_bill($bill);
- // Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$user['eb_id'])->inc('first_consumption_one',1)->update();
- // }
- //
- // }
- // }
- // }
- if($user['type']==1){
- if($update_user['cumulative_money']>=6000){
- $update['integral']='6000';
- }
- }
- $reward_one=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_one')->find();
- if($update_user['cumulative_money']>=$reward_one||$mer_id=='236'){
- if($type==2){
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$user['eb_id'])->update($update_user);
- $bill=[
- 'from_id'=>'0',
- 'number'=>$money,
- 'to_id'=>$user['eb_id'],
- 'type'=>'1',
- 'order_no'=>$order['order_no'],
- 'remarks'=>'消费得积分',
- 'pm'=>1,
- 'status'=>2,
- 'on_line'=>2,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- }else{
- $bill=[
- 'from_id'=>'0',
- 'number'=>$money,
- 'to_id'=>$user['eb_id'],
- 'type'=>'1',
- 'order_no'=>$order['order_no'],
- 'remarks'=>'消费得积分',
- 'pm'=>1,
- 'status'=>1,
- 'on_line'=>1,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- }
- }
- $eb_user=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$order['uid'])->find();
- $reward_two=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_two')->find();
- $reward_three=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_three')->find();
- $reward_four=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_four')->find();
- Db::name('log')->insert(['data'=>'这是我总共的消费'.$eb_user['cumulative_money']]);
- Db::name('log')->insert(['data'=>'1'.json_encode($reward_one)]);
- Db::name('log')->insert(['data'=>'2'.json_encode($reward_two)]);
- Db::name('log')->insert(['data'=>'3'.json_encode($reward_three)]);
- Db::name('log')->insert(['data'=>'4'.json_encode($reward_four)]);
- if($eb_user['cumulative_money']>=$reward_one['value'] and $eb_user['cumulative_money']<$reward_two['value']){
- $update['type']=2;
- $update_config['value']=$reward_one['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_two['value'] and $eb_user['cumulative_money']<$reward_three['value']){
- $update['type']=3;
- $update_config['value']=$reward_two['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_three['value'] and $eb_user['cumulative_money']<$reward_four['value']){
- $update['type']=4;
- $update_config['value']=$reward_three['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_four['value']){
- $update['type']=5;
- $update_config['value']=$reward_four['id'];
- }
- //修改此用户佣金比例
- if($type==2){
- Db::name('entropy_barter_config_user_'.$mer_id)->where('eb_id',$user['eb_id'])->update($update_config);
- //修改此用户类型 2 会员 3经理 4 总监 5 总裁
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$user['eb_id'])->update($update);
- }
- //是否有上级
- if($user['top_eb_id']){
- $top_user=Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$user['top_eb_id'])->find();
- $wallet=bcmul($order['money'],bcmul(30,0.01,2),2);
- if($top_user['integral']>=$wallet){
- if($type==2){
- $bill=[
- 'from_id'=>'0',
- 'number'=>$wallet,
- 'to_id'=>$top_user['eb_id'],
- 'type'=>'2',
- 'order_no'=>$order['order_no'],
- 'remarks'=>'直推佣金',
- 'pm'=>1,
- 'status'=>2,
- 'on_line'=>2,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$top_user['eb_id'])->inc('wallet',$wallet)->update();
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$top_user['eb_id'])->dec('integral',$wallet)->update();
- }else{
- $bill=[
- 'from_id'=>'0',
- 'number'=>$wallet,
- 'to_id'=>$top_user['eb_id'],
- 'type'=>'2',
- 'order_no'=>$order['order_no'],
- 'remarks'=>'直推佣金',
- 'pm'=>1,
- 'status'=>1,
- 'on_line'=>1,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- }
- }
- $top_level=Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$top_user['top_eb_id'])->find();
- if($top_level){
- $table_name='entropy_barter_config_'.$mer_id;
- $cproportion=Db::name('entropy_barter_config_user_'.$mer_id)
- ->alias('ebcu')
- ->leftJoin($table_name .' ebc','ebcu.value=ebc.id')
- ->where('eb_id',$top_level['eb_id'])
- ->field('ebc.proportion')
- ->find();
- $integral=bcmul($money,bcmul($cproportion['proportion'],'0.01',2),2);
- if($integral>0){
- if($type==2) {
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$top_level['eb_id'])->inc('integral',$integral)->update();
- $bill=[
- 'from_id'=>'0',
- 'number'=>$integral,
- 'to_id'=>$top_level['eb_id'],
- 'type'=>'2',
- 'order_no'=>$order['order_no'],
- 'remarks'=>'团队积分奖励',
- 'pm'=>1,
- 'status'=>2,
- 'on_line'=>2,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- }else{
- $bill=[
- 'from_id'=>'0',
- 'number'=>$integral,
- 'to_id'=>$top_level['eb_id'],
- 'type'=>'1',
- 'order_no'=>$order['order_no'],
- 'remarks'=>'团队积分奖励',
- 'pm'=>1,
- 'status'=>1,
- 'on_line'=>1,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- }
- }
- }
- }
- }
- //账单记录
- public function eb_user_bill($bill)
- {
- $insert=[
- 'from_id'=>$bill['from_id'],
- 'number'=>$bill['number'],
- 'to_id'=>$bill['to_id'],
- 'type'=>$bill['type'],
- 'order_no'=>$bill['order_no'],
- 'remarks'=>$bill['remarks'],
- 'pm'=>$bill['pm'],
- 'ctime'=>time(),
- 'on_line'=>$bill['on_line'],
- 'status'=>$bill['status'],
- 'pm2_msg'=>$bill['pm2_msg']??'',
- 'mer_id'=>$bill['mer_id'],
- 'commission_scale'=>$bill['commission_scale']??0,
- 'commission_type'=>$bill['commission_type']??0,
- 'to_user_type'=>$bill['to_user_type']??'',
- 'to_user_type_1'=>$bill['to_user_type_1']??'',
- ];
- Db::name('log')->insert(['data'=>json_encode($insert)]);
- Db::name('entropy_barter_bill')->insert($insert);
- }
- //积分赠送
- public function give_integral()
- {
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- $param=$this->request->param();
- $uid = $this->request->uid();
- $cxbuser_from=Db::name('user')->where('uid',$uid)->find();
- $cxbuser_to=Db::name('user')->where('uid',$param['to_id'])->find();
- $user=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- $touser=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$param['to_id'])->find();
- if(!$touser){
- return app('json')->fail('未查询到用户(赠送)');
- }
- $from_id=$user['eb_id'];
- $to_id=$touser['eb_id'];
- $number=$param['unmber'];
- if($user['integral']<$number){
- return app('json')->fail('积分不足,赠送失败。');
- }
- $update_from=[
- 'integral'=>$number
- ];
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$from_id)->update($update_from);
- $bill=[
- 'from_id'=>$from_id,
- 'number'=>$number,
- 'to_id'=>$to_id,
- 'type'=>'1',
- 'order_no'=>'0',
- 'remarks'=>'赠送给'.$cxbuser_to['nickname'].$number.'积分',
- 'pm'=>2,
- 'status'=>2,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- $update_to=[
- 'integral'=>$number
- ];
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$to_id)->update($update_to);
- $bill=[
- 'from_id'=>$from_id,
- 'number'=>$number,
- 'to_id'=>$to_id,
- 'type'=>'1',
- 'order_no'=>'0',
- 'remarks'=>$cxbuser_from['nickname'].'赠送给我'.$number.'积分',
- 'pm'=>1,
- 'status'=>2,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- return app('json')->success('赠送成功');
- }
- //搜索好友
- public function search_friends()
- {
- $phone=$this->request->params(['phone']);
- if(!empty($phone)){
- app('json')->fail('未接收到参数 phone');
- }
- $user_data=Db::name('user')->where('account',$phone)->field('uid')->find();
- if(!$user_data){
- app('json')->fail('未查询到用户--'.$phone);
- }
- return app('json')->success(['uid'=>$user_data['uid']]);
- }
- //个人中心
- public function personals()
- {
- $uid=$this->request->uid();
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- $userdata=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->leftJoin('user u','u.uid=ebu.uid')
- ->where('ebu.uid',$uid)
- ->find();
- if (!$userdata){
- return app('json')->fail('还未注册');
- }
- $unsettled_integral=Db::name('entropy_barter_bill')
- ->where('mer_id',$mer_id)
- ->where('type',1)
- ->where('to_id',$userdata['eb_id'])
- ->where('pm',1)
- ->where('status',1)
- ->sum('number');
- $userdata['unsettled_integral']=$unsettled_integral;
- if($userdata['avatar']=='https://cdn.bjtdba.com/chuxubao/static/assets/yhc_default_avatar.png'){
- $userdata['avatar']=Db::name('user_account')->where('type',1)->where('uid',$uid)->value('avater');
- if(empty($userdata['avatar'])){
- $userdata['avatar']=Db::name('user_account')->where('type',2)->where('uid',$uid)->value('avater');
- if(empty($userdata['avatar'])){
- $userdata['avatar']='https://cdn.bjtdba.com/chuxubao/static/assets/yhc_default_avatar.png';
- }
- }
- }
- if($mer_id==290){
- $userdata['url']=$this->zhongjiankangyang_pic($userdata);
- }
- if ($userdata)
- return app('json')->success($userdata);
- else
- return app('json')->fail('暂无数据');
- }
- public function zhongjiankangyang_pic($user)
- {
- if($user['type']!=0){
- if($user['pay_goods_type']==1){
- switch ($user['type']){
- case 3:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type3pay_goods_type1.png';
- break;
- case 4:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type4pay_goods_type1.png';
- break;
- case 5:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type5pay_goods_type1.png';
- break;
- case 6:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type6pay_goods_type1.png';
- break;
- case 7:
- $url='https://app.bjtdba.com/applet/static/images/zjky/heijin.png';
- break;
- case 1:
- default:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type1pay_goods_type1.png';
- }
- }elseif($user['pay_goods_type']==2){
- switch ($user['type']){
- case 3:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type3pay_goods_type2.png';
- break;
- case 4:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type4pay_goods_type2.png';
- break;
- case 5:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type5pay_goods_type2.png';
- break;
- case 6:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type6pay_goods_type2.png';
- break;
- case 7:
- $url='https://app.bjtdba.com/applet/static/images/zjky/heijin.png';
- break;
- case 2:
- default:
- $url='https://app.bjtdba.com/applet/static/images/zjky/type2pay_goods_type2.png';
- }
- }
- }else{
- $url=1;
- }
- return $url;
- }
- //下级用户
- public function subordinate()
- {
- [$page,$limit] = $this->getPage();
- $uid=$this->request->uid();
- $type=$this->request->params(['type']);
- if(empty($type['type'])){
- return app('json')->fail('未获取到参数: type');
- }
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- $type=$type['type'];
- if($type==1){
- // $user_data=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->field('nickname,account,create_time,')->select();
- $ebuser=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- $user_data=Db::name('entropy_barter_user_'.$mer_id)->where('top_eb_id',$ebuser['eb_id'])->page($page,$limit)->select();
- $num=Db::name('entropy_barter_user_'.$mer_id)->where('top_eb_id',$ebuser['eb_id'])->count('eb_id');
- if($user_data->isEmpty()){
- return app('json')->success([]);
- }
- $user_data=$user_data->toArray();
- foreach ($user_data as $k=>&$v){
- $cxb_user=Db::name('user')->where('uid',$v['uid'])->field('nickname,avatar,create_time')->find();
- $v['avatar']=$cxb_user['avatar'];
- if($cxb_user['avatar']=='https://cdn.bjtdba.com/chuxubao/static/assets/yhc_default_avatar.png'){
- $v['avatar']=Db::name('user_account')->where('type',1)->where('uid',$v['uid'])->value('avater');
- if(empty($v['avatar'])){
- $v['avatar']=Db::name('user_account')->where('type',2)->where('uid',$v['uid'])->value('avater');
- if(empty($v['avatar'])){
- $v['avatar']='https://cdn.bjtdba.com/chuxubao/static/assets/yhc_default_avatar.png';
- }
- }
- }
- $v['nickname']=$cxb_user['nickname'];
- $v['create_time']=date('Y-m-d H:i:s',$v['ctime']);
- $v['money']=Db::name('store_order')->where('mer_id',$mer_id)->where('uid',$v['uid'])->where('paid',1)->where('status','<>','-1')->sum('total_price');
- $v['order']=Db::name('store_order')->where('mer_id',$mer_id)->where('uid',$v['uid'])->where('paid',1)->where('status','<>','-1')->count('order_id');
- $v['extension']=Db::name('entropy_barter_user_'.$mer_id)->where('top_eb_id',$v['eb_id'])->count('eb_id');
- }
- }elseif($type==2){
- $ebuser=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- $top_user=Db::name('entropy_barter_user_'.$mer_id)->where('top_eb_id',$ebuser['eb_id'])->select();
- if($top_user->isEmpty()){
- return app('json')->success([]);
- }
- $top_user=$top_user->toArray();
- $ids='';
- foreach ($top_user as $k=>$v){
- $ids.=$v['eb_id'].',';
- }
- $ids=explode(',',rtrim($ids,','));
- $user_data=Db::name('entropy_barter_user_'.$mer_id)->whereIn('top_eb_id',$ids)->page($page,$limit)->select();
- $num=Db::name('entropy_barter_user_'.$mer_id)->whereIn('top_eb_id',$ids)->count('eb_id');
- if($user_data->isEmpty()){
- return app('json')->success([]);
- }
- $user_data=$user_data->toArray();
- foreach ($user_data as $k=>&$v){
- $cxb_user=Db::name('user')->where('uid',$v['uid'])->field('nickname,avatar,create_time')->find();
- // dd($cxb_user);
- $v['avatar']=$cxb_user['avatar'];
- if($cxb_user['avatar']=='https://cdn.bjtdba.com/chuxubao/static/assets/yhc_default_avatar.png'){
- $v['avatar']=Db::name('user_account')->where('type',1)->where('uid',$v['uid'])->value('avater');
- if(empty($v['avatar'])){
- $v['avatar']=Db::name('user_account')->where('type',2)->where('uid',$v['uid'])->value('avater');
- if(empty($v['avatar'])){
- $v['avatar']='https://cdn.bjtdba.com/chuxubao/static/assets/yhc_default_avatar.png';
- }
- }
- }
- $v['nickname']=$cxb_user['nickname'];
- $v['create_time']=date('Y-m-d H:i:s',$v['ctime']);
- $v['money']=Db::name('store_order')->where('mer_id',$mer_id)->where('paid',1)->where('uid',$v['uid'])->sum('total_price');
- $v['order']=Db::name('store_order')->where('mer_id',$mer_id)->where('paid',1)->where('uid',$v['uid'])->count('order_id');
- }
- }else{
- $user_data=[];
- }
- return app('json')->success(compact('user_data','num'));
- }
- //确认收货
- public function take($order_no)
- {
- Db::name('log')->insert(['data'=>'易熵易物我走进来了']);
- try {
- $mer_id=Db::name('store_order')->where('order_sn',$order_no)->value('mer_id');
- if($mer_id=='290'){
- $this->take_290($order_no);
- }
- $data=Db::name('entropy_barter_bill')->where('mer_id',$mer_id)->where('order_no',$order_no)->select();
- $order_data=Db::name('store_order')->where('order_sn',$order_no)->find();
- if($order_data['pay_price']>=1){
- $true=true;
- }else{
- $true=false;
- }
- Db::name('log')->insert(['data'=>'数据---'.json_encode($data)]);
- if($data->isEmpty()){
- return '12';
- }
- $data=$data->toArray();
- foreach ($data as $k=>$v){
- // if($true){
- // Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$v['to_id'])->inc('integral',100)->update();
- // }
- $true=false;
- if($v['status']=='1'){
- if($v['type']==2){
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$v['to_id'])->inc('wallet',$v['number'])->update();
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$v['to_id'])->dec('integral',$v['number'])->update();
- Db::name('entropy_barter_bill')->where('id',$v['id'])->update(['status'=>2]);
- }elseif ($v['type']==1){
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$v['to_id'])->inc('integral',$v['number'])->update();
- Db::name('entropy_barter_bill')->where('id',$v['id'])->update(['status'=>2]);
- }
- }
- }
- $uid=Db::name('store_order')->where('order_sn',$order_no)->value('uid');
- $eb_user=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- $reward_one=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_one')->find();
- $reward_two=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_two')->find();
- $reward_three=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_three')->find();
- $reward_four=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_four')->find();
- Db::name('log')->insert(['data'=>'这是我总共的消费'.$eb_user['cumulative_money']]);
- Db::name('log')->insert(['data'=>'1'.json_encode($reward_one)]);
- Db::name('log')->insert(['data'=>'2'.json_encode($reward_two)]);
- Db::name('log')->insert(['data'=>'3'.json_encode($reward_three)]);
- Db::name('log')->insert(['data'=>'4'.json_encode($reward_four)]);
- $update_config=[];
- $update=[];
- if($eb_user['cumulative_money']>=$reward_one['value'] and $eb_user['cumulative_money']<$reward_two['value']){
- $update['type']=2;
- $update_config['value']=$reward_one['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_two['value'] and $eb_user['cumulative_money']<$reward_three['value']){
- $update['type']=3;
- $update_config['value']=$reward_two['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_three['value'] and $eb_user['cumulative_money']<$reward_four['value']){
- $update['type']=4;
- $update_config['value']=$reward_three['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_four['value']){
- $update['type']=5;
- $update_config['value']=$reward_four['id'];
- }
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$eb_user['eb_id'])->update(['cumulative_money'=>bcadd($eb_user['cumulative_money'],$order_data['pay_price'],2)]);
- //修改此用户佣金比例
- Db::name('entropy_barter_config_user_'.$mer_id)->where('eb_id',$eb_user['eb_id'])->update($update_config);
- //修改此用户类型 2 会员 3经理 4 总监 5 总裁
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$eb_user['eb_id'])->update($update);
- }catch (Exception $exception){
- Db::name("log")->insert(array('data'=>$exception->getFile().':'.$exception->getLine().'【'.$exception->getMessage().'】'));//日志记录
- }
- }
- //退款
- public function refund($order_no)
- {
- try {
- $mer_id=Db::name('store_order')->where('order_sn',$order_no)->value('mer_id');
- $data=Db::name('entropy_barter_bill')->where('mer_id',$mer_id)->where('order_no',$order_no)->select();
- if($data->isEmpty()){
- return "123123131";
- }
- $data=$data->toArray();
- foreach ($data as $k=>$v){
- Db::name('entropy_barter_bill')->where('id',$v['id'])->update(['status'=>3]);
- if($v['status']=='2'){
- if($v['type']==2){
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$v['to_id'])->dec('wallet',$v['number'])->update();
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$v['to_id'])->inc('integral',$v['number'])->update();
- }elseif ($v['type']==1){
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$v['to_id'])->dec('integral',$v['number'])->update();
- }
- }
- }
- $uid=Db::name('store_order')->where('order_sn',$order_no)->value('uid');
- $eb_user=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- $reward_one=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_one')->find();
- $reward_two=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_two')->find();
- $reward_three=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_three')->find();
- $reward_four=Db::name('entropy_barter_config_'.$mer_id)->where('key','reward_four')->find();
- Db::name('log')->insert(['data'=>'2'.json_encode($reward_one)]);
- Db::name('log')->insert(['data'=>'2'.json_encode($reward_two)]);
- Db::name('log')->insert(['data'=>'3'.json_encode($reward_three)]);
- Db::name('log')->insert(['data'=>'4'.json_encode($reward_four)]);
- $update_config=[];
- $update=[];
- if($eb_user['cumulative_money']>=$reward_one['value'] and $eb_user['cumulative_money']<$reward_two['value']){
- $update['type']=2;
- $update_config['value']=$reward_one['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_two['value'] and $eb_user['cumulative_money']<$reward_three['value']){
- $update['type']=3;
- $update_config['value']=$reward_two['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_three['value'] and $eb_user['cumulative_money']<$reward_four['value']){
- $update['type']=4;
- $update_config['value']=$reward_three['id'];
- }elseif ($eb_user['cumulative_money']>=$reward_four['value']){
- $update['type']=5;
- $update_config['value']=$reward_four['id'];
- }else{
- $update['type']=1;
- $update_config['value']=0;
- }
- //修改此用户佣金比例
- Db::name('entropy_barter_config_user')->where('eb_id',$eb_user['eb_id'])->update($update_config);
- //修改此用户类型 2 会员 3经理 4 总监 5 总裁
- Db::name('entropy_barter_user_'.$mer_id)->where('eb_id',$eb_user['eb_id'])->update($update);
- }catch (Exception $exception){
- Db::name("log")->insert(array('data'=>$exception->getFile().':'.$exception->getLine().'【'.$exception->getMessage().'】'));//日志记录
- }
- }
- /**
- * 我的订单
- */
- public function my_order()
- {
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- [$page,$limit] = $this->getPage();
- $uid=$this->request->uid();
- $status=$this->request->params(['status']);
- // //订单状态(0:待发货;1:待收货;3:已完成;4售后 -2 待支付)
- // $page=1;
- // $limit=10;
- // $status['status']='1';
- // $uid=1824;
- $where=$status;
- if(empty($where['status'])){
- $where=[];
- }elseif ($where['status']==999){
- $where=[];
- }
- if($status['status']==4|| $status['status']=='-1'){
- // $data=Db::name('store_refund_order')->where('uid',$uid)->where('mer_id',276)->page($page,$limit)->select();
- $data=Db::name('store_order')->order('create_time','desc')->where('status','in','-1,4')->where('uid',$uid)->where('mer_id',$mer_id)->page($page,$limit)->select();
- if($data->isEmpty()){
- return app('json')->success([]);
- }
- }elseif($status['status']=='-2'){
- $data=Db::name('store_order')->order('create_time','desc')->where('uid',$uid)->where('is_del','0')->where('paid',0)->where('mer_id',$mer_id)->page($page,$limit)->select();
- }elseif ($status['status']==3){
- $data=Db::name('store_order')->order('create_time','desc')->where('uid',$uid)->where('is_del','0')->where('mer_id',$mer_id)->where('status',3)->page($page,$limit)->select();
- }elseif($status['status']==0){
- $data=Db::name('store_order')->order('create_time','desc')->where('uid',$uid)->where('is_del','0')->where('mer_id',$mer_id)->where('status',0)->page($page,$limit)->select();
- }else{
- $data=Db::name('store_order')->order('create_time','desc')->where($where)->where('is_del','0')->where('uid',$uid)->where('paid',1)->where('mer_id',$mer_id)->page($page,$limit)->select();
- }
- if($data->isEmpty()){
- return app('json')->success([]);
- }
- $data=$data->toArray();
- foreach ($data as $k=>&$v){
- $goods_data=Db::name('store_order_product')
- ->alias('sop')
- ->leftJoin('store_product sp','sop.product_id=sp.product_id')
- ->where('order_id',$v['order_id'])
- ->field('sp.image,sp.store_name,sop.product_num,sop.product_price,sop.product_id')
- ->find();
- $v['product']=$goods_data;
- $v['orderProduct']=Db::name('store_order_product')->where('order_id',$v['order_id'])->select();
- }
- return app('json')->success($data);
- }
- //提现
- public function withdrawal()
- {
- $param=$this->request->param();
- $money=$param['money'];
- $uid=$this->request->uid();
- $extract_type=$param['extract_type'];
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- $userData = Db::name('user') -> where('uid',$uid) -> find();
- if($extract_type==2){
- if($userData['ali_user_id'] == '0' || $userData['ali_user_id'] == ''){
- return app('json')->success('未绑定支付宝账户');
- }
- }
- // $user=Db::name('user')->where('uid',$uid)->find();
- $eb_id=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- if(empty($eb_id)){
- return app('json')->success('未查询到用户信息');
- }
- if(bcsub($eb_id['wallet'],$money,2)<'0'){
- return app('json')->fail('提现失败,佣金不够');
- }
- // if($money>'200'){
- // return app('json')->fail('一次最高提现200');
- // }
- if (!$userData){
- return app('json')->fail('用户信息错误');
- }
- if($extract_type==2){
- $order_sn='Ali'.time().rand('111111111','999999999');
- }elseif ($extract_type==1){
- $order_sn='wx'.time().rand('111111111','999999999');
- }
- $service_money=bcmul($money,'0.06',2);
- // $money=bcsub($money,$service_money,2);
- $insert_data=[
- 'uid'=>$uid,
- 'real_name'=>$userData['nickname'],
- 'extract_type'=>$extract_type,
- 'extract_price'=>$money,
- 'type'=>1,
- 'order_sn'=>$order_sn,
- 'status'=>0,
- 'withdrawal_type'=>2,
- 'mer_id'=>$mer_id,
- 'service_money'=>$service_money
- ];
- if($extract_type==2){
- $insert_data['alipay_code']=$userData['account'];
- }elseif ($extract_type==1){
- $insert_data['wechat']=$userData['account'];
- }
- Db::name('user_extract')->insert($insert_data);
- $bill=[
- 'from_id'=>'0',
- 'number'=>$money,
- 'to_id'=>$eb_id['eb_id'],
- 'type'=>'2',
- 'order_no'=>$order_sn,
- 'remarks'=>'提现待审核',
- 'pm'=>2,
- 'status'=>1,
- 'pm2_msg'=>'提现',
- 'on_line'=>1,
- 'mer_id'=>$mer_id
- ];
- $this->eb_user_bill($bill);
- Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->dec('wallet',$money)->update();
- return app('json')->success('提交成功等待审核');
- }
- //团队订单
- public function order_lst()
- {
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- [$page,$limit] = $this->getPage();
- $uid=$this->request->uid();
- $click_id=$this->request->params(['click_id']);
- $type = $this -> request -> params(['type']);//默认线上订单
- if(empty($click_id) || $click_id['click_id']=='0'){
- return app('json')->fail('未查询到用户');
- }else{
- $click_id=$click_id['click_id'];
- }
- if($type['type'] == 1){
- $data=Db::name('store_order')->where('uid',$click_id)->page($page,$limit)->order('order_id','desc')->where('mer_id',$mer_id)->where('paid',1)->where('status','<>','-1')->field('order_id,uid,order_sn,create_time,total_price')->select();
- }elseif ($type['type']==2){
- $data = Db::name('order_merchant') -> where('uid',$click_id) ->page($page,$limit)->order('id','desc')->where('mer_id',$mer_id)->where('paid',1)->field('id as order_id,uid,out_trade_no as order_sn,create_time,money as total_price') ->select();
- }
- if($data->isEmpty()){
- return app('json')->success([]);
- }
- $data=$data->toArray();
- $eb_id=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- foreach ($data as $k=>&$v){
- if($type['type']==1){
- $bill=Db::name('entropy_barter_bill')->where('mer_id',$mer_id)->where('order_no',$v['order_sn'])->where('on_line',1)->where('to_id',$eb_id['eb_id'])->find();
- }else{
- $bill=Db::name('entropy_barter_bill')->where('mer_id',$mer_id)->where('order_no',$v['order_sn'])->where('on_line',2)->where('to_id',$eb_id['eb_id'])->find();
- }
- if($bill['type']==1){
- $v['msg']='团队奖励'.$bill['number'].'积分';
- }elseif ($bill['type']==2){
- $v['msg']='直推奖励'.$bill['number'].'佣金';
- }
- if($bill['status']==1){
- $v['status']='待确定';
- }elseif ($bill['status']==2){
- $v['status']='有效';
- }elseif ($bill['status']==3){
- $v['status']='已失效';
- }
- }
- return app('json')->success($data);
- }
- /**
- * 单笔转账接口
- */
- public function transfer()
- {
- $app_cert_path=dirname(__FILE__). '/../../../../extend/alipay/aop/cert/appCertPublicKey.crt';
- $alipay_cert_path=dirname(__FILE__). '/../../../../extend/alipay/aop/cert/alipayCertPublicKey.crt';
- $alipay_root_cert_path=dirname(__FILE__). '/../../../../extend/alipay/aop/cert/alipayRootCert.crt';
- $url = "https://openapi.alipay.com/gateway.do";
- $app_id="2021002194632049";
- $privateKey="MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDGxceDFVT6VTYClinyAdY4PxE6MadNYLZ3sbLOLV14e39kuu1lkKDBZ/KPRNruPlSPGdiRVe+L8v4rsVk6bthsS/vMk5aH1wQyt58/HvHmZ5QVo3U5UD7cgqqefTcRJjKhjjM1rU/OrOkOqyssaLRukW3jeKRlBccUgtaGsXXrbMxWYpzl1OMDhKRRUVxu3LTfqlMpHghOasQrgyD92q9wlUN7U6hBYzGUocO/N3sz97PZwptwWAW0r3CFdlLCpgnMr+xb/Zh8td1OKGl3wEghiGavgDDlc2+w/xtk1SZ3pJbnGAU+D+oyJ6r76po6vkyGIlLrKp/zQ50az7fObzgNAgMBAAECggEBAK60szERlMkaEAih92gQGTsCo5+keMnX0UjO1LvGv7rfwQ7GBVYZklGrjVRDTrHL8wJ70w+amptFDgVVMXncZzh4aG5c4heu8q+pGLyf9DlwnIWQT736O+YQqun2YGogSqwYkgYBuH2NGKKd66pytPPhutYN+WAZfesXPHrSizRJtZMfuZvvGzm6ZJLZ1LmhvkOuLrX4xrJGRs1nAwZOmOfi4MY5VASblfPj59fUim9hErocNaX4uiMVwmhQl2QuOM/EbTd1UkW+dkV/gyQMOFzpcfN+SEi+hdLN+JiR9TVEcwity6ihOG5+3X33GKzfY4WFxeHHUaqA0SQWSkKofMECgYEA5OF5Imtq8/6JjWJ0jvYCpUnj9742McGJZTWBoTn9Hp0d3bwyE3YbH8pBVJyvzlfPKB9TUjE2FzVZvQtxEu+ZxToccp/LPqlgITWNHCmEtzAgXW7ww2PafgDZJ2QRSyjLUeRIWSAkeilj64XMCEC/bEs/nb5nmUb2gnsNTvvpMLUCgYEA3lMMtaIZH1fMI4XMNaPFzeRiKc0FIcLEem/efnPetPuOCujIWQJ/x9cCDCcfqO59I1FXQuiC/E1dFvme2qs/H7h2bFu8RG0M/ZQWd9twg31Sh+R7gCQakFERag8HXc4AWfBGXCvMu1SmSovU49KecSLxYGOAUdp77j1GxtLiePkCgYAQjc45ExPVOd+w/iH4BQsD8Wgvju5Ugu7xBwGtK4iHIk36r5XfmnczwWkgOYTto6Qz/rAEDdMfspge+CjhebrhbOaJ08zbZ1ywijL+inIy3aQ5ncCEIUC4RE9wbehiSz0JWz1wVMbOnxe+/RpYrnYp2vdq7U6I430IyuWXhNjE0QKBgEtJUmd7oghEIgPxfiq37/b+HOPM4q0BGKnhkjW+JS+idAJru9SwjPbub2oQIZ+CS2wXUnZ86EZqKFjsZQflr7WdMLUXB5UgXKLOcCFcdSiB2t3b2JqXH0u5uCzzM+pnJSVPwXPa/TR+wOVDnu8bVr43OAgNCdouI4OUyo/vv/N5AoGATJaIvpsZ9v1zmhbtJbgPBM9dhD2PIp2ufZ7yvhGGzA02FqAbyAeVsI2d+W+uA6jJ1X87x27pQv//mFoFXStxX3/bhdgTWbUYEWobAhw1jBS1rMQfLuBGGI/LsHGhzau3U+59erC5sYhGgZKSdXDyjOduWQlPWAv6ufkNZ+I3FCU=";
- // 证书模式的测试
- $alipayConfig = new AlipayConfig();
- $alipayConfig->setAppId($app_id);
- $alipayConfig->setCharset("utf-8");
- $alipayConfig->setFormat("json");
- $alipayConfig->setSignType("RSA2");
- $alipayConfig->setServerUrl($url);
- $alipayConfig->setPrivateKey($privateKey);
- // content 和 path 只需要设置一个即可
- $alipayConfig->setAppCertPath($app_cert_path);
- //$alipayConfig->setAppCertContent()
- $alipayConfig->setAlipayPublicCertPath($alipay_cert_path);
- //$alipayConfig->setAlipayPublicCertContent()
- $alipayConfig->setRootCertPath($alipay_root_cert_path);
- //$alipayConfig->setRootCertContent()
- $aop = new AopCertClient($alipayConfig);
- $aop->isCheckAlipayPublicCert = true;
- $parameter = "{".
- "\"out_biz_no\":\"".rand(11111111,99999999)."\",".
- "\"remark\":\"测试\",".
- // "\"business_params\"":.json_encode(['payer_show_name_use_alias'=>'北京天地博爱网络科技有限公司']).
- "\"business_params\":\"{'payer_show_name_use_alias':'北京天地博爱网络科技有限公司'}\",".
- "\"biz_scene\":\"DIRECT_TRANSFER\",".
- "\"payee_info\":{".
- "\"identity\":\"3089507753@qq.com\",".
- "\"identity_type\":\"ALIPAY_LOGON_ID\",".
- "\"name\":\"唐世伟\"".
- "},".
- "\"trans_amount\":\"0.10\",".
- "\"product_code\":\"TRANS_ACCOUNT_NO_PWD\",".
- "\"order_title\":\"提现测试\"".
- "}";
- Db::name('log')->insert(['data'=>$parameter]);
- $request = new AlipayFundTransUniTransferRequest ();
- $request->setBizContent($parameter);
- $response = $aop->execute($request);
- Db::name('log')->insert(['data'=>'【返回结果】'.$response]);
- $response=json_decode($response,true);
- if($response['alipay_fund_trans_uni_transfer_response']['code']=='10000'){
- return app('json')->success('提现成功');
- }else{
- return app('json')->fail($response['alipay_fund_trans_uni_transfer_response']['sub_msg']);
- }
- // $this->aop = new AopClient ();
- // //配置参数
- // $this->aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
- // $this->aop->appId = '2021002194632049';
- // $this->aop->rsaPrivateKey = 'MIIEpAIBAAKCAQEArqx2duK0hD6gC4vxHsblNi8zFI+bObJmMpSdeFpgK8TDNe9BHGR/YZmNzWKLGQMNgVXEplEAsA6slQkXxzNstRobbsr+TRxdbE3PDo3+WnfzvNcs7IwW+fjY53W81BXttpuvVIcNqXVREUC4gfyUufq1J042tpr5HtzggJKuDLn3q80HtXNaLYqZxGYQrTLaabvh4mco1YWCbYOsPd1b6jKRA9TqaeQilC9cOHcleMNQGjet4p4eqEIGnhjEudslMM/heYtKFP4h38KTWmZfgMFPZPnDuGAgNvOOOpp6sG9waRkRSkOkakGPgxUlIUazSHAHUuO1iAltg+F5cA/OowIDAQABAoIBAQCDNrza+9xdB2pUojBkTUb8GCLIDESv5+rLjkZolYNu/aUjC/KecIQb/iy+n4scI+XuRU6vHWRl3PAaGLWLB39e4BjBdq3noSow5JZpOZNbxIYNUprFq0rLRvsxjIlnzH1A0ty3o6hIpv9Z9YNk6ieTOdkBiMijDfGcFJJ1IzqqBX9fOvvgWS/lDOrmVV2JN4W9AHJVvc/f4geKoRJICnG8vsHX6rxvRwQh5Rvmg4aqVsj8JGKT+CmA9p2S7TZlFFi43IKPk/2ij1Kubu8rMf52kTlonFmtjbakP5WK8KOQOcU616uj9E3QMiTaHn1+mVZYW5ZDRwywYTK9y9Xh08GZAoGBANcHXR1Te7rgvnclM+RB5n1ud90TcptufOVeCAPvx9Co6yuAV1U1EduOZ5opWVNPGN4uSX87/1/RP7WVMdQAJqGG3HOINL+HsJLX32y2wdppCefL+d8sbHVuYXeQHeu/zaprAXW8CuBtxGIJadz+mQwMsoupMhx24+f6gaVz53ltAoGBAM/0qm4p9+mF8N+ScxCPUXbxN+gCjcrc0Zx1hNtOSH6WPRz1xx56/M5PkRN/cbNpKmIugPahMqgEO4zE7zDm6O0HpztmBHa0vA6Tu3TV9kPpyWLl0fBnM5mNC5zxNI062XUj4DG2RbGktAWDGEfNXPsq8dFNTdzQsts4yuGy9u5PAoGAE9+JWpGBqPbmg4p7rkfs7oDMMTF/8R+YCXbUVNDPbdh+y6lz6NsbyGfz6UqTB+ESkk5C2rCH3KoxMi4UydwttdYJ/9+ByIXY6ulqq9iEOBRnJvYyJM8tQvktpug567TxZCO5odD8TFu4v7rQ/uzE5lkyEzhS+lB+pc0AOHNq3E0CgYA2UtOys4PvnO2vebJVQRsm1xyjnwcrV0Pqe0iZgXmul9CfIBVEARzJSD+9uC0bkP1haISH6NQyz+g+fbN+MtPmF3m4Ko4/9DasGCt/+eS7GPdivmZ5RnxUQGQoO1pfCmCEGTsXwWWzYjMkvXo6R4tikXVaF7efV2VhnxRgoT+gQQKBgQCknz2HhZryDYiAwi88WueQjDUumr2F1Iywjt8nYOhI3ryuO/kiqAI8E/hPbdpvo0L52fdqgeyAOkp7ubQ0pNOgfZv8SQmN3JIfGqcgaLgskg5rRQyQywGgsdCUpJEGklK0uJP6vXjVBn/WceHMXDRusuwLhHa+Aq3yF6Z3hRSpKw==';//私钥
- // $this->aop->alipayrsaPublicKey='MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuUb+0sJSNXjWiG0VJIPzn55+18af/fubYMpRLlreu34ewMgLx1zpCNpB3wrA+dylfWPMAm8PzvKnakByB+VJ/LMNhWHmF8Qkdo4astAikjlI4TMQCK/G384NzrtjHR4DGCDM5CMVt1xw5noF7kNBMYIvgDfhMCYmygdlIjuVdIlVEoQKOsT0RaNMleES0aZvbjvBGkGM0dsetqUExSjid9BF1NAO2ET+J3XMxCtMgCUVmFUvxsCKe6Rapa1/Lk3rzIeG6CRpoabuYfPM9E+3y3f3luSOMXLfH9lOSW1RA8qrF+Ms1RZv8gmzUnbyrPLmmZPmmN/Qs6DGzDVg73fpSwIDAQAB';//APP公钥
- // $this->aop->apiVersion = '1.0';
- // $this->aop->signType = 'RSA2';
- // $this->aop->postCharset='UTF-8';
- // $this->aop->format='json';
- // //导入请求
- // $request = new AlipayFundTransToaccountTransferRequest ();
- // $request->setBizContent("{" .
- // "\"out_biz_no\":\"".rand(1111111,99999999999999)."\"," .//商户生成订单号
- // "\"payee_type\":\"ALIPAY_LOGONID\"," .//收款方支付宝账号类型
- // "\"payee_account\":\"3089507753@qq.com\"," .//收款方账号
- // "\"amount\":\"0.01\"," .//总金额
- // "\"payer_show_name\":\"北京天地博爱科技有限公司\"," .//付款方账户
- // "\"payee_real_name\":\"唐世伟\"," .//收款方姓名
- // "\"remark\":\"测试转账\"" .//转账备注
- // "}");
- // $result = $this->aop->execute ( $request);
- //
- // dd($result);die;
- // $responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
- // $resultCode = $result->$responseNode->code;
- // if(!empty($resultCode)&&$resultCode == 10000){
- // return true;
- // } else {
- // return false;
- // }
- }
- /**
- * 查单接口
- */
- public function query($order_number)
- {
- $this->aop = new AopClient ();
- //配置参数
- $this->init_aop_config();
- $request = new \AlipayFundTransOrderQueryRequest ();
- $request->setBizContent("{" .
- "\"out_biz_no\":\"".$order_number."\"" .
- " }");
- $result = $this->aop->execute ( $request);
- $responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
- $resultCode = $result->$responseNode->code;
- if(!empty($resultCode)&&$resultCode == 10000){
- $res_arr['code'] = '00';
- $res_arr['data'] = $result;
- } else {
- $res_arr['code'] = '-1';
- }
- return $res_arr;
- }
- /**
- * @return mixed
- * @throws \think\db\exception\DataNotFoundException
- * @throws \think\db\exception\DbException
- * @throws \think\db\exception\ModelNotFoundException
- * 分销中心
- */
- public function my_distributor()
- {
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- $uid= $uid=$this->request->uid();
- $user_data=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->join('user u','u.uid=ebu.uid')
- ->where('ebu.uid',$uid)
- ->field('ebu.*,u.nickname,u.avatar')
- ->find();
- if($user_data['avatar']=='https://cdn.bjtdba.com/chuxubao/static/assets/yhc_default_avatar.png'){
- $user_data['avatar']=Db::name('user_account')->where('type',1)->where('uid',$uid)->value('avater');
- if(empty($user_data['avatar'])){
- $user_data['avatar']=Db::name('user_account')->where('type',2)->where('uid',$uid)->value('avater');
- }
- }
- $user_data['top_name']=Db::name('entropy_barter_user_'.$mer_id)
- ->alias('ebu')
- ->leftJoin('user u','u.uid=ebu.uid')
- ->where('ebu.eb_id',$user_data['top_eb_id'])
- ->value('u.nickname')??'无';
- //已提现佣金 包含未到账
- $withdrawnCash=Db::name('entropy_barter_bill')->where('mer_id',$mer_id)->where('type',2)->where('to_id',$user_data['eb_id'])->where('status','2')->where('pm','2')->where('status','<>',3)->where('pm2_msg','提现')->sum('number');
- //未结算佣金
- $unsettledCommission=Db::name('entropy_barter_bill')
- ->where('mer_id',$mer_id)
- ->where('type',2)
- ->where('to_id',$user_data['eb_id'])
- ->where('pm',1)
- ->where('status',1)
- ->sum('number');
- //未结算积分
- $unsettled_integral=Db::name('entropy_barter_bill')
- ->where('mer_id',$mer_id)
- ->where('type',1)
- ->where('to_id',$user_data['eb_id'])
- ->where('pm',1)
- ->where('status',1)
- ->sum('number');
- //分销佣金
- $distributionCommission=bcadd($user_data['wallet'],$unsettledCommission,2);
- //我的团队人数 一级 二级
- $my_team=Db::name('entropy_barter_user_'.$mer_id)->where('top_eb_id',$user_data['eb_id'])->column('eb_id');
- $my_team__number=Db::name('entropy_barter_user_'.$mer_id)->whereIn('top_eb_id',$my_team)->count('eb_id');
- $my_team__number+=Db::name('entropy_barter_user_'.$mer_id)->where('top_eb_id',$user_data['eb_id'])->count('eb_id');
- $data=[
- 'user'=>$user_data,
- 'withdrawnCash'=>bcadd($withdrawnCash,0,2),
- 'unsettledCommission'=>bcadd($unsettledCommission,0,2),
- 'distributionCommission'=>bcadd($distributionCommission,0,2),
- 'my_team__number'=>$my_team__number,
- 'unsettled_integral'=>$unsettled_integral
- ];
- return app('json')->success($data);
- }
- //商品列表
- public function product_lst()
- {
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- [$page,$limit] = $this->getPage();
- $cate_id=$this->request->params(['cate_id']);
- $key=$this->request->params(['key']);
- if(!empty($cate_id['cate_id'])) {
- if(empty($key['key'])){
- $data=Db::name('store_product_cate')->where('mer_cate_id',$cate_id['cate_id'])->where('mer_id',$mer_id)->column('product_id');
- $data=Db::name('store_product')
- ->where('mer_id',$mer_id)
- ->where('is_show', 1)
- ->where('is_used ', 1)
- ->where('stock ', '>', 0)
- ->where('product_id','in',$data)
- ->page($page,$limit)
- ->select();
- }else{
- $data=Db::name('store_product_cate')->where('mer_cate_id',$cate_id['cate_id'])->where('mer_id',$mer_id)->column('product_id');
- $data=Db::name('store_product')
- ->where('mer_id',$mer_id)
- ->where('is_show', 1)
- ->whereLike('store_name','%'.$key['key'].'%')
- ->where('is_used ', 1)
- ->where('stock ', '>', 0)
- ->where('product_id','in',$data)
- ->page($page,$limit)
- ->select();
- }
- }else{
- if(empty($key['key'])){
- $data=Db::name('store_product')
- ->where('mer_id',$mer_id)
- ->where('is_show', 1)
- ->where('is_used ', 1)
- ->where('stock ', '>', 0)
- ->page($page,$limit)
- ->select();
- }else{
- $data=Db::name('store_product')
- ->where('mer_id',$mer_id)
- ->where('is_show', 1)
- ->where('is_used ', 1)
- ->where('stock ', '>', 0)
- ->whereLike('store_name','%'.$key['key'].'%')
- ->page($page,$limit)
- ->select();
- }
- }
- if($data->isEmpty()){
- return app('json')->fail('暂无数据');
- }
- $data=$data->toArray();
- foreach($data as $k=>&$v){
- if($v['mer_id']==236){
- $v['pension']=bcmul($v['price'],0.10,2);
- }else{
- $v['pension']=bcmul($v['price'],0.02,2);
- }
- }
- return app('json')->success($data);
- }
- /**
- * @return mixed
- * @throws \think\db\exception\DataNotFoundException
- * @throws \think\db\exception\DbException
- * @throws \think\db\exception\ModelNotFoundException
- * 提现 记录
- */
- public function withdrawal_details()
- {
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- $uid= $uid=$this->request->uid();
- $user=Db::name('entropy_barter_user_'.$mer_id)->where('uid',$uid)->find();
- if(empty($user)){
- return app('json')->fail('暂无用户信息');
- }
- $data=Db::name('entropy_barter_bill')->where('mer_id',$mer_id)->where('from_id',$user['eb_id'])->where('pm','2')->where('pm2_msg','提现')
- ->field('ctime,remarks,number,status')
- ->select();
- if($data->isEmpty()){
- return app('json')->fail('暂无提现记录');
- }
- $data=$data->toArray();
- foreach ($data as $k=>&$v){
- $v['ctime']=date('Y-m-d H:i:s',$v['ctime']);
- switch ($v['status']){
- case 1:
- $v['status']='提现中';
- break;
- case 2:
- $v['status']='已提现';
- break;
- case 3:
- $v['status']='已拒绝';
- break;
- }
- }
- return app('json')->success($data);
- }
- /**
- * @return mixed
- * @throws \think\db\exception\DataNotFoundException
- * @throws \think\db\exception\DbException
- * @throws \think\db\exception\ModelNotFoundException
- * 商户分类
- */
- public function category()
- {
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }else{
- $mer_id=$mer_id['mer_id'];
- }
- $cate=Db::name('store_category')->where('pid',0)->where('mer_id',$mer_id)->field('cate_name,store_category_id')->select();
- if ($cate->isEmpty()){
- return app('json')->fail('此商户没有分类');
- }
- $cate=$cate->toArray();
- return app('json')->success($cate);
- }
- public function order_lst_yanglao()
- {
- $uid=$this->request->uid();
- $mer_id=$this->request->params(['mer_id']);
- if(empty($mer_id['mer_id'])){
- return app('json')->fail('商户ID未传');
- }
- [$page,$limit] = $this->getPage();
- $data=Db::name('store_order')->where('is_del','0')->where('paid',1)->page($page,$limit)->where('mer_id',$mer_id['mer_id'])->where('status','in','0,1,2,3')->where('uid',$uid)->select();
- if($data->isEmpty()){
- return app('json')->success([]);
- }
- $data=$data->toArray();
- foreach ($data as $k=>&$v){
- $goods_data=Db::name('store_order_product')
- ->alias('sop')
- ->leftJoin('store_product sp','sop.product_id=sp.product_id')
- ->where('order_id',$v['order_id'])
- ->field('sp.image,sp.store_name,sop.product_num,sop.product_price,sop.product_id')
- ->find();
- $v['product']=$goods_data;
- $v['pension']=Db::name('user_bill')->where('uid',$uid)->where('source','0')->where('type_shop','0')->where(['link_id'=>$v['order_id']])->value('number');
- }
- return app('json')->success($data);
- }
- public function my_activation_code()
- {
- [$page, $limit] = $this->getPage();
- $uid=$this->request->uid();
- $code_data=Db::name('activation_code')
- ->alias('ac')
- ->where('ac.uid',$uid)
- ->where('ac.status','>','0')
- ->field('ac.code,ac.status as acstatus,ac.ctime as acctime,ac.utime as acutime,ac.uid as acuid,ac.id as acid,ac.use_uid')
- ->page($page,$limit)
- ->select()->toArray();
- foreach ($code_data as $k=>&$v){
- $v['use_user']=Db::name('user')->where('uid',$v['acuid'])->field('avatar,account,nickname')->find();
- }
- return app('json')->success($code_data);
- }
- //国腾名医单独处理
- public function pay_orrder_290($order,$type)
- {
- $uid=$order['uid'];
- $table_name='entropy_barter_user_290';
- $order=Db::name('store_order')->where('order_sn',$order['order_no'])->find();
- $order['order_no']=$order['order_sn'];
- $product=DB::name('store_cart')->where('cart_id',$order['cart_id'])->value('product_id');
- $imUserData=Db::name($table_name)->where('uid',$uid)->find();
- $top_data=Db::name($table_name)->where('eb_id',$imUserData['top_eb_id'])->find();
- if ($product=='362'||$product=='364'||$product=='363') {
- Db::name('store_order')->where('order_sn',$order['order_no'])->update(['is_split_to_tomorrow'=>1,'status'=>3]);
- if ($product == '362') {
- Db::name($table_name)->where('eb_id', $imUserData['eb_id'])->update(['type' => 1, 'pay_goods_type' => 1,'pay_status'=>1]);
- } else {
- Db::name($table_name)->where('eb_id', $imUserData['eb_id'])->update(['type' => 2, 'pay_goods_type' => 2,'pay_status'=>1]);
- }
- }
- /**
- * 奖励模式开始
- */
- Db::name('user_bill')->where('order_sn',$order['order_no'])->where('uid',$order['uid'])->where('source',0)->update(['status'=>1]);
- $order['money']=$order['pay_price'];
- $eb_one=$this->one_jiangli($top_data,$order,$table_name,$type);
- if(!$eb_one){
- if($imUserData['pay_status']!=1){
- $this->take_290($order['order_no'],1);
- }else{
- Db::name('log')->insert(['data'=>'已购买过合伙人商品或者创始人商品']);
- }
- return false;
- }
- //one_jiangli 推荐奖给了"它"
- $eb_two=$this->two_jiangli($top_data,$order,$table_name,$type);
- if(!$eb_two){
- if($imUserData['pay_status']!=1){
- $this->take_290($order['order_no'],1);
- }else{
- Db::name('log')->insert(['data'=>'已购买过合伙人商品或者创始人商品']);
- }
- return false;
- }
- //two_jiangli 推荐奖给了"它"
- $eb_three=$this->three_jiangli($eb_two,$order,$table_name,$type);
- if(!$eb_three){
- if($imUserData['pay_status']!=1){
- $this->take_290($order['order_no'],1);
- }else{
- Db::name('log')->insert(['data'=>'已购买过合伙人商品或者创始人商品']);
- }
- return false;
- }
- //three_jiangli 推荐奖给了"它"
- if($eb_one['eb_id']==$eb_two['eb_id']){
- $eb_four=$this->four_jiangli($eb_three,$order,$table_name,$type);
- }
- /**
- * 奖励模式结束
- */
- }
- //推荐奖
- public function one_jiangli($top_data,$order,$table_name,$type)
- {
- // dd($top_data['pay_status']==1&&$top_data['type']>2);
- if($top_data['pay_status']==1&&$top_data['type']>2){
- $proportion=$this->reward_proportion($top_data['type']);
- $money=bcmul($order['money'],"0.3",2);
- $msg=$proportion['msg'].':推荐奖励';
- $bill_data=[
- 'from_id'=>0,
- 'to_id'=>$top_data['eb_id'],
- 'type'=>2,
- 'order_no'=>$order['order_no'],
- 'remarks'=>$msg,
- 'ctime'=>time(),
- 'number'=>$money,//商业合伙人或联合创始人奖励为30%
- 'pm'=>1,
- 'status'=>'2',
- 'on_line'=>$type,
- 'mer_id'=>290,
- 'commission_type'=>1,
- 'commission_scale'=>30,
- 'to_user_type'=>1,
- 'to_user_type_1'=>$proportion['type'],
- ];
- //增加账单记录
- $this->eb_user_bill($bill_data);
- Db::name($table_name)->where('eb_id',$top_data['eb_id'])->inc('wallet',$money)->update();
- Db::name($table_name)->where('eb_id',$top_data['eb_id'])->inc('ranking_money',$money)->update();
- $data=[
- 'type'=>$top_data['type'],
- 'eb_id'=>$top_data['eb_id']
- ];
- }
- else{
- // if($top_data['type']>=1){
- // $money=bcmul($order['money'],"0.3",2);
- // Db::name($table_name)->where('eb_id',$top_data['eb_id'])->inc('precipitate',$money)->update();
- // $data=[
- // 'type'=>$top_data['type'],
- // 'eb_id'=>$top_data['eb_id']
- // ];
- // }
- $data=[12313];
- }
- return $data;
- }
- //一级奖励
- public function two_jiangli($top_data,$order,$table_name,$type)
- {
- // dd($top_data['type']>2);
- if($top_data['type']>2){
- $proportion=$this->reward_proportion($top_data['type']);
- $money=bcmul($order['money'],$proportion['proportion'],2);
- $msg=$proportion['msg'].':管理奖励';
- $bill_data=[
- 'from_id'=>0,
- 'to_id'=>$top_data['eb_id'],
- 'type'=>2,
- 'order_no'=>$order['order_no'],
- 'remarks'=>$msg,
- 'ctime'=>time(),
- 'number'=>$money,//商业合伙人或联合创始人奖励为30%
- 'pm'=>1,
- 'status'=>'2',
- 'on_line'=>$type,
- 'mer_id'=>290,
- 'commission_type'=>1,
- 'commission_scale'=>$proportion['proportion']*100,
- 'to_user_type'=>2,
- 'to_user_type_1'=>$proportion['type'],
- ];
- //增加账单记录
- $this->eb_user_bill($bill_data);
- Db::name($table_name)->where('eb_id',$top_data['eb_id'])->inc('wallet',$money)->update();
- Db::name($table_name)->where('eb_id',$top_data['eb_id'])->inc('ranking_money',$money)->update();
- $data=[
- 'eb_id'=>$top_data['eb_id'],
- 'type'=>$top_data['type']
- ];
- }else{
- $top_1_id=$this->recursion_top($top_data['top_eb_id'],'0');
- if($top_1_id==0){
- return false;
- }
- $top_1_data=Db::name($table_name)->where('eb_id',$top_1_id)->find();
- $proportion=$this->reward_proportion($top_1_data['type']);
- $money=bcmul($order['money'],$proportion['proportion'],2);
- $msg=$proportion['msg'].':管理奖励';
- $bill_data=[
- 'from_id'=>0,
- 'to_id'=>$top_1_data['eb_id'],
- 'type'=>2,
- 'order_no'=>$order['order_no'],
- 'remarks'=>$msg,
- 'ctime'=>time(),
- 'number'=>$money,//商业合伙人或联合创始人奖励为30%
- 'pm'=>1,
- 'status'=>'2',
- 'on_line'=>$type,
- 'mer_id'=>290,
- 'commission_type'=>1,
- 'commission_scale'=>$proportion['proportion']*100,
- 'to_user_type'=>2,
- 'to_user_type_1'=>$proportion['type'],
- ];
- //增加账单记录
- $this->eb_user_bill($bill_data);
- Db::name($table_name)->where('eb_id',$top_1_data['eb_id'])->inc('wallet',$money)->update();
- Db::name($table_name)->where('eb_id',$top_1_data['eb_id'])->inc('ranking_money',$money)->update();
- $data=[
- 'type'=>$top_1_data['type'],
- 'eb_id'=>$top_1_data['eb_id']
- ];
- }
- return $data;
- }
- //二级奖励
- public function three_jiangli($top_data,$order,$table_name,$type)
- {
- $top=$top_data;
- $top_data=Db::name($table_name)->where('eb_id',$top['eb_id'])->find();
- $top_top_data=Db::name($table_name)->where('eb_id',$top_data['top_eb_id'])->find();
- //// dd($top_top_data>2);
- // dd($top['type']==$top_top_data['type']||$top['type']>$top_top_data['type']);
- if($top_top_data['type']>2){
- if($top['type']==$top_top_data['type']||$top['type']>$top_top_data['type']){
- $proportion=$this->reward_proportion($top_top_data['type']);
- $proportion['proportion']='0.02';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,3);
- }elseif($top['type']<$top_top_data['type']){
- if($top_top_data['type']==4){
- $proportion=$this->reward_proportion($top_top_data['type']);
- $proportion['proportion']='0.06';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,3);
- }elseif($top_top_data['type']==5){
- if($top['type']==3){
- $proportion=$this->reward_proportion($top_top_data['type']);
- $proportion['proportion']='15';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,3);
- return false;
- }else{
- $proportion=$this->reward_proportion($top_top_data['type']);
- $proportion['proportion']='0.09';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,3);
- }
- }elseif($top_top_data['type']==3){
- $proportion=$this->reward_proportion($top_top_data['type']);
- $proportion['proportion']='0.03';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,3);
- }
- }
- $data=[
- 'eb_id'=>$top_top_data['eb_id'],
- 'type'=>$top_top_data['type']
- ];
- }else{
- $top_1_id=$this->recursion_top($top_data['top_eb_id'],'0');
- if($top_1_id==0){
- return false;
- }
- $top_1_data=Db::name($table_name)->where('eb_id',$top_1_id)->find();
- if($top['type']==$top_1_data['type']||$top['type']>$top_1_data['type']){
- $proportion=$this->reward_proportion($top_1_data['type']);
- $proportion['proportion']='0.02';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_1_data['eb_id'],$table_name,$proportion,3);
- }elseif($top['type']<$top_1_data['type']){
- if($top_1_data['type']==4){
- $proportion=$this->reward_proportion($top_1_data['type']);
- $proportion['proportion']='0.06';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_1_data['eb_id'],$table_name,$proportion,3);
- }elseif($top_1_data['type']==5){
- $proportion=$this->reward_proportion($top_1_data['type']);
- $proportion['proportion']='0.09';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_1_data['eb_id'],$table_name,$proportion,3);
- }elseif($top_1_data['type']==3){
- $proportion=$this->reward_proportion($top_1_data['type']);
- $proportion['proportion']='0.02';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,3);
- }
- }
- $data=[
- 'eb_id'=>$top_1_data['eb_id'],
- 'type'=>$top_1_data['type']
- ];
- }
- return $data;
- }
- //三级奖励
- public function four_jiangli($top_data,$order,$table_name,$type)
- {
- $top=$top_data;
- $top_data=Db::name($table_name)->where('eb_id',$top['eb_id'])->find();
- $top_top_data=Db::name($table_name)->where('eb_id',$top_data['top_eb_id'])->find();
- if(!$top_top_data){
- return false;
- }
- if($top_top_data['type']>2){
- if($top['type']<$top_top_data['type']){
- if($top_top_data['type']==4){
- $proportion=$this->reward_proportion($type);
- $proportion['proportion']='0.06';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,4);
- }elseif($top_top_data['type']==5){
- $proportion=$this->reward_proportion($type);
- $proportion['proportion']='0.09';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,4);
- }elseif($top_top_data['type']==3){
- $proportion=$this->reward_proportion($type);
- $proportion['proportion']='0.03';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_top_data['eb_id'],$table_name,$proportion,4);
- }
- }
- $data=[
- 'eb_id'=>$top_top_data['eb_id'],
- 'type'=>$top_top_data['type']
- ];
- }else{
- $top_1_id=$this->recursion_top($top_data['top_eb_id'],'0');
- if($top_1_id==0){
- return false;
- }
- $top_1_data=Db::name($table_name)->where('eb_id',$top_1_id)->find();
- if($top['type']<$top_1_data['type']){
- if($top_1_data['type']==4){
- $proportion=$this->reward_proportion($top_1_data['type']);
- $proportion['proportion']='0.06';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_1_data['eb_id'],$table_name,$proportion,4);
- $data=[
- 'eb_id'=>$top_1_data['eb_id'],
- 'type'=>$top_1_data['type']
- ];
- }elseif($top_1_data['type']==5){
- $proportion=$this->reward_proportion($top_1_data['type']);
- $proportion['proportion']='0.09';
- $this->jiangli_cl($type,$order['money'],$order['order_no'],$top_1_data['eb_id'],$table_name,$proportion,4);
- $data=[
- 'eb_id'=>$top_1_data['eb_id'],
- 'type'=>$top_1_data['type']
- ];
- }else{
- return false;
- }
- }else{
- return false;
- }
- }
- return $data;
- }
- public function jiangli_cl($type,$money,$order_no,$eb_id,$table_name,$proportion,$to_user_type)
- {
- $money=bcmul($money,$proportion['proportion'],2);
- $msg=$proportion['msg'].':管理奖励';
- $bill_data=[
- 'from_id'=>0,
- 'to_id'=>$eb_id,
- 'type'=>2,
- 'order_no'=>$order_no,
- 'remarks'=>$msg,
- 'ctime'=>time(),
- 'number'=>$money,//商业合伙人或联合创始人奖励为30%
- 'pm'=>1,
- 'status'=>'2',
- 'on_line'=>$type,
- 'mer_id'=>290,
- 'commission_type'=>1,
- 'commission_scale'=>$proportion['proportion']*100,
- 'to_user_type'=>$to_user_type,
- 'to_user_type_1'=>$proportion['type'],
- ];
- // dd($bill_data);
- //增加账单记录
- $this->eb_user_bill($bill_data);
- Db::name($table_name)->where('eb_id',$eb_id)->inc('wallet',$money)->update();
- Db::name($table_name)->where('eb_id',$eb_id)->inc('ranking_money',$money)->update();
- }
- //获取奖励比例
- public function reward_proportion($type)
- {
- switch ($type){
- case '3':
- $proportion=[
- "proportion"=>'0.03',
- 'msg'=>'经理',
- 'type'=>3,
- ];
- break;
- case '4':
- $proportion=[
- "proportion"=>'0.09',
- 'msg'=>'总监',
- 'type'=>4,
- ];
- break;
- case '5':
- $proportion=[
- "proportion"=>'0.18',
- 'msg'=>'总裁',
- 'type'=>5,
- ];
- break;
- default:
- case '2':
- case '1':
- $proportion=[
- "proportion"=>'0',
- 'msg'=>'其它',
- 'type'=>0,
- ];
- }
- return $proportion;
- }
- //国腾名医确认收货单独处理
- public function take_290($order_no,$type=2)
- {
- Db::name('log')->insert(['data'=>'290进来了5']);
- if($type==1){
- $store_table_name='store_order';
- $eb_table_name='entropy_barter_user_290';
- $orde_data=Db::name($store_table_name)->where('order_sn',$order_no)->find();
- $eb_data=Db::name($eb_table_name)->where('uid',$orde_data['uid'])->find();
- // Db::name('user_bill')->where('order_sn',$order_no)->where('uid',$orde_data['uid'])->where('source',0)->update(['status'=>1]);
- // $mer_id=Db::name('store_order')->where('order_sn',$order_no)->value('mer_id');
- // $data=Db::name('entropy_barter_bill')->where('mer_id',$mer_id)->where('order_no',$order_no)->select();
- // foreach ($data as $k=>$v){
- // if($v['status']=='1'){
- // if($v['type']==2){
- // Db::name($eb_table_name)->where('eb_id',$v['to_id'])->inc('wallet',$v['number'])->update();
- // Db::name($eb_table_name)->where('eb_id',$v['to_id'])->dec('integral',$v['number'])->update();
- // Db::name('entropy_barter_bill')->where('id',$v['id'])->update(['status'=>2]);
- // }elseif ($v['type']==1){
- // Db::name($eb_table_name)->where('eb_id',$v['to_id'])->inc('integral',$v['number'])->update();
- // Db::name('entropy_barter_bill')->where('id',$v['id'])->update(['status'=>2]);
- // }
- // }
- // }
- //特殊的地方开始处理了
- //如果是特殊商品可以接着执行
- $product_id=Db::name('store_cart')->where('cart_id',$orde_data['cart_id'])->value('product_id');
- if($product_id==''){
- return '';
- }elseif ($product_id=='362'||$product_id=='364'||$product_id=='363'){
- // Db::name('store_order')->where('order_sn',$order_no)->update(['is_split_to_tomorrow'=>1,'status'=>3]);
- //查找上级是否可升级 $eb_data['top_eb_id']--上级ID
- // if($product_id=='362'){
- // Db::name($eb_table_name)->where('eb_id',$eb_data['eb_id'])->update(['type'=>2,'pay_goods_type'=>2]);
- // }else{
- // Db::name($eb_table_name)->where('eb_id',$eb_data['eb_id'])->update(['type'=>1]);
- //
- // }
- $top_data=Db::name($eb_table_name)->where('eb_id',$eb_data['top_eb_id'])->find();
- if($top_data['type']!=0){
- Db::name('log')->insert(['data'=>'上级是会员']);
- $this->recursion($top_data['eb_id']);
- }else{
- Db::name('log')->insert(['data'=>'上级不是会员'.$top_data['eb_id']]);
- }
- }
- }
- }
- public function recursion($eb_id)
- {
- try {
- $eb_table_name='entropy_barter_user_290';//1111
- $eb_data=Db::name($eb_table_name)->where('eb_id',$eb_id)->find();
- if($eb_data['type']==1){//一和二是同级别
- $eb_data['type']=2;
- }
- if($eb_data['type']==0){
- return '';
- }
- Db::name('guoteng_famous_doctor_relation')->insert(['uid'=>$eb_data['uid'],'type'=>$eb_data['type'],'create_time'=>date('Y-m-d H:i:s')]);
- $top_upgrade_num=Db::name('guoteng_famous_doctor_relation')->where('type',$eb_data['type'])->where('uid',$eb_data['uid'])->count('id');
- if($top_upgrade_num>=3){//如果该等级的数量大于3则升级
- if($eb_data['type']==5){
- return '已达到最高级别';
- }
- Db::name($eb_table_name)->where('uid',$eb_data['uid'])->update(['type'=>$eb_data['type']+1]);
- if($eb_data['type']+1==3){
- // $money=Db::name($eb_table_name)->where('uid',$eb_data['uid'])->value('precipitate');
- $money=systemConfig('manager_reward');
- $bill_data=[
- 'from_id'=>0,
- 'to_id'=>$eb_data['eb_id'],
- 'type'=>2,
- 'order_no'=>'0000000000000000',
- 'remarks'=>'升级经理奖励',
- 'ctime'=>time(),
- 'number'=>$money,//商业合伙人或联合创始人奖励为30%
- 'pm'=>1,
- 'status'=>'2',
- 'on_line'=>1,
- 'mer_id'=>290,
- 'commission_type'=>1,
- 'commission_scale'=>0,
- ];
- //增加账单记录
- $this->eb_user_bill($bill_data);
- Db::name($eb_table_name)->where('eb_id',$eb_data['eb_id'])->inc('wallet',$money)->update();
- Db::name($eb_table_name)->where('eb_id',$eb_data['eb_id'])->inc('ranking_money',$money)->update();
- }
- if($eb_data['top_eb_id']!=0){
- $this->recursion($eb_data['top_eb_id']);
- }else{
- return '成功1';
- }
- }else{
- return '小于3';
- }
- return '成功2';
- }catch (\Exception $e) {
- Db::name('log')->insert(['data'=>'订单支付出错:'.$e->getFile().':'.$e->getLine().'【'.$e->getMessage().'】']);
- }
- }
- //提现手续费
- public function withdrawal_service()
- {
- $data=$param=$this->request->param();
- $money=$data['money']??'';
- if($money==''){
- return app('json')->fail('金额错误');
- }
- if($money=='.'){
- return app('json')->fail('金额类型错误');
- }
- if( $this->source =='yhc') {
- $yhc_withdrawal_rate=merchantConfig($this->merId,'yhc_withdrawal_rate');
- $service_money=bcmul($money, $yhc_withdrawal_rate/100,2);
- $money=bcsub($money,$service_money,2);
- $service=$yhc_withdrawal_rate.'%';
- }else{
- $service_money=bcmul($money,'0.06',2);
- $money=bcsub($money,$service_money,2);
- $service='6%';
- }
- return app('json')->success(['service_money'=>$service_money,'money'=>$money,'service'=>$service]);
- }
- public function get_mp_access_token()
- {
- $access_token = Cache::get('wx9082e5ac2fdb513f1_mp_access_token');
- if ($access_token)
- return $access_token;
- $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wx9082e5ac2fdb513f&secret=88980d4455cd48e258c6bdff28029383";
- $res = curlGet($url);
- Cache::set('wx9082e5ac2fdb513f1_mp_access_token', $res['access_token'], $res['expires_in']);
- return $res['access_token'];
- }
- public function getQrCode($pid, $uid,$mer_id)
- {
- $user = app()->make(\app\controller\merchant\user\User::class);
- $access_token = $this->get_mp_access_token();
- $url = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" . $access_token;
- $data['scene'] = 'spread=' . $uid . '&mer_id=' . $mer_id;
- $data['page'] = 'pages/users/entranceList/entrance';
- $res = $user->posturl($url, $data);
- Db::name('log')->insert(['data'=>'小程序获取二维码'.json_encode($res)]);
- //判断是否是 json格式
- if (is_null(json_decode($res))) {
- $new_file = (int)(microtime(true) * 1000);
- $dir = iconv("UTF-8", "GBK", "./public/mpqrcode");
- if (!file_exists($dir)) {
- mkdir($dir, 0777, true);
- }
- $path = $dir . '/' . $new_file . ".jpg";
- file_put_contents($path, $res);
- $imgurl = env('APP_URL') . "/mpqrcode/" . $new_file . ".jpg";
- return ['qrcode' => $imgurl, 'path' => $path];
- } else {
- //没有接收到数据流
- return false;
- }
- }
- public function share()
- {
- $mer_id = $this->request->params(['mer_id']);
- $uid = $this->request->uid();
- $mer_id = $mer_id['mer_id'] ?? '';
- if ($mer_id == '') {
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }
- $qrcode = $this->getQrCode('', $uid, $mer_id);
- if (!$qrcode)
- return app('json')->fail('获取小程序二维码失败');
- $path = $qrcode['path'];
- $qrcode = $qrcode['qrcode'];
- $pdata['image']='https://app.bjtdba.com/applet/static/images/zjky/zjkyshare.png';
- $pic_list = array(
- $pdata['image'],
- );
- try {
- $bg_w = 800; // 背景图片宽度
- $bg_h = 1300; // 背景图片高度
- $background = imagecreatetruecolor($bg_w, $bg_h); // 背景图片
- imagecolorallocate($background, 0, 0, 0);
- $red = imagecolorallocate($background, 255, 255, 255);
- imagefill($background, 0, 0, $red);
- $pic_count = count($pic_list);
- $lineArr = array(); // 需要换行的位置
- $space_x = 3;
- $space_y = 3;
- $line_x = 0;
- switch ($pic_count) {
- case 1: // 中间位置并排
- $start_x = 0;
- $start_y = 0;
- $pic_w = intval($bg_w);
- $pic_h = intval(800);
- break;
- }
- foreach ($pic_list as $k => $pic_path) {
- if (!strstr($pic_path, 'http')) {
- $pic_path = 'https:' . $pic_path;
- }
- $kk = $k + 1;
- if (in_array($kk, $lineArr)) {
- $start_x = $line_x;
- $start_y = $start_y + $pic_h + $space_y;
- }
- $pathInfo = pathinfo($pic_path);
- switch (strtolower($pathInfo['extension'])) {
- case 'jpg':
- case 'jpeg':
- $imagecreatefromjpeg = 'imagecreatefromjpeg';
- break;
- case 'png':
- $imagecreatefromjpeg = 'imagecreatefrompng';
- break;
- case 'gif':
- default:
- $imagecreatefromjpeg = 'imagecreatefromstring';
- $pic_path = file_get_contents($pic_path);
- break;
- }
- $resource = $imagecreatefromjpeg($pic_path);
- if ($k == 0) {
- imagecopyresized($background, $resource, $start_x, $start_y, 0, 0, $pic_w, $pic_h, imagesx($resource), imagesy($resource)); // 最后两个参数为原始图片宽度和高度,倒数两个参数为copy时的图片宽度和高度
- }
- }
- header("Content-type: image/jpg");
- $filename1 = time();
- $filename = './public/shareimg/' . $filename1 . '.png';
- imagegif($background, $filename);
- $filename = 'http://app.bjtdba.com/shareimg/' . $filename1 . '.png';
- $filelink = [
- 'Bold' => 'public/font/Alibaba-PuHuiTi-Regular.otf',
- 'Normal' => 'public/font/Alibaba-PuHuiTi-Regular.otf',
- ];
- $config = array(
- 'image' => array(
- array(
- 'url' => $qrcode,//二维码资源
- 'stream' => 0,
- 'left' => 147,
- 'top' => 398,
- 'right' => 0,
- 'bottom' => 0,
- 'width' => 300,
- 'height' => 300,
- 'opacity' => 100
- )
- ),
- 'background' => $filename
- );
- $data = setSharePoster($config, 'routine/spread/poster');
- unlink($path);
- if (empty($data)) {
- return app('json')->fail('生成海报失败请重新尝试');
- }
- return app('json')->success(['url'=>env('APP_URL') . $data['dir']]);
- }catch (\Exception $e) {
- unlink($path);
- return app('json')->fail('生成海报失败请重新尝试');
- }
- }
- //排行榜
- public function ranking_list()
- {
- $mer_id = $this->request->params(['mer_id']);
- $mer_id = $mer_id['mer_id'] ?? '';
- if ($mer_id == '') {
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }
- if($mer_id!=290){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }
- $data=Db::name('entropy_barter_user_290')->order('ranking_money','desc')->where('ranking_money','<>',0)->alias('ebu')->leftJoin('user u','u.uid=ebu.uid')->field('ranking_money as wallet,u.avatar,u.nickname')->select();
- if($data->isEmpty()){
- return app('json')->fail('数据正在回炉打造,马上就好');
- }else{
- $data=$data->toArray();
- }
- return app('json')->success($data);
- }
- public function zjky_signireward_record()
- {
- $mer_id = $this->request->params(['mer_id']);
- $mer_id = $mer_id['mer_id'] ?? '';
- if ($mer_id == '') {
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }
- if($mer_id!=290){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }
- $uid=$this->request->uid();
- $singin_time=time();
- $find_data=Db::name('zjky_signireward_record')->where('member_id',$uid)->order('addtime','desc')->value('addtime');
- if($find_data>strtotime(date('Ymd'))){
- return app('json')->fail('今天已经签到过了');
- }
- Db::name('zjky_signireward_record')->insert(['member_id'=>$uid,'reward_socre'=>1,'signin_time'=>$singin_time,'addtime'=>time()]);
- $now_score=Db::name('entropy_barter_user_290')->where('uid',$uid)->count('integral');
- return app('json')->success(['code'=>0,'now_score'=>$now_score,'reward_socre'=>'1']);
- }
- public function get_zjky_signireward_record()
- {
- $mer_id = $this->request->params(['mer_id']);
- $mer_id = $mer_id['mer_id'] ?? '';
- if ($mer_id == '') {
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }
- if($mer_id!=290){
- return app('json')->fail('请联系技术人员排查问题,感谢您的反馈');
- }
- $uid=$this->request->uid();
- $show_day_arr=Db::name('zjky_signireward_record')->where('member_id',$uid)->column('signin_time');
- foreach ($show_day_arr as $k=>&$v){
- $v=date('Y-m-d',$v);
- }
- $score=Db::name('zjky_signireward_record')->where('member_id',$uid)->sum('reward_socre');
- $find_data=Db::name('zjky_signireward_record')->where('member_id',$uid)->order('addtime','desc')->value('addtime');
- if($find_data>strtotime(date('Ymd'))){
- $today_is_signin=1;
- }else{
- $today_is_signin=0;
- }
- return app('json')->success(['score'=>$score,'show_day_arr'=>$show_day_arr,'today_is_signin'=>$today_is_signin]);
- }
- //查找上级递归循环
- public function recursion_top($eb_id,$my_type)
- {
- $data=Db::name('entropy_barter_user_290')->where('eb_id',$eb_id)->field('top_eb_id,eb_id,type,pay_status')->find();
- if(!$data){
- return 0;
- }
- if($data['pay_status']==1&&$data['type']>2){
- // return $data['eb_id'];
- return $data['eb_id'];
- }elseif($data['pay_status']!=1||$data['type']<2){
- return $this->recursion_top($data['top_eb_id'],$my_type);
- }
- }
- }
|