Answer.php 6.1 KB
Newer Older
D
v1.2.0  
devil_gong 已提交
1 2 3 4
<?php
// +----------------------------------------------------------------------
// | ShopXO 国内领先企业级B2C免费开源电商系统
// +----------------------------------------------------------------------
D
devil_gong 已提交
5
// | Copyright (c) 2011~2019 http://shopxo.net All rights reserved.
D
v1.2.0  
devil_gong 已提交
6 7 8 9 10 11 12
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: Devil
// +----------------------------------------------------------------------
namespace app\admin\controller;

13
use app\service\AnswerService;
D
v1.2.0  
devil_gong 已提交
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36

/**
 * 问答管理
 * @author   Devil
 * @blog     http://gong.gg/
 * @version  0.0.1
 * @datetime 2016-12-01T21:51:08+0800
 */
class Answer extends Common
{
	/**
	 * 构造方法
	 * @author   Devil
	 * @blog     http://gong.gg/
	 * @version  0.0.1
	 * @datetime 2016-12-03T12:39:08+0800
	 */
	public function __construct()
	{
		// 调用父类前置方法
		parent::__construct();

		// 登录校验
D
devil_gong 已提交
37
		$this->IsLogin();
D
v1.2.0  
devil_gong 已提交
38 39

		// 权限校验
D
devil_gong 已提交
40
		$this->IsPower();
D
v1.2.0  
devil_gong 已提交
41 42 43 44 45 46 47 48 49 50 51
	}

	/**
     * 问答列表
     * @author   Devil
     * @blog     http://gong.gg/
     * @version  0.0.1
     * @datetime 2016-12-06T21:31:53+0800
     */
	public function Index()
	{
D
devil 已提交
52 53
		// 总数
        $total = AnswerService::AnswerTotal($this->form_where);
D
v1.2.0  
devil_gong 已提交
54 55

        // 分页
D
devil 已提交
56 57 58 59 60 61 62
        $page_params = [
            'number'    =>  $this->page_size,
            'total'     =>  $total,
            'where'     =>  $this->data_request,
            'page'      =>  $this->page,
            'url'       =>  MyUrl('admin/answer/index'),
        ];
D
v1.2.0  
devil_gong 已提交
63 64 65
        $page = new \base\Page($page_params);

        // 获取列表
D
devil 已提交
66 67 68 69
        $data_params = [
            'where'         => $this->form_where,
            'm'             => $page->GetPageStarNumber(),
            'n'             => $this->page_size,
70
            'order_by'      => $this->form_order_by['data'],
D
devil 已提交
71 72 73
            'is_public'     => 0,
        ];
        $ret = AnswerService::AnswerList($data_params);
D
v1.2.0  
devil_gong 已提交
74

D
devil 已提交
75 76 77 78
		// 基础参数赋值
        $this->assign('params', $this->data_request);
        $this->assign('page_html', $page->GetPageHtml());
        $this->assign('data_list', $ret['data']);
D
v1.2.0  
devil_gong 已提交
79 80 81
        return $this->fetch();
	}

D
devil 已提交
82
    /**
D
devil 已提交
83
     * 详情
D
devil 已提交
84 85 86 87 88
     * @author  Devil
     * @blog    http://gong.gg/
     * @version 1.0.0
     * @date    2020-06-30
     * @desc    description
D
devil 已提交
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
     */
    public function Detail()
    {
        if(!empty($this->data_request['id']))
        {
            // 条件
            $where = [
                ['id', '=', intval($this->data_request['id'])],
            ];

            // 获取列表
            $data_params = [
                'm'             => 0,
                'n'             => 1,
                'where'         => $where,
                'is_public'     => 0,
            ];
            $ret = AnswerService::AnswerList($data_params);
            $data = (empty($ret['data']) || empty($ret['data'][0])) ? [] : $ret['data'][0];
            $this->assign('data', $data);
        }
        return $this->fetch();
    }

G
gongfuxiang 已提交
113 114 115 116 117 118 119 120 121 122
    /**
     * [SaveInfo 添加/编辑页面]
     * @author   Devil
     * @blog     http://gong.gg/
     * @version  0.0.1
     * @datetime 2016-12-14T21:37:02+0800
     */
    public function SaveInfo()
    {
        // 参数
D
devil 已提交
123
        $params = $this->data_request;
G
gongfuxiang 已提交
124 125 126 127 128 129 130

        // 数据
        $data = [];
        if(!empty($params['id']))
        {
            // 获取列表
            $data_params = array(
D
devil_gong 已提交
131 132 133 134 135
                'm'         => 0,
                'n'         => 1,
                'where'     => ['id'=>intval($params['id'])],
                'field'     => '*',
                'is_public' => 0,
G
gongfuxiang 已提交
136 137
            );
            $ret = AnswerService::AnswerList($data_params);
G
gongfuxiang 已提交
138 139 140 141 142 143 144 145 146 147 148 149 150

            // 内容
            if(!empty($ret['data'][0]['content']))
            {
                $ret['data'][0]['content'] = str_replace('<br />', "\n", $ret['data'][0]['content']);
            }

            // 回复内容
            if(!empty($ret['data'][0]['reply']))
            {
                $ret['data'][0]['reply'] = str_replace('<br />', "\n", $ret['data'][0]['reply']);
            }

G
gongfuxiang 已提交
151 152 153 154
            $data = empty($ret['data'][0]) ? [] : $ret['data'][0];
        }
        $this->assign('data', $data);

D
devil_gong 已提交
155
        // 静态数据
G
gongfuxiang 已提交
156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180
        $this->assign('common_is_show_list', lang('common_is_show_list'));
        $this->assign('common_is_text_list', lang('common_is_text_list'));

        // 参数
        unset($params['id']);
        $this->assign('params', $params);
        return $this->fetch();
    }

