RepairOrderRepository.php 2.59 KB
<?php

namespace domain\order;

use Yii;
use domain\order\models\RepairOrder as RepairOrderModel;
use domain\order\models\RepairOrderImages as RepairOrderImagesModel;
use domain\order\models\RepairOrderRepairPlan as RepairOrderRepairPlanModel;
use domain\order\models\RepairFinishImages as RepairFinishImagesModel;

/**
 * 维修订单
 */
class RepairOrderRepository
{
    /**
     * @param $condition
     * @return static
     */
    static function findOne($condition)
    {
        return RepairOrderModel::findOne($condition);
    }

    /**
     * 获取列表数据
     * @param $offset
     * @param $limit
     * @param $map
     * @return array|\yii\db\ActiveRecord[]
     */
    public static function getList($offset, $limit, $map, $orderDesc = '')
    {
        $order = RepairOrderModel::tableName();
        $orderFind = RepairOrderModel::find();
        $orderFind->select([$order.".*"]);
        $orderFind->where($map);
        if (empty($orderDesc)) {
            $orderDesc = "{$order}.created_at desc";
        }
        $orderFind->orderBy($orderDesc);

        return $orderFind->offset($offset)->limit($limit)->asArray()->all();
    }

    /**
     * 获取总记录数
     * @param $map
     * @return int|string
     */
    public static function getListCount($map)
    {
        $order = RepairOrderModel::tableName();
        $orderFind = RepairOrderModel::find();
        $orderFind->where($map);
        return $orderFind->count();
    }

    /**
     * @param $condition
     * @return array|null|\yii\db\ActiveRecord[]
     */
    static function findOrderImageAll($condition)
    {
        if (empty($condition)) {
            return null;
        }
        $repairOrderImage = RepairOrderImagesModel::find();
        $repairOrderImage->where($condition);
        $images = $repairOrderImage->all();

        return $images;
    }

    /**
     * @param $condition
     * @return array|null|\yii\db\ActiveRecord[]
     */
    static function findOrderPlansAll($condition)
    {
        if (empty($condition)) {
            return null;
        }
        $repairPlans = RepairOrderRepairPlanModel::find();
        $repairPlans->where($condition);
        $plans = $repairPlans->all();

        return $plans;
    }

    /**
     * @param $condition
     * @return array|null|\yii\db\ActiveRecord[]
     */
    static function findOrderFinishImageAll($condition)
    {
        if (empty($condition)) {
            return null;
        }
        $repairFinishImage = RepairFinishImagesModel::find();
        $repairFinishImage->where($condition);
        $images = $repairFinishImage->all();

        return $images;
    }
}