From 647630e1a7f1dd8d9a25ab7ba5a4c891814d97d9 Mon Sep 17 00:00:00 2001 From: s-sakiyama <26-m-s-stella-tecnica@it-college.jp> Date: Fri, 16 Oct 2026 15:57:14 +0900 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC4=E6=AE=B5=E9=9A=8E=E3=80=80insert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/RegisterDepartmentImpl.java | 37 +++++ .../InsertDepartmentConfirmController.java | 132 ++++++++++++++++ .../InsertDepartmentController.java | 146 ++++++++++++++++++ .../InsertDepartmentInputController.java | 90 +++++++++++ .../PageReturnAttributeKeyword.java | 1 + .../TransitionTargetPageNameKeyword.java | 15 +- .../form/InsertDepartmentForm.java | 69 +++++++++ .../templates/insertDepartmentConfirm.html | 88 +++++++++++ .../templates/insertDepartmentInput.html | 67 ++++++++ .../templates/insertDepartmentResult.html | 40 +++++ src/main/resources/templates/menu.html | 2 +- 11 files changed, 682 insertions(+), 5 deletions(-) create mode 100644 src/main/java/com/example/rhizome/app/domain/service/impl/RegisterDepartmentImpl.java create mode 100644 src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentConfirmController.java create mode 100644 src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentController.java create mode 100644 src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentInputController.java create mode 100644 src/main/java/com/example/rhizome/app/presentation/form/InsertDepartmentForm.java create mode 100644 src/main/resources/templates/insertDepartmentConfirm.html create mode 100644 src/main/resources/templates/insertDepartmentInput.html create mode 100644 src/main/resources/templates/insertDepartmentResult.html diff --git a/src/main/java/com/example/rhizome/app/domain/service/impl/RegisterDepartmentImpl.java b/src/main/java/com/example/rhizome/app/domain/service/impl/RegisterDepartmentImpl.java new file mode 100644 index 0000000..c23ff9c --- /dev/null +++ b/src/main/java/com/example/rhizome/app/domain/service/impl/RegisterDepartmentImpl.java @@ -0,0 +1,37 @@ +package com.example.rhizome.app.domain.service.impl; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.example.rhizome.app.domain.model.Department; +import com.example.rhizome.app.domain.service.RegisterDepartment; +import com.example.rhizome.app.infra.entity.DepartmentEntity; +import com.example.rhizome.app.infra.repository.DepartmentRepository; + +/** + * department テーブルの登録系の機能を集約させるサービスクラスです。 + */ +@Service +@Transactional +public class RegisterDepartmentImpl implements RegisterDepartment { + + DepartmentRepository departmentRepository; + + @Autowired + public RegisterDepartmentImpl(DepartmentRepository departmentRepository) { + this.departmentRepository = departmentRepository; + } + + /** + * department インスタンスの内容を登録する + * + * @param department 登録対象のデータ + */ + + @Override + public void registerDepartment(Department department) { + // TODO 自動生成されたメソッド・スタブ + departmentRepository.save(DepartmentEntity.convertFrom(department)); + } +} diff --git a/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentConfirmController.java b/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentConfirmController.java new file mode 100644 index 0000000..c8b3e27 --- /dev/null +++ b/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentConfirmController.java @@ -0,0 +1,132 @@ +package com.example.rhizome.app.presentation.controller; + +import static com.example.rhizome.app.presentation.controller.pageproperty.TransitionTargetPageNameKeyword.*; + +import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; + +import javax.servlet.http.HttpSession; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +import com.example.rhizome.aop.aspect.PermissionCheck; +import com.example.rhizome.aop.aspect.SessionCheck; +import com.example.rhizome.app.domain.model.Department; +import com.example.rhizome.app.domain.model.SearchConditionDepartment; +import com.example.rhizome.app.domain.service.SearchDepartment; +import com.example.rhizome.app.domain.service.SearchEmployee; +import com.example.rhizome.app.domain.service.impl.SearchDepartmentImpl; +import com.example.rhizome.app.domain.service.impl.SearchEmployeeImpl; +import com.example.rhizome.app.presentation.controller.pageproperty.PageReturnAttributeKeyword; +import com.example.rhizome.app.presentation.controller.pageproperty.TransitionTargetPageNameKeyword; +import com.example.rhizome.app.presentation.form.DepartmentForm; +import com.example.rhizome.app.presentation.form.InsertDepartmentForm; +import com.example.rhizome.app.presentation.form.MessageForm; + +/** + * 新規登録者情報チェック用のコントローラ + */ +@Controller +public class InsertDepartmentConfirmController { + + // ログ出力用インスタンス + private final static Logger LOGGER = Logger.getLogger(InsertDepartmentConfirmController.class.getName()); + + // エラーメッセージ用の定数フィールド + private final static String SEVERE_ERROR_MESSAGE = "エラーが発生しました!"; + + HttpSession httpSession; + SearchDepartment searchDepartment; + SearchEmployee searchEmployee; + + @Autowired + public InsertDepartmentConfirmController( + HttpSession httpSession, + SearchDepartmentImpl searchDepartment, + SearchEmployeeImpl searchEmployee) { + this.httpSession = httpSession; + this.searchDepartment = searchDepartment; + this.searchEmployee = searchEmployee; + } + + @ModelAttribute + public InsertDepartmentForm insertDepartmentForm() { + return new InsertDepartmentForm(); + } + + /** + * 登録情報のチェックを行う + * + * @param insertDepartmentForm 登録情報 + * @param model ビューにデータを渡すためのコンテナ + * @return 遷移先の画面 + */ + @PermissionCheck + @SessionCheck + @RequestMapping(value = INSERT_DEPARTMENT_CONFIRM, method = RequestMethod.POST) + public String insertEmployeeConfirm(InsertDepartmentForm insertDepartmentForm, Model model) { + + try { + // 部署一覧を取得し、画面に返す用のクラスに詰め替える + // 作成した部署一覧をセット + model.addAttribute( + PageReturnAttributeKeyword.DEPARTMENT_FORM_LIST, + DepartmentForm.convertFrom( + searchDepartment.selectAll())); + + // 登録用パラメータチェック + List error = insertDepartmentForm.validateParameter(); + + // 入力内容に誤りがあるか + if (!error.isEmpty()) { + // 誤りがあった場合 + // 誤りがあった箇所のエラーメッセージを表示 + model.addAttribute(PageReturnAttributeKeyword.MESSAGE_ERROR, + new MessageForm(String.join(", ", error) + "が不正です。")); + // 画面に返す為の登録情報をセット + model.addAttribute(PageReturnAttributeKeyword.INSERT_DEPARTMENT_FORM, insertDepartmentForm); + // 登録画面に遷移 + return TransitionTargetPageNameKeyword.INSERT_DEPARTMENT_INPUT_HTML; + } + + final String DUPLICATION = "既に登録済みのメールアドレスです。"; + + // 登録対象のメールアドレスを元に検索 + List departmetList = searchDepartment + .searchBy(new SearchConditionDepartment(null, insertDepartmentForm.getNmDepartment())); + + // 検索結果があるか + if (!departmetList.isEmpty()) { + // 検索した結果0件ではない場合 + // 重複を許さないため、エラー処理 + model.addAttribute(PageReturnAttributeKeyword.MESSAGE_ERROR, new MessageForm(DUPLICATION)); + // 画面に返す為の登録情報をセット + model.addAttribute(PageReturnAttributeKeyword.INSERT_DEPARTMENT_FORM, insertDepartmentForm); + // 登録画面に遷移 + return TransitionTargetPageNameKeyword.INSERT_DEPARTMENT_INPUT_HTML; + } + + // 登録確認ページに遷移 + model.addAttribute(PageReturnAttributeKeyword.INSERT_DEPARTMENT_FORM, insertDepartmentForm); + // 登録確認画面に遷移 + return TransitionTargetPageNameKeyword.INSERT_DEPARTMENT_CONFIRM_HTML; + + } catch (Exception e) { + // ログイン情報の破棄 + httpSession.invalidate(); + + e.printStackTrace(); + + // エラーログ出力 + LOGGER.log(Level.SEVERE, SEVERE_ERROR_MESSAGE, e); + // エラー画面遷移 + return TransitionTargetPageNameKeyword.ERROR_HTML; + } + } +} diff --git a/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentController.java b/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentController.java new file mode 100644 index 0000000..5153b72 --- /dev/null +++ b/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentController.java @@ -0,0 +1,146 @@ +package com.example.rhizome.app.presentation.controller; + +import static com.example.rhizome.app.presentation.controller.pageproperty.TransitionTargetPageNameKeyword.*; + +import java.util.ArrayList; +import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; + +import javax.servlet.http.HttpSession; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +import com.example.rhizome.aop.aspect.PermissionCheck; +import com.example.rhizome.aop.aspect.SessionCheck; +import com.example.rhizome.app.domain.service.RegisterDepartment; +import com.example.rhizome.app.domain.service.SearchDepartment; +import com.example.rhizome.app.domain.service.impl.RegisterDepartmentImpl; +import com.example.rhizome.app.domain.service.impl.SearchDepartmentImpl; +import com.example.rhizome.app.presentation.controller.pageproperty.PageReturnAttributeKeyword; +import com.example.rhizome.app.presentation.controller.pageproperty.TransitionTargetPageNameKeyword; +import com.example.rhizome.app.presentation.form.DepartmentForm; +import com.example.rhizome.app.presentation.form.InsertDepartmentForm; +import com.example.rhizome.app.presentation.form.MessageForm; + +/** + * 新規登録用のコントローラ + */ +@Controller +public class InsertDepartmentController { + + // ログ出力用インスタンス + private final static Logger LOGGER = Logger.getLogger(InsertDepartmentController.class.getName()); + + // エラーメッセージ用の定数フィールド + private final static String SEVERE_ERROR_MESSAGE = "エラーが発生しました!"; + + HttpSession httpSession; + RegisterDepartment registerDepartment; + SearchDepartment searchDepartment; + + @Autowired + public InsertDepartmentController(HttpSession httpSession, RegisterDepartmentImpl registerDepartment, + SearchDepartmentImpl searchDepartment) { + this.httpSession = httpSession; + this.registerDepartment = registerDepartment; + this.searchDepartment = searchDepartment; + } + + @ModelAttribute + public InsertDepartmentForm insertDepartmentForm() { + return new InsertDepartmentForm(); + } + + /** + * 新規登録画面表示処理 + * + * @param insertEmployeeForm 登録情報 + * @param model ビューにデータを渡すためのコンテナ + * @return 遷移先の画面 + */ + @PermissionCheck + @SessionCheck + @RequestMapping(value = INSERT_DEPARTMENT, method = RequestMethod.POST) + public String insertEmployee(InsertDepartmentForm insertDepartmentForm, Model model) { + + try { + // 部署一覧を取得し、画面に返す用のクラスに詰め替える + // 作成した部署一覧をセット + model.addAttribute( + PageReturnAttributeKeyword.DEPARTMENT_FORM_LIST, + DepartmentForm.convertFrom( + searchDepartment.selectAll())); + + // Confirm画面から渡ってきた値をチェック + List error = validateParameter( + insertDepartmentForm.getNmDepartment()); + + // エラーが1件以上有る場合 + if (!error.isEmpty()) { + // エラー内容を画面に表示 + model.addAttribute(PageReturnAttributeKeyword.MESSAGE_ERROR, + new MessageForm(String.join(", ", error) + "が不正です。")); + // 登録画面に遷移 + return TransitionTargetPageNameKeyword.INSERT_DEPARTMENT_INPUT_HTML; + } + + // 登録処理 + registerDepartment.registerDepartment(InsertDepartmentForm.convertTo(insertDepartmentForm)); + // 登録結果画面に遷移 + return TransitionTargetPageNameKeyword.INSERT_DEPARTMENT_RESULT_HTML; + + } catch (Exception e) { + // ログイン情報の破棄 + httpSession.invalidate(); + + e.printStackTrace(); + + // エラーログ出力 + LOGGER.log(Level.SEVERE, SEVERE_ERROR_MESSAGE, e); + // エラー画面遷移 + return TransitionTargetPageNameKeyword.ERROR_HTML; + } + } + + /** + * @param departmentName 登録対象の名前 + * @return エラーが有った場合はエラー文言、無ければ空のリストが返る + */ + private List validateParameter( + String departmentName) { + + final String DEPARTMENT_NAME_NULL_BLANK = "部署名"; + + List error = new ArrayList<>(); + + // null or 空文字判定 + if (isNullOrBlank(departmentName)) { + // エラー内容を追加 + error.add(DEPARTMENT_NAME_NULL_BLANK); + } + + return error; + + } + + /** + * 仮引数を null or 空 判定する + * + * @param str 判定対象の文字列 + * @return true:null or 空 false:null or 空 では無い + */ + private static boolean isNullOrBlank(String str) { + if (null == str) { + return true; + } + + return str.isBlank(); + } + +} diff --git a/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentInputController.java b/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentInputController.java new file mode 100644 index 0000000..48c92d3 --- /dev/null +++ b/src/main/java/com/example/rhizome/app/presentation/controller/InsertDepartmentInputController.java @@ -0,0 +1,90 @@ +package com.example.rhizome.app.presentation.controller; + +import static com.example.rhizome.app.presentation.controller.pageproperty.TransitionTargetPageNameKeyword.*; + +import java.util.logging.Level; +import java.util.logging.Logger; + +import javax.servlet.http.HttpSession; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +import com.example.rhizome.aop.aspect.PermissionCheck; +import com.example.rhizome.aop.aspect.SessionCheck; +import com.example.rhizome.app.domain.service.RegisterEmployee; +import com.example.rhizome.app.domain.service.SearchDepartment; +import com.example.rhizome.app.presentation.controller.pageproperty.PageReturnAttributeKeyword; +import com.example.rhizome.app.presentation.controller.pageproperty.TransitionTargetPageNameKeyword; +import com.example.rhizome.app.presentation.form.DepartmentForm; +import com.example.rhizome.app.presentation.form.InsertDepartmentForm;; + +/** + * 登録画面表示用コントローラ + */ +@Controller +public class InsertDepartmentInputController { + + // ログ出力用インスタンス + private final static Logger LOGGER = Logger.getLogger(InsertDepartmentInputController.class.getName()); + + // エラーメッセージ用の定数フィールド + private final static String SEVERE_ERROR_MESSAGE = "エラーが発生しました!"; + + HttpSession httpSession; + RegisterEmployee registerEmployee; + SearchDepartment searchDepartment; + + @Autowired + public InsertDepartmentInputController(HttpSession httpSession, RegisterEmployee registerEmployee, + SearchDepartment searchDepartment) { + this.httpSession = httpSession; + this.registerEmployee = registerEmployee; + this.searchDepartment = searchDepartment; + } + + @ModelAttribute + public InsertDepartmentForm insertEmployeeForm() { + return new InsertDepartmentForm(); + } + + /** + * 登録画面表示処理 + * + * @param insertEmployeeForm 登録画面のフォーム + * @param model ビューにデータを渡すためのコンテナ + * @return 遷移先の画面 + */ + @SessionCheck + @PermissionCheck + @RequestMapping(value = INSERT_DEPARTMENT_INPUT, method = RequestMethod.POST) + public String insertDepartmentInput(InsertDepartmentForm insertDepartmentForm, Model model) { + + try { + // 部署コードリストを作成し、画面に返す値としてセット + model.addAttribute(PageReturnAttributeKeyword.DEPARTMENT_FORM_LIST, + DepartmentForm.convertFrom(searchDepartment.selectAll())); + + // パラメータをセット + model.addAttribute(PageReturnAttributeKeyword.INSERT_DEPARTMENT_FORM, insertDepartmentForm); + + // 登録画面に遷移 + return TransitionTargetPageNameKeyword.INSERT_DEPARTMENT_INPUT_HTML; + + } catch (Exception e) { + // ログイン情報の破棄 + httpSession.invalidate(); + + e.printStackTrace(); + + // エラーログ出力 + LOGGER.log(Level.SEVERE, SEVERE_ERROR_MESSAGE, e); + // エラー画面遷移 + return TransitionTargetPageNameKeyword.ERROR_HTML; + } + } +} diff --git a/src/main/java/com/example/rhizome/app/presentation/controller/pageproperty/PageReturnAttributeKeyword.java b/src/main/java/com/example/rhizome/app/presentation/controller/pageproperty/PageReturnAttributeKeyword.java index 08d3ca9..359a2d3 100644 --- a/src/main/java/com/example/rhizome/app/presentation/controller/pageproperty/PageReturnAttributeKeyword.java +++ b/src/main/java/com/example/rhizome/app/presentation/controller/pageproperty/PageReturnAttributeKeyword.java @@ -16,5 +16,6 @@ public class PageReturnAttributeKeyword { public static final String UPDATE_PERSONAL_EMPLOYEE_USER_FORM = "updatePersonalEmployeeUserForm"; public static final String EMPLOYEE_INFO_FORM_LIST = "employeeInfoFormList"; public static final String UPDATE_DEPARTMENT_INFO_FORM = "updateDepartmentInfoForm"; + public static final String INSERT_DEPARTMENT_FORM = "insertDepartmentForm"; } diff --git a/src/main/java/com/example/rhizome/app/presentation/controller/pageproperty/TransitionTargetPageNameKeyword.java b/src/main/java/com/example/rhizome/app/presentation/controller/pageproperty/TransitionTargetPageNameKeyword.java index 74d9164..d4ba2d3 100644 --- a/src/main/java/com/example/rhizome/app/presentation/controller/pageproperty/TransitionTargetPageNameKeyword.java +++ b/src/main/java/com/example/rhizome/app/presentation/controller/pageproperty/TransitionTargetPageNameKeyword.java @@ -49,13 +49,17 @@ public class TransitionTargetPageNameKeyword { // HTML public static final String SELECT_DEPARTMENT_HTML = "selectDepartment"; public static final String UPDATE_DEPARTMENT_INPUT_HTML = "updateDepartmentInput"; + public static final String INSERT_DEPARTMENT_INPUT_HTML = "insertDepartmentInput"; + public static final String INSERT_DEPARTMENT_CONFIRM_HTML = "insertDepartmentConfirm"; + public static final String INSERT_DEPARTMENT_RESULT_HTML = "insertDepartmentResult"; + // Controller public static final String SELECT_DEPARTMENT_INFO = "/selectDepartmentInfo"; public static final String SELECT_DEPARTMENT_INFO_FORM_EMPTY = "/departmentAll"; public static final String DELETE_DEPARTMENT = "/deleteDepartment"; - public static final String INSERT_DEPARTMENT_INPUT = "/"; - public static final String INSERT_DEPARTMENT_CONFIRM = "/"; - public static final String INSERT_DEPARTMENT = "/"; + public static final String INSERT_DEPARTMENT_INPUT = "/insertDepartmentInput"; + public static final String INSERT_DEPARTMENT_CONFIRM = "/insertDepartmentConfirm"; + public static final String INSERT_DEPARTMENT = "/insertDepartment"; public static final String SHOW_UPDATE_DAPERTMENT = "/showUpdateDepartment"; public static final String UPDATE_DEPARTMENT_RESULT = "/updateDepartmentResult"; @@ -85,7 +89,10 @@ public class TransitionTargetPageNameKeyword { SELECT_DEPARTMENT_INFO_FORM_EMPTY, DELETE_DEPARTMENT, SHOW_UPDATE_DAPERTMENT, - UPDATE_DEPARTMENT_RESULT); + UPDATE_DEPARTMENT_RESULT, + INSERT_DEPARTMENT_INPUT, + INSERT_DEPARTMENT_CONFIRM, + INSERT_DEPARTMENT); } /** diff --git a/src/main/java/com/example/rhizome/app/presentation/form/InsertDepartmentForm.java b/src/main/java/com/example/rhizome/app/presentation/form/InsertDepartmentForm.java new file mode 100644 index 0000000..bcf6ee3 --- /dev/null +++ b/src/main/java/com/example/rhizome/app/presentation/form/InsertDepartmentForm.java @@ -0,0 +1,69 @@ +package com.example.rhizome.app.presentation.form; + +import java.util.ArrayList; +import java.util.List; + +import com.example.rhizome.app.domain.model.Department; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 画面から渡ってきた登録内容をまとめ、再度画面に表示する為のクラス + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class InsertDepartmentForm { + + /** + * 部署名 + */ + private String nmDepartment; + + /** + * 仮引数を null or 空 判定する + * + * @param str 判定対象の文字列 + * @return true:null or 空 false:null or 空 では無い + */ + private static boolean isNullOrBlank(String str) { + if (null == str) { + return true; + } + + return str.isBlank(); + } + + /** + * 画面から渡ってきた登録内容をまとめ、ビジネスモデルに変換 + * + * @param insertEmployeeForm 画面から渡ってきた登録内容 + * @return ビジネスモデルのインスタンス + */ + public static Department convertTo(InsertDepartmentForm InsertDepartmentForm) { + return new Department( + null, + InsertDepartmentForm.getNmDepartment()); + } + + /** + * 登録データのValidationを行う + * + * @return エラーが有った場合はエラー文言、無ければ空のリストが返る + */ + public List validateParameter() { + final String DEPARTMENT_NAME_NULL_BLANK = "部署名"; + + List error = new ArrayList<>(); + + if (isNullOrBlank(nmDepartment)) { + error.add(DEPARTMENT_NAME_NULL_BLANK); + } + + return error; + + } + +} diff --git a/src/main/resources/templates/insertDepartmentConfirm.html b/src/main/resources/templates/insertDepartmentConfirm.html new file mode 100644 index 0000000..2e58a63 --- /dev/null +++ b/src/main/resources/templates/insertDepartmentConfirm.html @@ -0,0 +1,88 @@ + + + + + + + + + + + + 登録内容確認 + + + +

登録内容確認    +
+ ログイン者名: + +
+

+ +
+ +
+ +
+ + + + + + + + + + + + + +
部署ID + +
部署名 + +
+ +
+ 登録内容の編集 | メニューに戻る +
+ + + + + \ No newline at end of file diff --git a/src/main/resources/templates/insertDepartmentInput.html b/src/main/resources/templates/insertDepartmentInput.html new file mode 100644 index 0000000..d972fe9 --- /dev/null +++ b/src/main/resources/templates/insertDepartmentInput.html @@ -0,0 +1,67 @@ + + + + + + + + + + + + 部署登録 + + + +

+ 部署登録    +
+ ログイン者名: + +
+

+
+ +
+ +
+ + + + + + + + + + + + + + +
部署ID + +
部署名 + +
+ +
+
+メニューに戻る + + \ No newline at end of file diff --git a/src/main/resources/templates/insertDepartmentResult.html b/src/main/resources/templates/insertDepartmentResult.html new file mode 100644 index 0000000..a47b39b --- /dev/null +++ b/src/main/resources/templates/insertDepartmentResult.html @@ -0,0 +1,40 @@ + + + + + + + + + + + + 社員登録完了 + + + +

社員登録が完了しました

+
+続けて登録する | メニューに戻る + + + \ No newline at end of file diff --git a/src/main/resources/templates/menu.html b/src/main/resources/templates/menu.html index bc0ef14..9af2694 100644 --- a/src/main/resources/templates/menu.html +++ b/src/main/resources/templates/menu.html @@ -39,7 +39,7 @@ - 部署登録 + 部署登録 新規で部署追加を行います。