| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 | 
							- <?php
 
- namespace app\api\controller;
 
- use app\common\controller\Api;
 
- use think\Db;
 
- use addons\epay\library\Service;
 
- /**
 
-  * 商品
 
-  */
 
- class Product extends Api
 
- {
 
-     protected $noNeedLogin = ['lists','info'];
 
-     protected $noNeedRight = ['*'];
 
-     public function lists()
 
-     {
 
-         $keyword = input('keyword','');
 
-         $where = ['is_show'=>1];
 
-         if(!empty($keyword)){
 
-             $where['title'] = ['LIKE','%'.$keyword.'%'];
 
-         }
 
-         $list = Db::name('product')->field('content',true)->where($where)->order('weigh desc')->autopage()->select();
 
-         $list = list_domain_image($list,['images']);
 
-         if(!empty($list)){
 
-             foreach($list as $key => &$item){
 
-                 //第一个图
 
-                 $item['image'] = isset($item['images'][0]) ? $item['images'][0] : '';
 
-             }
 
-         }
 
-         $this->success(1,$list);
 
-     }
 
-     public function info(){
 
-         $id = input('id',0);
 
-         $info = Db::name('product')->where('is_show',1)->where('id',$id)->find();
 
-         if(!$info){
 
-             $this->error('不存在的商品');
 
-         }
 
-         $info = info_domain_image($info,['images']);
 
-         //第一个图
 
-         $info['image'] = isset($info['images'][0]) ? $info['images'][0] : '';
 
-         $this->success(1,$info);
 
-     }
 
-     //兑换
 
-     public function buy(){
 
-         $remark = input('remark','');
 
-         $product_id = input('id',0);
 
-         $info = Db::name('product')->where('is_show',1)->where('id',$product_id)->find();
 
-         if(!$info){
 
-             $this->error('不存在的商品');
 
-         }
 
-         Db::startTrans();
 
-         //下单
 
-         $data = [
 
-             'order_no' => createUniqueNo('A',$this->auth->id),
 
-             'product_id' => $product_id,
 
-             'user_id'    => $this->auth->id,
 
-             'createtime' => time(),
 
-             'pay_fee' => $info['price'],
 
-             'remark' => $remark,
 
-             'status' => 0,
 
-         ];
 
-         $order_id = Db::name('order')->insertGetId($data);
 
-         if(!$order_id){
 
-             Db::rollback();
 
-             $this->error('兑换失败');
 
-         }
 
-         //扣钱
 
-         $rs_wallet = model('wallet')->lockChangeAccountRemain($this->auth->id,'score',-$info['price'],3,'兑换积分商品','order',$order_id);
 
-         if($rs_wallet['status'] == false){
 
-             Db::rollback();
 
-             $this->error($rs_wallet['msg']);
 
-         }
 
-         Db::commit();
 
-         $this->success('兑换成功',$order_id);
 
-     }
 
- }
 
 
  |