144 lines
4.7 KiB
PHP
144 lines
4.7 KiB
PHP
<?php
|
|
|
|
namespace app\admin\logic\merchant;
|
|
|
|
|
|
use app\common\model\merchant\Merchant;
|
|
use app\common\logic\BaseLogic;
|
|
use think\facade\Db;
|
|
|
|
|
|
/**
|
|
* 商户列表逻辑
|
|
* Class MerchantLogic
|
|
* @package app\admin\logic\merchant
|
|
*/
|
|
class MerchantLogic extends BaseLogic
|
|
{
|
|
|
|
|
|
/**
|
|
* @notes 添加商户列表
|
|
* @param array $params
|
|
* @return bool
|
|
* @author likeadmin
|
|
* @date 2024/04/23 16:35
|
|
*/
|
|
public static function add(array $params): bool
|
|
{
|
|
Db::startTrans();
|
|
try {
|
|
Merchant::create([
|
|
'category_id' => $params['category_id'],
|
|
'type_id' => $params['type_id'] ?? '',
|
|
'mer_name' => $params['mer_name'],
|
|
'credit_buy' => $params['credit_buy'],
|
|
'settle_cycle' => $params['settle_cycle'],
|
|
'interest_rate' => $params['interest_rate'],
|
|
'province_id' => $params['province_id'] ?? '',
|
|
'city_id' => $params['city_id'] ?? '',
|
|
'area_id' => $params['area_id'] ?? '',
|
|
'street_id' => $params['street_id'] ?? '',
|
|
'village_id' => $params['village_id'] ?? '',
|
|
'mer_address' => $params['mer_address'],
|
|
'mer_avatar' => $params['mer_avatar'] ?? '',
|
|
'mark' => $params['mark'],
|
|
'sort' => $params['sort'],
|
|
'status' => $params['status'],
|
|
'commission_rate' => $params['commission_rate'] ?? '',
|
|
'commission_switch' => $params['commission_switch'] ?? '',
|
|
'long' => $params['long'] ?? '',
|
|
'lat' => $params['lat'] ?? '',
|
|
'service_phone' => $params['service_phone'],
|
|
'service_user' => $params['service_user'],
|
|
'mer_money' => $params['mer_money'],
|
|
'financial_bank' => $params['financial_bank'] ?? '',
|
|
'financial_wechat' => $params['financial_wechat'] ?? '',
|
|
'financial_alipay' => $params['financial_alipay'] ?? ''
|
|
]);
|
|
|
|
Db::commit();
|
|
return true;
|
|
} catch (\Exception $e) {
|
|
Db::rollback();
|
|
self::setError($e->getMessage());
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 编辑商户列表
|
|
* @param array $params
|
|
* @return bool
|
|
* @author likeadmin
|
|
* @date 2024/04/23 16:35
|
|
*/
|
|
public static function edit(array $params): bool
|
|
{
|
|
Db::startTrans();
|
|
try {
|
|
Merchant::where('mer_id', $params['mer_id'])->update([
|
|
'category_id' => $params['category_id'],
|
|
'type_id' => $params['type_id'] ?? '',
|
|
'mer_name' => $params['mer_name'],
|
|
'credit_buy' => $params['credit_buy'],
|
|
'settle_cycle' => $params['settle_cycle'],
|
|
'interest_rate' => $params['interest_rate'],
|
|
'province_id' => $params['province_id'] ?? '',
|
|
'city_id' => $params['city_id'] ?? '',
|
|
'area_id' => $params['area_id'] ?? '',
|
|
'street_id' => $params['street_id'] ?? '',
|
|
'village_id' => $params['village_id'] ?? '',
|
|
'mer_address' => $params['mer_address'],
|
|
'mer_avatar' => $params['mer_avatar'] ?? '',
|
|
'mark' => $params['mark'],
|
|
'sort' => $params['sort'],
|
|
'status' => $params['status'],
|
|
'commission_rate' => $params['commission_rate'] ?? '',
|
|
'commission_switch' => $params['commission_switch'] ?? '',
|
|
'long' => $params['long'] ?? '',
|
|
'lat' => $params['lat'] ?? '',
|
|
'service_phone' => $params['service_phone'],
|
|
'service_user' => $params['service_user'],
|
|
'mer_money' => $params['mer_money'],
|
|
'financial_bank' => $params['financial_bank'] ?? '',
|
|
'financial_wechat' => $params['financial_wechat'] ?? '',
|
|
'financial_alipay' => $params['financial_alipay'] ?? ''
|
|
]);
|
|
|
|
Db::commit();
|
|
return true;
|
|
} catch (\Exception $e) {
|
|
Db::rollback();
|
|
self::setError($e->getMessage());
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 删除商户列表
|
|
* @param array $params
|
|
* @return bool
|
|
* @author likeadmin
|
|
* @date 2024/04/23 16:35
|
|
*/
|
|
public static function delete(array $params): bool
|
|
{
|
|
return Merchant::destroy($params['mer_id']);
|
|
}
|
|
|
|
|
|
/**
|
|
* @notes 获取商户列表详情
|
|
* @param $params
|
|
* @return array
|
|
* @author likeadmin
|
|
* @date 2024/04/23 16:35
|
|
*/
|
|
public static function detail($params): array
|
|
{
|
|
return Merchant::findOrEmpty($params['mer_id'])->toArray();
|
|
}
|
|
} |