admin/app/branch/model/activity/Activity.php
@@ -3,7 +3,7 @@
namespace app\branch\model\activity;
use app\common\model\branch\Activity as ActivityModel;
use app\common\model\branch\ActivityProduct as ActivityProductModel;
use app\common\model\branch\ActivityProductPrice as ActivityProductPriceModel;
/**
 * 活动模型
@@ -24,14 +24,60 @@
    }
    /**
     * 获取审核列表(审核所有活动)
     */
    public function getAuditList($params)
    {
        $model = $this->with(['image', 'category', 'branch'])
            ->where('is_delete', '=', 0);
        // 按审核状态筛选
        if (isset($params['audit_status']) && $params['audit_status'] !== '') {
            $model = $model->where('audit_status', '=', $params['audit_status']);
        }
        return $model->order(['sort' => 'desc', 'create_time' => 'desc'])
            ->paginate($params);
    }
    /**
     * 审核活动
     */
    public function audit($activity_id, $data)
    {
        $model = ActivityModel::detail($activity_id);
        if (!$model) {
            $this->error = '活动不存在';
            return false;
        }
        $updateData = [
            'audit_status' => $data['audit_status'],
            'audit_time' => time(),
            'audit_remark' => $data['audit_remark'] ?? ''
        ];
        return $model->save($updateData);
    }
    /**
     * 新增记录
     */
    public function add($data, $branch_id)
    {
        $model = new ActivityModel();
        $product = new ActivityProductModel();
        if ($data['is_visit'] == 1) {
            $visitCheck = $this->checkVisitLimit($data['visit_supplier_id'], $data['visit_supplier_name']);
            if ($visitCheck) {
                $this->error = '该企业30天内已被走访,还需等待' . $visitCheck['remaining_days'] . '天才可以重新走访';
                return false;
            }
        }
        $product = new ActivityProductPriceModel();
        $data['app_id'] = self::$app_id;
        $data['branch_id'] = $branch_id;
        // 默认审核状态为待审核
        $data['audit_status'] = 0;
        //报名时间
        $data['register_start_time'] = strtotime($data['reg_date'][0]);
        $data['register_end_time'] = strtotime($data['reg_date'][1]);
@@ -83,7 +129,16 @@
    public function edit($data)
    {
        $model = new ActivityModel();
        $product = new ActivityProductModel();
        $product = new ActivityProductPriceModel();
        // 检查走访企业30天限制(编辑时排除当前活动)
        if (!empty($data['visit_supplier_id']) && $data['is_visit'] == 1) {
            $visitCheck = $model->checkVisitLimit($data['visit_supplier_id'], $data['visit_supplier_name'], $data['activity_id']);
            if ($visitCheck) {
                $this->error = '该企业30天内已被走访,还需等待' . $visitCheck['remaining_days'] . '天才可以重新走访';
                return false;
            }
        }
        //报名时间
        $data['register_start_time'] = strtotime($data['reg_date'][0]);
        $data['register_end_time'] = strtotime($data['reg_date'][1]);