field가 array 입니다.\n" . var_export($field, true)); } switch ($field) { case "name": case "role": $rule = "required|trim|string"; break; case "email": $rule = "if_exist|trim|valid_email"; $rule .= in_array($action, ["create", "create_form"]) ? "|is_unique[{$this->table}.{$field}]" : ""; break; case "account_balance": case "coupon_balance": case "point_balance": $rule = "if_exist|numeric"; break; default: $rule = parent::getFormFieldRule($action, $field); break; } return $rule; } //Create용 protected function create_process(array $formDatas): ClientEntity { $entity = parent::create_process($formDatas); //고객코드 Code 자동 생성 후 수정 $code = 'C' . str_pad($entity->getPK(), 4, '0', STR_PAD_LEFT); return $this->modify($entity, ['code' => $code]); } //List 검색용 public function setList_WordFilter(string $word): void { $this->orLike(self::TABLE . '.email', $word, 'both'); parent::setList_WordFilter($word); } }