main
limu 1 year ago
parent 7a498cb4eb
commit efcff69f71
  1. 5
      app/common/repositories/system/admin/PartnerRepository.php
  2. 17
      app/common/repositories/user/UserPartnerRepository.php
  3. 6
      app/controller/admin/system/admin/Partner.php
  4. 11
      app/controller/admin/user/User.php
  5. 2
      config/partner.php
  6. 3
      route/admin/role.php

@ -142,5 +142,10 @@ class PartnerRepository extends BaseRepository
}
public function roleExists(int $id)
{
return UserPartner::getDB()->where('id', '=', $id)->where('uid','=','')->find();
}
}

@ -92,18 +92,17 @@ class UserPartnerRepository extends BaseRepository
return $res;
}
public function editPartner(int $uid, array $partner_id = [])
public function editPartner(int $uid, array $user_role_id = [])
{
return Db::transaction(function () use ($uid, $partner_id) {
return Db::transaction(function () use ($uid, $user_role_id) {
//先清空
UserPartner::getInstance()->where('uid', $uid)->delete();
//再插入
if (!empty($partner_id)) {
$data = [];
foreach ($partner_id as $k => $v) {
$data[] = ['uid' => $uid, 'partner_id' => $v, 'create_time' => date("Y-m-d H:i:s")];
UserPartner::getInstance()->where('uid', $uid)->update(['partner_id' => '']);
//再更新
if (!empty($user_role_id)) {
foreach ($user_role_id as $k => $v) {
UserPartner::getInstance()->where('id', '=', $v)
->update(['uid' => $uid, 'create_time' => date("Y-m-d H:i:s")]);
}
UserPartner::getInstance()->insertAll($data);
}
});
}

@ -113,4 +113,10 @@ class Partner extends BaseController
$this->repository->delete($id);
return app('json')->success('删除成功');
}
public function getArea()
{
$data = config('partner.region_type');
return app('json')->success($data);
}
}

@ -611,15 +611,22 @@ class User extends BaseController
public function changePartner(PartnerRepository $partnerRepository, UserPartnerRepository $userPartnerRepository)
{
$partner_id = (array)$this->request->param('partner_id', []);
$user_role_id = (array)$this->request->param('user_role_id', []);
$partner_ids = $user_role_ids = [];
$id = (int)$this->request->param('uid', '');
if (!$this->repository->exists($id))
return app('json')->fail('数据不存在');
foreach ($partner_id as $k => $value) {
$partner_id[$k] = (int)$value;
$partner_ids[$k] = (int)$value;
if (!$partnerRepository->exists((int)$value))
return app('json')->fail('所选合作人角色不存在');
}
$userPartnerRepository->editPartner($id, $partner_id);
foreach ($user_role_id as $k => $value) {
$user_role_id[$k] = (int)$value;
if (!$partnerRepository->roleExists((int)$value))
return app('json')->fail('该位置已分配,请重新选择');
}
$userPartnerRepository->editPartner($id, $user_role_id);
return app('json')->success('修改成功');
}

@ -13,6 +13,8 @@
// | 控制台配置
// +----------------------------------------------------------------------
return [
//贡献池系统用户id
'gongxian_admin_id' => 9,
// 社区等级配置
'community_level' => [
[

@ -152,6 +152,9 @@ Route::group(function () {
Route::get('delete/:id', '.Partner/delete')->name('systemPartnerDel')->option([
'_alias' => '删除合作人角色',
]);
Route::get('region', '.Partner/getArea')->name('systemPartnerArea')->option([
'_alias' => '读取合作人大区',
]);
})->prefix('admin.system.admin')->option([
'_path' => 'self',
'_auth' => true,

Loading…
Cancel
Save