開発概要
目的
- Slack通知メッセージに含まれている「天気: ◯◯」の行を削除する
- mobile側ではすでに天気選択UIが廃止され、
weatherID=1(晴れ)で固定運用されている。通知側だけが律儀に天気を表示している状態を解消する
- 通知文面の意味的整合性を取り戻すと同時に、付随する
weatherRep.Find クエリを削除して無駄なDBアクセスを減らす
開発期間
考えられる開発内容
1. 現状の確認(調査済み)
1.1 mobile側で天気が廃止されている根拠
ファイル: mobile/lib/pages/my_shift_page.dart
L134: await _loadShiftCardDataList(_userID, _selectedDayID, 1); // 天気は初期化時に晴れ(1)で固定
L151: // 選択された日付IDをHiveに保存(天気は廃止)
L173: _loadShiftCardDataList(_userID, newDayID, 1); // 天気はタブ切り替え時に晴れ(1)で固定
L176: // SegmentedButton(天気)の選択状態が変わったときの処理 ← UI自体がコメントアウト
mobile側は天気を完全に「晴れ固定」で運用しており、ユーザーが天気を意識する場面は存在しない。
1.2 通知側で天気を扱っている箇所
ファイル: api/lib/usecase/notification_usecase.go
L282-296: // 天気情報を取得(mapから取得)ブロック全体(weatherRep.Find を呼び出し)
L304: Weather: weather, // MessageParams への引き渡し
ファイル: api/lib/externals/slack/slack_service.go
L23: Weather string // MessageParams のフィールド定義
L96: slack.NewTextBlockObject("mrkdwn", fmt.Sprintf("天気: %s", params.Weather), ...) // Slack block 出力
2. 削除する箇所
2.1 slack_service.go
2.2 notification_usecase.go
2.3 cmd/send-notifications/main.go
3. 動作確認
備考
参考
開発の流れ
- PMにIssue(タスク)をもらう
- 開発をする(↓の「リンク」の『開発のやり方』を見よう!)
- チェックボックスを押していこう
- ヤバい状況になったらIssueの右側にあるStatusを「Help」にしてPMにSlackで連絡しよう
- チェックボックスが全部押せたらプルリクを作ろう
- レビューを待とう
- 修正点があれば修正しよう。なければPMがマージします!お疲れ様!
SeeFTのタスク管理のルール
- タスクは全てGit-Hub Projectで管理する
- 全てのタスクに期日を決める
- 毎週タスクの進捗を確認する(MTに出られない人はSlackで報告)
- 毎週忙しさ(消化できるタスク量)を共有する
- Helpは余裕のある人がいれば巻き取る。いなければ期日を変更する
リンク
開発概要
目的
weatherID=1(晴れ)で固定運用されている。通知側だけが律儀に天気を表示している状態を解消するweatherRep.Findクエリを削除して無駄なDBアクセスを減らす開発期間
考えられる開発内容
1. 現状の確認(調査済み)
1.1 mobile側で天気が廃止されている根拠
ファイル:
mobile/lib/pages/my_shift_page.dartmobile側は天気を完全に「晴れ固定」で運用しており、ユーザーが天気を意識する場面は存在しない。
1.2 通知側で天気を扱っている箇所
ファイル:
api/lib/usecase/notification_usecase.goファイル:
api/lib/externals/slack/slack_service.go2. 削除する箇所
2.1
slack_service.goMessageParams.Weatherフィールドを削除TextBlockObjectを削除2.2
notification_usecase.goWeather: weather,の行を削除weatherRepフィールド・コンストラクタ引数を削除(他で使っていないことを確認後)WeatherRepositoryの import が他で使われていなければ削除2.3
cmd/send-notifications/main.goweatherRepo := repository.NewWeatherRepository(...)の行を削除NewNotificationUseCaseの呼び出しからweatherRepo引数を削除3. 動作確認
go build ./...で全ビルド成功cmd/send-notificationsを実行して、Slack DMに「天気: ◯◯」が含まれないことを確認備考
weathersテーブル・shifts.weather_idカラムは残す。adminやshift管理機能で参照されている可能性があるため、本Issueではあくまで「通知文面からの削除」のみに留める参考
開発の流れ
SeeFTのタスク管理のルール
リンク