addHeaders(); //添加头部请求 $search_key = $_POST['searchKey']; //搜索关键字 $shop_state = $_POST['shopState']; //推荐 $shop_type = $_POST['shopType']; //推荐,商品分类 $page = $_POST['page']; $one_size = empty($_POST['pageSize']) ? 30 : $_POST['pageSize']; //每頁30行記錄 $page_one = ($page - 1) * $one_size<=0?0:($page - 1) * $one_size; $sql = ""; if(!empty($search_key)) { //关键字查询 $sql = $sql." AND order_str LIKE '%$search_key%' OR MATCH(shop_describe) AGAINST ('+\"$search_key\"' IN BOOLEAN MODE) "; } if(!empty($shop_state)) { //查询推荐 $sql = $sql." AND shop_state = ".$shop_state; } if(!empty($shop_type) || $shop_type=='0') { //$shop_type $sql = $sql." AND shop_type = '".$shop_type."'"; } $seach_data = M("qq_shopping") ->field("id,order_str,order_img,order_type,amount,shop_state,shop_type,shop_stock,shop_format,shop_describe,des_img,shop_count") ->where("1=1".$sql." AND order_type=0")->LIMIT($page_one, $one_size)->select(); $data['code'] = '200'; $data['message'] = 'ok'; $data['all_num'] = M("qq_shopping")->where("1=1".$sql." AND order_type=0")->count(); $data['data'] = $seach_data; echo json_encode($data); } /** * 获取商品详情 * @return void */ public function get_detail() { $this->addHeaders(); //添加头部请求 $id = $_POST['id']; //商品id $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("qq_shopping") ->field("id,order_str,order_img,order_type,amount,shop_state,shop_type,shop_stock,shop_format,shop_describe,des_img,shop_count") ->where("id='$id'")->find(); echo json_encode($data); } /** * 添加收货地址 * @return void */ public function add_addr() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $name = $_POST['name']; //用户姓名 $phone = $_POST['phone']; //用户电话 $address = $_POST['address']; //用户地址 $address_type = empty($_POST['addressType'])?0:$_POST['addressType']; //默认地址1 //添加字段 $addressDetail = $_POST['addressDetail']; //详细地址 $areaCode = $_POST['areaCode']; //区域编码 $city = $_POST['city']; //城市 $country = $_POST['country']; //国家 $county = $_POST['county']; //不懂是什么 $province = $_POST['province']; //省份 if(empty($name) || empty($phone) || empty($address)) { $this->returnDataAndSendMsg("请输入完整地址"); die(); } $add_info['uid'] = $uid; $add_info['name'] = $name; $add_info['phone'] = $phone; $add_info['address'] = $address; $add_info['address_type'] = $address_type; $add_info['addressDetail'] = $addressDetail; $add_info['areaCode'] = $areaCode; $add_info['city'] = $city; $add_info['isDefault'] = $address_type; $add_info['country'] = $country; $add_info['county'] = $county; $add_info['province'] = $province; $add_info['tel'] = $phone; if(!empty($address_type) && $address_type==1) { M("qq_user_address")->where("uid='$uid'")->setField("address_type",0); } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("qq_user_address")->add($add_info); echo json_encode($data); } public function edit_addr() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $id = $_POST['id']; //地址id $name = $_POST['name']; //用户姓名 $phone = $_POST['phone']; //用户电话 $address = $_POST['address']; //用户地址 $address_type = empty($_POST['addressType'])?0:$_POST['addressType']; //默认地址1 $addressDetail = $_POST['addressDetail']; //详细地址 $areaCode = $_POST['areaCode']; //区域编码 $city = $_POST['city']; //城市 $country = $_POST['country']; //国家 $county = $_POST['county']; //不懂是什么 $province = $_POST['province']; //省份 if(empty($name) || empty($phone) || empty($address)) { $this->returnDataAndSendMsg("请输入完整地址"); die(); } $add_info['uid'] = $uid; $add_info['name'] = $name; $add_info['phone'] = $phone; $add_info['address'] = $address; $add_info['address_type'] = $address_type; $add_info['addressDetail'] = $addressDetail; $add_info['areaCode'] = $areaCode; $add_info['city'] = $city; $add_info['isDefault'] = $address_type; $add_info['country'] = $country; $add_info['county'] = $county; $add_info['province'] = $province; $add_info['tel'] = $phone; if(!empty($address_type) && $address_type==1) { M("qq_user_address")->where("uid='$uid'")->setField("address_type",0); } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("qq_user_address")->where("id='$id'")->save($add_info); echo json_encode($data); } /** * 更新默认收获地址 * @return void */ public function up_default_addr() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $id = $_POST['id']; //地址id $check_addr = M("qq_user_address")->where("id='$id'")->find(); if(empty($check_addr)) { $this->returnDataAndSendMsg("无效收货地址"); die(); } M("qq_user_address")->where("uid='$uid'")->setField("address_type",0); $rs = M("qq_user_address")->where("id='$id'")->setField("address_type",1); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs; echo json_encode($data); } public function del_addr() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $id = $_POST['id']; //地址id $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("qq_user_address")->where("id='$id'")->delete(); echo json_encode($data); } /** * 获取地址详情 * @return void */ public function get_addr_detail() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $id = $_POST['id']; //地址id $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("qq_user_address")->where("id='$id'")->find(); echo json_encode($data); } /** * 查询用户收货地址列表 * @return void */ public function query_addr_list() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $page = $_POST['page']; $one_size = empty($_POST['pageSize']) ? 30 : $_POST['pageSize']; //每頁30行記錄 $page_one = ($page - 1) * $one_size; $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("qq_user_address")->where("uid='$uid'")->LIMIT($page_one, $one_size)->select(); $data['all_num'] = M("qq_user_address")->where("uid='$uid'")->count(); echo json_encode($data); } /** * 查询订单列表 * @return void */ public function query_order_list() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $page = $_POST['page']; $one_size = empty($_POST['pageSize']) ? 30 : $_POST['pageSize']; //每頁30行記錄 $page_one = ($page - 1) * $one_size; $state = $_POST['state']; //订单状态0/待发1/已发2/已送达/3取消/4退款 $sql = " AND shop_type='$state'"; if(empty($state) && $state!='0' || $state=='-1') { $sql = ""; } if($state=='6') { $sql = " AND shop_type in(3,4)"; } $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("qq_user_shopping") ->field("id,uid,order_img,order_str,apply_date,pay_date,shop_count,amount,shop_type,shop_format,name,phone,address,remark,shipping_date,shop_wu_liu") ->where("uid='$uid'".$sql)->LIMIT($page_one, $one_size)->select(); $data['all_num'] = M("qq_user_shopping")->where("uid='$uid'".$sql)->count(); echo json_encode($data); } /** * 查询订单详情 * @return void */ public function get_order_detail() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $id = $_POST['id']; $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = M("qq_user_shopping") ->field("id,uid,order_img,order_str,apply_date,pay_date,shop_count,amount,shop_type,shop_format,name,phone,address,remark,shipping_date,shop_wu_liu") ->where("id='$id'")->find(); echo json_encode($data); } /** * 用户下单 * @return void */ public function buy() { $this->addHeaders(); //添加头部请求 $user_info = $this->checkUserIsExist($_POST['uid']); //检查用户 $uid = $user_info['id']; $user_money = $user_info['gold_coins_number']; $shop_id = $_POST['shopId']; //商品id $addr_id = $_POST['addr_id']; //收获地址id $shop_count = $_POST['shop_count']; //商品数量 $shop_format = $_POST['shop_format']; //商品规格 $remark = $_POST['remark']; //备注 if (empty($shop_id) || empty($addr_id)) { $this->returnDataAndSendMsg("商品标识或收货地址标识不能为空"); die(); } if (empty($shop_count) || empty($shop_format)) { $this->returnDataAndSendMsg("购买数量或规格不能为空"); die(); } $shop_info = M("qq_shopping")->where("id='$shop_id'")->find(); if(empty($shop_info)) { $this->returnDataAndSendMsg("商品已下架"); die(); } //判断是否已售罄 if($shop_info['shop_stock']<$shop_count) { $this->returnDataAndSendMsg("商品已售罄"); die(); } $addr_info = M("qq_user_address")->where("id='$addr_id'")->find(); if(empty($shop_info)) { $this->returnDataAndSendMsg("收货地址已不存在"); die(); } if($shop_count==0) { $this->returnDataAndSendMsg("非法操作"); die(); } $add_info['uid']=$uid; $add_info['order_img']=$shop_info['order_img'];//商品名称 $add_info['order_str']=$shop_info['order_str']; //商品图片 $add_info['apply_date']=date('Y-m-d H:i:s'); //提交时间 $add_info['amount']=$shop_info['amount']*$shop_count; //付款金额 $add_info['pay_date']=$add_info['apply_date']; $add_info['shop_count']=$shop_count;//商品数量 $add_info['amount_due']=$shop_info['amount_due'];//付款时间 $add_info['shop_id']=$shop_info['id']; $add_info['shop_type']=0; //订单状态0/待发1/已发2/已送达/3取消/4退款 $add_info['shop_format']=$shop_format; //收货信息 $add_info['name'] = $addr_info['name']; $add_info['phone'] = $addr_info['phone']; $add_info['address'] = $addr_info['address']; $add_info['remark'] = $remark; $add_info['shop_wu_liu'] = "已下单:".$add_info['apply_date'].","; //物流 if($user_money<$add_info['amount']) { $this->returnDataAndSendMsg("您的金币余额不足,请及时充值"); die(); } //先扣款在下单 $rs = M("user_info")->where("id='$uid'")->setDec("gold_coins_number",$add_info['amount']); if($rs<=0) { $this->returnDataAndSendMsg("操作失败,请稍后在试"); die(); } //剪库存 $update_info['shop_stock'] = $shop_info['shop_stock']-$shop_count;//库存 $update_info['shop_count'] = $shop_info['shop_count']+1;//下单数量 M("qq_shopping")->where("id='$shop_id'")->save($update_info); //添加订单 $rs = M("qq_user_shopping")->add($add_info); $data['code'] = '200'; $data['message'] = 'ok'; $data['data'] = $rs; echo json_encode($data); } }