    /**
     * [Save 保存]
     * @author   Devil
     * @blog     http://gong.gg/
     * @version  0.0.1
     * @datetime 2016-12-25T22:36:12+0800
     */
    public function Save()
    {
        // 是否ajax请求
        if(!IS_AJAX)
        {
            return $this->error('非法访问');
        }

        // 开始处理
D
devil 已提交
181
        $params = $this->data_request;
G
gongfuxiang 已提交
182 183 184
        return AnswerService::AnswerSave($params);
    }

D
v1.2.0  
devil_gong 已提交
185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200
	/**
	 * 问答删除
	 * @author   Devil
	 * @blog     http://gong.gg/
	 * @version  0.0.1
	 * @datetime 2016-12-15T11:03:30+0800
	 */
	public function Delete()
	{
		// 是否ajax请求
        if(!IS_AJAX)
        {
            return $this->error('非法访问');
        }

        // 开始处理
D
devil 已提交
201
        $params = $this->data_request;
D
v1.2.0  
devil_gong 已提交
202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221
        $params['user_type'] = 'admin';
        return AnswerService::AnswerDelete($params);
	}

	/**
	 * 问答回复处理
	 * @author   Devil
	 * @blog     http://gong.gg/
	 * @version  1.0.0
	 * @datetime 2018-03-28T15:07:17+0800
	 */
	public function Reply()
	{
		// 是否ajax请求
		if(!IS_AJAX)
		{
			return $this->error('非法访问');
		}

		// 开始处理
D
devil 已提交
222
        $params = $this->data_request;
D
v1.2.0  
devil_gong 已提交
223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241
        return AnswerService::AnswerReply($params);
	}

	/**
	 * 状态更新
	 * @author   Devil
	 * @blog     http://gong.gg/
	 * @version  0.0.1
	 * @datetime 2017-01-12T22:23:06+0800
	 */
	public function StatusUpdate()
	{
		// 是否ajax请求
		if(!IS_AJAX)
		{
			return $this->error('非法访问');
		}

		// 开始处理
D
devil 已提交
242
        $params = $this->data_request;
D
v1.2.0  
devil_gong 已提交
243 244 245 246
        return AnswerService::AnswerStatusUpdate($params);
	}
}
?>