service === null) { $this->service = service('userservice'); } } protected function action_init_process(string $action, array $formDatas = []): void { parent::action_init_process($action, $formDatas); $this->addViewDatas('layout', $this->layouts); $this->addViewDatas('helper', $this->service->getHelper()); $this->service->getActionForm()->action_init_process($action, $formDatas); $this->addViewDatas('formFields', $this->service->getActionForm()->getFormFields()); $this->addViewDatas('formRules', $this->service->getActionForm()->getFormRules()); $this->addViewDatas('formFilters', $this->service->getActionForm()->getFormFilters()); $this->addViewDatas('formOptions', $this->service->getActionForm()->getFormOptions()); } //Index,FieldForm관련 public function index(): string { $action = __FUNCTION__; $this->action_init_process($action); //요청업무 $auth_uid = $this->getAuthContext()->getUID(); if ($auth_uid === null) { throw new RuntimeException(static::class . '->' . __FUNCTION__ . "에서 오류발생:로그인을 하지 않으셨습니다."); } $this->addViewDatas('boardRequestTaskCount', service('boardservice')->getRequestTaskCount($auth_uid)); //Total 서버 현황 //interval을 기준으로 최근 신규 서비스정보 가져오기 // $interval = intval($this->request->getVar('interval') ?? 7); // $this->addViewDatas('interval', $interval); // $newServiceEntities = service('customer_serviceservice')->getNewServiceEntities($interval); // $this->addViewDatas('newServiceEntities', $newServiceEntities); // $this->addViewDatas('newServiceCount', count($newServiceEntities)); //서비스별 미납 Count // $unPaidTotalCount = $unPaidTotalAmount = 0; // foreach (array_values(service('paymentservice')->getUnPaids('serviceinfo_uid')) as $unPaid) { // $unPaidTotalCount += $unPaid['cnt']; // $unPaidTotalAmount += $unPaid['amount']; // } // $this->addViewDatas('unPaidTotalCount', $unPaidTotalCount); // $this->addViewDatas('unPaidTotalAmount', $unPaidTotalAmount); return $this->action_render_process($action, $this->getViewDatas(), $this->request->getVar('ActionTemplate') ?? "welcome"); } }