kazpgmの日記

『プログラム自動作成@自動生成』作成の日記

フロント側をFlutter(スマホ)Thymeleaf(PC)、バックエンド側SpringBootの自動作成@自動生成ツール作成中

15:31
①とりあえずFlutter(スマホ)の勉強はこのへんにして、「Flutter_JavaSpringプログラム自動作成@自動生成」ツール作成を始めている。
まず、ツール内固定PGM「flutter-spring-kaz01u_元ネタ削除後」フォルダと「flutter_app_元ネタ削除後_最新」フォルダをやっつける。

②バックエンドJavaSpringBoot側
 ・修正追加ないよう詳細は後々書くとして、ツール内固定PGM「flutter-spring-kaz01u_元ネタ削除後」フォルダには、これらが対象となる。

★=<<\demo\WebSecurityConfig>>=======================
  ■src\main\java\com\kaz01u\demo\WebSecurityConfig.java 修正
    Pc用Flutter用に対応した。

★=<<\demo\auth\>>=============================
  ■src\main\java\com\kaz01u\demo\auth\SimpleLogoutSuccessHandler.java 新規追加
    ・ログアウト成功時のPc用Flutter用共通処理ハンドラ

  ■src\main\java\com\kaz01u\demo\auth\SimpleAuthenticationSuccessHandler.java 新規追加
    ・認証成功時のPc用Flutter用共通処理を実装したハンドラ

  ■src\main\java\com\kaz01u\demo\auth\SimpleAuthenticationFailureHandler.java 新規追加
    ・認証失敗時のPc用Flutter用共通処理を実装したハンドラ

  ■src\main\java\com\kaz01u\demo\auth\SimpleAuthenticationEntryPoint.java 新規追加
    ・認証のユーザーが認証の必要なAPIにアクセスしたときの処理。
     HTTPステータス403を戻す。
     補足:PC・WEB側は自動的に/error/403.htmlが表示される。

  ■src\main\java\com\kaz01u\demo\auth\SimpleAccessDeniedHandler.java 新規追加
    ・ユーザーは認証済みだが未認可のリソースへアクセスしたときの処理
     HTTPステータス403を返すだけの処理を実装。
     補足:PC・WEB側は自動的に/error/403.htmlが表示される。

★=<<\demo\controller\>>==========================
  ■src\main\java\com\kaz01u\demo\controller\CustomControllerAdviceAdminFlutter.java 新規追加
    すべてのコントローラー(Flutter用)に共通する例外処理クラス(ControllerAdviceクラス)を追加

  ■src\main\java\com\kaz01u\demo\controller\CustomControllerAdviceAdminPc.java 新規追加
    ・CustomControllerAdvice.javaを削除してこれにした。
    ・すべてのコントローラー(PC・WEB用)に共通する例外処理クラス(ControllerAdviceクラス)を追加

  ■src\main\java\com\kaz01u\demo\controller\admin フォルダ削除

  ■src\main\java\com\kaz01u\demo\controller\adminPc 新規フォルダ追加

  ■src\main\java\com\kaz01u\demo\controller\adminPc\UserPcController.java 新規追加
    ・src\main\java\com\kaz01u\demo\controller\admin\UserController.javaを削除してこれにした。
    ・Pc用ユーザー情報管理のコントローラーを追加
     削除したUserPcController.javaのCSVアップデート、CSVダウンロードはそのままにして、それ以外を
     UserCommController.javaのメソッドを使用するように修正した。

  ■src\main\java\com\kaz01u\demo\controller\adminComm 新規フォルダ追加

  ■src\main\java\com\kaz01u\demo\controller\adminComm\UserCommController.java 新規追加
    ・ユーザー情報管理の共通コントローラーを追加
     削除したUserPcController.javaのCSVアップデート、CSVダウンロード以外を
     Flutter用Pc用共通で使用できるメソッドとした。

  ■src\main\java\com\kaz01u\demo\controller\adminFlutter 新規フォルダ追加

  ■src\main\java\com\kaz01u\demo\controller\adminFlutter\UserFlutterController.java 新規追加
    ・Flutter用ユーザー情報管理のコントローラーを追加
     UserCommController.javaのメソッドを使用するようにした。
     当ControllerCSVアップデート、CSVダウンロードを使用しない。
     (今回のVerでは、スマホでは、CSVアップデート、CSVダウンロードを使用しないので)

