更新
This commit is contained in:
parent
ec516f3eb3
commit
0bd31d9380
@ -32,7 +32,7 @@ use think\facade\Db;
|
|||||||
* Class AdminLists
|
* Class AdminLists
|
||||||
* @package app\adminapi\lists\auth
|
* @package app\adminapi\lists\auth
|
||||||
*/
|
*/
|
||||||
class AdminLists extends BaseAdminDataLists implements ListsExtendInterface, ListsSearchInterface, ListsSortInterface,ListsExcelInterface
|
class AdminLists extends BaseAdminDataLists implements ListsExtendInterface, ListsSearchInterface, ListsSortInterface, ListsExcelInterface
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @notes 设置导出字段
|
* @notes 设置导出字段
|
||||||
@ -77,7 +77,6 @@ class AdminLists extends BaseAdminDataLists implements ListsExtendInterface, Lis
|
|||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'%like%' => ['name', 'account'],
|
'%like%' => ['name', 'account'],
|
||||||
'=' => ['company_id']
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -121,16 +120,14 @@ class AdminLists extends BaseAdminDataLists implements ListsExtendInterface, Lis
|
|||||||
$where[] = ['id', 'in', $adminIds];
|
$where[] = ['id', 'in', $adminIds];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(isset($this->params['company_id']) && $this->params['company_id'] != ''){
|
|
||||||
$where[] = ['company_id', '=', $this->params['company_id']];
|
if ($this->adminInfo['root'] != 1) {
|
||||||
}else{
|
if($this->adminInfo['role_id'][0]==10){
|
||||||
if($this->adminInfo['root']!=1){
|
$where[] = ['area_manager', '=', $this->adminId];
|
||||||
$column_id=Db::name('company')->where('level_two',$this->adminInfo['company_id'])->column('id');
|
|
||||||
array_push($column_id,$this->adminInfo['company_id']);
|
|
||||||
$where[]=['company_id','in',$column_id];
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $where;
|
return $where;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -148,7 +145,7 @@ class AdminLists extends BaseAdminDataLists implements ListsExtendInterface, Lis
|
|||||||
{
|
{
|
||||||
$field = [
|
$field = [
|
||||||
'id', 'name', 'account', 'create_time', 'disable', 'root', 'province', 'city', 'area', 'street',
|
'id', 'name', 'account', 'create_time', 'disable', 'root', 'province', 'city', 'area', 'street',
|
||||||
'login_time', 'login_ip', 'multipoint_login', 'avatar', 'company_id', 'is_contract', 'create_time'
|
'login_time', 'login_ip', 'multipoint_login', 'avatar', 'is_contract', 'create_time'
|
||||||
];
|
];
|
||||||
$adminLists = Admin::field($field)
|
$adminLists = Admin::field($field)
|
||||||
->where($this->searchWhere)
|
->where($this->searchWhere)
|
||||||
@ -165,9 +162,9 @@ class AdminLists extends BaseAdminDataLists implements ListsExtendInterface, Lis
|
|||||||
$deptLists = Dept::column('name', 'id');
|
$deptLists = Dept::column('name', 'id');
|
||||||
// 岗位列表
|
// 岗位列表
|
||||||
$jobsLists = Jobs::column('name', 'id');
|
$jobsLists = Jobs::column('name', 'id');
|
||||||
$companyIds = array_unique(array_column($adminLists, 'company_id'));
|
// $companyIds = array_unique(array_column($adminLists, 'company_id'));
|
||||||
$company = Company::whereIn('id', $companyIds)->field('id,company_name')->select()->toArray();
|
// $company = Company::whereIn('id', $companyIds)->field('id,company_name')->select()->toArray();
|
||||||
$adminLists = append($adminLists, $company, 'company_id', 'company');
|
// $adminLists = append($adminLists, $company, 'company_id', 'company');
|
||||||
|
|
||||||
//管理员列表增加角色名称
|
//管理员列表增加角色名称
|
||||||
foreach ($adminLists as $k => $v) {
|
foreach ($adminLists as $k => $v) {
|
||||||
|
@ -55,7 +55,20 @@ class ContractLists extends BaseAdminDataLists implements ListsSearchInterface
|
|||||||
*/
|
*/
|
||||||
public function lists(): array
|
public function lists(): array
|
||||||
{
|
{
|
||||||
return Contract::where($this->searchWhere)->with(['companyName','partyA','contractType'])
|
$params=$this->request->param();
|
||||||
|
$where=[];
|
||||||
|
if ($this->adminInfo['root'] != 1) {
|
||||||
|
if($this->adminInfo['role_id'][0]==10){
|
||||||
|
if(isset($params['type']) && $params['type']==1){
|
||||||
|
$where[] = ['check_status', '=',1];
|
||||||
|
}else{
|
||||||
|
$where[] = ['status', '=',0];
|
||||||
|
$where[] = ['check_status', 'in',[2,3]];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
return Contract::where($this->searchWhere)->where($where)->with(['companyName','party_a_info','contractType'])
|
||||||
// ->field(['id', 'company_id', 'contract_type', 'contract_no', 'status', 'party_a', 'party_b', 'area_manager'])
|
// ->field(['id', 'company_id', 'contract_type', 'contract_no', 'status', 'party_a', 'party_b', 'area_manager'])
|
||||||
->limit($this->limitOffset, $this->limitLength)
|
->limit($this->limitOffset, $this->limitLength)
|
||||||
->order(['id' => 'desc'])
|
->order(['id' => 'desc'])
|
||||||
@ -63,10 +76,9 @@ class ContractLists extends BaseAdminDataLists implements ListsSearchInterface
|
|||||||
if($item->type==1){
|
if($item->type==1){
|
||||||
$item->party_b_name=Db::name('company')->where('id',$item->party_b)->value('company_name');
|
$item->party_b_name=Db::name('company')->where('id',$item->party_b)->value('company_name');
|
||||||
}else{
|
}else{
|
||||||
$item->party_b_name=Db::name('admin')->where('id',$item->party_b)->value('name');
|
$item->party_b_name=Db::name('user')->where('id',$item->party_b)->value('nickname');
|
||||||
}
|
}
|
||||||
$item->party_a_name=Db::name('company')->where('id',$item->party_a)->value('company_name');
|
$area_manager_name=Db::name('admin')->where('id',$item->party_a_info->area_manager)->value('name');
|
||||||
$area_manager_name=Db::name('admin')->where('id',$item->area_manager)->value('name');
|
|
||||||
if($area_manager_name){
|
if($area_manager_name){
|
||||||
$item->area_manager_name=$area_manager_name;
|
$item->area_manager_name=$area_manager_name;
|
||||||
}else{
|
}else{
|
||||||
|
@ -238,7 +238,7 @@ class AdminLogic extends BaseLogic
|
|||||||
public static function detail($params, $action = 'detail'): array
|
public static function detail($params, $action = 'detail'): array
|
||||||
{
|
{
|
||||||
$admin = Admin::field([
|
$admin = Admin::field([
|
||||||
'id', 'account', 'name', 'disable', 'root', 'company_id',
|
'id', 'account', 'name', 'disable', 'root',
|
||||||
'multipoint_login', 'avatar', 'sex', 'province', 'city', 'area', 'street', 'address', 'qualification', 'is_contract', 'id_card,phone'
|
'multipoint_login', 'avatar', 'sex', 'province', 'city', 'area', 'street', 'address', 'qualification', 'is_contract', 'id_card,phone'
|
||||||
])->with(['company' => function ($query) {
|
])->with(['company' => function ($query) {
|
||||||
$query->field('id,company_name');
|
$query->field('id,company_name');
|
||||||
|
@ -52,7 +52,7 @@ class UserLogic extends BaseLogic
|
|||||||
// $user->sex = $user->getData('sex');
|
// $user->sex = $user->getData('sex');
|
||||||
$user['qualification']=json_decode($user->qualification,true);
|
$user['qualification']=json_decode($user->qualification,true);
|
||||||
if($user->is_contract==1){
|
if($user->is_contract==1){
|
||||||
$user['contract']=Contract::where(['type'=>2,'party_b'=>$userId])->with(['partyAInfo','contractType'])->find();
|
$user['contract']=Contract::where(['type'=>2,'party_b'=>$userId])->with(['party_a_info','contractType'])->find();
|
||||||
}
|
}
|
||||||
return $user->toArray();
|
return $user->toArray();
|
||||||
}
|
}
|
||||||
|
@ -121,15 +121,15 @@ class CompanyLogic extends BaseLogic
|
|||||||
{
|
{
|
||||||
Db::startTrans();
|
Db::startTrans();
|
||||||
try {
|
try {
|
||||||
Company::where('id', $params['id'])->update([
|
$arr=[
|
||||||
// 'level_two' => $params['level_two'],
|
|
||||||
// 'level_one' => $params['level_one'],
|
|
||||||
'company_name' => $params['company_name'],
|
'company_name' => $params['company_name'],
|
||||||
'organization_code' => $params['organization_code'],
|
'organization_code' => $params['organization_code'],
|
||||||
'province' => $params['province'],
|
'province' => $params['province'],
|
||||||
'city' => $params['city'],
|
'city' => $params['city'],
|
||||||
'area' => $params['area'],
|
'area' => $params['area'],
|
||||||
'street' => $params['street'],
|
'street' => $params['street'],
|
||||||
|
'village' => $params['village'],
|
||||||
|
'brigade' => $params['brigade'],
|
||||||
'address' => $params['address'],
|
'address' => $params['address'],
|
||||||
'company_type' => $params['company_type'],
|
'company_type' => $params['company_type'],
|
||||||
'master_name' => $params['master_name'],
|
'master_name' => $params['master_name'],
|
||||||
@ -138,29 +138,35 @@ class CompanyLogic extends BaseLogic
|
|||||||
'master_email' => $params['master_email'],
|
'master_email' => $params['master_email'],
|
||||||
'other_contacts' => $params['other_contacts'],
|
'other_contacts' => $params['other_contacts'],
|
||||||
'area_manager' => $params['area_manager'] ?? 0,
|
'area_manager' => $params['area_manager'] ?? 0,
|
||||||
// 'is_contract' => $params['is_contract'],
|
|
||||||
// 'account' => $params['account'],
|
|
||||||
// 'password' => $params['password'],
|
|
||||||
// 'deposit' => $params['deposit'],
|
|
||||||
// 'deposit_time' => $params['deposit_time'],
|
|
||||||
'qualification' => $params['qualification'],
|
'qualification' => $params['qualification'],
|
||||||
'admin_id' => $params['admin_id'] ?? 0,
|
|
||||||
'level_one' => $params['contract']['party_a'] ?? 0,
|
'level_one' => $params['contract']['party_a'] ?? 0,
|
||||||
// 'status' => $params['status']
|
];
|
||||||
]);
|
|
||||||
if ($params['contract']) {
|
$defaultAvatar = config('project.default_image.admin_avatar');
|
||||||
$contractId = self::contract($params['id'], $params);
|
$admin=$arr;
|
||||||
Company::update(['contract_id' => $contractId], ['id' => $params['id']]);
|
$account=$params['master_phone'];
|
||||||
}
|
$admin['id_card']=$params['id_card'];
|
||||||
if($params['admin_id']){
|
$admin['area_manager']=$params['area_manager'];
|
||||||
$admin=Admin::where('company_id', $params['id'])->find();
|
$admin['sex']=$params['sex'];
|
||||||
Admin::where('id' , $params['admin_id'])->update(['company_id' => $params['id']]);
|
$admin['name']=$params['master_name'];
|
||||||
User::where('admin_id',$params['admin_id'])->update(['company_id' => $params['id'],'qualification'=>$params['qualification'],'province'=>$params['province'],'city'=>$params['city'],'area'=>$params['area'],'street'=>$params['street'],'address'=>$params['address'],'is_contract'=>$admin['is_contract'],'mobile'=>$admin['phone']]);
|
$admin['account']=$params['master_phone'];
|
||||||
if($admin['id']!=$params['admin_id']){
|
$admin['avatar'] = !empty($params['avatar']) ? FileService::setFileUrl($params['avatar']) : $defaultAvatar;
|
||||||
Admin::where('id',$admin['id'])->update(['company_id' =>0]);
|
$admin['phone']=$params['master_phone'];
|
||||||
User::where('admin_id' , $admin['id'])->update(['company_id' => 0]);
|
|
||||||
}
|
Admin::strict(false)->where('account',$account)->update($admin);
|
||||||
}
|
$admin_id=Admin::where('account',$account)->value('id');
|
||||||
|
|
||||||
|
$arr['admin_id']=$admin_id;
|
||||||
|
Company::where('id', $params['id'])->update($arr);
|
||||||
|
|
||||||
|
$admin['admin_id']=$admin_id;
|
||||||
|
$admin['sechannel']=4;
|
||||||
|
// $admin['company_id']=$data['id'];
|
||||||
|
$admin['real_name']=$params['master_name'];
|
||||||
|
$admin['nickname']=$params['master_name'];
|
||||||
|
$admin['mobile']=$params['master_phone'];
|
||||||
|
$admin['phone']=$params['master_phone'];
|
||||||
|
User::strict(false)->where('account',$account)->update($admin);
|
||||||
Db::commit();
|
Db::commit();
|
||||||
return true;
|
return true;
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
@ -200,9 +206,12 @@ class CompanyLogic extends BaseLogic
|
|||||||
if($data['qualification'] && isset($data['qualification']['other_qualifications'])){
|
if($data['qualification'] && isset($data['qualification']['other_qualifications'])){
|
||||||
$data['qualification']['other_qualifications']=json_decode($data['qualification']['other_qualifications'],true);
|
$data['qualification']['other_qualifications']=json_decode($data['qualification']['other_qualifications'],true);
|
||||||
}
|
}
|
||||||
$data['admin_name'] = Db::name('admin')->where('id', $data['admin_id'])->value('name');
|
$find= Admin::where('id', $data['admin_id'])->field('avatar,id_card')->find();
|
||||||
|
$data['avatar']=$find['avatar'];
|
||||||
|
$data['id_card']=$find['id_card'];
|
||||||
$data['area_manager_name'] = Db::name('admin')->where('id', $data['area_manager'])->value('name');
|
$data['area_manager_name'] = Db::name('admin')->where('id', $data['area_manager'])->value('name');
|
||||||
$data['contract'] = Contract::where(['party_b' => $data['id']])->with(['partyAInfo', 'contractType'])->find();
|
$data['contract'] = Contract::where(['party_b' => $data['id']])->with(['party_a_info', 'contractType'])->find();
|
||||||
|
|
||||||
}
|
}
|
||||||
return $data;
|
return $data;
|
||||||
}
|
}
|
||||||
|
@ -46,7 +46,7 @@ class Contract extends BaseModel
|
|||||||
}
|
}
|
||||||
public function partyAInfo()
|
public function partyAInfo()
|
||||||
{
|
{
|
||||||
return $this->hasOne(Company::class, 'id', 'party_a')->field('id,company_name,organization_code,master_name,master_phone,master_email');
|
return $this->hasOne(Company::class, 'id', 'party_a')->field('id,company_name,organization_code,master_name,master_phone,master_email,area_manager');
|
||||||
}
|
}
|
||||||
public function partyA()
|
public function partyA()
|
||||||
{
|
{
|
||||||
|
2
vendor/ebaoquan/junziqian_sdk
vendored
2
vendor/ebaoquan/junziqian_sdk
vendored
@ -1 +1 @@
|
|||||||
Subproject commit 9acc82cd23d807280ddd29df2117e7890094d049
|
Subproject commit 1294ea49ff9ecc4532821f8798304816cbf8dd74
|
Loading…
x
Reference in New Issue
Block a user