This commit is contained in:
weiz 2024-05-11 18:31:29 +08:00
parent 431f382b4b
commit dd0ab2d890
3 changed files with 51 additions and 3 deletions

View File

@ -91,5 +91,12 @@ class MerchantController extends BaseAdminController
return $this->data($result); return $this->data($result);
} }
public function bind_goods(){
$params = (new MerchantValidate())->post()->goCheck('detail');
$result = MerchantLogic::bindGoods($params);
if (true === $result) {
return $this->success('绑定成功', [], 1, 1);
}
return $this->fail(MerchantLogic::getError());
}
} }

View File

@ -118,6 +118,35 @@ class MerchantLogic extends BaseLogic
} }
} }
/**
* @notes 商户绑定商品
* @param array $params
* @return bool
* @author likeadmin
* @date 2024/04/23 16:35
*/
public static function bindGoods(array $params): bool
{
Db::startTrans();
try {
$data = [];
foreach ($params['bind_data'] as $v){
$data[] = [
'mer_id' => $params['mer_id'],
'goods_id' => $v['goods_id'],
'nums' => $v['nums']
];
}
Db::name('merchant_bind_goods')->insertAll($data);
Db::commit();
return true;
} catch (\Exception $e) {
Db::rollback();
self::setError($e->getMessage());
return false;
}
}
/** /**
* @notes 删除商户列表 * @notes 删除商户列表

View File

@ -4,6 +4,7 @@ namespace app\admin\validate\merchant;
use app\common\validate\BaseValidate; use app\common\validate\BaseValidate;
use function Symfony\Component\Translation\t;
/** /**
@ -34,6 +35,7 @@ class MerchantValidate extends BaseValidate
'mer_money' => 'require|float', 'mer_money' => 'require|float',
'commission_switch' => 'in:0,1', 'commission_switch' => 'in:0,1',
'financial_type' => 'in:1,2,3', 'financial_type' => 'in:1,2,3',
'bind_data' => 'require|checkBindData'
]; ];
@ -57,6 +59,7 @@ class MerchantValidate extends BaseValidate
'mer_money' => '商户余额', 'mer_money' => '商户余额',
'commission_switch' => '商户手续费单独设置', 'commission_switch' => '商户手续费单独设置',
'financial_type' => '默认使用类型', 'financial_type' => '默认使用类型',
'bind_data' => '绑定商品数据'
]; ];
@ -68,7 +71,7 @@ class MerchantValidate extends BaseValidate
*/ */
public function sceneAdd() public function sceneAdd()
{ {
return $this->remove('mer_id',true); return $this->remove('mer_id',true)->remove('bind_data',true);
} }
@ -79,7 +82,9 @@ class MerchantValidate extends BaseValidate
* @date 2024/04/23 16:35 * @date 2024/04/23 16:35
*/ */
public function sceneEdit() public function sceneEdit()
{} {
return $this->remove('bind_data',true);
}
/** /**
@ -105,4 +110,11 @@ class MerchantValidate extends BaseValidate
return $this->only(['mer_id']); return $this->only(['mer_id']);
} }
public function checkBindData($value){
if(!is_array($value)){
return '数据格式错误';
}
return true;
}
} }