★=<<\demo\fForm\>>===========================
  ■src\main\java\com\kaz01u\demo\fForm 新規フォルダ追加

  ■src\main\java\com\kaz01u\demo\fForm\FormComm.java 新規追加
    共通Form(Flutter用)を追加

  ■src\main\java\com\kaz01u\demo\fForm\SrchOrderFForm.java 新規追加
    情報検索昇順降順Form(Flutter用)を追加

  ■src\main\java\com\kaz01u\demo\fForm\UserFForm.java 新規追加
    ユーザー情報Form(Flutter用)を追加

  ■src\main\java\com\kaz01u\demo\fForm\UserSrchFForm.java 新規追加
    ユーザー情報検索Form(Flutter用)を追加

★=<<\demo\form\>>===========================
  ■src\main\java\com\kaz01u\demo\form\EleForm.java 新規追加
    DBエレメントをFlutter側に渡すためのFormを追加

★=<<\demo\response\>>=========================
  ■src\main\java\com\kaz01u\demo\response 新規フォルダ追加

  ■src\main\java\com\kaz01u\demo\response\ResData.java 新規追加
    getResDataMapメソッド(Flutter向けデータマップを返却する)
    getAllErrorsメソッド(Flutter向け項目エラーマップを返却する)

★=<<\demo\utils\>>==========================
  ■src\main\java\com\kaz01u\demo\utils\Functions.java 修正
    「リクエストのFlutter、PC・WEBチェック。」(isFromFlutter)メソッドを追加した

★=<<\resources\application.properties>>===============
  ■src\main\resources\application.properties 修正
    <<修正前>>
    spring.servlet.multipart.max-file-size=1MB
    spring.servlet.multipart.max-request-size=10MB
    <<修正後>>
    spring.servlet.multipart.max-file-size=10MB
    spring.servlet.multipart.max-request-size=50MB

③フロント側(スマホ)flutter
 ・修正追加ないよう詳細は後々書くとして、ツール内固定PGM「flutter_app_元ネタ削除後_最新」フォルダには、これらが対象となる。

★=<<\lib\affairs\user\>>=====================
  ■user_detail.dart
    ・ユーザー情報表示画面
  ■user_list.dart
    ・ユーザー情報一覧画面
  ■user_register_amend.dart
    ・ユーザー情報登録更新画面

★=<<\lib\form\comm\>>=====================
  ■message_form.dart
    ・共通・メッセージForm
  ■srch_order_err_form.dart
    ・情報画面プロパティ エラーメッセージ用Form
  ■srch_order_form.dart
    ・共通・検索ソート順Formのベースクラス
  ■srch_order_form_in_msg_form.dart
    ・共通・検索ソート順Form。(MessageFormクラスを包含している)

★=<<\lib\form\>>=====================
  ■user_err_form.dart
    ・ユーザー情報画面プロパティ エラーメッセージ用Form
  ■user_form.dart
    ・ユーザー情報画面Form
  ■user_srch_err_form.dart
    ・ユーザー情報画面プロパティ エラーメッセージ用Form
  ■user_srch_form.dart
    ・ユーザー情報検索画面Form

★=<<\lib\utils>>=====================
  ■comm_utils.dart
    ・共通ユーティリティクラス
  □consts.dart←これはひな形から作る
    ・固定値クラス
  □elements.dart←これはひな形から作る
    ・固定エレメントクラス

★=<<\lib\>>=====================
  □main.dart←これはひな形から作る
    ・アプリケーションのエントリーポイント
  ■error.dart
    ・エラー画面
  □home.dart←これはひな形から作る
    ・メニュー画面

★=<<\>>=====================
  ■pubspec.yaml
    ・pubspec.yaml

■2022/06/15に、勉強した成果:『Flutter_JavaSpringプログラム自動作成◎自動生成ツール』をVectorに載せました。Zenn本も書きました。使ってみての感想や間違いの指定や、こうやったほうがいいとかの情報があればメールください。
Vector
www.vector.co.jp
・Zenn本(Flutter_JavaSpringプログラム自動作成)
zenn.dev