StopController.class.php 1.42 KB
<?php
/**
 * 【销售活动-后台】活动提前终止接口
 *
 * User: WJY
 * Date: 2017-11-02
 */

namespace Apicp\Controller\Activity;

use Common\Model\ActivityModel;
use Common\Service\ActivityService;

class StopController extends \Apicp\Controller\AbstractController
{

    public function Index_post()
    {

        $activity_serv = new ActivityService();

        $ac_id = I('post.ac_id', 0, 'intval');
        // 活动ID为空验证
        if (empty($ac_id)) {

            E('_EMPTY_ACTIVITY_ID');
        }

        // 获取活动详情
        $data = $activity_serv->get($ac_id);
        // 活动存在性验证
        if (empty($data)) {

            E('_ERR_ACTIVITY_DATA');
        }

        // 判断该活动是否是进行中的活动
        if (ActivityModel::ACTIVITY_PUBLISH == $data['activity_status'] && $data['begin_time'] <= MILLI_TIME &&
            ($data['end_time'] > MILLI_TIME || $data['begin_time'] <= MILLI_TIME && $data['end_time'] == 0)) {

            // 组装更新数据
            $u_data = [
                'activity_status' => ActivityModel::ACTIVITY_STOP,
                'last_time' => MILLI_TIME,
            ];

            //  判断是否更新成功
            if (!$activity_serv->update($ac_id, $u_data)) {

                return false;
            }
        } else {
            // 活动正在进行中
            E('_ERR_ACTIVITY_NOT_ING');
        }

        return true;
    }
}