taki のすべての投稿

すべての段ボールを開封した!

ようやく全段ボール、開封終わりました。

しばらく着ていない服が大量に出てきたので、ある程度処分しなくちゃなんですが、

スーツとか、いずれ必ず着る必要がある物をどうやって保管しようかと悩んでいますが。

衣装ケース買った方が良いんだろうか。

考えます。

で、

段ボール回収依頼を引越し業者にお願いしたのですが、

「いま繁盛期なので、しばらく後でお願いします。」

ということでした。

4月中旬まで待て、ということです。

マジか。

うーん、何か別の方法は無いだろうか。

段ボールを処分する方法。

なにげに部屋のスペース取ってるので、早く処分したいです。

良い方法を知っている方、情報待ってます。

【LARAVEL】【ホテル予約管理】QRコードをメールに添付して送信する

前回までの状況はこちら

最新ソースはこちら(gitHub)

https://github.com/takishita2nd/hotel-mng

さて、前回作成したQRコードをメールに添付して送信する実装を行います。

メーラーはGMAILを使用します。

自前のsmtpサーバを使おうとしたけど、うまくいかなかった。

smtpサーバの設定を.envに記入します。

MAIL_DRIVER=smtp
MAIL_HOST=smtp.gmail.com
MAIL_PORT=587
MAIL_USERNAME=xxxxx@gmail.com
MAIL_PASSWORD=xxxxx
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=xxxxx@gmail.com
MAIL_FROM_NAME=xxxxxx

内容を使用しているアカウント情報に合わせてください。

tinkerを使って、設定が正しいかを確認することができます。

$ php artisan tinker
>>> Mail::raw('test mail',function($message) {$message->to('xxxxx@gmail.com')->subject('test');});
=> null

正しく設定されていれば、メールが届くはずです。

※エラーが表示される場合は、GMAIL側の設定の問題だったりします。セキュリティ設定を変えてみてください。

では、メールを扱う処理を書いていきましょう。

以下のコマンドでメールクラスを作成します。

$ php artisan make:mail SendQRcodeMail

以下のように書き換えます。

<?php

namespace App\Mail;

use Illuminate\Bus\Queueable;
use Illuminate\Mail\Mailable;
use Illuminate\Queue\SerializesModels;
use Illuminate\Contracts\Queue\ShouldQueue;

class SendQRcodeMail extends Mailable
{
    use Queueable, SerializesModels;

    /**
     * Create a new message instance.
     *
     * @return void
     */
    public function __construct($img)
    {
        $this->img = $img;
    }

    /**
     * Build the message.
     *
     * @return $this
     */
    public function build()
    {
        return $this->view('emails.mail')
            ->from('manager@gmail.com','manager')
            ->subject('予約しました')
            ->attach($this->img);
    }
}

コンストラクタでQRコードの画像パスを受け取り、buildメソッドの中でattachで添付する、という処理になっています。

では、これを使用する処理を記入します。

use App\Mail\SendQRcodeMail;
use Mail;

    public function add($param, $room, $user)
    {
        Log::debug(print_r($param ,true));
        $model = new ReserveManagement;
        foreach($this->paramNames as $name)
        {
            $model->$name = $param[$name];
        }
        $model->lock_number = $this->generateLockNumber();
        QrCode::format('png')->size(100)->generate($model->lock_number, public_path('/img/qr.png'));
        $model->save();
        $this->attachToRoom($model, $room);
        $this->attachToSchedule($model);
        $this->attachToUser($model, $user);

        $to = [
            [
                'email' => $user->email, 
                'name' => $user->fullname,
            ]
        ];
        Mail::to($to)->send(new SendQRcodeMail('/var/www/html/hotel-mng/public/img/qr.png'));

    }

base64を添付しようと思いましたが、うまく行かなかったので、generateで画像をファイルに出力します。

Mailクラスを使用して、$toに宛先(ユーザー登録時に入力したものを使用します。)を設定し、sendで先程のクラスを使用します。

コンストラクタの引数には、画像のフルパスを設定します。

最後に、メールの本文。

[添付ファイル]

画像を表示できればいいので、シンプルなテンプレートにしました。

これをresources/views/emails/mail.blade.phpとして、保存します。

これで、正しく動いていれば、予約登録時にメールでQRコードが届きます。

【C#】【数独】仮置き対象を抽出する

かなり時間が空いてしまいましたが。

前回までの状況はこちら。

最新ソースはこちら(gitHub)。

https://github.com/takishita2nd/sudoku

さて、実際に仮置きロジックを実装していくのですが、

そのときに必要となる情報が、

仮置きロジックをどこに適用するか

ということです。

今回は、9マスのエリアの中で、一番空きマスの少ない箇所を選択するように実装してみようと思います。

        private List<Square> searchKariokiSquare(Square[,] squares)
        {
            List<Square> ret = null;
            for(int row = 0; row < 9; row += 3)
            {
                for(int col = 0; col < 9; col += 3)
                {
                    List<Square> temp = new List<Square>();
                    for(int i = 0; i < 3; i++)
                    {
                        for(int j = 0; j < 3; j++)
                        {
                            if(squares[row + i, col + j].isConfirmed() == false)
                            {
                                temp.Add(_square[row + i, col + j]);
                            }
                        }
                    }
                    if(ret != null)
                    {
                        if(ret.Count > temp.Count && temp.Count != 0)
                        {
                            ret = temp;
                        }
                    }
                    else
                    {
                        ret = temp;
                    }
                }
            }
            return ret;
        }

