dbms_init...1

This commit is contained in:
choi.jh 2025-07-01 15:57:45 +09:00
parent cf6ff72ac2
commit 9672d9d9a5
9 changed files with 189 additions and 54 deletions

View File

@ -25,18 +25,20 @@ $routes->group('', ['namespace' => 'App\Controllers'], function ($routes) {
}); });
$routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'authFilter:manager'], function ($routes) { $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'authFilter:manager'], function ($routes) {
$routes->get('/', 'Home::index'); $routes->get('/', 'Home::index');
$routes->group('user', ['namespace' => 'App\Controllers\Admin', 'filter' => 'authFilter:master'], function ($routes) { $routes->group('user', ['namespace' => 'App\Controllers\Admin'], function ($routes) {
$routes->get('/', 'UserController::index', []); $routes->get('/', 'UserController::index', ['filter' => 'authFilter:master']);
$routes->get('create', 'UserController::create_form'); $routes->get('create', 'UserController::create_form', ['filter' => 'authFilter:master']);
$routes->post('create', 'UserController::create'); $routes->post('create', 'UserController::create', ['filter' => 'authFilter:master']);
$routes->get('modify/(:num)', 'UserController::modify_form/$1'); $routes->get('modify/(:num)', 'UserController::modify_form/$1', ['filter' => 'authFilter:master']);
$routes->post('modify/(:num)', 'UserController::modify/$1'); $routes->post('modify/(:num)', 'UserController::modify/$1', ['filter' => 'authFilter:master']);
$routes->get('view/(:num)', 'UserController::view/$1'); $routes->get('view/(:num)', 'UserController::view/$1', ['filter' => 'authFilter:manager']);
$routes->get('delete/(:num)', 'UserController::delete/$1'); $routes->get('delete/(:num)', 'UserController::delete/$1', ['filter' => 'authFilter:master']);
$routes->get('toggle/(:num)/(:any)', 'UserController::toggle/$1/$2'); $routes->get('toggle/(:num)/(:any)', 'UserController::toggle/$1/$2', ['filter' => 'authFilter:master']);
$routes->post('batchjob', 'UserController::batchjob'); $routes->post('batchjob', 'UserController::batchjob', ['filter' => 'authFilter:master']);
$routes->post('batchjob_delete', 'UserController::batchjob_delete'); $routes->post('batchjob_delete', 'UserController::batchjob_delete', ['filter' => 'authFilter:master']);
$routes->get('download/(:alpha)', 'UserController::download/$1'); $routes->get('download/(:alpha)', 'UserController::download/$1', ['filter' => 'authFilter:master']);
$routes->get('individual_modify/(:num)', 'UserController::individual_modify_form/$1', ['filter' => 'authFilter:manager']);
$routes->post('individual_modify/(:num)', 'UserController::individual_modify/$1', ['filter' => 'authFilter:manager']);
}); });
$routes->group('mylog', ['namespace' => 'App\Controllers\Admin'], function ($routes) { $routes->group('mylog', ['namespace' => 'App\Controllers\Admin'], function ($routes) {
$routes->get('/', 'MyLogController::index'); $routes->get('/', 'MyLogController::index');
@ -44,7 +46,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
}); });
$routes->group('customer', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('customer', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->group('client', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('client', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'ClientController::index', []); $routes->get('/', 'ClientController::index');
$routes->get('create', 'ClientController::create_form'); $routes->get('create', 'ClientController::create_form');
$routes->post('create', 'ClientController::create'); $routes->post('create', 'ClientController::create');
$routes->get('modify/(:num)', 'ClientController::modify_form/$1'); $routes->get('modify/(:num)', 'ClientController::modify_form/$1');
@ -57,7 +59,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'ClientController::download/$1'); $routes->get('download/(:alpha)', 'ClientController::download/$1');
}); });
$routes->group('clienthistory', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('clienthistory', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'ClientHistoryController::index', []); $routes->get('/', 'ClientHistoryController::index');
$routes->get('create', 'ClientHistoryController::create_form'); $routes->get('create', 'ClientHistoryController::create_form');
$routes->post('create', 'ClientHistoryController::create'); $routes->post('create', 'ClientHistoryController::create');
$routes->get('modify/(:num)', 'ClientHistoryController::modify_form/$1'); $routes->get('modify/(:num)', 'ClientHistoryController::modify_form/$1');
@ -70,7 +72,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'ClientHistoryController::download/$1'); $routes->get('download/(:alpha)', 'ClientHistoryController::download/$1');
}); });
$routes->group('account', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('account', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'AccountController::index', []); $routes->get('/', 'AccountController::index');
$routes->get('create', 'AccountController::create_form'); $routes->get('create', 'AccountController::create_form');
$routes->post('create', 'AccountController::create'); $routes->post('create', 'AccountController::create');
$routes->get('modify/(:num)', 'AccountController::modify_form/$1'); $routes->get('modify/(:num)', 'AccountController::modify_form/$1');
@ -83,7 +85,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'AccountController::download/$1'); $routes->get('download/(:alpha)', 'AccountController::download/$1');
}); });
$routes->group('coupon', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('coupon', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'CouponController::index', []); $routes->get('/', 'CouponController::index');
$routes->get('create', 'CouponController::create_form'); $routes->get('create', 'CouponController::create_form');
$routes->post('create', 'CouponController::create'); $routes->post('create', 'CouponController::create');
$routes->get('modify/(:num)', 'CouponController::modify_form/$1'); $routes->get('modify/(:num)', 'CouponController::modify_form/$1');
@ -96,7 +98,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'CouponController::download/$1'); $routes->get('download/(:alpha)', 'CouponController::download/$1');
}); });
$routes->group('point', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('point', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'PointController::index', []); $routes->get('/', 'PointController::index');
$routes->get('create', 'PointController::create_form'); $routes->get('create', 'PointController::create_form');
$routes->post('create', 'PointController::create'); $routes->post('create', 'PointController::create');
$routes->get('modify/(:num)', 'PointController::modify_form/$1'); $routes->get('modify/(:num)', 'PointController::modify_form/$1');
@ -109,7 +111,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'PointController::download/$1'); $routes->get('download/(:alpha)', 'PointController::download/$1');
}); });
$routes->group('service', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('service', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'ServiceController::index', []); $routes->get('/', 'ServiceController::index');
$routes->get('create', 'ServiceController::create_form'); $routes->get('create', 'ServiceController::create_form');
$routes->post('create', 'ServiceController::create'); $routes->post('create', 'ServiceController::create');
$routes->get('modify/(:num)', 'ServiceController::modify_form/$1'); $routes->get('modify/(:num)', 'ServiceController::modify_form/$1');
@ -122,7 +124,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'ServiceController::download/$1'); $routes->get('download/(:alpha)', 'ServiceController::download/$1');
}); });
$routes->group('serviceitem', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('serviceitem', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'ServiceItemController::index', []); $routes->get('/', 'ServiceItemController::index');
$routes->get('create', 'ServiceItemController::create_form'); $routes->get('create', 'ServiceItemController::create_form');
$routes->post('create', 'ServiceItemController::create'); $routes->post('create', 'ServiceItemController::create');
$routes->get('modify/(:num)', 'ServiceItemController::modify_form/$1'); $routes->get('modify/(:num)', 'ServiceItemController::modify_form/$1');
@ -135,7 +137,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'ServiceItemController::download/$1'); $routes->get('download/(:alpha)', 'ServiceItemController::download/$1');
}); });
$routes->group('servicehistory', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('servicehistory', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'ServiceHistoryController::index', []); $routes->get('/', 'ServiceHistoryController::index');
$routes->get('create', 'ServiceHistoryController::create_form'); $routes->get('create', 'ServiceHistoryController::create_form');
$routes->post('create', 'ServiceHistoryController::create'); $routes->post('create', 'ServiceHistoryController::create');
$routes->get('modify/(:num)', 'ServiceHistoryController::modify_form/$1'); $routes->get('modify/(:num)', 'ServiceHistoryController::modify_form/$1');
@ -148,7 +150,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'ServiceHistoryController::download/$1'); $routes->get('download/(:alpha)', 'ServiceHistoryController::download/$1');
}); });
$routes->group('payment', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) { $routes->group('payment', ['namespace' => 'App\Controllers\Admin\Customer'], function ($routes) {
$routes->get('/', 'ServicePaymentController::index', []); $routes->get('/', 'ServicePaymentController::index');
$routes->get('create', 'ServicePaymentController::create_form'); $routes->get('create', 'ServicePaymentController::create_form');
$routes->post('create', 'ServicePaymentController::create'); $routes->post('create', 'ServicePaymentController::create');
$routes->get('modify/(:num)', 'ServicePaymentController::modify_form/$1'); $routes->get('modify/(:num)', 'ServicePaymentController::modify_form/$1');
@ -164,7 +166,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
}); });
$routes->group('equipment', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->group('equipment', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) {
$routes->group('switch', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->group('switch', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) {
$routes->get('/', 'SwitchController::index', []); $routes->get('/', 'SwitchController::index');
$routes->get('create', 'SwitchController::create_form'); $routes->get('create', 'SwitchController::create_form');
$routes->post('create', 'SwitchController::create'); $routes->post('create', 'SwitchController::create');
$routes->get('modify/(:alphanum)', 'SwitchController::modify_form/$1'); $routes->get('modify/(:alphanum)', 'SwitchController::modify_form/$1');
@ -177,7 +179,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'SwitchController::download/$1'); $routes->get('download/(:alpha)', 'SwitchController::download/$1');
}); });
$routes->group('code', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->group('code', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) {
$routes->get('/', 'CodeController::index', []); $routes->get('/', 'CodeController::index');
$routes->get('create', 'CodeController::create_form'); $routes->get('create', 'CodeController::create_form');
$routes->post('create', 'CodeController::create'); $routes->post('create', 'CodeController::create');
$routes->get('modify/(:alphanum)', 'CodeController::modify_form/$1'); $routes->get('modify/(:alphanum)', 'CodeController::modify_form/$1');
@ -190,7 +192,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'CodeController::download/$1'); $routes->get('download/(:alpha)', 'CodeController::download/$1');
}); });
$routes->group('server', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) { $routes->group('server', ['namespace' => 'App\Controllers\Admin\Equipment'], function ($routes) {
$routes->get('/', 'ServerController::index', []); $routes->get('/', 'ServerController::index');
$routes->get('create', 'ServerController::create_form'); $routes->get('create', 'ServerController::create_form');
$routes->post('create', 'ServerController::create'); $routes->post('create', 'ServerController::create');
$routes->get('modify/(:num)', 'ServerController::modify_form/$1'); $routes->get('modify/(:num)', 'ServerController::modify_form/$1');
@ -204,7 +206,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
}); });
$routes->group('part', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('part', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->group('line', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('line', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->get('/', 'LineController::index', []); $routes->get('/', 'LineController::index');
$routes->get('create', 'LineController::create_form'); $routes->get('create', 'LineController::create_form');
$routes->post('create', 'LineController::create'); $routes->post('create', 'LineController::create');
$routes->get('modify/(:num)', 'LineController::modify_form/$1'); $routes->get('modify/(:num)', 'LineController::modify_form/$1');
@ -217,7 +219,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'LineController::download/$1'); $routes->get('download/(:alpha)', 'LineController::download/$1');
}); });
$routes->group('ip', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('ip', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->get('/', 'IpController::index', []); $routes->get('/', 'IpController::index');
$routes->get('create', 'IpController::create_form'); $routes->get('create', 'IpController::create_form');
$routes->post('create', 'IpController::create'); $routes->post('create', 'IpController::create');
$routes->get('modify/(:num)', 'IpController::modify_form/$1'); $routes->get('modify/(:num)', 'IpController::modify_form/$1');
@ -230,7 +232,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'IpController::download/$1'); $routes->get('download/(:alpha)', 'IpController::download/$1');
}); });
$routes->group('defence', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('defence', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->get('/', 'DefenceController::index', []); $routes->get('/', 'DefenceController::index');
$routes->get('create', 'DefenceController::create_form'); $routes->get('create', 'DefenceController::create_form');
$routes->post('create', 'DefenceController::create'); $routes->post('create', 'DefenceController::create');
$routes->get('modify/(:num)', 'DefenceController::modify_form/$1'); $routes->get('modify/(:num)', 'DefenceController::modify_form/$1');
@ -243,7 +245,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'DefenceController::download/$1'); $routes->get('download/(:alpha)', 'DefenceController::download/$1');
}); });
$routes->group('software', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('software', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->get('/', 'SoftwareController::index', []); $routes->get('/', 'SoftwareController::index');
$routes->get('create', 'SoftwareController::create_form'); $routes->get('create', 'SoftwareController::create_form');
$routes->post('create', 'SoftwareController::create'); $routes->post('create', 'SoftwareController::create');
$routes->get('modify/(:num)', 'SoftwareController::modify_form/$1'); $routes->get('modify/(:num)', 'SoftwareController::modify_form/$1');
@ -256,7 +258,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('download/(:alpha)', 'SoftwareController::download/$1'); $routes->get('download/(:alpha)', 'SoftwareController::download/$1');
}); });
$routes->group('cpu', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('cpu', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->get('/', 'CpuController::index', []); $routes->get('/', 'CpuController::index');
$routes->get('create', 'CpuController::create_form'); $routes->get('create', 'CpuController::create_form');
$routes->post('create', 'CpuController::create'); $routes->post('create', 'CpuController::create');
$routes->get('modify/(:num)', 'CpuController::modify_form/$1'); $routes->get('modify/(:num)', 'CpuController::modify_form/$1');
@ -266,7 +268,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('toggle/(:num)/(:any)', 'CpuController::toggle/$1/$2'); $routes->get('toggle/(:num)/(:any)', 'CpuController::toggle/$1/$2');
}); });
$routes->group('ram', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('ram', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->get('/', 'RamController::index', []); $routes->get('/', 'RamController::index');
$routes->get('create', 'RamController::create_form'); $routes->get('create', 'RamController::create_form');
$routes->post('create', 'RamController::create'); $routes->post('create', 'RamController::create');
$routes->get('modify/(:num)', 'RamController::modify_form/$1'); $routes->get('modify/(:num)', 'RamController::modify_form/$1');
@ -276,7 +278,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('toggle/(:num)/(:any)', 'RamController::toggle/$1/$2'); $routes->get('toggle/(:num)/(:any)', 'RamController::toggle/$1/$2');
}); });
$routes->group('storage', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('storage', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->get('/', 'StorageController::index', []); $routes->get('/', 'StorageController::index');
$routes->get('create', 'StorageController::create_form'); $routes->get('create', 'StorageController::create_form');
$routes->post('create', 'StorageController::create'); $routes->post('create', 'StorageController::create');
$routes->get('modify/(:num)', 'StorageController::modify_form/$1'); $routes->get('modify/(:num)', 'StorageController::modify_form/$1');
@ -286,7 +288,7 @@ $routes->group('admin', ['namespace' => 'App\Controllers\Admin', 'filter' => 'au
$routes->get('toggle/(:num)/(:any)', 'StorageController::toggle/$1/$2'); $routes->get('toggle/(:num)/(:any)', 'StorageController::toggle/$1/$2');
}); });
$routes->group('domain', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) { $routes->group('domain', ['namespace' => 'App\Controllers\Admin\Equipment\Part'], function ($routes) {
$routes->get('/', 'DomainController::index', []); $routes->get('/', 'DomainController::index');
$routes->get('create', 'DomainController::create_form'); $routes->get('create', 'DomainController::create_form');
$routes->post('create', 'DomainController::create'); $routes->post('create', 'DomainController::create');
$routes->get('modify/(:num)', 'DomainController::modify_form/$1'); $routes->get('modify/(:num)', 'DomainController::modify_form/$1');

View File

@ -40,6 +40,30 @@ class UserController extends AdminController
return $this->_helper; return $this->_helper;
} }
//Index,FieldForm관련 //Index,FieldForm관련
protected function getResultSuccess(string $message = MESSAGES["SUCCESS"], ?string $actionTemplate = null): RedirectResponse|string
{
switch ($this->getAction()) {
case 'individual_modify':
$this->getMyLogService()->save($this->getService()->getClassName(), __FUNCTION__, $message);
$result = $this->view($this->entity->getPK());
break;
case 'individual_modify_form':
$this->control = $this->getControlDatas();
$this->getHelper()->setViewDatas($this->getViewDatas());
$actionTemplate = $this->request->getVar('ActionTemplate') ?? $actionTemplate;
if ($actionTemplate) {
$view_file = $this->view_path . $actionTemplate . DIRECTORY_SEPARATOR . $this->getAction();
} else {
$view_file = $this->view_path . $this->getAction();
}
$result = view($view_file, ['viewDatas' => $this->getViewDatas()]);
break;
default:
$result = parent::getResultSuccess($message, $actionTemplate);
break;
}
return $result;
}
protected function setValidation(Validation $validation, string $field, string $rule): Validation protected function setValidation(Validation $validation, string $field, string $rule): Validation
{ {
switch ($field) { switch ($field) {
@ -54,6 +78,82 @@ class UserController extends AdminController
return $validation; return $validation;
} }
//Index,FieldForm관련. //Index,FieldForm관련.
protected function individual_modify_form_process(mixed $entity): mixed
{
return $entity;
}
final public function individual_modify_form(mixed $uid): RedirectResponse|string
{
try {
//각 Field 초기화
$fields = [
'formFields' => ['id', 'passwd', 'confirmpassword', 'name', 'email', 'mobile'],
];
// $this->getMyAuth()->pushCurrentUrl($this->request->getUri()->getPath() . ($this->request->getUri()->getQuery() ? "?" . $this->request->getUri()->getQuery() : ""));
$this->initAction(__FUNCTION__, $fields);
$this->setFormFields($this->getService()->getFormFields());
//FieldRule정의
foreach ($this->getFormFields() as $field) {
$this->setFieldRule($field, $this->getFormFieldRule($this->getAction(), $field));
}
helper(['form']);
//filter_fields에 해당하는 값이 있을 경우 정의
foreach ($this->getFilterFields() as $field) {
$value = $this->request->getVar($field);
if ($value) {
$this->$field = $value;
}
}
//기존 Entity 가져오기
$entity = $this->getService()->getEntity($uid);
if (!$entity) {
throw new \Exception("{$uid}에 대한 정보를 찾을수 없습니다.");
}
$this->entity = $this->individual_modify_form_process($entity);
$this->forms = ['attributes' => ['method' => "post",], 'hiddens' => []];
return $this->getResultSuccess();
} catch (\Exception $e) {
return $this->getResultFail($e->getMessage());
}
}
protected function individual_modify_process(mixed $entity, array $formDatas): mixed
{
//데이터 검증
$formDatas = $this->doValidate($this->getFieldRules(), $formDatas);
return $this->getService()->modify($entity, $formDatas);
}
final public function individual_modify(int $uid): RedirectResponse|string
{
//Transaction Start
$this->getService()->getModel()->transStart();
try {
//각 Field 초기화
$fields = [
'formFields' => ['id', 'passwd', 'confirmpassword', 'name', 'email', 'mobile'],
];
$this->initAction(__FUNCTION__, $fields);
//FieldRule정의
foreach ($this->getFormFields() as $field) {
$this->setFieldRule($field, $this->getFormFieldRule($this->getAction(), $field));
}
//입력값정의
$formDatas = [];
foreach ($this->getFormFields() as $field) {
$formDatas[$field] = $this->request->getPost($field);
}
//기존 Entity 가져오기
$entity = $this->getService()->getEntity($uid);
if (!$entity) {
throw new \Exception("{$uid}에 대한 정보를 찾을수 없습니다.");
}
$this->entity = $this->individual_modify_process($entity, $formDatas);
$this->getService()->getModel()->transCommit();
return $this->getResultSuccess();
} catch (\Exception $e) {
$this->getService()->getModel()->transRollback();
return $this->getResultFail($e->getMessage());
}
}
protected function setFilterConditionForList(): void protected function setFilterConditionForList(): void
{ {
foreach ($this->getFilterFields() as $field) { foreach ($this->getFilterFields() as $field) {

View File

@ -4,11 +4,8 @@ namespace App\Controllers\Auth;
use App\Controllers\CommonController; use App\Controllers\CommonController;
use App\Entities\UserEntity;
use App\Helpers\AuthHelper; use App\Helpers\AuthHelper;
use App\Libraries\LogCollector;
use CodeIgniter\HTTP\RedirectResponse; use CodeIgniter\HTTP\RedirectResponse;
use CodeIgniter\HTTP\RequestInterface; use CodeIgniter\HTTP\RequestInterface;
use CodeIgniter\HTTP\ResponseInterface; use CodeIgniter\HTTP\ResponseInterface;
use Psr\Log\LoggerInterface; use Psr\Log\LoggerInterface;
@ -32,7 +29,13 @@ abstract class AuthController extends CommonController
} }
return $this->_helper; return $this->_helper;
} }
protected function getResultFail(string $message = MESSAGES["FAILED"]): RedirectResponse
{
if ($this->request->getMethod() === 'POST') {
return redirect()->back()->withInput()->with('error', $message);
}
return redirect()->to($this->getMyAuth()->popPreviousUrl())->with('error', $message);
}
protected function getResultSuccess(string $message = MESSAGES["SUCCESS"], ?string $actionTemplate = null): RedirectResponse|string protected function getResultSuccess(string $message = MESSAGES["SUCCESS"], ?string $actionTemplate = null): RedirectResponse|string
{ {
switch ($this->getAction()) { switch ($this->getAction()) {

View File

@ -46,6 +46,6 @@ class GoogleController extends AuthController
if (!array_key_exists('access_code', $formDatas) || !$formDatas['access_code']) { if (!array_key_exists('access_code', $formDatas) || !$formDatas['access_code']) {
throw new \Exception("구글 로그인 실패"); throw new \Exception("구글 로그인 실패");
} }
return ($this->getService()->login($formDatas)); return $this->getService()->login($formDatas);
} }
} }

View File

@ -31,6 +31,6 @@ class LocalController extends AuthController
//로그인처리 //로그인처리
protected function create_process(array $formDatas): UserEntity protected function create_process(array $formDatas): UserEntity
{ {
return ($this->getService()->login($formDatas)); return $this->getService()->login($formDatas);
} }
} }

View File

@ -153,20 +153,20 @@ abstract class CommonController extends BaseController
return $this->_control['filter_optons'] ?? []; return $this->_control['filter_optons'] ?? [];
} }
protected function initAction(string $action): void protected function initAction(string $action, $fields = []): void
{ //각 Field 초기화 { //각 Field 초기화
$this->setAction($action); $this->setAction($action);
$this->setFormFields($this->getService()->getFormFields()); $this->setFormFields(array_key_exists('formFields', $fields) ? $fields['formFields'] : $this->getService()->getFormFields());
$this->setIndexFields($this->getService()->getIndexFields()); $this->setIndexFields(array_key_exists('indexFields', $fields) ? $fields['indexFields'] : $this->getService()->getIndexFields());
$this->setViewFields($this->getService()->getViewFields()); $this->setViewFields(array_key_exists('viewFields', $fields) ? $fields['viewFields'] : $this->getService()->getViewFields());
$this->setFilterFields($this->getService()->getFilterFields()); $this->setFilterFields(array_key_exists('filterFields', $fields) ? $fields['filterFields'] : $this->getService()->getFilterFields());
$this->setBatchJobFields(array_key_exists('batchjobFields', $fields) ? $fields['batchjobFields'] : $this->getService()->getBatchJobFields());
foreach ($this->getViewFields() as $field) { foreach ($this->getViewFields() as $field) {
$this->setFieldRule($field, $this->getFormFieldRule($this->getAction(), $field)); $this->setFieldRule($field, $this->getFormFieldRule($this->getAction(), $field));
} }
foreach ($this->getFilterFields() as $field) { foreach ($this->getFilterFields() as $field) {
$this->setFilterFieldOption($field, $this->getFormFieldOption($field)); $this->setFilterFieldOption($field, $this->getFormFieldOption($field));
} }
$this->setBatchJobFields($this->getService()->getBatchJobFields());
} }
protected function getFormFieldRule(string $action, string $field): string protected function getFormFieldRule(string $action, string $field): string
{ {
@ -222,7 +222,7 @@ abstract class CommonController extends BaseController
return $formDatas; return $formDatas;
// return $validation->getValidated(); // return $validation->getValidated();
} }
final protected function getResultFail(string $message = MESSAGES["FAILED"]): RedirectResponse protected function getResultFail(string $message = MESSAGES["FAILED"]): RedirectResponse
{ {
LogCollector::debug($message); LogCollector::debug($message);
$this->getMyLogService()->save($this->getService()->getClassName(), __FUNCTION__, $message); $this->getMyLogService()->save($this->getService()->getClassName(), __FUNCTION__, $message);
@ -350,7 +350,6 @@ abstract class CommonController extends BaseController
} }
$this->entity = $this->modify_form_process($entity); $this->entity = $this->modify_form_process($entity);
$this->forms = ['attributes' => ['method' => "post",], 'hiddens' => []]; $this->forms = ['attributes' => ['method' => "post",], 'hiddens' => []];
$this->getService()->getModel()->transCommit();
return $this->getResultSuccess(); return $this->getResultSuccess();
} catch (\Exception $e) { } catch (\Exception $e) {
return $this->getResultFail($e->getMessage()); return $this->getResultFail($e->getMessage());

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,31 @@
<?= $this->extend(LAYOUTS[$viewDatas['layout']]['path']) ?>
<?= $this->section('content') ?>
<?php if ($error = session('error')): echo $viewDatas['helper']->alert($error) ?><?php endif ?>
<div id="container" class="content">
<link href="/css/<?= $viewDatas['layout'] ?>/form.css" media="screen" rel="stylesheet" type="text/css" />
<script src="/js/<?= $viewDatas['layout'] ?>/form.js" referrerpolicy="origin"></script>
<script src="/assets/tinymce/tinymce.min.js" referrerpolicy="origin"></script>
<?php foreach ($viewDatas['individualStylesheets'] as $css): ?>
<link href="/css/<?= $viewDatas['layout'] ?>/<?= $css ?>" media="screen" rel="stylesheet" type="text/css" />
<?php endforeach ?>
<?php foreach ($viewDatas['individualScripts'] as $js): ?>
<script src="/js/<?= $viewDatas['layout'] ?>/<?= $js ?>" referrerpolicy="origin"></script>
<?php endforeach ?>
<?= form_open(current_url(), ['id' => 'action_form', ...$viewDatas['forms']['attributes']], $viewDatas['forms']['hiddens']) ?>
<div class="action_form">
<table class="table table-bordered">
<?php foreach ($viewDatas['control']['form_fields'] as $field): ?>
<tr>
<th nowrap class="text-end"><?= $viewDatas['helper']->getFieldLabel($field, $viewDatas) ?></th>
<td nowrap class="text-start">
<?= $viewDatas['helper']->getFieldForm($field, old($field) ?? $viewDatas['entity']->$field ?? null, $viewDatas) ?>
<div><?= validation_show_error($field); ?></div>
</td>
</tr>
<?php endforeach; ?>
</table>
<div class="text-center"><?= form_submit("", '수정', ["class" => "btn btn-outline btn-primary"]) ?></div>
<?= form_close(); ?>
</div>
</div>
<?= $this->endSection() ?>

View File

@ -29,7 +29,7 @@
"modify", "modify",
[ [
"class" => "dropdown-item", "class" => "dropdown-item",
"data-src" => "/admin/user/modify/" . $viewDatas['myAuthUID'], "data-src" => "/admin/user/individual_modify/" . $viewDatas['myAuthUID'],
"data-bs-toggle" => "modal", "data-bs-toggle" => "modal",
"data-bs-target" => "#index_action_form" "data-bs-target" => "#index_action_form"
] ]