sirclo-bachtiar/magento-helpers-v2

1.1.5 2022-08-19 08:07 UTC

This package is auto-updated.

Last update: 2024-09-19 12:44:23 UTC


README

服务助手。

此服务用于在工作期间帮助一些活动,其中包含一些可能使您的工作更简单的函数。个人而言,此库用于magento。

要求

此库需要 Laminas Log 来创建日志记录器。

安装

- 将配置设置为 composer.json(非必需)

composer config repositories.sirclo-bachtiar/magento-helpers-v2 git git@github.com:sirclo-bachtiar/magento-helpers-v2.git

- 安装库

composer require sirclo-bachtiar/magento-helpers-v2

用法

  • 日志服务

  • LogService::class

用于创建日志活动。

use Bachtiar\Helper\LaminasLogger\Service\LogService;

class LogServiceTest
{
    public function Log()
    {
        return LogService::channel('default')
            ->mode('default')
            ->title('log_title')
            ->log('message_to_log');
    }
}

#### Info ####
:: channel('default') => not required
    -> select channel, available [ emerg, alert, crit, err, warn, notice, info ], if null then auto set to default.

:: mode('default') => not required
    -> select log mode, available [ test, debug, develop ], if null then auto set to default.

:: title('default') => not required
    -> set log title, if null then auto set to default title.

:: log('default') => required
    -> set log message, if null then auto set to default message.
  • SwiftLog::trait

用于根据Icube Custom Swift Log规则记录活动。

use Bachtiar\Helper\LaminasLogger\Service\SwiftLog;

class SwiftLogTest
{
    use SwiftLog;

    public function __invoke()
    {
        return $this->channel('default')
            ->mode('default')
            ->classLimit('default')
            ->group('group_title')
            ->title('log_title')
            ->log('message_to_log');
    }
}

#### Info ####
:: channel('default') => not required
    -> select channel, available [ emerg, alert, crit, err, warn, notice, info ], if null then auto set to default.

:: mode('default') => not required
    -> select log mode, available [ test, debug, develop ], if null then auto set to default.

:: classLimit('default') => not required
    -> set module class namespace limit, if null then auto set to default.

:: group('default') => not required
    -> set group of log, if null then auto set to default.

:: title('default') => not required
    -> set log title, if null then auto set to default title.

:: log('default') => required
    -> set log message, if null then auto set to default message.
  • 查询构建器服务

用于自定义查询构建器。(仅返回查询)

use Bachtiar\Helper\CustomQueryGenerator\Service\QueryBuilderService;

class QueryBuilderTest
{
    public function __invoke()
    {
        return QueryBuilderService::select()
            ->from('base_table')
            ->join('relation_table', 'base_table.baseColumnId', '=', 'relation_table.relationColumnId')
            ->where('base_table.name', '=', 'test')
            ->andWhere('base_table.age', '=', 'age')
            ->orWhere('relation_table.address', 'like', '%ponorogo%')
            ->generate();
    }
}

#### Info ####
:: select() -> optional
    -> set select column, if null, then auto set to all (*).

:: from('base_table') -> ! must be included
    -> set base table query.

:: join('relation_table', 'baseColumnId', '=', 'relationColumnId')
    -> set inner join from query.

:: where('base_table.name', '=', 'test') -> optional
    -> set where clause from query

:: andWhere('base_table.age', '=', 'age') -> optional
    -> set or where clause from query

:: orWhere('relation_table.address', 'like', '%ponorogo%') -> optional
    -> set and where clause from query

:: generate()
    -> process to create query builder.