public function queryAction() { if (is_user_brand()) { $response = array("page" => 0, "total" => 0, "records" => 0, "rows" => null); $this->ajaxReturn($response); } list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $sidx = preg_replace("/classify.*,/", "", $sidx); $sidx = trim($sidx); $mcs = D("User")->getMc(); $arr = array(); foreach ($mcs as $key => $value) { $ret = $this->getOne($value['id']); if ($value['group_id'] == 0) { $ret['classify'] = "未分组"; } else { $group = D("McGroup")->find($value['group_id']); $ret['classify'] = $group['name']; } $mcs[$key] = array_merge($value, $ret); } if (empty($sidx) || $sidx == "id") { $sidx = "cardsale_all"; $sord = "desc"; } $function = $sidx . "_" . $sord; $f2 = "f2_" . $sidx . "_" . $sord; $mcs = $this->sortarr($mcs, $function, $f2); $response = array("page" => 0, "total" => 0, "records" => 0, "rows" => $mcs); $this->ajaxReturn($response); }
public function indexAction() { if (is_user_brand()) { $clubs = M("Club")->where(array("brand_id" => get_brand_id()))->field('id,club_name')->order("id desc")->select(); } else { $permission = D("FinanceClub")->where(array("user_id" => is_user_login()))->relation(true)->select(); $clubs = array(); foreach ($permission as $key => $value) { $clubs[] = $value['club']; } } $this->assign("clubs", $clubs); $this->display(); }
public function indexAction() { if (is_user_brand()) { parent::indexAction(); return; } $clubs = M("Club")->field('id,club_name')->select(get_club_id()); // $this->assign("clubs",$clubs); $this->assign("clubs", json_encode($clubs)); $this->assign("clubarray", $clubs); $roles = M("AuthGroup")->select(); $this->assign("roles", $roles); $this->selfid = is_user_login(); $this->display(); }
public function indexAction() { $this->setIndexActiveClass(); $id = I("id"); $this->assign("edit", DIRECTORY_SEPARATOR . MODULE_NAME . DIRECTORY_SEPARATOR . CONTROLLER_NAME . DIRECTORY_SEPARATOR . "index"); $this->assign("exist", DIRECTORY_SEPARATOR . MODULE_NAME . DIRECTORY_SEPARATOR . CONTROLLER_NAME . DIRECTORY_SEPARATOR . "exist"); $this->assign("queryRecommend", DIRECTORY_SEPARATOR . MODULE_NAME . DIRECTORY_SEPARATOR . CONTROLLER_NAME . DIRECTORY_SEPARATOR . "queryRecommend"); $this->assign("action", DIRECTORY_SEPARATOR . MODULE_NAME . DIRECTORY_SEPARATOR . CONTROLLER_NAME . DIRECTORY_SEPARATOR . "add"); if (!empty($id)) { $this->assign("action", DIRECTORY_SEPARATOR . MODULE_NAME . DIRECTORY_SEPARATOR . CONTROLLER_NAME . DIRECTORY_SEPARATOR . "edit"); $model = D("MemberBasic"); $member = $model->find($id); if (!is_user_brand()) { $is_reception = D("User")->isReception(is_user_login()); if (!$is_reception && $member["mc_id"] != is_user_login() && $member['record_id'] != is_user_login() && $member["pt_id"] != is_user_login()) { $this->error("无权查看此用户信息"); } } else { if ($member['brand_id'] != get_brand_id()) { $this->error("无权查看此用户信息"); } } // $mc $this->assign("member", $member); } $model = M("Channel"); $channles = $this->getchannels(); $this->assign("channels", $channles); if ((D("User")->isMc(is_user_login()) || D("User")->isPt(is_user_login())) && empty($id) && MODULE_NAME != 'Reception') { // $mcs=array( D("UserExtension")->find(is_user_login())); $mcs = D("User")->getMc(); } else { $mcs = D("User")->getMc(); } $this->assign("mcs", $mcs); // $brand_id=get_brand_id(); // $users= $model->where("a.id=b.id and a.id=c.uid and b.brand_id=$brand_id and c.group_id=18")->table(array("yoga_user_extension"=>"a","yoga_user"=>"b","yoga_auth_group_access"=>"c"))->field("a.id,a.name_cn")->select(); // $this->assign("users",$users); $model = M("Club"); $clubs = $model->where(array("brand_id" => get_brand_id()))->field("id,club_name")->select(); $model = D("CardSaleclub"); $types = $model->getCanSaleCards(); $this->assign("types", $types); $this->assign("clubs", $clubs); // $mcs= $model->where("a.id=b.id and a.id=c.uid and b.brand_id=$brand_id and c.group_id=6")->table(array("yoga_user_extension"=>"a","yoga_user"=>"b","yoga_auth_group_access"=>"c"))->field("a.id,a.name_cn")->select(); // $this->assign("mcs",$mcs); $this->display("Mc@Visit:index"); }
public function editAction($id, $card_number, $btype, $card_type_id, $present_day, $present_num, $price, $start_time, $end_time, $active_type, $desc, $free_rest, $free_trans, $mc_name) { $rules = array(array('id', 'require', '合同ID必须!', 1), array('card_number', 'require', '卡号必须!', 1), array('btype', array(0, 1), '类型不对!', 1, 'in'), array('card_type_id', 'number', '卡类型不对!', 1), array('present_day', 'number', '赠送天数需要为整数!', 1), array('present_num', 'number', '赠送次数需要为整数!', 1), array('price', 'number', '请输入正确的应付价格!', 1), array('active_type', array(0, 1, 2), '请选择开卡方式!', 1, 'in')); $bill = M("BillProject")->find($id); $model = D("Contract"); if (!$model->validate($rules)->create()) { $this->error($model->getError()); } if ($active_type != 2) { $rules = array(array('start_time', '/^\\d{4}-\\d{2}-\\d{2}$/', '请选择合同开始日期!', 1), array('end_time', '/^\\d{4}-\\d{2}-\\d{2}$/', '请选择合同结束日期!', 1)); if (!$model->validate($rules)->create()) { $this->error($model->getError()); } } $cardTypeModel = M("CardType"); $cardType = $cardTypeModel->find($card_type_id); if (empty($cardType)) { $this->error("卡种不存在!"); } $model = D("Contract"); $original_contract = $model->find($bill['object_id']); $member_id = $original_contract['member_id']; $card_id = $original_contract['card_id']; $original_extension = json_encode($original_contract); if (empty($original_contract)) { $this->error("Error"); } if ($original_contract['is_review'] == 1 && !is_user_brand()) { $this->error("此合同已审核,如需修改,请联系管理员! "); } if ($original_contract['is_review'] == 2) { $this->error("此合同已升级作废,如需修改请联系管理员! "); } $cardModel = D("Card"); if ($card_number != $original_contract['card_number']) { $c = $cardModel->getCard($card_number, get_brand_id()); if (empty($c)) { //delete this card is no relate contract $count = $model->where("card_id=" . $original_contract['card_id'])->count(); if ($count == 1) { $card = $cardModel->find($original_contract['card_id']); if (empty($card)) { $card = array("card_number" => $card_number, "member_id" => $member_id, "brand_id" => get_brand_id()); $card_id = $cardModel->data($card)->add(); } else { M("Card")->where("id=" . $original_contract['card_id'])->setField(array("card_number" => $card_number, "is_auto_create" => 0)); } } else { $card = $cardModel->find($card_id); unset($card['id']); $card['create_time'] = getDbTime(); $card['update_time'] = getDbTime(); $card['card_number'] = $card_number; $card_id = $cardModel->data($card)->add(); } } else { if ($c['member_id'] != $member_id) { $this->error("此卡已被占用!请输入其他卡号!"); } $card_id = $c['id']; } } if (!$card_id) { $this->error("开卡失败,请稍后再试!"); } if (I('active_type') == 2) { unset($model->start_time); unset($model->end_time); } $new_contract = $original_contract; $new_contract['card_id'] = $card_id; $new_contract['type'] = $btype; if ($original_contract['card_type_id'] != $card_type_id) { $new_contract['card_type_extension'] = json_encode($cardType); } $new_contract['card_type_id'] = $card_type_id; $new_contract['present_day'] = $present_day; $new_contract['present_num'] = $present_num; $new_contract['price'] = $price; $new_contract['start_time'] = $start_time; $new_contract['end_time'] = $end_time; $new_contract['active_type'] = $active_type; $new_contract['free_rest'] = $free_rest; $new_contract['free_trans'] = $free_trans; if ($original_contract['mc_id'] != $mc_name) { M("MemberBasic")->where("id={$member_id}")->setField(array("mc_id" => $mc_name)); M("BillProject")->where("id={$id}")->setField(array("mc_id" => $mc_name)); } $new_contract['mc_id'] = $mc_name; if (!empty($desc)) { $new_contract['description'] = $desc . ";" . $original_contract['description']; } $new_contract['total_num'] = $present_num + $cardType['valid_number']; $model->data($new_contract)->save(); M("BillProject")->where("id={$id}")->setField(array("price" => $price)); //review $reason = "合同修改"; if (!empty($reason)) { $contract = M("Contract")->find($new_contract["id"]); $data = array("original_extension" => $original_extension, "extension" => json_encode($contract), "reason" => $reason, "record_id" => is_user_login(), "club_id" => get_club_id(), "brand_id" => get_brand_id(), "type" => 0, "status" => 0); M("Review")->data($data)->add(); } $this->success("修改成功"); }
public function manageAction() { // $clubs = D("Club")->getAllClubsName(); if (is_user_brand()) { $channels = D("Channel")->getAllChannelName(); } else { $channels = D("Channel")->getChannelNameByUser(is_user_login()); } // $this->assign("clubs",$clubs); $this->assign("channels", $channels); $this->display(); }
public function queryNewAction() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $filters = I("filters", '', ''); if (empty($filters)) { $this->error("Error"); } $brand_id = get_brand_id(); $club_id = get_club_id(); $valuesql = " select c.id as cid, a.*,c.start_time,c.end_time , c.free_rest as cfree_rest,c.rest_count as crest_count,c.card_type_extension, b.name as member_name,b.id as memberid ,b.phone from yoga_card a,yoga_member_basic b,yoga_contract c where c.invalid=1 and a.brand_id={$brand_id} and a.sale_club={$club_id} and a.member_id=b.id and a.id=c.card_id"; $countsql = "select count(*) as count from yoga_card a,yoga_member_basic b,yoga_contract c where c.invalid=1 and a.brand_id={$brand_id} and a.sale_club={$club_id} and a.member_id=b.id and a.id=c.card_id"; if (is_user_brand()) { $valuesql = " select c.id as cid, a.*,c.start_time,c.end_time , c.card_type_extension,c.free_rest as cfree_rest,c.rest_count as crest_count, b.name as member_name,b.id as memberid ,b.phone from yoga_card a,yoga_member_basic b,yoga_contract c where c.invalid=1 and a.brand_id={$brand_id} and a.member_id=b.id and a.id=c.card_id"; $countsql = "select count(*) as count from yoga_card a,yoga_member_basic b,yoga_contract c where c.invalid=1 and a.brand_id={$brand_id} and a.member_id=b.id and a.id=c.card_id"; } $filters = json_decode($filters); $sql = ""; if ($filters->groupOp == 'AND') { $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "card_id") { $sql .= " and a.card_number " . getOPerationMysql($value->op) . " '{$value->data}'"; } if ($value->field == "name") { $sql .= " and b.name " . getOPerationMysql($value->op) . " '{$value->data}'"; } if ($value->field == "phone") { $sql .= " and b.phone " . getOPerationMysql($value->op) . " '{$value->data}'"; } } } $model = new \Think\Model(); $countsql = $countsql . " " . $sql; $count = $model->query($countsql); $count = $count[0]["count"]; $valuesql = $valuesql . " " . $sql . " order by {$sidx} {$sord} limit {$start},{$limit}"; $clubModel = M("Club"); $ret = $model->query($valuesql); foreach ($ret as $key => $value) { $tempid = $ret[$key]['id']; $ret[$key]['id'] = $ret[$key]['cid']; $ret[$key]['cid'] = $tempid; $ret[$key]["card_type_extension"] = json_decode($ret[$key]["card_type_extension"]); $club = $clubModel->find($value['sale_club']); $ret[$key]['club_name'] = !empty($club) ? $club['club_name'] : ""; } if ($count > 0 && $limit > 0) { $total_pages = ceil($count / $limit); } else { $total_pages = 0; } $response = array("page" => $page, "total" => $total_pages, "records" => $count, "rows" => $ret); $this->ajaxReturn($response); }
public function queryNewAction() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $filters = I("filters", '', ''); $brand_id = get_brand_id(); $club_id = get_club_id(); if (!is_user_brand()) { $valuesql = "select b.status as bstatus, b.card_type_extension, b.free_rest,b.free_trans,b.rest_count,b.trans_count, b.is_review,b.description as `desc`, b.id as contract_id,b.contract_number, a.*,e.name,e.sex,e.phone ,c.card_number ,d.name as card_name,d.type as card_type ,d.price as card_type_price,b.invalid,b.type as btype,b.present_day,b.present_num,b.start_time,b.end_time,b.active_type,b.used_num,b.total_num from yoga_bill_project a inner join yoga_contract b on a.object_id=b.id and a.type in(0,3,4,5) inner join yoga_member_basic e on a.member_id=e.id left join yoga_card c on b.card_id=c.id left join yoga_card_type d on b.card_type_id=d.id where a.sale_club_id={$club_id} "; $countsql = "select count(*) as count from yoga_bill_project a inner join yoga_contract b on a.object_id=b.id and a.type in(0,4,5) inner join yoga_member_basic e on a.member_id=e.id left join yoga_card c on b.card_id=c.id left join yoga_card_type d on b.card_type_id=d.id where a.sale_club_id={$club_id} "; } else { $valuesql = "select b.status as bstatus,b.card_type_extension,b.free_rest,b.free_trans,b.rest_count,b.trans_count,b.is_review,b.description as `desc`, b.id as contract_id,b.contract_number, a.*,e.name,e.sex,e.phone ,c.card_number ,d.name as card_name,d.type as card_type ,d.price as card_type_price,b.invalid,b.type as btype,b.present_day,b.present_num,b.start_time,b.end_time,b.active_type,b.used_num,b.total_num from yoga_bill_project a inner join yoga_contract b on a.object_id=b.id and a.type in(0,3,4,5) inner join yoga_member_basic e on a.member_id=e.id left join yoga_card c on b.card_id=c.id left join yoga_card_type d on b.card_type_id=d.id where a.brand_id={$brand_id} "; $countsql = "select count(*) as count from yoga_bill_project a inner join yoga_contract b on a.object_id=b.id and a.type in(0,4,5) inner join yoga_member_basic e on a.member_id=e.id left join yoga_card c on b.card_id=c.id left join yoga_card_type d on b.card_type_id=d.id where a.brand_id={$brand_id} "; } $filters = json_decode($filters); $sql = ""; if ($filters->groupOp == 'AND') { $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "contract_number") { $sql .= " and b.contract_number " . getOPerationMysql($value->op) . " '{$value->data}'"; } if ($value->field == "card_number") { $sql .= " and c.card_number " . getOPerationMysql($value->op) . " '{$value->data}'"; } if ($value->field == "name") { $sql .= " and e.name " . getOPerationMysql($value->op) . " '{$value->data}'"; } if ($value->field == "phone") { $sql .= " and e.phone " . getOPerationMysql($value->op) . " '{$value->data}'"; } } } // $tail=" and a.id=b.member_id and b.brand_id=$brand_id and b.contract_type=0 and b.card_id=c.id and b.card_type_id=d.id"; $tail = ""; $model = new \Think\Model(); $countsql = $countsql . " " . $sql . $tail; $count = $model->query($countsql); $count = $count[0]["count"]; $valuesql = $valuesql . " " . $sql . $tail . " order by {$sidx} {$sord} limit {$start},{$limit}"; $ret = $model->query($valuesql); foreach ($ret as $key => $value) { $mc = M("UserExtension")->find($value['mc_id']); $recorder = M("UserExtension")->find($value['record_id']); $ret[$key]['mc_name'] = !empty($mc) ? $mc['name_cn'] : "NO MC!"; $ret[$key]['recorder_name'] = !empty($recorder) ? $recorder['name_cn'] : "品牌帐号"; } if ($count > 0 && $limit > 0) { $total_pages = ceil($count / $limit); } else { $total_pages = 0; } $response = array("page" => $page, "total" => $total_pages, "records" => $count, "rows" => $ret); $this->ajaxReturn($response); }
protected function loadMenus() { $menu = C("menus"); //check if i'm a teamleader $model = D("User"); $uid = is_user_login(); // if(!$model->isMcmanager($uid) && $model->isTeamleader($uid) ) if ($model->isTeamleader($uid)) { $menu = array_merge($menu, C("menus_team_leader")); } $auth = new \Think\Auth(); $Model = M("SysConfig"); $config = $Model->find(); foreach ($menu as $key => $value) { $url = $value['url']; $module = explode('/', $url); if (is_user_brand()) { // if(!in_array(strtolower($module[0]), json_decode($config['default_role']))) // { // if(!$auth->check($module[0],is_user_login(),2)) // { // unset($menu[$key]); // continue; // } // } if ($module[0] != "Brand") { unset($menu[$key]); continue; } } else { if ($module[0] != 'Teamleader' && !$auth->check($module[0], is_user_login(), 2)) { unset($menu[$key]); continue; } } } $brand_id = get_brand_id(); if ($brand_id == 35) { $isReception = D("User")->isReception(UID); if ($isReception) { foreach ($menu as $key => $value) { if ($value['title'] == "前台") { $menu[$key]['child'][] = array("id" => 0, "title" => "活动", "pid" => 4, "url" => "Reception/Spider/index"); } } } } $this->assign("menus", $menu); }