erp/app/admin/logic/supplier/SupplierBindGoodsLogic.php
2024-05-20 15:16:20 +08:00

105 lines
2.5 KiB
PHP

<?php
namespace app\admin\logic\supplier;
use app\common\model\supplier\SupplierBindGoods;
use app\common\logic\BaseLogic;
use think\facade\Db;
use support\exception\BusinessException;
/**
* 供应商商品绑定逻辑
* Class SupplierBindGoodsLogic
* @package app\admin\logic\supplier
*/
class SupplierBindGoodsLogic extends BaseLogic
{
/**
* @notes 添加供应商商品绑定
* @param array $params
* @return bool
* @author likeadmin
* @date 2024/04/27 14:33
*/
public static function add(array $params): bool
{
Db::startTrans();
try {
$list=[];
foreach($params['data'] as $item){
$list[]=[
'supplier_id'=>$item['supplier_id'],
'goods_id'=>$item['goods_id'],
'goods_name'=>$item['goods_name'],
'goods_price'=>$item['price'],
];
}
(new SupplierBindGoods())->saveAll($list);
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/27 14:33
*/
public static function edit(array $params): bool
{
Db::startTrans();
try {
SupplierBindGoods::where('id', $params['id'])->update([
'goods_id'=>$params['goods_id'],
'supplier_id'=>$params['supplier_id'],
'price'=>$params['price'],
'goods_name'=>$params['goods_name'],
]);
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/27 14:33
*/
public static function delete(array $params): bool
{
return SupplierBindGoods::destroy($params['id']);
}
/**
* @notes 获取供应商管理详情
* @param $params
* @return array
* @author likeadmin
* @date 2024/04/27 14:33
*/
public static function detail($params): array
{
$data = SupplierBindGoods::findOrEmpty($params['id']);
return $data->toArray();
}
}