where("user_id", $user['user_id'])->find(); session('user', $user); //覆盖session 中的 user $this->user = $user; $this->user_id = $user['user_id']; } else { $uid = Cookie::get('user_id'); if ($uid) { $user = M('users')->where("user_id", $uid)->where("store_id", getMobileStoId())->find(); session('user', $user); //覆盖session 中的 user $this->user = $user; $this->user_id = $user['user_id']; $this->assign('user', $user); //存储用户信息 } } } //获取优惠券信息 public function getQuan() { $store = I('stoid'); //商家ID $user = $this->user; $kyquannum = 0; //可用券的数量 $nkyquannum = 0; //不可用券的数量 $allnum = 0; //可用券的总量 $kyquanlist = []; //可用券列表 $nkyquanlist = [];//不可用券列表 $now = time(); //包邮券 $wh['a.isuse'] = 0; //$wh['b.use_start_time']=['<',$now]; //$wh['b.use_end_time']=['>',$now]; $wh['a.store_id'] = $store; $wh['a.user_id'] = $user['user_id']; $bylist = M("user_feemail")->alias('a') ->join("(SELECT a.title,a.id AS area_feemail_id,(SELECT GROUP_CONCAT(c.id SEPARATOR ',') FROM wxd_feemail_region b LEFT JOIN wxd_region c ON c.id = b.region_id WHERE b.area_feemail_id = a.id) AS region_list FROM wxd_area_feemail a WHERE a.store_id=" . $store . ") d", 'a.exparea=d.area_feemail_id', 'left') ->where($wh) ->field("a.no,a.condition,a.use_start_time,a.use_end_time,d.region_list,a.billdate") ->select(); $allnum += count($bylist); foreach ($bylist as $k => $v) { $v['CashRepNo'] = $v['no']; $v['Remark'] = "购买礼包得优惠券【消费满" . $v['condition'] . "元可用】"; $v['isby'] = 1; $v['validtime'] = $v['use_end_time']; if ($v['use_end_time'] > 0) $v['ValidDate'] = date('Y-m-d', $v['use_end_time']); else $v['ValidDate'] = "不限"; if ($v['use_start_time'] > 0) $v['BeginDate'] = date('Y-m-d', $v['use_start_time']); else $v['BeginDate'] = ""; $t = $v['use_end_time']; $idlist = $v['region_list']; $ary = explode(',', $idlist); $name = ""; foreach ($ary as $v1) { if ($v1) $name = getRgName($v1) . "," . $name; } $v['region_list_name'] = $name; if ($t != "" && $t < $now) { $nkyquannum++; $nkyquanlist[] = $v; } else { $kyquannum++; $kyquanlist[] = $v; } } if ($this->pm_erpid)//ERP { $accdb=tpCache("shop_info.ERPId",$store); $where['VIPId']=urlencode($user['erpvipid']); $where['IsUse']=3; $re1 = getApiData_java_p("/api/erp/vip/cash/page", $accdb, $where, 1, 1000); $qlist = json_decode($re1, true); if ($qlist && $qlist['code']==0) { $data = $qlist["data"]['pageData']; //$allnum += $qlist["count"]; $allnum += count($data); if ($qlist["code"] == 0 && !empty($data)) { foreach ($data as $K => $v) { $v['Remark'] = urldecode($v['Remark']); $v['Sum'] = number_format($v['Sum'], 2); if ($v['ValidDate'] != "") { $v['ValidDate'] = date('Y-m-d', strtotime($v['ValidDate'])); $v1 = date('Y-m-d 23:59:59', strtotime($v['ValidDate'])); $t = strtotime($v1); } else { $v['ValidDate'] = "不限"; $t = ""; } if ($v['BeginDate'] != "") { $v['BeginDate'] = date('Y-m-d', strtotime($v['BeginDate'])); } else { $v['BeginDate'] = ""; } $v['BillDate'] = date('Y-m-d', strtotime($v['BillDate'])); if ($t != "" && $t < $now) { $nkyquannum++; $nkyquanlist[] = $v; } else { $kyquannum++; $kyquanlist[] = $v; } } $result = ["code" => 1, "msg" => "ok", "allnum" => $allnum, "kynum" => $kyquannum, "nkynum" => $nkyquannum, "kyquanlist" => $kyquanlist, "nkyquanlist" => $nkyquanlist ]; return json($result); } else { if(!$allnum) return json(["code" => -1, "msg" => "无相关记录"]); } } $result = ["code" => 1, "msg" => "ok", "allnum" => $allnum, "kynum" => $kyquannum, "nkynum" => $nkyquannum, "kyquanlist" => $kyquanlist, "nkyquanlist" => $nkyquanlist ]; return json($result); } else { $qlist = M('coupon_list')->where(array('store_id' => $store, 'uid' => $user['user_id'], 'is_user' => 0))->select(); if (empty($qlist)) { if(!$allnum) return json(["code" => -1, "msg" => "无相关记录"]); } $allnum += count($qlist); foreach ($qlist as $K => $v) { $new_v['Remark'] = urldecode($v['remark']); $new_v['Sum'] = number_format($v['sum'], 2); if ($v['validtime']) { $new_v['ValidDate'] = date('Y-m-d', $v['validtime']); $v1 = date('Y-m-d 23:59:59', $v['validtime']); $t = $v['validtime']; } else { $new_v['ValidDate'] = "不限"; $t = ""; } if ($v['begintime']) { $new_v['BeginDate'] = date('Y-m-d', $v['begintime']); } else { $new_v['BeginDate'] = ""; } $new_v['BillDate'] = date('Y-m-d', $v['send_time']); $new_v['CashRepNo'] = $v['code']; if ($t != "" && $t < $now) { $nkyquannum++; $nkyquanlist[] = $new_v; } else { $kyquannum++; $kyquanlist[] = $new_v; } } // $result = ["code" => 1, "msg" => "ok", "allnum" => $allnum, "kynum" => $kyquannum, "nkynum" => $nkyquannum, "kyquanlist" => $kyquanlist, "nkyquanlist" => $nkyquanlist ]; return json($result); } } //获取会员中心余额等信息1 public function getindnum() { $user = $this->user; $integ = 0; $vsum = 0; $qnum = 0; $qnum1 = 0; $kyquannum = 0; //可用券的数量 $nkyquannum = 0; //不可用券的数量 $allnum = 0; //可用券的总量 $kyquanlist = []; //可用券列表 $nkyquanlist = [];//不可用券列表 $now = time(); $wh['a.isuse'] = 0; $wh['a.store_id'] = getMobileStoId(); $wh['a.user_id'] = $user['user_id']; $qnum1 = M("user_feemail")->alias('a')->join('coupon b', 'a.fmid=b.id')->where($wh)->count(); $now = time(); //包邮券 $wh['a.isuse'] = 0; //$wh['b.use_start_time']=['<',$now]; //$wh['b.use_end_time']=['>',$now]; $wh['a.store_id'] = getMobileStoId(); $wh['a.user_id'] = $user['user_id']; $bylist = M("user_feemail")->alias('a') ->join("(SELECT a.title,a.id AS area_feemail_id,(SELECT GROUP_CONCAT(c.id SEPARATOR ',') FROM wxd_feemail_region b LEFT JOIN wxd_region c ON c.id = b.region_id WHERE b.area_feemail_id = a.id) AS region_list FROM wxd_area_feemail a WHERE a.store_id=" . getMobileStoId() . ") d", 'a.exparea=d.area_feemail_id', 'left') ->where($wh) ->field("a.no,a.condition,a.use_start_time,a.use_end_time,d.region_list,a.billdate") ->select(); $allnum += count($bylist); foreach ($bylist as $k => $v) { $v['CashRepNo'] = $v['no']; $v['Remark'] = "购买礼包得优惠券【消费满" . $v['condition'] . "元可用】"; $v['isby'] = 1; $v['validtime'] = $v['use_end_time']; if ($v['use_end_time'] > 0) $v['ValidDate'] = date('Y-m-d', $v['use_end_time']); else $v['ValidDate'] = "不限"; if ($v['use_start_time'] > 0) $v['BeginDate'] = date('Y-m-d', $v['use_start_time']); else $v['BeginDate'] = ""; $t = $v['use_end_time']; $idlist = $v['region_list']; $ary = explode(',', $idlist); $name = ""; foreach ($ary as $v1) { if ($v1) $name = getRgName($v1) . "," . $name; } $v['region_list_name'] = $name; if ($t != "" && $t < $now) { $nkyquannum++; $nkyquanlist[] = $v; } else { $kyquannum++; $kyquanlist[] = $v; } } if ($this->pm_erpid)//有ERP账套 { if ($user['erpvipid']) { $data['VIPId'] = urlencode($user['erpvipid']); $rs = getApiData_java("/api/erp/vip/assets/list", $this->pm_erpid, $data, 1, 100); mlog("获取值:" . json_encode($rs), "getindnum/" . getMobileStoId()); $d = json_decode($rs, true); $getlistdata = $d['data']; if ($d['code'] == 0 && $getlistdata) { $integ = $getlistdata['Integral']; $integ = number_format(empty($integ) ? 0 : $integ, 0); $vsum = $getlistdata['Balance']; $vsum = number_format(empty($vsum) ? 0 : $vsum, 2); $qnum = $getlistdata['CashCount']; $qnum = number_format(empty($qnum) ? 0 : $qnum, 0); $kyquannum += $qnum; } //会员卡号获取 if (empty($user['erpvipno']) && $user['erpvipid'])//线下会员卡为空时 { mlog("执行线下接口,线下ID:" . $user['erpvipid'], "getindnum/" . getMobileStoId()); //$mapuser['Id'] = $user['erpvipid']; //$user_rs = getApiData('wxd.vip.vipinfo.list.get', $user['api_token'], null, $mapuser); //mlog("会员基本信息返回值:" . json_encode($user_rs), "getindnum/" . getMobileStoId()); //$user_rs = json_decode($user_rs, true); $user_rs=get_erpvipinfo($user['erpvipid'],$this->pm_erpid); //调用接口错误,提示错误信息 if ($user_rs) { $new_user_info = $user_rs; $updateuser['erpvipno'] = $new_user_info['VIPNo']; //地址、生日、身份证、地址、所属门店 $updateuser['sex'] = $new_user_info['Sex'] == '男' ? 1 : $new_user_info['Sex'] == '女' ? 2 : 0; $updateuser['birthday'] = strtotime($new_user_info['BirthDate']); $updateuser['idcard'] = $new_user_info['IDCard']; $updateuser['address'] = $new_user_info['Address']; if ($new_user_info['StoragesId']) { $pick = M("pick_up")->where("keyid", $new_user_info['StoragesId'])->where('store_id', getMobileStoId())->find(); if ($pick) { $updateuser['pickup_id'] = $pick['pickup_id']; } } $falg = M('users')->where('user_id', $user['user_id'])->save($updateuser); } } $result = ["code" => 1, 'vsum' => $vsum, 'qnum' => $kyquannum, 'integ' => $integ]; return json($result); } } else { $integ = $user['pay_points']; $qnum = M('coupon_list')->where(array('store_id' => getMobileStoId(), 'uid' => $user['user_id'])) ->where('is_user', 0) ->count(); $qnum = $qnum + $qnum1; $result = ["code" => 1, 'vsum' => $vsum, 'qnum' => $qnum, 'integ' => $integ]; return json($result); } } }