public static function balance($amount, $user_id, $note = '', $type = 0, $admin_id = 0) { //事件类型: 0:订单支付 1:用户充值 2:管理员充值 3:提现 $model = new Model('customer'); $customer = $model->fields("balance")->where("user_id=" . $user_id)->find(); if ($customer) { $log = array('amount' => $amount, 'user_id' => $user_id, 'time' => date('Y-m-d H:i:s'), 'amount_log' => $customer['balance'], 'admin_id' => $admin_id, 'type' => $type, 'note' => $note); $model->table("balance_log")->data($log)->insert(); } }
public function getOrderGoods($order_id) { $model = new Model("order_goods"); if ($order_id != '') { //product_id, goods_nums, prom_type $order_goods = $model->fields("*")->where('order_id=' . $order_id)->findAll(); return $order_goods; } else { return NULL; } }
public function getFlashSaleWithProducts() { $model = new Model("flash_sale"); // $productSel = $model->limit(1)->fields("tiny_flash_sale.*, tiny_goods.name, tiny_goods.store_nums left join tiny_goods")->find(); $productSel = $model->fields("*")->findAll(); if ($productSel) { Tiny::log($productSel); return $productSel; } else { return NULL; } }
public function brand_series() { $model = new Model('brand as br'); $result = $model->fields('br.*,se.id as sid,se.name as sname')->join('left join series as se on se.brand_id = br.id')->order('br.id')->findAll(); if ($result) { foreach ($result as $key => $value) { $id = "o_" . $value['id']; $list["{$id}"]['t'] = $value['name']; if ($value['sid'] != null) { $list[$id]['c']["o_" . $value['sid']]['t'] = $value['sname']; } } } echo JSON::encode($list); }
public function send_notify() { $condition = Req::args("condition"); $notify_model = new Model("notify as n"); $condition = Common::str2where($condition); if ($condition != null) { $items = $notify_model->fields("n.*,go.name as goods_name,u.name as user_name")->join("left join user as u on n.user_id = u.id left join goods as go on n.goods_id = go.id")->where($condition)->findAll(); $mail = new Mail(); $msg_model = new Model("msg_template"); $template = $msg_model->where("id=1")->find(); $success = 0; $fail = 0; foreach ($items as $item) { $subject = str_replace(array('{$user_name}', '{$goods_name}'), array($item['user_name'], $item['goods_name']), $template['title']); $body = str_replace(array('{$user_name}', '{$goods_name}'), array($item['user_name'], $item['goods_name']), $template["content"]); $status = $mail->send_email($item['email'], $subject, $body); if ($status) { $data = array('notify_time' => date('Y-m-d H:i:s'), 'notify_status' => '1'); $notify_model->data($data)->where('id=' . $item['id'])->update(); $success++; } else { $fail++; } } $return = array('isError' => false, 'count' => count($items), 'success' => $success, 'fail' => $fail); } else { $return = array('isError' => true, 'msg' => '没有选择筛选条件!'); } echo JSON::encode($return); }
public function area_op() { $id = Filter::int(Req::args('id')); $op = Req::args('op'); $model = new Model('area'); $cache = CacheFactory::getInstance(); $info = array('status' => 'success', 'msg' => ''); switch ($op) { case 'up': case 'down': $area = $model->where('id=' . $id)->find(); $objs = $model->where('parent_id=' . $area['parent_id'])->order('sort')->findAll(); $perv = $curr = $next = false; $last = end($objs); reset($objs); foreach ($objs as $obj) { if ($area['id'] == $obj['id']) { $curr = $obj; if ($curr['id'] == $last['id']) { $next = false; end($objs); $prev = prev($objs); } else { $next = current($objs); $prev = prev($objs); $prev = prev($objs); } break; } } if ($op == 'up') { if ($prev) { $curr_sort = $prev['sort']; $prev_sort = $curr['sort']; $model->data(array('sort' => $curr_sort))->where('id=' . $curr['id'])->update(); $model->data(array('sort' => $prev_sort))->where('id=' . $prev['id'])->update(); $cache->delete("_AreaData"); } } else { if ($next) { $curr_sort = $next['sort']; $next_sort = $curr['sort']; $model->data(array('sort' => $curr_sort))->where('id=' . $curr['id'])->update(); $model->data(array('sort' => $next_sort))->where('id=' . $next['id'])->update(); $cache->delete("_AreaData"); } } $info = array('status' => 'success', 'msg' => '排序已更新'); break; case 'add': $objs = $model->fields('max(sort) as sort')->where('parent_id=' . $id)->query(); if ($objs) { $sort = $objs[0]['sort']; $sort++; } else { $sort = 1; } $name = Filter::sql(Req::args('name')); $model->data(array('name' => $name, 'parent_id' => $id, 'sort' => $sort))->insert(); $cache->delete("_AreaData"); $info = array('status' => 'success', 'msg' => '成功添加节点'); break; case 'edit': $name = Filter::sql(Req::args('name')); $model->data(array('name' => $name))->where('id=' . $id)->update(); $cache->delete("_AreaData"); $info = array('status' => 'success', 'msg' => '节点已更新'); break; case 'del': $obj = $model->where('parent_id=' . $id)->find(); if (!$obj) { $model->where('id=' . $id)->delete(); $cache->delete("_AreaData"); $info = array('status' => 'success', 'msg' => '节点已经删除'); } else { $info = array('status' => 'fail', 'msg' => '子节点还有节点,无法删除'); } break; } echo JSON::encode($info); }
public function area_buy() { $cal = $this->calendar(); $stime = $cal['start']; $etime = $cal['end']; $s_time = $cal['str']; $model = new Model("order as od"); $rows = $model->fields("count(*) as num, province,ae.name as pro_name")->join("left join area as ae on od.province = ae.id ")->where("pay_time between '{$stime}' and '{$etime}' and pay_status = 1")->group("od.province")->query(); $mapdata = array(); foreach ($rows as $row) { $mapdata[] = "'" . preg_replace("/(\\s|省|市)/", '', $row['pro_name']) . "'" . ':' . $row['num']; } $this->assign('mapdata', implode(',', $mapdata)); $this->assign('s_time', $s_time); $this->redirect(); }
public function flash() { $this->assign('seo_title', '精品热卖'); $this->assign('seo_keywords', '抢购,优惠促销精选,限时抢购,更多优惠.'); $model = new Model('flash_sale as fs'); // EC 变更 2015-06-08 16:05 今日特卖没有的场合,bug对应 START // $listTop = array(); // $listPart = array(); $listTop = null; $listPart = null; // EC 变更 2015-06-08 16:05 今日特卖没有的场合,bug对应 END $current_time = date('Y-m-d H:i:s'); $isEnd_0 = 'fs.is_end = 0'; $isEnd_1 = 'fs.is_end = 1'; $beforeNow = 'fs.start_time <= "' . $current_time . '"'; $afterNow = 'fs.start_time > "' . $current_time . '"'; $start_time_DESC = 'fs.start_time DESC'; $start_time_ASC = 'fs.start_time ASC'; $left_join = 'left join goods as gd on gd.id = fs.goods_id'; $and = ' and '; //判断是否有进行中的活动 $hasFlash = $model->where($isEnd_0 . $and . $beforeNow)->find(); //判断是否有即将开始的活动 $willFlash = $model->where($isEnd_1 . $and . $afterNow)->find(); //进行中和马上开始 混在 if ($hasFlash && $willFlash) { // EC 变更 2015-06-22 12:05 今日特卖宣传图片不表示的场合,bug对应 START // $listTop = $model->join($left_join)->where($isEnd_0.$and.$beforeNow)->order($start_time_DESC)->find(); $listTop = $model->fields("fs.id, fs.title, fs.max_num, fs.quota_num, fs.price, fs.goods_id, fs.description, fs.start_time, fs.end_time, fs.goods_num, fs.order_num, fs.is_end, fs.img as fs_img, gd.*")->join($left_join)->where($isEnd_0 . $and . $beforeNow)->order($start_time_DESC)->find(); // EC 变更 2015-06-22 12:05 今日特卖宣传图片不表示的场合,bug对应 END $list1 = $model->join($left_join)->where($isEnd_0 . $and . $beforeNow . $and . 'fs.goods_id <>' . $listTop['goods_id'])->order($start_time_DESC)->findAll(); $list2 = $model->join($left_join)->where($isEnd_1 . $and . $afterNow)->order($start_time_ASC)->findAll(); $listPart = array_merge($list1, $list2); } //只有进行中 if ($hasFlash && !$willFlash) { // EC 变更 2015-06-22 12:05 今日特卖宣传图片不表示的场合,bug对应 START // $listTop = $model->join($left_join)->where($isEnd_0.$and.$beforeNow)->order($start_time_DESC)->find(); $listTop = $model->fields("fs.id, fs.title, fs.max_num, fs.quota_num, fs.price, fs.goods_id, fs.description, fs.start_time, fs.end_time, fs.goods_num, fs.order_num, fs.is_end, fs.img as fs_img, gd.*")->join($left_join)->where($isEnd_0 . $and . $beforeNow)->order($start_time_DESC)->find(); // EC 变更 2015-06-22 12:05 今日特卖宣传图片不表示的场合,bug对应 END $list1 = $model->join($left_join)->where($isEnd_0 . $and . $beforeNow . $and . 'fs.goods_id <>' . $listTop['goods_id'])->order($start_time_DESC)->findAll(); $listPart = array_merge($list1); } //只有即将开始 if (!$hasFlash && $willFlash) { // EC 变更 2015-06-22 12:05 今日特卖宣传图片不表示的场合,bug对应 START // $listTop = $model->join($left_join)->where($isEnd_1.$and.$afterNow)->order($start_time_ASC)->find(); $listTop = $model->fields("fs.id, fs.title, fs.max_num, fs.quota_num, fs.price, fs.goods_id, fs.description, fs.start_time, fs.end_time, fs.goods_num, fs.order_num, fs.is_end, fs.img as fs_img, gd.*")->join($left_join)->where($isEnd_1 . $and . $afterNow)->order($start_time_ASC)->find(); // EC 变更 2015-06-22 12:05 今日特卖宣传图片不表示的场合,bug对应 END $list1 = $model->join($left_join)->where($isEnd_1 . $and . $afterNow . $and . 'fs.goods_id <>' . $listTop['goods_id'])->order($start_time_ASC)->findAll(); $listPart = array_merge($list1); } // $instFlashSale = new FlashSale(); // $goodSel = $instFlashSale->getFlashSaleWithProducts(); // EC 变更 2015-06-22 12:05 今日特卖宣传图片不表示的场合,bug对应 START if (!isset($listTop["fs_img"]) || $listTop["fs_img"] == "") { $listTop["is_has_fs_img"] = false; } else { $listTop["is_has_fs_img"] = true; } // EC 变更 2015-06-22 12:05 今日特卖宣传图片不表示的场合,bug对应 END $this->assign("listPart", $listPart); $this->assign("listTop", $listTop); //手机端专用 // EC 变更 2015-06-08 16:05 今日特卖没有的场合,bug对应 START $listAll = null; if ($listTop) { $listTmp = array(); array_push($listTmp, $listTop); $listAll = $listTmp; if ($listPart) { $listAll = array_merge($listTmp, $listPart); $this->assign("listAll", $listAll); } } // EC 变更 2015-06-08 16:05 今日特卖没有的场合,bug对应 END $this->assign("listAll", $listAll); $this->redirect(); }