public function get_reply_listByid($mer_id, $store_id = 0, $tab = 'all', $order, $pagesize = 0) { $condition_reply_page = $condition_reply = ''; switch ($tab) { case 'high': $condition_reply = '`score`>3 AND '; break; case 'mid': $condition_reply = '`score`=3 AND '; break; case 'low': $condition_reply = '`score`<3 AND '; break; case 'withpic': $condition_reply = "`pic`<>'' AND "; break; } if ($order == 'time') { $condition_order = '`r`.`add_time` DESC'; } elseif ($order == 'score') { $condition_order = '`r`.`score` DESC'; } else { $condition_order = '`r`.`pigcms_id` ASC'; } import('@.ORG.common_page'); $condition_reply_page = !empty($condition_reply) ? " `r`." . $condition_reply . " `r`.`mer_id`='{$mer_id}'" : " `r`.`mer_id`='{$mer_id}'"; $condition_reply_count = $condition_reply . " `mer_id`='{$mer_id}'"; if ($store_id > 0) { $condition_reply_page = $condition_reply_page . " AND `r`.`store_id`='{$store_id}'"; $condition_reply_count = $condition_reply_count . " AND `store_id`='{$store_id}'"; } $reply_count = $this->where($condition_reply_count)->count(); $p = new Page($reply_count, $pagesize); $reply_list = D('')->field('`s`.`name` as store_name,`u`.`nickname`,`u`.`avatar`,`r`.*')->table(array(C('DB_PREFIX') . 'reply' => 'r', C('DB_PREFIX') . 'merchant_store' => 's', C('DB_PREFIX') . 'user' => 'u'))->where($condition_reply_page . " AND `r`.`store_id`=`s`.`store_id` AND `r`.`uid`=`u`.`uid`")->order($condition_order)->limit($p->firstRow . ',' . $pagesize)->select(); if ($reply_list) { $pic_arr = array(); $new_pic_arr = array(); foreach ($reply_list as $key => $value) { $reply_list[$key]['add_time'] = date('Y-m-d', $value['add_time']); if ($value['anonymous']) { if (msubstr($value['nickname'], 0, 2, false) == $value['nickname']) { $reply_list[$key]['nickname'] = msubstr($value['nickname'], 0, 1, false) . '**'; } else { $reply_list[$key]['nickname'] = msubstr($value['nickname'], 0, 1, false) . '**' . msubstr($value['nickname'], -1, 1, false); } } if (!empty($value['pic'])) { $tmp_arr = explode(',', $value['pic']); foreach ($tmp_arr as $v) { $new_pic_arr[$v] = $key; } $pic_arr = array_merge($pic_arr, $tmp_arr); } } if ($pic_arr) { $condition_reply_pic['pigcms_id'] = array('in', implode(',', $pic_arr)); $reply_pic_list = D('Reply_pic')->field('`pigcms_id`,`pic`,order_type')->where($condition_reply_pic)->select(); $reply_image_class = new reply_image(); foreach ($reply_pic_list as $key => $value) { $order_type = intval($value['order_type']); if ($order_type == 0) { $pic_filepath = 'group'; } else { $pic_filepath = 'meal'; } $tmp_value = $reply_image_class->get_image_by_path($value['pic'], $pic_filepath); $reply_list[$new_pic_arr[$value['pigcms_id']]]['pics'][] = $tmp_value; } } } $reply_page = $p->show(); $return['count'] = $reply_count; $return['list'] = $reply_list; $return['page'] = $reply_page; $return['now'] = $p->nowPage; $return['total'] = $p->totalPage; return $return; }
public function reply_del() { $database_reply = D('Reply'); $condition_reply['pigcms_id'] = $_POST['id']; $now_reply = $database_reply->field(true)->where($condition_reply)->find(); if (empty($now_reply)) { $this->frame_error_tips('该评论不存在!'); } if ($database_reply->where($condition_reply)->delete()) { if ($now_reply['pic']) { $reply_image_class = new reply_image(); $reply_image_class->del_image_by_id($now_reply['order_id'], 0); } $database_group = D('Group'); $condition_group['group_id'] = $now_reply['parent_id']; $database_group->where($condition_group)->setDec('reply_count'); $this->success('删除成功!'); } else { $this->error('删除失败!'); } }
public function del_invalid_pic() { if ($_POST['order_type'] == 0) { $pic_filepath = 'group'; } else { $pic_filepath = 'meal'; } $database_reply_pic = D('Reply_pic'); $condition_reply_pic['uid'] = $this->user_session['uid']; $condition_reply_pic['order_type'] = $_POST['order_type']; $condition_reply_pic['order_id'] = $_POST['order_id']; $reply_pic_list = $database_reply_pic->field('`pic`')->where($condition_reply_pic)->select(); if ($reply_pic_list) { $reply_image_class = new reply_image(); foreach ($reply_pic_list as $value) { $reply_image_class->del_image_by_path($value['pic'], $pic_filepath); } $database_reply_pic->where($condition_reply_pic)->delete(); } }