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
app/admin
controller/merchat
logic/merchant
validate/merchant

@ -91,5 +91,12 @@ class MerchantController extends BaseAdminController
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());
}
}

@ -117,6 +117,35 @@ class MerchantLogic extends BaseLogic
return false;
}
}
/**
* @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;
}
}
/**

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