ProjectAssociationLogic.php 1.4 KB
<?php

namespace App\Http\Logic\Aside\ProjectAssociation;

use App\Enums\Common\Code;
use App\Http\Logic\Logic;
use App\Models\ProjectAssociation\ProjectAssociation;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;

class ProjectAssociationLogic extends Logic
{
    public function saveWeChatData($data)
    {
        $wx = new ProjectAssociation();
        DB::beginTransaction();
        try {
            $status = $wx->saveData($data);
            DB::commit();
        } catch (\Exception $e) {
            DB::rollBack();
            $e->getMessage();
            errorLog('V6与AICC关联失败', $wx, $e);
            $this->fail('请检查操作是否正确!', Code::SERVER_MYSQL_ERROR);
        }
        return $status;
    }

    /**
     * status - 正常
     * @param $project_id
     * @return ProjectAssociation|Builder|Model|object|null
     */
    public function normal($project_id)
    {
        return ProjectAssociation::query()->whereProjectId($project_id)->whereStatus(ProjectAssociation::STATUS_NORMAL)->first();
    }


    /**
     * status - 禁用
     * @param $project_id
     * @return ProjectAssociation|Builder|Model|object|null
     */
    public function disabled($project_id)
    {
        return ProjectAssociation::query()->whereProjectId($project_id)->whereStatus(ProjectAssociation::STATUS_DISABLED)->first();
    }
}