db, $this->def); return $LogM -> addMemberLog($uid,$usertype,$content,$opera='',$type=''); } //查询单条商品 function getInfo($where=array(),$data=array()){ $data['field'] = empty($data['field']) ? '*' : $data['field']; $info = $this -> select_once('reward',$where,$data['field']); if(!empty($info)){ if($info['pic']){ $info['pic'] = checkpic($info['pic']); } if($info['content']){ $content=htmlspecialchars_decode($info['content']); $info['content_n'] = $content; preg_match_all('/select_all("reward",$whereData,$data['field']); if(!empty( $List )){ foreach($List as $key=>$val){ $nids[] = $val['nid']; $tnids[] = $val['tnid']; } $classWhere['id'] = array('>',0); $class = $this->select_all("redeem_class",$classWhere); $classname=''; foreach($List as $k=>$v){ foreach($class as $val){ if($v['nid']==$val['id']){ $classname = $val['name']; } if($v['tnid']==$val['id']){ $classname = $List[$k]['classname'].'-'.$val['name']; } $List[$k]['classname'] = $classname; } } } return $List; } function upInfo($data = array(),$whereData) { if(!empty($whereData)){ $nid = $this -> update_once('reward',$data,$whereData); } return $nid; } function delReward($whereData,$data){ if($data['type']=='one'){//单个删除 $limit = 'limit 1'; } if($data['type']=='all'){//多个删除 $limit = ''; } $result = $this -> delete_all('reward',$whereData,$limit); return $result; } function addInfo($setData){ if(!empty($setData)){ $nid = $this -> insert_into('reward',$setData); } return $nid; } function getChangeList($whereData,$data=array()){ $ListNew = array(); $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('change',$whereData,$data['field']); if(!empty( $List )){ $gid = array(); foreach($List as $key=>$val){ $gid[] = $val['gid']; } require_once ('redeem.model.php'); $redeemM = new redeem_model($this->db, $this->def); $gift = $redeemM->getList(array('id'=>array('in',pylode(',', $gid))),array('field'=>'id,pic')); $dh = $sh = $wtg =0; foreach($List as $key=>$val){ $List[$key]['wapredeem_url'] = Url('wap',array('c'=>'redeem','a'=>'show','id'=>$val['gid'])); $List[$key]['ctime_n'] = date('Y-m-d h:i',$val['ctime']); if($val['body']){ $List[$key]['address'] = mb_substr($val['body'],5,-1); }else{ $List[$key]['address']=""; } foreach ($gift as $v){ if($val['gid']==$v['id']){ $List[$key]['pic'] = checkpic($v['pic'],$this->config['sy_imgsc_mr']); } } if($data['utype']=='wap'){ if($val['status']==0){ $sh = $sh + 1; } if($val['status']==2){ $wtg = $wtg + 1; } if($val['status']==1){ $dh = $dh + 1; } } } $ListNew['dh'] = $dh; $ListNew['wtg'] = $wtg; $ListNew['sh'] = $sh; $ListNew['list'] = $List; } return $ListNew; } function getChangeInfo($whereData, $data = array()){ if($whereData){ $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_once('change',$whereData,$data['field']); } return $List; } function AddChange($data = array()){ $num = (int)$data['num']; $id = (int)$data['id']; $info = $this->select_once('member',array("uid"=>$data['uid']),'`password`,`salt`'); require_once ('statis.model.php'); $statisM = new statis_model($this->db, $this->def); $statis = $statisM->getInfo($data['uid'],array("usertype"=>$data['usertype'],"field"=>"`integral`")); $gift = $this->getInfo(array("id"=>(int)$data['id'])); $nums = $this->select_num('change',array("gid"=>$gift['id'],"uid"=>$data['uid'])); $integral = $gift['integral']*$num; if(!$data['uid'] && !$data['username']){ $return['msg'] = '您还没有登录,请先登录!'; $return['errcode'] = '8'; }elseif(!$data['linkman'] || !$data['linktel'] ){ $return['msg'] = '收件人和手机号码不能为空!'; $return['errcode'] = '8'; }elseif($data['linktel']&&CheckMobile($data['linktel'])==false){ $return['msg'] = '手机格式错误!'; $return['errcode'] = '8'; }elseif(!$data['password']){ $return['msg'] = '密码不能为空!'; $return['errcode'] = '8'; }elseif(!passCheck($data['password'],$info['salt'],$info['password'])){ $return['msg'] = '用户名或密码不正确!'; $return['errcode'] = '8'; }elseif($num<1){ $return['msg'] = '请填写正确的数量!'; $return['errcode'] = '8'; }elseif($num>$gift['stock']){ $return['msg'] = '已超出库存数量!'; $return['errcode'] = '8'; }elseif($gift['restriction']!='0' && $nums+$num>$gift['restriction']){ $return['msg'] = '已超出限购数量!'; $return['errcode'] = '8'; }elseif($statis['integral']<$integral){ $return['msg'] = '您的'.$this->config['integral_pricename'].'不足!'; $return['errcode'] = '8'; }else{ require_once ('integral.model.php'); $integralM = new integral_model($this->db, $this->def); //积分操作记录 $integralM->company_invtal($data['uid'],$data['usertype'],$integral,false,"".$this->config['integral_pricename']."兑换",true,2,'integral',24); if($data['bodyt']){ $data['body']=$data['bodyt']; }else{ $data['body']='收货地址:'.$data['provinceid'].' '.$data['cityid'].' '.$data['three_cityid']; if($data['address']){ $data['body'].=' '.$data['address']; } if($data['other']){ $data['body'].=' 用户留言:'.$data['other']; } } $post=array( 'uid' => $data['uid'], 'username' => $data['username'], 'usertype' => $data['usertype'], 'name' => $gift['name'], 'gid' => $gift['id'], 'linkman' => $data['linkman'], 'linktel' => $data['linktel'], 'body' => $data['body'], 'integral' => $integral, 'num' => $num, 'ctime' => time() ); $this->insert_into('change',$post); $this->update_once('reward',array('num'=>array('+',$num),'stock'=>array('-',$num)),array("id"=>$data['id'])); $this -> addMemberLog($data['uid'], $data['usertype'],$this->config['integral_pricename']."兑换,商品ID:".$gift['id'],17,1); require_once('admin.model.php'); $adminM = new admin_model($this->db,$this->def); $adminM->sendAdminMsg(array( 'first'=>'有新的商品兑换需要审核,用户《'.$data['username'].'》花费'.$integral.$this->config['integral_pricename'].'兑换了'.$num.'个'.$gift['name'].'。', 'type'=>18 )); $return['msg']='兑换成功,请等待管理员审核!'; $return['errcode']='9'; if($data['utype']=='pc'){ $return['url']=Url('redeem',array('c'=>'show','id'=>$id)); } if($data['utype']=='wap'){ $return['url']=Url('wap',array('c'=>'redeem','a'=>'show','id'=>$id)); } } return $return; } function getChangeNum($whereData, $data = array()){ if($whereData){ $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_num('change',$whereData,$data['field']); } return $List; } function addChangeInfo($setData){ if(!empty($setData)){ $nid = $this -> insert_into('change',$setData); } return $nid; } function upChangeInfo($whereData, $data = array()){ if(!empty($whereData)){ $nid = $this -> update_once('change',$data,$whereData); } return $nid; } function delChange($whereData,$data=array()) { $limit = "";//多个删除 if(!is_array($whereData['id'])){ $limit = 'limit 1'; } /**$data['member'] :会员中心执行删除,member为user表示个人会员,com表示企业会员 * $data['uid'] :用户uid * $data['usertype']:用户usertype * $data['id'] :change表id */ if($data['member']){ if($data['uid']=='' ||($data['member']=='com'&&$data['usertype']!='2') ||($data['member']=='user'&&$data['usertype']!='1')){ $result['msg'] = '登录超时'; $result['cod'] = 8; }else{ $rows = $this -> getChangeInfo(array('uid'=>$data['uid'],'id'=>$data['id'])); if($rows['id']){ require_once('integral.model.php'); $IntegralM = new integral_model($this->db,$this->def); $this -> update_once('reward',array('num'=>array('-',$rows['num']),'stock'=>array('+',$rows['num'])),array('id'=>$rows['gid'])); $IntegralM -> company_invtal($data['uid'],$data['usertype'],$rows['integral'],true,"取消商品兑换",true,2,'integral',24); $this -> delete_all('change',array('uid'=>$data['uid'],'id'=>$data['id']),$limit); } $this -> addMemberLog($data['uid'],$data['usertype'],"取消兑换",17,3);//会员日志 $result['msg'] = '取消成功!'; $result['cod'] = 9; } }else{ $result = $this -> delete_all('change',$whereData,$limit); } return $result; } //************************end************************ //*********************redeem_class****************** //查询商品分类 function GetRewardClass($whereData,$data=array()){ $ListNew = array(); $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_all('redeem_class',$whereData,$data['field']); if(!empty( $List )){ $ListNew['list'] = $List; } return $ListNew; } function getRedeemClassInfo($whereData, $data = array()){ if($whereData){ $data['field'] = empty($data['field']) ? '*' : $data['field']; $List = $this -> select_once('redeem_class',$whereData,$data['field']); } return $List; } function addRedeemClassInfo($setData){ if(!empty($setData)){ $nid = $this -> insert_into('redeem_class',$setData); } return $nid; } function upRedeemClassInfo($whereData, $data = array()){ if(!empty($whereData)){ $nid = $this -> update_once('redeem_class',$data,$whereData); } return $nid; } function delRedeemClass($whereData,$data){ if($data['type']=='one'){//单个删除 $limit = 'limit 1'; } if($data['type']=='all'){//多个删除 $limit = ''; } $result = $this -> delete_all('redeem_class',$whereData,$limit); return $result; } //************************end************************ } ?>