コードはこんな感じに書いてみました。

9マスエリアに対して、まだ数字が入っていないマスの数を確認します。

数字が入っていないマスのオブジェクトをリストに登録し、それが他の9マスエリアの数より少ないか、を確認します。

調査結果は数字が入っていないマスのオブジェクトのリストを返します。

では、このメソッドを使用する処理を作成します。

        private void doKarioki()
        {
            Square[,] copySquare = makeClone(_square);
            List<Square> kariokiList = searchKariokiSquare(copySquare);
            foreach(var s in kariokiList)
            {
                Console.WriteLine("[{0},{1}]", s.Row, s.Col);
            }
        }

仮置き処理を実行するので、処理前にマス配列のクローンを作成します。

そして、先ほどのメソッドを使用して仮置き対象のマスをリストで取得。

そして、それに対してforeachを使って仮置きロジックを適用していきます。

Windows TerminalPS E:\Source\Repos\takishita2nd\sudoku\sudoku\bin\Debug> .\sudoku.exe .\q026.txt
仮置きロジック
[0,6]
[2,6]

こんな感じで、仮置き対象のマスの抽出ができました。

うん、完成が見えてきたぞ。

光回線の解約時に必ず聞かれる、答えたくないこと。

現在の箱の開封作業、残り3箱です。

衣類の断捨離も同時進行しています。

とにかく着なくなった服を処分して、軽量化を図りたいと思います。

それと同時に、収納場所の整理もしませんとね。

ネット回線の解約手続きを行いました。

基本的に電話でオペレーターに解約を伝えるのですが、必ずと言って良いほど、解約理由を聞かれます。

これ、答えるの嫌なんですよね。

共感できる人たくさんいると思う。

差し支えなければ、と言っているので、差し支えあるのでお答えできません、って答えて良いですか?

まぁ、適当に嘘の理由を言いました。

違約金20000円ぐらいかかりますね。

まぁ仕方が無いです。

キャッシュバック対象ですし。

あとは、レンタル機器の返却の連絡が来るはずなので、それに従って、機器の返却を行えば、解約作業は終わりです。

あとは開通を待つばかり。

モバイルWifiはやっぱり不安定よね。

はやく固定回線にしたいよ。

写真は、昨日の晩飯の焼き肉です。

この量で1000円です。

一人では食べきれないので、残りは後日食べます。

これって普通なんですか?ネット回線の引越し

現在の箱の開封率は95%です。

もう少しで終わる・・・と思う。

洗濯機の上がデッドスペースになっていたので洗濯機ラックを購入、設置しました。

柔軟剤の量よ。

しかし、床におきっぱだった洗剤類が全てこの棚に収まりました。

買って良かった。

Amazon万歳。

さて、インターネットの引越しですが、先日電話がありまして、回線工事が3月16日になるということです。

引越し完了から1ヶ月。

通常のインターネットの引越しってどれくらい?

これは長いのか。ちょっと長い気もするが。

まぁ、仕方が無いので、ポケットWi-Fiのレンタル期間を延長せざるを得ないです。


そして、今の回線も解除しないと。

めんどくさい。

引越し作業は、ほぼ完了。

本日、ハローワークに行ってきて、失業認定と同時に住所変更を行ってきました。

そして、今日までで、銀行や証券などの住所変更も終わりました。

これで一連の引越し作業はほぼ終了したことになります。

実際は完全に終わっていませんが・・・

まだ段ボールが4箱片づいていませんし、ネット回線はまだ開通していませんし、元の部屋の明け渡し等があります。

それでも今週末はマッタリできそう。

部屋が広いって良いことです。

いろいろと余裕が持てます。

時間もまったり流れているような気がします。

部屋が広いって最高!

ただ、ちょっと部屋の内装が古い感じがしていまして。

いろいろ部品を交換したり、対策を考えたりしないといけないかも、と思ってます。

Amazonのサイトをいろいろ調べています。

まぁ、一番忙しい作業は終わったと言うことで。

そろそろプログラミングも再開しないとなぁ。

転居の行政手続き

現在の箱の開封率は90%です。

衣類を仕分けながら整理しています。

かなーり使っていない服とかがあるので。

もったいないけど捨てます。

断捨離です。

さてさて、昨日は転居に伴う行政手続きに行ってきました。

まずは白石区役所。

南郷通沿いは地下鉄が近いと言うのに加えて、白石区役所が地下鉄白石駅に直結しているのがメリットの一つでもあります。

ホント便利なところに移ったよ。

まず最初に行くのは、住民課。

転居届を提出します。

マイナンバーカードがあれば、その情報も更新されます。

オイラは電子証明書の更新の通知が来ていたので、そちらも一緒に済ませました。

住民票の写しも同時に貰います。

