Example #1
0
 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();
     }
 }
Example #2
0
 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;
     }
 }
Example #3
0
 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;
     }
 }
Example #4
0
 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);
 }
Example #5
0
 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);
 }
Example #6
0
 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);
 }
Example #7
0
 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();
 }
Example #8
0
 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();
 }