public function queryAction() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $condition = array("a.club_id" => get_club_id()); $filters = I("filters", '', ''); $filters = json_decode($filters); if ($filters->groupOp == 'AND') { $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "name" && !empty($value->data)) { $condition["a.name"] = array("like", "%{$value->data}%"); } if ($value->field == "phone" && !empty($value->data)) { $condition["a.phone"] = $value->data; } } } $model = M("YaaGift"); $ret = $model->table(array("yoga_yaa_gift" => "b", "yoga_member_basic" => "a"))->where($condition)->where("b.member_id=a.id")->field("a.name,a.sex,b.*")->order("{$sidx} {$sord}")->limit("{$start},{$limit}")->select(); foreach ($ret as $key => $value) { $record_id = $value['record_id']; if ($record_id != 0) { $ret[$key]['recorder'] = M("UserExtension")->find($record_id); } } $count = $model->table(array("yoga_yaa_gift" => "a", "yoga_member_basic" => "a", "yoga_user_extension" => "c"))->where($condition)->where("a.member_id=b.id")->order(" {$sidx} {$sord}")->limit("{$start},{$limit}")->count(); 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 getAllCanSaleGoods($club_id = null) { $club_id = empty($club_id) ? get_club_id() : $club_id; $timenow = date("Y-m-d"); $sql = "SELECT b.* FROM yoga_goods_club a,yoga_goods b where a.club_id={$club_id} and a.goods_id = b.id and b.status!=0"; return $this->query($sql); }
public function queryAction() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $model = M("McFollowUp"); $condition = array("a.club_id" => get_club_id(), "a.ret" => array("gt", 0)); $filters = I("filters", '', ''); $filters = json_decode($filters); if ($filters->groupOp == 'AND') { $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "mc_id" && $value->data != -1) { $condition["b.mc_id"] = $value->data; } if ($value->field == "name" && !empty($value->data)) { $condition["b.name"] = array("like", "%{$value->data}%"); } if ($value->field == "phone" && !empty($value->data)) { $condition["b.phone"] = $value->data; } } } $ret = $model->table(array("yoga_mc_follow_up" => "a", "yoga_member_basic" => "b", "yoga_user_extension" => "c"))->where($condition)->where("a.member_id=b.id and b.mc_id=c.id")->field("c.name_cn as mc,b.name,b.sex,b.type,a.is_come,a.come_time,a.appoint_time,a.appoint_time,a.is_come,a.come_time,a.ret,a.id")->order("a.{$sidx} {$sord}")->limit("{$start},{$limit}")->select(); $count = $model->table(array("yoga_mc_follow_up" => "a", "yoga_member_basic" => "b", "yoga_user_extension" => "c"))->where($condition)->where("a.member_id=b.id and b.mc_id=c.id")->count(); 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 queryAction() { $uid = is_user_login(); list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $model = D("ClubClassroom"); $condition = array("club_id" => get_club_id()); $filters = I("filters", '', ''); $filters = json_decode($filters); if ($filters->groupOp == 'AND') { $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "name") { $condition = array_merge($condition, array("name" => array("like", "%{$value->data}%"))); } } } $ret = $model->where($condition)->order("{$sidx} {$sord}")->limit("{$start},{$limit}")->select(); $count = $model->where($condition)->count(); 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 getMonthStatistics($club_id, $start_time, $end_time) { $start_time = $start_time . "-00 00:00:00"; $end_time = $end_time . "-31 23:59:59"; $club_id = empty($club_id) ? get_club_id() : $club_id; $ret = M("ChannelAllStatistics")->where(array("time" => array("between", "{$start_time},{$end_time}"), "club_id" => $club_id))->order("time desc")->select(); $model = M("MemberBasic"); $channelModel = M("Channel"); foreach ($ret as $key => $value) { $time = $value["time"]; $time = substr($time, 0, 7); $ret[$key]['time'] = $time; $start_time = $time . "-00 00:00:00"; $end_time = $time . "-31 23:59:59"; $value = $this->getClubtTotal($start_time, $end_time, $club_id); $ret[$key]["protential_value"] = $value["protential_total"]; $ret[$key]["transform_value"] = $value["transform_total"]; $ret[$key]["channel_value"] = $value["channel_total"]; $total = $this->getClubtTotal('0000-00-00 00:00:00', $end_time, $club_id); $ret[$key]["protential_total"] = $total['protential_total']; $ret[$key]["transform_total"] = $total['transform_total']; $ret[$key]["channel_total"] = $total['channel_total']; } return $ret; }
public function getCanSaleCards($club_id = null) { $club_id = empty($club_id) ? get_club_id() : $club_id; $timenow = date("Y-m-d"); $sql = "SELECT b.* FROM yoga_card_saleclub a,yoga_card_type b where a.club_id={$club_id} and a.card_type_id = b.id and b.start_time <='{$timenow}' and b.end_time >= '{$timenow}' and b.status!=0"; return $this->query($sql); }
public function getAllCanSaleClasses($club_id = null) { $club_id = empty($club_id) ? get_club_id() : $club_id; $timenow = date("Y-m-d"); $sql = "SELECT b.* FROM yoga_pt_club a,yoga_pt_class b where `a`.`club_id`={$club_id} and `a`.`pt_class_id` = `b`.`id` and `b`.`status`!=0"; return $this->query($sql); }
public function getCanUseCards($club_id = null) { $club_id = empty($club_id) ? get_club_id() : $club_id; $timenow = date("Y-m-d"); $sql = "SELECT b.* FROM yoga_card_useclub a,yoga_card_type b where a.club_id={$club_id} and a.card_type_id = b.id"; return $this->query($sql); }
public function paybackdetailAction($id) { $service = \Service\CService::factory("Financial"); $bill = $service->getBillProject("0,3,4,5", $id); $this->assign("bill", $bill); $contract = D('Contract')->relation('card_type')->find($id); $member_id = $contract['member_id']; $member = M('MemberBasic')->find($member_id); $this->assign("member", $member); $this->assign("contract", $contract); $useClubs = D("CardUseclub")->getAllUseClub($contract['card_type']['id']); $clubs = ""; foreach ($useClubs as $key => $value) { if ($key != 0) { $clubs .= "、"; } $clubs .= $value['club_name']; } $this->assign("useClubs", $clubs); //pasy history list($history, $count) = $service->getPayHistoryByBillId($id, 0, 999); $this->assign("history", $history); //all cardtypes that can upgrade to $card_type = $card['card_type']; $cardtypes = D("CardType")->getAllCanUpgrade($contract['start_time'], $contract['card_type']['id']); $this->assign("typesarr", json_encode($cardtypes)); $this->assign("cardtypes", $cardtypes); $this->assign("current_contract", json_encode($contract)); $club = M("Club")->find(get_club_id()); $this->assign("club", $club); $this->assign("print_time", date('Y-m-d H:i:s')); $this->display(); }
public function queryfollowupAction() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $condition = array("club_id" => get_club_id()); $filters = I("filters", '', ''); $filters = json_decode($filters); $sql = ""; $setcreate_time = false; if ($filters->groupOp == 'AND') { $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "mc_id" && $value->data != 0) { $condition["mc_id"] = $value->data; } else { if ($value->field == "ret" && $value->data != -1) { $condition["ret"] = $value->data; } else { if ($value->field == "create_time" && $value->data != 0 && $value->data != -1) { $setcreate_time = true; $day = $value->data - 1; $time = date('Y-m-d', strtotime("{$day} days ago")); $condition["create_time"] = array("gt", $time); } else { if ($value->field == "start_time" && $value->data != 0) { if (isset($condition['create_time'])) { if (!$setcreate_time) { $condition["create_time"] = array("between", $value->data . "," . $condition["create_time"]); } } else { $condition["create_time"] = array("gt", $value->data); } } else { if ($value->field == "end_time" && $value->data != 0) { if (isset($condition['create_time'])) { if (!$setcreate_time) { $condition["create_time"] = array("between", $condition["create_time"][1] . "," . $value->data . " 23:59:59"); } } else { $condition["create_time"] = array("lt", $value->data . " 23:59:59"); } } } } } } } } $model = D("McFollowUp"); $ret = $model->relation(true)->where($condition)->order("{$sidx} {$sord}")->limit("{$start},{$limit}")->select(); // echo $model->getLastSql();die(); $count = $model->where($condition)->count(); 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 getAllContract($member_id, $club_id = null) { if (empty($club_id)) { $club_id = get_club_id(); } $ret = $this->relation(true)->where(array("member_id" => $member_id, "club_id" => $club_id))->order("start_time asc")->select(); return $ret; }
public function queryAction() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $filters = I("filters", '', ''); $brand_id = get_brand_id(); $club_id = get_club_id(); $condition = array("club_id" => $club_id); $filters = json_decode($filters); if ($filters->groupOp == 'AND') { $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "contract_number") { $condition["contract_number"] = $value->data; } if ($value->field == "card_number") { $member_ids = M("Card")->where(array("card_number" => $value->data))->field("group_concat( distinct member_id) as ids")->find(); if (!empty($member_ids)) { $condition["member_id"] = array("in", $member_ids['ids']); } else { $response = array("page" => 0, "total" => 0, "records" => 0, "rows" => ""); $this->ajaxReturn($response); } } if ($value->field == "name") { $member_ids = M("MemberBasic")->where(array("name" => $value->data))->field("group_concat( distinct id) as ids")->find(); if (!empty($member_ids)) { $condition["member_id"] = array("in", $member_ids['ids']); } else { $response = array("page" => 0, "total" => 0, "records" => 0, "rows" => ""); $this->ajaxReturn($response); } } if ($value->field == "phone") { $member_ids = M("MemberBasic")->where(array("phone" => $value->data))->field("group_concat( distinct id) as ids")->find(); if (!empty($member_ids)) { $condition["member_id"] = array("in", $member_ids['ids']); } else { $response = array("page" => 0, "total" => 0, "records" => 0, "rows" => ""); $this->ajaxReturn($response); } } } } $model = D("PtContract"); $count = $model->where($condition)->count(); $ret = $model->relation(true)->where($condition)->order("{$sidx} {$sord}")->limit("{$start},{$limit}")->select(); 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 getOne($mc_id) { $club_id = get_club_id(); //当日潜客 $potential_d = McNewService::getInstance()->getTodayPotentialNumber($mc_id); $potential_all = McNewService::getInstance()->getAllPotentialNumber($mc_id); //成交额 $cardsale_d = McNewService::getInstance()->getTodayCardsSale($mc_id); $cardsale_all = McNewService::getInstance()->getAllCardsSale($mc_id); return array("potential_d" => $potential_d, "potential_all" => $potential_all, "cardsale_d" => $cardsale_d, "cardsale_all" => $cardsale_all); }
public function indexAction() { if (is_user_login()) { if (get_club_id() != 0 || get_brand_id() != 0) { $this->redirect('Home/Main/main'); } else { $this->redirect('Home/Main/main'); } // $this->redirect('Home/Main/teacher'); } $this->display(); }
public function buyAction() { $member_id = I("member_id"); $member = M("MemberBasic")->find(I("member_id")); if (empty($member)) { $this->error("member does not exist"); } $use_recharge = I("use_recharge"); $rules = array(array('pos', 'number', '请输入正确的pos金额!', 1), array('cash', 'number', '请输入正确的现金金额!', 1), array('check', 'number', '请输入正确的支票金额!', 1), array('network', 'number', '请输入正确的支票金额!', 1), array('netbank', 'number', '请输入正确的支票金额!', 1)); $recharge = 0; if ($use_recharge == 1) { $recharge = $member['recharge'] > I("should_pay") ? I("should_pay") : $member['recharge']; } if ($use_recharge == 1 && $recharge != 0) { M("MemberBasic")->where(array("id" => $member_id))->setField("recharge", $member['recharge'] - $recharge); $data = array("member_id" => $member_id, "value" => "-{$recharge}", "record_id" => is_user_login(), "description" => "购定金消费¥{$recharge},余额¥" . ($member['recharge'] - $recharge)); $recharge_id = M("RechargeHistory")->data($data)->add(); } $service = \Service\CService::factory("Financial"); $mc_id = I("type") == 8 ? $member['pt_id'] : $member['mc_id']; $bill_id = $service->addBillProject(I("type"), 0, 0, $member_id, I("should_pay"), 0, get_brand_id(), is_user_login(), get_club_id(), $mc_id, I("description")); if (!$bill_id) { M("MemberBasic")->where(array("id" => $member_id))->setField("recharge", $member['recharge'] + $recharge); if (isset($recharge_id)) { M("RechargeHistory")->delete($recharge_id); } $this->error($service->getError()); } $ret = $service->pay($bill_id, 0, is_user_login(), get_brand_id(), I('description'), I("cash"), I("pos"), I("check"), I("check_num"), get_club_id(), $recharge, I("network"), I("netbank")); if (!$ret) { M("MemberBasic")->where(array("id" => $member_id))->setField("recharge", $member['recharge'] + $recharge); if (isset($recharge_id)) { M("RechargeHistory")->delete($recharge_id); } M("BillProject")->delete($bill_id); $this->error($service->getError()); } if (I("type") == 8) { M("MemberBasic")->where(array("id" => $member_id))->setInc("pt_book_price", I("should_pay")); } if (I("type") == 9) { M("MemberBasic")->where(array("id" => $member_id))->setInc("contract_book_price", I("should_pay")); } // if(!empty($reason)) // { // $contract = M("PtContract")->find($contract_id); // $data=array("extension"=>json_encode($contract),"reason"=>$reason,"record_id"=>is_user_login(),"club_id"=>get_club_id(),"brand_id"=>get_brand_id(),"type"=>1,"status"=>0); // M("Review")->data($data)->add(); // } $this->success("购买成功!", U("Cashier/Book/printreceipts/id/{$ret}")); }
function getautocardnumber() { $max_card = M("Card")->where(array("sale_club" => get_club_id(), "is_auto_create" => 1))->order("card_number desc")->find(); if (empty($max_card)) { $card_number = get_club_id() . "000001"; } else { $card_number = $max_card['card_number'] + 1; } $card_number = preg_replace("/4/", "5", $card_number); $cardModel = D("Card"); while (true) { if ($cardModel->isExist($card_number, get_brand_id())) { $card_number += 1; $card_number = preg_replace("/4/", "5", $card_number); } else { break; } } return $card_number; }
public function getMcs() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $club_id = empty($club_id) ? get_club_id() : $club_id; $where = "a.id=b.id and a.id=c.uid and b.club_id={$club_id} and c.group_id=6"; $filters = I("filters", '', ''); $filters = json_decode($filters); $sql = ""; if ($filters->groupOp == 'AND') { $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "name" && !empty($value->data)) { $name = $value->data; $where .= " and (a.name_cn like '%{$name}%' or a.name_en like '%{$name}%')"; } } } $mcs = M()->where($where)->table(array("yoga_user_extension" => "a", "yoga_user" => "b", "yoga_auth_group_access" => "c"))->field("a.id,a.name_cn,a.group_id,a.work_status")->order("a.group_id")->limit("{$offset},{$num}")->select(); foreach ($mcs as $key => $value) { if ($value['work_status'] == 1) { $group = array("name" => "离职"); $mcs[$key]['group'] = $group; } else { if ($value['group_id'] != 0) { $group = $this->find($value['group_id']); $mcs[$key]['group'] = $group; } else { $mcs[$key]['group'] = null; } } } $count = D("User")->getMcCount(); if ($count > 0 && $limit > 0) { $total_pages = ceil($count / $limit); } else { $total_pages = 0; } $response = array("page" => $page, "total" => $total_pages, "records" => $count, "rows" => $mcs); return $response; }
public function indexAction() { $mcs = D("User")->getMc(); $club_id = get_club_id(); $start_time = date("Y-m"); $ret = array(); $followModel = M("McFollowUp"); foreach ($mcs as $key => $value) { $st = McService::getInstance()->getUserOneMonthStatistics($value['id'], $start_time); $v = array("name" => $value["name_cn"], "protential" => 0, "transform" => 0, "sale" => 0, "invit" => 0); if (!empty($st)) { $v["protential"] = $st[0]['protential_value']; $v["transform"] = $st[0]['transform_value']; } $v["invit"] = $followModel->where(array("mc_id" => $value['id'], "ret" => array("neq", 0)))->count(); $v["goodssale"] = McService::getInstance()->getThisMonthGoodsSale($value['id']); $v["cardsale"] = McService::getInstance()->getThisMonthCardsSale($value['id']); $sale[$key] = $v["goodssale"] + $v["cardsale"]; $ret[] = $v; } array_multisort($sale, SORT_DESC, $ret); $this->assign("heroes", $ret); $this->display(); }
public function queryAction() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $model = D("Channel"); $club_id = get_club_id(); if ($club_id != 0) { $condition = array("club_id" => $club_id); } else { $condition = array("brand_id" => get_brand_id()); } $search = I("_search"); if (!empty($search)) { $condition = array_merge($condition, getOneSearchParams()); } $ret = $model->relation(true)->where($condition)->order("{$sidx} {$sord}")->limit("{$start},{$limit}")->select(); $count = $model->where($condition)->count(); 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 getZhuanrangFee() { $ret = $this->getSystemGoods(self::ZHUANRANG, get_club_id()); return $ret; }
public function queryAction() { list($page, $sidx, $limit, $sord, $start) = getRequestParams(); $condition = array("club_id" => get_club_id(), "is_member" => 1, "recharge" => array("gt", 0)); $filters = I("filters", '', ''); $filters = json_decode($filters); $sql = ""; $setcreate_time = false; if ($filters->groupOp == 'AND') { unset($condition['recharge']); $rules = $filters->rules; foreach ($rules as $key => $value) { if ($value->field == "name" && !empty($value->data)) { $condition["name"] = array("like", "%{$value->data}%"); } else { if ($value->field == "phone" && !empty($value->data)) { $condition["phone"] = $value->data; } else { if ($value->field == "card_number") { $card_number = $value->data; $tmodel = new \Think\Model(); $ids = $tmodel->query("select group_concat( distinct member_id) as ids from yoga_card where card_number='{$card_number}'"); $ids = $ids[0]['ids']; $condition["id"] = array("in", $ids); } } } } } $model = D("MemberBasic"); $ret = $model->relation("mc")->relation(true)->where($condition)->order("{$sidx} {$sord}")->limit("{$start},{$limit}")->select(); $count = $model->where($condition)->count(); 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 addAction() { $model = D("PtClassPublic"); if (!$model->create()) { $this->error($model->getError()); } $pt = M("UserExtension")->find(I("pt_id")); $model->teacher_name = $pt['name_cn']; $time = time(); if (!empty($_FILES["image"]["name"])) { $model->image = "{$time}.jpg"; } $model->club_id = get_club_id(); $model->is_self_add = 0; $id = $model->add(); if (!empty($_FILES["image"]["name"])) { $config["savePath"] = "ptclass"; $upload = new \Think\Upload(); // 实例化上传类 $upload->maxSize = 3145728; // 设置附件上传大小 $upload->exts = array('jpg', 'gif', 'png', 'jpeg'); // 设置附件上传类型 $upload->rootPath = './Public/uploads/'; // 设置附件上传根目录 $upload->savePath = "ptclass/"; $upload->autoSub = false; $upload->replace = true; $upload->saveName = "{$time}"; $info = $upload->upload(); if (!$info) { $model->delete($id); $this->error($upload->getError()); } } $this->success("Success!", U('index')); }
public function showAction($id) { $bill = M("BillProject")->find($id); $this->assign("bill", $bill); $contract = D('Contract')->relation('card_type')->find($bill['object_id']); $member_id = $contract['member_id']; $member = M('MemberBasic')->find($member_id); $card_id = $contract['card_id']; $card = M("Card")->find($card_id); $this->assign("member", $member); $this->assign("card", $card); $this->assign("contract", $contract); $mc_id = $contract['mc_id']; if ($mc_id != 0) { $mc = M("UserExtension")->find($mc_id); $mc_name = $mc['name_cn']; $this->assign("mc_name", $mc_name); } $useClubs = D("CardUseclub")->getAllUseClub($contract['card_type']['id']); $clubs = ""; foreach ($useClubs as $key => $value) { if ($key != 0) { $clubs .= "、"; } $clubs .= $value['club_name']; } $this->assign("useClubs", $clubs); //pasy history $service = \Service\CService::factory("Financial"); list($history, $count) = $service->getPayHistoryByBillId($id, 0, 999); $via = array(); $via_cash = $via_check = $via_pos = false; $cashier_id = $contract['record_id']; foreach ($history as $key => $value) { if ($value['cash'] > 0 && !$via_cash) { $via[] = "现金/Cash"; $via_cash = true; } if ($value['check'] > 0 && !$via_check) { $via[] = "支票/Check"; $via_cash = true; } if ($value['pos'] > 0 && !$via_pos) { $via[] = "刷卡/Pos"; $via_cash = true; } $cashier_id = $value['record_id']; } $cashier = M("UserExtension")->find($cashier_id); $cashier_name = $cashier['name_cn']; $this->assign("cashier_name", $cashier_name); $via = implode(",", $via); $this->assign("via", $via); $this->assign("history", $history); $this->assign("historycount", count($history)); //all cardtypes that can upgrade to $card_type = $card['card_type']; $cardtypes = D("CardType")->getAllCanUpgrade($contract['start_time'], $contract['card_type']['id']); $this->assign("typesarr", json_encode($cardtypes)); $this->assign("cardtypes", $cardtypes); $this->assign("current_contract", json_encode($contract)); $shopkeeper = D("User")->getShopkeeper(); if (!empty($shopkeeper)) { $shopkeeper_name = $shopkeeper[0]['name_cn']; $this->assign("shopkeeper_name", $shopkeeper_name); } $club = M("Club")->find(get_club_id()); $this->assign("club", $club); $this->assign("print_time", date('Y-m-d H:i:s')); $content = $this->fetch(""); $this->ajaxReturn($content); }
protected function edit() { $id = I("id"); $rules = array(array('total', '/^\\d+(\\.\\d+)?$/', '请输入正确的项目总价!', 1), array('cash', '/^\\d+(\\.\\d+)?$/', '请输入正确的现金金额!', 1), array('pos', '/^\\d+(\\.\\d+)?$/', '请输入正确的POS金额!', 1), array('check', '/^\\d+(\\.\\d+)?$/', '请输入正确的支票金额!', 1), array('recharge', '/^\\d+(\\.\\d+)?$/', '请输入正确的储值卡金额!', 1)); $model = D("PayHistory"); if (!$model->validate($rules)->create()) { $this->error($model->getError()); } $projectModel = M("BillProject"); $pay_history = $model->relation(true)->find($id); $pay_history['member'] = M("MemberBasic")->find($pay_history['bill']['member_id']); $new_pay = $pay_history; $new_pay['cash'] = I("cash"); $new_pay['pos'] = I("pos"); $new_pay['check'] = I("check"); $new_pay['recharge'] = I("recharge"); $new_pay['network'] = I("network"); $new_pay['netbank'] = I("netbank"); $new_pay['create_time'] = I("create_time"); $ret = $model->data($new_pay)->save(); if ($ret === false) { $this->error($model->getError()); } $paid = $pay_history['cash'] + $pay_history['pos'] + $pay_history['check'] + $pay_history['recharge'] + $pay_history['network'] + $pay_history['netbank']; $projectModel->where(array("id" => $pay_history['bill_project_id']))->setField("price", I("total")); $new_paid = I("cash") + I("pos") + I("check") + I("recharge"); $interval = $new_paid - $paid; if ($pay_history['bill']['type'] == 7) { $ret = M("MemberBasic")->where(array("id" => $pay_history['bill']['member_id']))->setInc("recharge", $interval); } else { $ret = M("BillProject")->where(array("id" => $pay_history['bill_project_id']))->setInc("paid", $interval); } $reason = "修改消费记录"; $new_pay['member'] = M("MemberBasic")->find($new_pay['bill']['member_id']); $new_pay['bill'] = M("BillProject")->find($pay_history['bill_project_id']); $data = array("original_extension" => json_encode($pay_history), 'extension' => json_encode($new_pay), "reason" => $reason, "record_id" => is_user_login(), "club_id" => get_club_id(), "brand_id" => get_brand_id(), "type" => 3, "status" => 0); M("Review")->data($data)->add(); $response = array("success" => true, "message" => "success!", "new_id" => $id); $this->ajaxReturn($response); }
public function queryMemberAction($name) { if (empty($name)) { $this->ajaxReturn(array("status" => 0, "info" => "请输入查询信息!")); } $club_id = get_club_id(); $model = M("MemberBasic"); $condition = array("club_id" => $club_id, "_complex" => array("name" => array("like", "%{$name}%"), "phone" => $name, "_logic" => "or")); $members = $model->where($condition)->select(); $this->ajaxReturn(array("status" => 1, "data" => $members)); }
public function addAction() { $rules = array(array('username', '1,30', "用户名至少1-30位!", 1, 'length'), array('username', '', "用户名已被注册!", 1, 'unique'), array('password', '6,30', "密码至少6-30位!", 1, 'length'), array('confirm_password', 'password', '确认密码不正确!', 1, 'confirm'), array('name_cn', 'require', "请输入中文名!", 1), array('name_en', 'require', "请输入英文名!", 1), array('identity_card', '/^\\d{15}$|^\\d{17}(\\d|[Xx])$/', "身份证号码不对!", 2)); $userModel = M("User"); $extensionModel = M("UserExtension"); if (!$userModel->validate($rules)->create()) { $this->error($userModel->getError()); } else { $userModel->brand_id = get_brand_id(); $userModel->club_id = get_club_id(); $userModel->password = ucenter_md5(I("password"), C("MD5_SECRET_KEY")); $userModel->update_time = getDbTime(); $id = $userModel->add(); if (!$extensionModel->create()) { $userModel->delete($id); $this->error($extensionModel->getError()); } else { $avatar = "default.jpg"; if (!empty($_FILES["avatar"]["name"])) { $config["savePath"] = "em_avatar"; $upload = new \Think\Upload(); // 实例化上传类 $upload->maxSize = 31457280; // 设置附件上传大小 $upload->exts = array('jpg', 'gif', 'png', 'jpeg'); // 设置附件上传类型 $upload->rootPath = './Public/uploads/'; // 设置附件上传根目录 $upload->savePath = "em_avatar/"; $upload->autoSub = false; $upload->replace = true; $upload->saveName = "{$id}"; $info = $upload->upload(); if (!$info) { $userModel->delete($id); $this->error($upload->getError()); } else { $avatar = $info["avatar"]['savename']; } } $extensionModel->id = $id; $extensionModel->avatar = $avatar; $extensionModel->update_time = getDbTime(); $extensionModel->add(); //add roles $roles = I('roles'); foreach ($roles as $key => $value) { M("AuthGroupAccess")->data(array("uid" => $id, "group_id" => $value))->add(); } } } $this->success('成功!', U('Shopkeeper/Employee/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 getChannelUser($club_id = null) { $club_id = empty($club_id) ? get_club_id() : $club_id; return $this->where("a.id=b.id and a.id=c.uid and b.club_id={$club_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(); }
public function existAction() { $club_id = get_club_id(); $model = M("MemberBasic"); $member = $model->where(array("club_id" => $club_id, "name" => I("name"), "phone" => I("phone")))->find(); if (!empty($member)) { $this->ajaxReturn(array("status" => 0, "id" => $member["id"])); } else { $this->ajaxReturn(array("status" => 1)); } }
public function editoneAction() { $time = I("time"); $time = $time . "-01"; $club_id = get_club_id(); $user_id = I("user_id"); $model = D("McPlan"); $ret = $model->where(array("time" => $time, "club_id" => $club_id, "user_id" => $user_id))->find(); if (!$model->create()) { $this->error($model->getError()); } $model->time = $time; if (empty($ret)) { $model->add(); $this->success("新增计划成功!"); } else { $model->id = $ret['id']; $model->save(); $this->success("修改计划成功!"); } }