これって、後で必ず足りなくなるので、多めに(4枚)申請しました。

まず、警察署で1枚、ハローワークに1枚、オンライン銀行の住所変更にも使用するので。

返してくれる所もあれば、返してくれない所もあるのよ。

オンライン銀行は郵送で手続きすれば、確実に1枚使用するからね。

次は国保の住所変更です。

オイラは豊平区から白石区に移ったので、保険証も新しくなります。

ちなみに、年金に関しては、マイナンバーを持っている人ならば、転居届で住所変更は完了しています。

お次は、自立支援医療、障害者手帳の住所変更です。

自立支援医療は保険証と紐付いているので、あらかじめ保険証を更新しておく必要があります。

最後に免許証の住所変更。

中央警察署に行ってきました。

ここが一番アクセスが良いと思います。

ここで、住民票の写しが必要になります。

ハローワークは、、、明日認定日だからそのついででいいや。

さて、これから銀行の住所変更も済ませなきゃ。

ゲームは1日1時間という定義

元ネタはこちらの記事なんですけども。

元々、この言葉は、約30年ぐらい前に、高橋名人が発した言葉だと思います。

これは、高橋名人が、自身の言葉で、「しくじり先生」の中で説明していたとおもいますが、

当時、高橋名人は、ハドソンというゲームメーカーの社員だったので、

「もっとゲームをして欲しい、でも親御さんを敵に回したくない」

という思いから発したセリフだと認識しています。

まぁ、思いつきから発した言葉なので、この数字に根拠はありません。

勉強できるヤツはたくさんゲームしても点数取れるし、

勉強できないヤツは、どれだけ勉強しても点数取れません。

そういう人でも、何か優れている点はあるはずで、

結局のところ、本人の才能次第。

それを見極めるのが、親とか先生達の役割であって。

まぁ、自分は子供いないので、説得力が無いんですけどね。

でも、1日1時間というのは、何も根拠はありません。それは確実。

だいぶ部屋の中が片づいてきました。

現在の箱の開封率90%。

あとは衣類を残すのみです。

ここは断捨離で、今後一切着ないであろう服はすべて処分しようかと思っています。

まぁ、これは後々ゆっくりやると言うことで。

転居元の部屋も片付きました。

ゴミの日の都合で、全てのゴミが処分できませんでしたが、本日全て搬出しました。

あとは明け渡しの日を待つのみです。

誰っすか、オレの粗大ゴミ持っていったヤツ。

新居も、荷物を片付けるにつれて、必要な物がどんどん出てくるようになり、片っ端からAmazonに発注かけてます。

例えば、洗濯機の上がデッドスペースになってて、洗剤の置き場所に困っていたので、洗濯ラックを発注したり、

今まで使用していた下駄箱が入らないので、新しいシューズラックを買ったり、

ガスレンジ周りの掃除が大変だったので、保護シートやカバーを発注しました。

ここ二日で動き回ったので、体中が痛いです。

そして、引越し作業はまだまだ続き、転居届やいろんなものの住所変更など・・・

まだまだ大変です。

確定申告も済ませなきゃ・・・。

写真は昨日食べた牛角のお肉。

引っ越し作業がようやく一段落しました。

新居への引越しがなんとか一段落しました。

いやー、疲れたね。

もう歩きたくないね。

搬出の時に段ボールが足りなくなってしまい、一部の荷物は運んでくれない(自分で運ばなくちゃいけない)という事態になってしまい、引越し業者が荷物搬入終わった後、カーシェアを使って、荷物を自分で運び出しました。

引越し作業を業者に頼む場合は、いくつかルールがありまして、

まずは、大きな運ぶ荷物は、きちんと申告しなくちゃいけない。

まぁ、大きな運んでほしいものは見積もりの時点できちんと伝えるべきです。

それに対応して、業者さんも準備してくるので。

そして、段ボールは全て、業者が用意したものを使用しなければならない。

これは、荷物をトラックに積み込む際に、きちんと隙間無く積み込むため。

他の業者の段ボールが混入していると、これができなくなってしまいます。

最後に、段ボールは少し余裕を持たせておく。

これが今回ハマったところでして、

段ボールが足りなくなった場合は、業者に連絡すれば、用意してもらえるんですよ。前日までならば。

オイラの場合は、当日になって足りないことがわかってしまい、どうにもできない状態となりました。

こうならないためにも、3~4枚ぐらいは段ボールを余らせるぐらい、余裕を持って梱包した方が良いです。

そしてそして。

光回線が使えない日が存在することに、引越しの二日前になって気がつきました。

今は臨時で、ポケットWi-Fiをレンタルしています。

ここでレンタルしています。(リンク張りました)


このプランの良いところは、モバイルで十分の通信速度が出ている上に、通信制限が発生しない、という点です。

通信制限の解除料金は業者側で負担してくれているみたいですよ。

これなら、通信量を気にしなくてもPC作業できます。

でもマイクラはきついかなー

ワールドをローカルに移しますか。(自前サーバーだからできること!)

まだ、箱のままの荷物が半分ぐらい残っていますが、頑張ります。

近所に牛角があるんですよ。焼き肉食いたい。