generated from liutk/owl-admin-base
完善人口迁移
parent
8f6d2dbd7c
commit
41f4241308
|
|
@ -30,14 +30,14 @@ class PersonController extends AdminController
|
|||
|
||||
public function list(): Page
|
||||
{
|
||||
$crud = $this->baseCRUD()->tableLayout('fixed')
|
||||
$crud = $this->baseCRUD()->tableLayout('fixed')->name('curd_list')
|
||||
->headerToolbar([
|
||||
$this->createTypeButton('drawer', '', '50%'),
|
||||
amis()->DialogAction()->icon('fas fa-people-arrows')->iconClassName('text-white text-sm')->level('danger')->label('分户')->dialog(
|
||||
amis()->Dialog()->title(__('admin.persons.split_master'))->body($this->splitMasterForm())->size('lg')
|
||||
),
|
||||
amis()->DialogAction()->icon('fas fa-users')->iconClassName('text-white text-sm')->level('success')->label('合户')->dialog(
|
||||
amis()->Dialog()->title('合户')->body($this->mergeMasterForm())->size('lg')
|
||||
amis()->Dialog()->title(__('admin.persons.merge_master'))->body($this->mergeMasterForm())->size('lg')
|
||||
),
|
||||
amis('reload')->align('right'),
|
||||
amis('filter-toggler')->align('right'),
|
||||
|
|
@ -308,13 +308,19 @@ class PersonController extends AdminController
|
|||
public function detailActions()
|
||||
{
|
||||
return [
|
||||
//变更户主-todo
|
||||
//变更户主
|
||||
amis()->DialogAction()->level('warning')->label('变更户主')->dialog(
|
||||
amis()->Dialog()->title('变更户主')->body()->size('lg')
|
||||
amis()->Dialog()->title('变更户主')->body($this->editMasterForm())->size('lg')->actions([
|
||||
amis()->Button()->label('取消')->actionType('cancel'),
|
||||
amis()->Button()->label('确认')->actionType('submit')->primary()->close('detail_info'),
|
||||
])
|
||||
),
|
||||
//迁移-todo
|
||||
//迁移
|
||||
amis()->DialogAction()->level('info')->label('迁移')->dialog(
|
||||
amis()->Dialog()->title('迁移')->body()->size('lg')
|
||||
amis()->Dialog()->title('迁移')->body($this->migrateMasterForm())->size('lg')->actions([
|
||||
amis()->Button()->label('取消')->actionType('cancel'),
|
||||
amis()->Button()->label('确认')->actionType('submit')->primary()->close('detail_info'),
|
||||
])
|
||||
),
|
||||
//迁出-todo
|
||||
amis()->DialogAction()->level('success')->label('迁出')->dialog(
|
||||
|
|
@ -325,28 +331,172 @@ class PersonController extends AdminController
|
|||
amis()->Dialog()->title('死亡')->body()->size('lg')
|
||||
),
|
||||
//返回
|
||||
amis()->Button()->actionType('confirm')->label(__('admin.back'))->primary()
|
||||
amis()->Button()->actionType('cancel')->label(__('admin.back'))->primary()
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* 合户-todo
|
||||
* 变更户主
|
||||
*/
|
||||
public function editMasterForm()
|
||||
{
|
||||
return amis()->form()->title('')->reload('curd_list')
|
||||
->api(admin_url('edit_master'))
|
||||
->body([
|
||||
amis()->Service()
|
||||
->api(admin_url('persons?_action=getData&state=1&master[id]=${master_id}&perPage=10'))
|
||||
->onEvent([
|
||||
'fetchInited' => [
|
||||
'actions' => [
|
||||
[
|
||||
'actionType'=>'setValue',
|
||||
"componentId" => "new_master_arr",
|
||||
"args" => [
|
||||
'value'=>'${event.data.items}'
|
||||
],
|
||||
]
|
||||
]
|
||||
]
|
||||
])
|
||||
->body(
|
||||
amis()->TableControl('new_master_arr', '户籍情况')->columnsTogglable(false)->id('new_master_arr')->columns([
|
||||
amis()->TableColumn('name', __('admin.persons.name'))->width('100px'),
|
||||
amis()->TableColumn('idcard', __('admin.persons.idcard')),
|
||||
amis()->TableColumn('master_connect', __('admin.persons.master_connect'))->width('60px'),
|
||||
amis()->RadioControl('is_new_master', '新户主')->disabledOn('is_master'),
|
||||
amis()->TextControl('new_master_connect', '新关系'),
|
||||
])->required()
|
||||
),
|
||||
amis()->Divider(),
|
||||
amis()->GroupControl()->body([
|
||||
amis()->DateControl('editd_at', '变更日期')->valueFormat('YYYY-MM-DD')->required(),
|
||||
amis()->TextControl('edit_reason', '变更原因')->required()
|
||||
]),
|
||||
amis()->GroupControl()->body([
|
||||
amis()->TextControl('edit_phone', '联系方式')->required(),
|
||||
amis()->TextControl('edit_remark', '备注')
|
||||
]),
|
||||
]);
|
||||
}
|
||||
|
||||
public function doEditMaster(Request $request)
|
||||
{
|
||||
$res = $this->service->EditMaster($request->input('new_master_arr'), $request->input());
|
||||
|
||||
return $this->autoResponse($res, '变更户主');
|
||||
}
|
||||
|
||||
/**
|
||||
* 迁移-迁移到其他户下面去
|
||||
*/
|
||||
public function migrateMasterForm()
|
||||
{
|
||||
return amis()->form()->title('')->reload('curd_list')
|
||||
->api(admin_url('migrate_master'))
|
||||
->body([
|
||||
amis()->HiddenControl('id'),
|
||||
amis()->GroupControl()->body([
|
||||
$this->masterPicker('new_master_id', '新户主', '输入 户主姓名 进行筛选')->required(),
|
||||
amis()->TextControl('new_master_connect', '新关系')->required(),
|
||||
]),
|
||||
amis()->Divider()->visibleOn('${is_master}'),
|
||||
amis()->Service()
|
||||
->api(admin_url('persons?_action=getData&state=1&master[id]=${master_id}&perPage=10'))
|
||||
->onEvent([
|
||||
'fetchInited' => [
|
||||
'actions' => [
|
||||
[
|
||||
'actionType'=>'setValue',
|
||||
"componentId" => "old_master_arr",
|
||||
"args" => [
|
||||
'value'=>'${event.data.items}'
|
||||
],
|
||||
]
|
||||
]
|
||||
]
|
||||
])
|
||||
->body(
|
||||
amis()->TableControl('old_master_arr', '原户籍情况')->columnsTogglable(false)->id('old_master_arr')->columns([
|
||||
amis()->TableColumn('name', __('admin.persons.name'))->width('100px'),
|
||||
amis()->TableColumn('idcard', __('admin.persons.idcard')),
|
||||
amis()->TableColumn('master_connect', __('admin.persons.master_connect'))->width('60px'),
|
||||
amis()->RadioControl('is_new_master', '新户主')->disabledOn('is_master'),
|
||||
amis()->TextControl('new_master_connect', '新关系'),
|
||||
])->required()
|
||||
)->visibleOn('${is_master}'),
|
||||
amis()->Divider(),
|
||||
amis()->GroupControl()->body([
|
||||
amis()->DateControl('migrated_at', '迁移日期')->valueFormat('YYYY-MM-DD')->required(),
|
||||
amis()->TextControl('migrate_reason', '迁移原因')->required()
|
||||
]),
|
||||
amis()->GroupControl()->body([
|
||||
amis()->TextControl('migrate_phone', '联系方式')->required(),
|
||||
amis()->TextControl('migrate_remark', '备注')
|
||||
]),
|
||||
]);
|
||||
}
|
||||
|
||||
public function doMigrateMaster(Request $request)
|
||||
{
|
||||
$res = $this->service->migrateMaster($request->input('id', 0), $request->input('new_master_id', 0), $request->input('new_master_connect', ''),
|
||||
$request->input('old_master_arr', []), $request->input());
|
||||
|
||||
return $this->autoResponse($res, '迁移');
|
||||
}
|
||||
|
||||
/**
|
||||
* 合户
|
||||
*/
|
||||
public function mergeMasterForm()
|
||||
{
|
||||
return amis()->form()->title('')->body([
|
||||
|
||||
return amis()->form()->title('')
|
||||
->api(admin_url('merge_master'))
|
||||
->body([
|
||||
amis()->GroupControl()->body([
|
||||
$this->masterPicker('master', '', '输入 户主姓名 进行筛选'),
|
||||
$this->masterPicker('to_master', '待合并户', '输入 户主姓名 进行筛选'),
|
||||
$this->masterPicker('master_id', '', '输入 户主姓名 进行筛选')->required(),
|
||||
$this->masterPicker('to_merge_master_id', '待合并户', '输入 户主姓名 进行筛选')->required(),
|
||||
]),
|
||||
amis()->Divider(),
|
||||
|
||||
amis()->Service()
|
||||
->api(admin_url('persons?_action=getData&state=1&master[id]=${to_merge_master_id}&perPage=10'))
|
||||
->onEvent([
|
||||
'fetchInited' => [
|
||||
'actions' => [
|
||||
[
|
||||
'actionType'=>'setValue',
|
||||
"componentId" => "new_master_arr",
|
||||
"args" => [
|
||||
'value'=>'${event.data.items}'
|
||||
],
|
||||
]
|
||||
]
|
||||
]
|
||||
])
|
||||
->body(
|
||||
amis()->TableControl('new_master_arr', '合户情况')->columnsTogglable(false)->id('new_master_arr')->columns([
|
||||
amis()->TableColumn('name', __('admin.persons.name'))->width('100px'),
|
||||
amis()->TableColumn('idcard', __('admin.persons.idcard')),
|
||||
amis()->TableColumn('master_connect', __('admin.persons.master_connect'))->width('60px'),
|
||||
amis()->TextControl('new_master_connect', '新关系'),
|
||||
])->required()
|
||||
),
|
||||
amis()->Divider(),
|
||||
amis()->GroupControl()->body([
|
||||
amis()->DateControl('merged_at', '合户日期')->valueFormat('YYYY-MM-DD')->required(),
|
||||
amis()->TextControl('merge_reason', '合户原因')->required()
|
||||
]),
|
||||
amis()->GroupControl()->body([
|
||||
amis()->TextControl('phone', '联系方式')->required(),
|
||||
amis()->TextControl('remark', '备注')
|
||||
]),
|
||||
]);
|
||||
}
|
||||
|
||||
public function doMergeMaster(Request $request){
|
||||
|
||||
public function doMergeMaster(Request $request)
|
||||
{
|
||||
$res = $this->service->mergeMaster($request->input('master_id'),$request->input('to_merge_master_id'), $request->input('new_master_arr'), $request->input());
|
||||
|
||||
return $this->autoResponse($res, '合户');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -40,6 +40,10 @@ Route::group([
|
|||
|
||||
$router->resource('persons', \App\Admin\Controllers\PersonController::class);
|
||||
$router->post('split_master', [\App\Admin\Controllers\PersonController::class, 'doSplitMaster']);
|
||||
$router->post('merge_master', [\App\Admin\Controllers\PersonController::class, 'doMergeMaster']);
|
||||
$router->post('edit_master', [\App\Admin\Controllers\PersonController::class, 'doEditMaster']);
|
||||
$router->post('migrate_master', [\App\Admin\Controllers\PersonController::class, 'doMigrateMaster']);
|
||||
|
||||
|
||||
$router->resource('person_changes', \App\Admin\Controllers\PersonChangeController::class);
|
||||
|
||||
|
|
|
|||
|
|
@ -34,7 +34,14 @@ class Person extends Model
|
|||
$person->save();
|
||||
}
|
||||
//处理新增时变动记录-todo
|
||||
|
||||
if(in_array($person->type, [11, 12])){
|
||||
PersonChange::create([
|
||||
'person_id' => $person->id,
|
||||
'type' => $person->type == 11 ? PersonChange::TYPE_BIRTH : PersonChange::TYPE_IN,
|
||||
'changed_at' => $person->type == 11 ? $person->birthday : $person->created_at,
|
||||
'new_master' => $person->master_id
|
||||
]);
|
||||
}
|
||||
});
|
||||
static::saving(function ($person) {
|
||||
if($person->origin_city_code){
|
||||
|
|
|
|||
|
|
@ -20,6 +20,8 @@ class PersonChange extends Model
|
|||
public const TYPE_MIGRATE = 7; //迁移
|
||||
public const TYPE_CHANGE = 8; //变更户主
|
||||
|
||||
protected $fillable = ['person_id', 'type', 'changed_at', 'reason', 'old_master', 'new_master', 'phone', 'extends', 'extends_mark', 'remark'];
|
||||
|
||||
protected $casts = [
|
||||
'extends' => 'array',
|
||||
];
|
||||
|
|
|
|||
|
|
@ -140,6 +140,7 @@ class PersonService extends BaseService
|
|||
'reason' => isset($extends['split_reason']) ? $extends['split_reason'] : null,
|
||||
'old_master' => $person['master_id'],
|
||||
'new_master' => $newMaster['id'],
|
||||
'phone' => isset($extends['phone']) ? $extends['phone'] : null,
|
||||
'extends_mark' => $changeMark,
|
||||
'remark' => isset($extends['remark']) ? $extends['remark'] : null,
|
||||
'created_at' => now(),
|
||||
|
|
@ -149,7 +150,7 @@ class PersonService extends BaseService
|
|||
Person::where('id', $person['id'])->update([
|
||||
'master_id' => $newMaster['id'],
|
||||
'is_master' => $newMaster['id'] == $person['id'] ? true : false,
|
||||
'master_connect' => isset($person['new_master_connect']) ? $person['new_master_connect'] : ($newMaster['id'] == $person['id'] ? '户主':'')
|
||||
'master_connect' => (isset($person['new_master_connect']) && !empty($person['new_master_connect'])) ? $person['new_master_connect'] : ($newMaster['id'] == $person['id'] ? '户主':'')
|
||||
]);
|
||||
}
|
||||
//批量插入人口变动记录
|
||||
|
|
@ -165,4 +166,225 @@ class PersonService extends BaseService
|
|||
return true;
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 合户
|
||||
* @param int $masterId
|
||||
* @param int $toMasterId
|
||||
* @param array $personArr
|
||||
* @param array $extends
|
||||
*/
|
||||
public function mergeMaster($masterId, $toMasterId, $personArr = [], $extends)
|
||||
{
|
||||
if($masterId == $toMasterId){
|
||||
return $this->setError('合并失败, 不能选择两个相同户主');
|
||||
}
|
||||
$newMaster = Person::where('id', $masterId)->first()->toArray();
|
||||
try{
|
||||
DB::beginTransaction();
|
||||
$personChangeLogs = [];
|
||||
//遍历分户成员情况, 并更合并户与新户主关系
|
||||
foreach($personList as $person){
|
||||
$changeMark = (isset($extends['merged_at']) ? $extends['merged_at'] : '某日'). '日,' .(isset($extends['merge_reason']) ? ('因' .$extends['merge_reason']) : '').'合户,';
|
||||
if($person['is_master']){
|
||||
$changeMark .= '与新户主关系更新为【'.$person['new_master_connect'].'】';
|
||||
}else{
|
||||
$changeMark .= '户主由【'.$person["master"]["name"].'】变更为【'.$newMaster["name"].'】,与新户主关系更新为【'.$person['new_master_connect'].'】';
|
||||
}
|
||||
$personChangeLogs[] = [
|
||||
'person_id' => $person['id'],
|
||||
'type' => PersonChange::TYPE_MERGE,
|
||||
'changed_at' => isset($extends['merged_at']) ? $extends['merged_at'] : null,
|
||||
'reason' => isset($extends['merge_reason']) ? $extends['merge_reason'] : null,
|
||||
'old_master' => $person['master_id'],
|
||||
'new_master' => $newMaster['id'],
|
||||
'phone' => isset($extends['phone']) ? $extends['phone'] : null,
|
||||
'extends_mark' => $changeMark,
|
||||
'remark' => isset($extends['remark']) ? $extends['remark'] : null,
|
||||
'created_at' => now(),
|
||||
'updated_at' => now()
|
||||
];
|
||||
|
||||
Person::where('id', $person['id'])->update([
|
||||
'master_id' => $newMaster['id'],
|
||||
'is_master' => $newMaster['id'] == $person['id'] ? true : false,
|
||||
'master_connect' => isset($person['new_master_connect']) ? $person['new_master_connect'] : ''
|
||||
]);
|
||||
}
|
||||
//批量插入人口变动记录
|
||||
count($personChangeLogs) > 0 && PersonChange::insert($personChangeLogs);
|
||||
|
||||
DB::commit();
|
||||
}catch(Throwable $th){
|
||||
DB::rollBack();
|
||||
report($th);
|
||||
return $this->setError('系统错误,请刷新后重试');
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 变更户主
|
||||
*
|
||||
* @param array $personArr
|
||||
* @param array $extends
|
||||
*
|
||||
*/
|
||||
public function editMaster($personArr = [], $extends)
|
||||
{
|
||||
$personList = collect($personArr);
|
||||
$newMaster = $personList->first(function ($item) {
|
||||
return isset($item['is_new_master']) && $item['is_new_master'];
|
||||
});
|
||||
if(empty($newMaster)){
|
||||
return $this->setError('变更失败,未选择新户主');
|
||||
}
|
||||
try{
|
||||
DB::beginTransaction();
|
||||
$personChangeLogs = [];
|
||||
//遍历分户成员情况, 并更新与新户主关系
|
||||
foreach($personList as $person){
|
||||
|
||||
$changeMark = (isset($extends['editd_at']) ? $extends['editd_at'] : '某日'). '日,' .(isset($extends['edit_reason']) ? ('因' .$extends['edit_reason']) : '').'户主变更,';
|
||||
if($person['is_master']){
|
||||
$changeMark .= '与新户主关系更新为【'.(isset($person['new_master_connect']) ? $person['new_master_connect']:'').'】';
|
||||
}elseif($person['is_new_master']){
|
||||
$changeMark .= '成为户主';
|
||||
}else{
|
||||
$changeMark .= '户主由【'.$person["master"]["name"].'】变更为【'.$newMaster["name"].'】,与新户主关系更新为-'.$person['new_master_connect'];
|
||||
}
|
||||
$personChangeLogs[] = [
|
||||
'person_id' => $person['id'],
|
||||
'type' => PersonChange::TYPE_CHANGE,
|
||||
'changed_at' => isset($extends['editd_at']) ? $extends['editd_at'] : null,
|
||||
'reason' => isset($extends['edit_reason']) ? $extends['edit_reason'] : null,
|
||||
'old_master' => $person['master_id'],
|
||||
'new_master' => $newMaster['id'],
|
||||
'phone' => isset($extends['edit_phone']) ? $extends['edit_phone'] : null,
|
||||
'extends_mark' => $changeMark,
|
||||
'remark' => isset($extends['edit_remark']) ? $extends['edit_remark'] : null,
|
||||
'created_at' => now(),
|
||||
'updated_at' => now()
|
||||
];
|
||||
|
||||
Person::where('id', $person['id'])->update([
|
||||
'master_id' => $newMaster['id'],
|
||||
'is_master' => $newMaster['id'] == $person['id'] ? true : false,
|
||||
'master_connect' => (isset($person['new_master_connect']) && !empty($person['new_master_connect'])) ? $person['new_master_connect'] : ($newMaster['id'] == $person['id'] ? '户主':'')
|
||||
]);
|
||||
}
|
||||
//批量插入人口变动记录
|
||||
count($personChangeLogs) > 0 && PersonChange::insert($personChangeLogs);
|
||||
|
||||
DB::commit();
|
||||
}catch(Throwable $th){
|
||||
DB::rollBack();
|
||||
report($th);
|
||||
return $this->setError('系统错误,请刷新后重试');
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public function migrateMaster($personId, $newMasterId, $newMasterConnect, $oldMasterArr = [], $extends)
|
||||
{
|
||||
$person = Person::find($personId);
|
||||
|
||||
if($person->master_id == $newMasterId){
|
||||
return $this->setError('迁移失败, 迁移目前户主不能为当前户主');
|
||||
}
|
||||
|
||||
$newMaster = Person::find($newMasterId);
|
||||
if(! $newMaster?->is_master){
|
||||
return $this->setError('迁移失败, 未选择新户主');
|
||||
}
|
||||
if(!empty($oldMasterArr)){
|
||||
$oldPersonList = collect($oldMasterArr);
|
||||
$oldNewMaster = $oldPersonList->first(function ($item) {
|
||||
return isset($item['is_new_master']) && $item['is_new_master'];
|
||||
});
|
||||
if(empty($oldNewMaster)){
|
||||
return $this->setError('迁移失败, 未选择原户新户主');
|
||||
}
|
||||
}
|
||||
|
||||
try{
|
||||
DB::beginTransaction();
|
||||
$personChangeLogs = [];
|
||||
|
||||
$changeMark = (isset($extends['migrated_at']) ? $extends['migrated_at'] : '某日'). '日,' .(isset($extends['migrate_reason']) ? ('因' .$extends['migrate_reason']) : '');
|
||||
if($person->is_master){
|
||||
$changeMark .= '迁移至户主【'.$person->master->name.'】下,与新户主关系更新为【'.$newMasterConnect.'】';
|
||||
}else{
|
||||
$changeMark .= '由户主【'.$person->master->name.'】迁移至新户主【'.$newMaster->name.'】下,与新户主关系更新为【'.$newMasterConnect.'】';
|
||||
}
|
||||
$personChangeLogs[] = [
|
||||
'person_id' => $person->id,
|
||||
'type' => PersonChange::TYPE_MIGRATE,
|
||||
'changed_at' => isset($extends['migrated_at']) ? $extends['migrated_at'] : null,
|
||||
'reason' => isset($extends['migrate_reason']) ? $extends['migrate_reason'] : null,
|
||||
'old_master' => $person->master_id,
|
||||
'new_master' => $newMaster->id,
|
||||
'phone' => isset($extends['migrate_phone']) ? $extends['migrate_phone'] : null,
|
||||
'extends_mark' => $changeMark,
|
||||
'remark' => isset($extends['migrate_remark']) ? $extends['migrate_remark'] : null,
|
||||
'created_at' => now(),
|
||||
'updated_at' => now()
|
||||
];
|
||||
|
||||
//如果迁移的是户主, 则更新原户内人口信息
|
||||
if($person->is_master){
|
||||
foreach($oldMasterArr as $oldPerson){
|
||||
if($oldPerson['id'] == $person->id){
|
||||
continue;
|
||||
}
|
||||
$changeMark = (isset($extends['migrated_at']) ? $extends['migrated_at'] : '某日'). '日,' .(isset($extends['migrate_reason']) ? ('因' .$extends['migrate_reason'].'导致') : '').'原户主【'.$person->name.'】迁移,';
|
||||
if($oldPerson['is_new_master']){
|
||||
$changeMark .= '成为户主';
|
||||
}else{
|
||||
$changeMark .= '户主由【'.$person->master->name.'】变更为【'.$oldNewMaster['name'].'】,与新户主关系更新为【'.$oldPerson['new_master_connect'].'】';
|
||||
}
|
||||
$personChangeLogs[] = [
|
||||
'person_id' => $person['id'],
|
||||
'type' => PersonChange::TYPE_CHANGE,
|
||||
'changed_at' => isset($extends['migrated_at']) ? $extends['migrated_at'] : null,
|
||||
'reason' => (isset($extends['migrate_reason']) ? $extends['migrate_reason'].'导致' : '').'户主迁移',
|
||||
'old_master' => $person->master_id,
|
||||
'new_master' => $oldNewMaster['id'],
|
||||
'phone' => isset($extends['migrate_phone']) ? $extends['migrate_phone'] : null,
|
||||
'extends_mark' => $changeMark,
|
||||
'remark' => null,
|
||||
'created_at' => now(),
|
||||
'updated_at' => now()
|
||||
];
|
||||
|
||||
Person::where('id', $oldPerson['id'])->update([
|
||||
'master_id' => $oldNewMaster['id'],
|
||||
'is_master' => $oldNewMaster['id'] == $oldPerson['id'] ? true : false,
|
||||
'master_connect' => (isset($oldPerson['new_master_connect']) && !empty($oldPerson['new_master_connect'])) ? $oldPerson['new_master_connect'] : ($oldNewMaster['id'] == $oldPerson['id'] ? '户主':'')
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
Person::where('id', $person->id)->update([
|
||||
'is_master' => 0,
|
||||
'master_id' => $newMaster->id,
|
||||
'master_connect' => $newMasterConnect
|
||||
]);
|
||||
|
||||
count($personChangeLogs) > 0 && PersonChange::insert($personChangeLogs);
|
||||
|
||||
DB::commit();
|
||||
}catch(Throwable $th){
|
||||
DB::rollBack();
|
||||
report($th);
|
||||
return $this->setError('系统错误,请刷新后重试');
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
@ -110,7 +110,7 @@ trait CustomActionTrait
|
|||
{
|
||||
switch ($type) {
|
||||
case 'drawer':
|
||||
$drawer = Drawer::make()->title(__('admin.show'))->body($this->detail('$id'))->closeOnOutside();
|
||||
$drawer = Drawer::make()->title(__('admin.show'))->name('detail_info')->body($this->detail('$id'))->closeOnOutside();
|
||||
|
||||
if($width){
|
||||
$drawer->width($width);
|
||||
|
|
@ -129,7 +129,7 @@ trait CustomActionTrait
|
|||
break;
|
||||
case 'dialog':
|
||||
//补充详情操作按钮扩展
|
||||
$dialog = Dialog::make()->title(__('admin.show'))->body($this->detail('$id'))->size($size);
|
||||
$dialog = Dialog::make()->title(__('admin.show'))->name('detail_info')->body($this->detail('$id'))->size($size);
|
||||
try{
|
||||
$actions = $this->detailActions();
|
||||
}catch(\BadMethodCallException $e){
|
||||
|
|
|
|||
|
|
@ -380,6 +380,7 @@ return [
|
|||
|
||||
//分户操作
|
||||
'split_master' => '分户',
|
||||
'merge_master' => '合户',
|
||||
],
|
||||
'person_changes'=>[
|
||||
'changed_at' => '变动日期',
|
||||
|
|
|
|||
Loading…
Reference in New Issue