以下、電子レシートシステムを含んで構成されたポイントシステムの実施形態について、図面を用いて説明する。電子レシートシステムは、店舗等における買上商品の明細レシートを電子化し、センター(後述するレシートサーバ30)にレシートデータとして記録し、ユーザが使用する電子機器(後述するユーザ端末装置20)から閲覧できるようにしたシステムである。
[ポイントシステムの説明]
図1は、本実施形態におけるポイントシステム100の全体構成を示すブロック図である。
ポイントシステム100は、会計装置10、店舗装置15、ユーザ端末装置20、レシートサーバ30、閲覧サーバ40及び栄養データサーバ50を含む。図1では、会計装置10、店舗装置15、ユーザ端末装置20、レシートサーバ30、閲覧サーバ40及び栄養データサーバ50をそれぞれ1つずつ表しているが、それぞれの数は任意である。会計装置10、店舗装置15、ユーザ端末装置20、レシートサーバ30、閲覧サーバ40及び栄養データサーバ50は、ネットワーク200を介してデータを授受することが可能である。ネットワーク200は、例えばインターネット及び移動通信網を含む。ネットワーク200は、LAN(local area network)を含んでも良い。
会計装置10と店舗装置15は、飲食店などの飲食物(あるいは商品)を提供する店舗に設置される。図1には、1つの店舗に設置される会計装置10と店舗装置15とを図示しているが、複数の店舗にそれぞれ設置された会計装置10と店舗装置15とが、ネットワーク200に接続されているものとする。
会計装置10は、飲食物の提供に対する代金を会計するためのデータ処理である会計処理を行う。なお、会計とは、上記の代金の算出及び決済を含む。
店舗装置15は、店舗内の会計装置10を含む各種装置を管理する制御処理を行う。店舗装置15は、例えば店舗の責任者(例えば店長)などによって操作され、レシートサーバ30、閲覧サーバ40、栄養データサーバ50との通信により、各種データを送受信することができる。
ユーザ端末装置20は、ユーザによる操作に基づいて、レシートサーバ30、閲覧サーバ40、栄養データサーバ50との通信により各種データを送受信し、各種画面を表示する。ユーザ端末装置20は、例えばレシートサーバ30に記録されたレシートデータを示す画面、レシートデータをもとに作成される栄養バランスなどの栄養データを示す画面、栄養データをもとに設定される食品群に含まれる飲食物を表示する画面、店舗が提供する飲食物を購入することにより得られるポイントを店舗毎に表示する画面などを表示する。複数のユーザ端末装置20がポイントシステム100に含まれる場合、これらの複数のユーザ端末装置20が同一のユーザにより利用されても良いし、異なるユーザにより個別に利用されても良い。あるいは、1つのユーザ端末装置20が複数のユーザにより共用されても良い。
ユーザ端末装置20は、活動量計300と無線により通信可能である。活動量計300は、例えばリストバンド型をなし、装着するユーザの活動量を計測する。ユーザ端末装置20は、活動量計300から活動量のデータを取得する。ユーザ端末装置20は、このように取得したデータに基づいて、ユーザの活動量を栄養データとともに閲覧させるための画像の表示などを行うこともできる。
レシートサーバ30は、会計装置10による会計処理の結果を表すレシートデータを会計装置10から収集し、蓄積する。レシートサーバ30は、レシートデータの内容を表したレシート画面データを生成し、このレシート画面データをユーザ端末装置20へ送信する。
閲覧サーバ40は、レシートサーバ30が蓄積しているレシートデータに基づいて、ユーザが摂取した飲食物に関する栄養データを表した栄養画面データを生成し、この栄養画面データをユーザ端末装置20へと送信する。
栄養データサーバ50は、会計装置10が設置される店舗で提供する飲食物に関する栄養データを保持する。栄養データサーバ50は、レシートサーバ30または閲覧サーバ40からの要求に応じて、必要な栄養データをレシートサーバ30または閲覧サーバ40へと送信する。
[会計装置10の説明]
図2は、本実施形態における会計装置10の要部構成を示すブロック図である。
会計装置10は、プロセッサ101、メインメモリ102、補助記憶デバイス103、通信インターフェース104、I/O(input/output)インターフェース105及びシステム伝送路106等を備える。プロセッサ101と、メインメモリ102、補助記憶デバイス103、通信インターフェース104及びI/Oインターフェース105とは、システム伝送路106によって接続される。システム伝送路106は、アドレスバス、データバス及び制御信号線等を含む。
会計装置10においては、プロセッサ101、メインメモリ102及び補助記憶デバイス103と、これらを接続するシステム伝送路106とによってコンピュータを構成する。
プロセッサ101は、オペレーティングシステムやアプリケーションプログラムに従って、会計装置10としての各種の機能を実現するべく各部を制御する。
メインメモリ102は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ102は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。また、メインメモリ102は、プロセッサ101が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ102は、揮発性のメモリ領域を、プロセッサ101によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス103は、例えばEEPROM(electric erasable programmable read-only memory)、HDD(hard disc drive)、SSD(solid state drive)などである。補助記憶デバイス103は、プロセッサ101が各種の処理を行う上で使用するデータや、プロセッサ101での処理によって生成されたデータを保存する。補助記憶デバイス103は、アプリケーションプログラムを記憶する。
補助記憶デバイス103が記憶するアプリケーションプログラムには、決済プログラムP11を含む。ただし、決済プログラムP11は、会計装置10の管理者または会計装置10の設置作業者等による操作に応じて、例えばインターネットを介してダウンロードされて補助記憶デバイス103に書き込まれても良い。
通信インターフェース104は、ネットワーク200を介したデータ通信のインターフェースである。通信インターフェース104としては、例えばインターネットを介したデータ通信を行うための周知の通信デバイスを利用できる。
I/Oインターフェース105は、種々の入出力デバイスとの間で行うデータ通信のインターフェースである。図示は省略するが、I/Oインターフェース105には例えば、ハンディスキャナ、タッチパネル、カードリーダ及びプリンタ等が適宜に接続される。
会計装置10のハードウェアとしては、既存のPOS(point-of-sale)端末装置または電子キャッシュレジスタなどを利用できる。
[店舗装置15の説明]
店舗装置15は、図2に示す会計装置10と同様の構成を有するものとして図示を省略する。店舗装置15は、プロセッサにより、補助記憶デバイス103が記憶する商品登録プログラムを実行することにより、ポイントの付与対象とする店舗内で販売される商品(飲食物など)をレシートサーバ30に登録する。商品登録プログラムは、店舗装置15の管理者等による操作に応じて、例えばインターネットを介してダウンロードされて補助記憶デバイスに書き込まれても良い。
店舗装置15のハードウェアとしては、既存のPOSサーバなどを利用できる。
[ユーザ端末装置20の説明]
図3は、本実施形態におけるユーザ端末装置20の要部構成を示すブロック図である。
ユーザ端末装置20は、スマートフォン、携帯電話、あるいはタブレット端末等のような携帯型の情報処理装置である。栄養データの閲覧のために利用されるユーザ端末装置20は、デスクトップ型のパーソナルコンピュータなどの様な据置型の情報処理装置であっても良い。
ユーザ端末装置20は、プロセッサ201、メインメモリ202、補助記憶デバイス203、タッチパネル204、通信インターフェース205、無線インターフェース206及びシステム伝送路207等を備える。プロセッサ201と、メインメモリ202、補助記憶デバイス203、タッチパネル204、通信インターフェース205及び無線インターフェース206とは、システム伝送路207を介して接続される。システム伝送路207は、アドレスバス、データバス及び制御信号線等を含む。
ユーザ端末装置20においては、プロセッサ201、メインメモリ202及び補助記憶デバイス203と、これらを接続するシステム伝送路207とによってコンピュータを構成する。
プロセッサ201は、オペレーティングシステムやアプリケーションプログラムに従って、ユーザ端末装置20としての各種の機能を実現するべく各部を制御する。
メインメモリ202は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ202は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。またメインメモリ202は、プロセッサ201が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ202は、揮発性のメモリ領域を、プロセッサ201によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス203は、例えばEEPROMである。HDD、SSDなどが補助記憶デバイス203として使用されてもよい。補助記憶デバイス203は、プロセッサ201が各種の処理を行う上で使用するデータや、プロセッサ201での処理によって生成されたデータを保存する。補助記憶デバイス203は、アプリケーションプログラムを記憶する。
補助記憶デバイス203が記憶するアプリケーションプログラムには、レシートクライアントアプリケーションプログラムP21(以下、レシートクライアントアプリP21と称する)と、健康アプリケーションプログラムP22(以下、健康アプリと称する)を含む。レシートクライアントアプリP21は、レシートクライアントとして、レシートサーバ30に記録されたレシートデータを閲覧するための制御プログラムである。健康アプリP22は、飲食物に関する栄養データの閲覧のための制御プログラムである。レシートクライアントアプリP21及び健康アプリP22は、ユーザ端末装置20の使用者による操作に応じて、例えばインターネットを介してダウンロードされて補助記憶デバイス203に書き込まれる。
タッチパネル204は、ユーザ端末装置20の入力デバイス及び表示デバイスとして機能する。タッチパネル204には、オペレーティングシステムに基づくプロセッサ201の処理によりレシートクライアントアプリP21を起動するためのアイコンが表示される。
通信インターフェース205は、ネットワーク200を介したデータ通信のインターフェースである。通信インターフェース205としては、例えば移動通信網またはインターネットを介したデータ通信を行うための周知の通信デバイスを利用できる。
無線インターフェース206は、無線通信を用いたデータ通信のインターフェースである。無線インターフェース206としては、例えばBluetooth(登録商標)やWi-Fiなどの規格に準拠した周知の通信デバイスを利用できる。無線インターフェース206による通信の相手の1つは、活動量計300である。
[レシートサーバ30の説明]
図4は、本実施形態におけるレシートサーバ30の要部構成を示すブロック図である。
レシートサーバ30は、プロセッサ301、メインメモリ302、補助記憶デバイス303、通信インターフェース304及びシステム伝送路305等を備える。プロセッサ301と、メインメモリ302、補助記憶デバイス303及び通信インターフェース304とは、システム伝送路305によって接続される。システム伝送路305は、アドレスバス、データバス及び制御信号線等を含む。
レシートサーバ30においては、プロセッサ301、メインメモリ302及び補助記憶デバイス303と、これらを接続するシステム伝送路305とによってコンピュータを構成する。
プロセッサ301は、オペレーティングシステムやアプリケーションプログラムに従って、レシートサーバ30としての各種の機能を実現するべく各部を制御する。
メインメモリ302は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ302は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。またメインメモリ302は、プロセッサ301が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ302は、揮発性のメモリ領域を、プロセッサ301によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス303は、例えばEEPROM、HDD、SSDなどである。補助記憶デバイス303は、プロセッサ301が各種の処理を行う上で使用するデータや、プロセッサ301での処理によって生成されたデータを保存する。補助記憶デバイス303は、アプリケーションプログラムを記憶する場合もある。補助記憶デバイス303が記憶するアプリケーションプログラムの1つは、レシートサーバ30としての動作のための制御プログラム(以下、レシートサーバアプリと称する)P31である。
通信インターフェース304は、ネットワーク200を介したデータ通信のインターフェースである。通信インターフェース304としては、例えばインターネットを介したデータ通信を行うための周知の通信デバイスを利用できる。
レシートサーバ30は、例えば汎用のサーバ装置やコンピュータ装置を基本ハードウェアとして用いることができる。
プロセッサ301は、レシートサーバアプリP31に基づく処理を実行するために、補助記憶デバイス303の記憶領域の一部を電子レシート領域W31、商品データ領域W32、ポイントデータ領域W33に割り当てる。電子レシート領域W31は、レシートデータを蓄積する。商品データ領域W32は、店舗装置15によって各店舗から登録された商品(飲食物等)に関する商品データを蓄積する。ポイントデータ領域W33は、各店舗が登録した商品データに該当する商品を購入したユーザに対して設定されるポイントデータを蓄積する。
図5は、本実施形態におけるレシートデータのデータ構造を示す図である。
レシートデータは、電子レシートコード311、ユーザコード312、決済データ313及び明細データ314を含む。
電子レシートコード311は、レシートデータの個々を識別する一意のコードである。ユーザコード312は、電子レシートシステム(ポイントシステム100)を利用するユーザを識別する一意のコード(ID)である。
決済データ313は、決済の結果を表すデータである。決済データ313には、例えば、決済が行われた日時、決済金額、決済方法、あるいは決済を行った店舗の店舗コードなどを含む。店舗コードは、会計装置10及び店舗装置15が設置された複数の店舗のそれぞれを識別する一意のコードである。
なお、レシートデータには、ユーザが商品を飲食したタイミングを判断するための指標となる時刻情報を含めることとする。上記の日時は、この時刻情報の一例である。時刻情報としては別に、ユーザが入店した日時、あるいは商品のオーダーがなされた日時なども相当する。
明細データ314は、決済処理の対象となった飲食物に関する商品コード、名称及び単価などを表したリストを含む。
図6は、本実施形態における商品データのデータ構造を示す図である。
商品データは、店舗コード316、期限データ317、商品コード318を含む。
店舗コード316は、店舗を識別する一意のコードであり、ポイントの付与対象とする商品を登録した店舗を示す。期限データ317は、ポイントの付与対象とする商品の有効期限を示すデータである。商品コード318は、ポイントの付与対象として店舗から登録された商品を識別するコードである。商品コード318は、複数の商品についてのコードを含むことができる。さらに、商品データには、各店舗がユーザにサービスを提供するためのクーポンデータなどを含めることができる。
図7は、本実施形態におけるポイントデータのデータ構造を示す図である。
ポイントデータは、ユーザコード320、店舗コード321、ポイント322を含む。
ユーザコード320は、ユーザを識別する一意のコードであり、ポイントの付与対象とするユーザを示す。ユーザコード320は、1人のユーザについて、レシートデータに用いられるユーザコード312と同じである。店舗コード321は、店舗を識別する一意のコードであり、ポイント付与の対象とする商品(飲食物)を登録した店舗を示す。ポイント322は、店舗コード321が示す店舗の商品を購入することにより付与されたポイントに関するデータである。ポイント322には、例えばポイントが付与された日付、獲得ポイント、有効期限を示すデータが含まれる。1人のユーザが複数の店舗からポイントを付与された場合、ポイントデータは、店舗コード321とポイント322との組が複数含まれる。
[閲覧サーバ40の説明]
図8は、本実施形態における閲覧サーバ40の要部構成を示すブロック図である。
閲覧サーバ40は、プロセッサ401、メインメモリ402、補助記憶デバイス403、通信インターフェース404及びシステム伝送路405等を備える。プロセッサ401と、メインメモリ402、補助記憶デバイス403及び通信インターフェース404とは、システム伝送路405によって接続される。システム伝送路405は、アドレスバス、データバス及び制御信号線等を含む。
閲覧サーバ40では、プロセッサ401、メインメモリ402及び補助記憶デバイス403と、これらを接続するシステム伝送路405とによってコンピュータを構成する。
プロセッサ401は、オペレーティングシステムやアプリケーションプログラムに従って、閲覧サーバ40としての各種の機能を実現するべく各部を制御する。
メインメモリ402は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ402は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。またメインメモリ402は、プロセッサ401が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ402は、揮発性のメモリ領域を、プロセッサ401によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス403は、例えばEEPROM、HDD、SSDなどである。補助記憶デバイス403は、プロセッサ401が各種の処理を行う上で使用するデータや、プロセッサ401での処理によって生成されたデータを保存する。補助記憶デバイス403は、アプリケーションプログラムを記憶する。補助記憶デバイス403が記憶するアプリケーションプログラムの1つは、閲覧サーバ40としての動作のための制御プログラム(以下、閲覧サーバアプリと称する)P41である。
通信インターフェース404は、ネットワーク200を介したデータ通信のインターフェースである。通信インターフェース404としては、例えばインターネットを介したデータ通信を行うための周知の通信デバイスを利用できる。
閲覧サーバ40は、例えば汎用のサーバ装置やコンピュータ装置を基本ハードウェアとして用いることができる。
プロセッサ401は、閲覧サーバアプリP41に基づく処理を実行するために、補助記憶デバイス403の記憶領域の一部を、閲覧画像領域W41、閲覧履歴領域W42に割り当てる。
閲覧画像領域W41は、後述する閲覧画像を表した閲覧画面データを格納する。閲覧履歴領域W42は、閲覧画像がユーザ端末装置20において閲覧された履歴(閲覧日時、閲覧商品)を示す履歴データを格納する。
[栄養データサーバ50の説明]
図9は、本実施形態における栄養データサーバ50の要部構成を示すブロック図である。
栄養データサーバ50は、プロセッサ501、メインメモリ502、補助記憶デバイス503、通信インターフェース504及びシステム伝送路505等を備える。プロセッサ501と、メインメモリ502、補助記憶デバイス503及び通信インターフェース504とは、システム伝送路505によって接続される。システム伝送路505は、アドレスバス、データバス及び制御信号線等を含む。
栄養データサーバ50では、プロセッサ501、メインメモリ502及び補助記憶デバイス503と、これらを接続するシステム伝送路505とによってコンピュータを構成する。
プロセッサ501は、オペレーティングシステムやアプリケーションプログラムに従って、栄養データサーバ50としての各種の機能を実現するべく各部を制御する。
メインメモリ502は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ502は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。またメインメモリ502は、プロセッサ501が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ502は、揮発性のメモリ領域を、プロセッサ501によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス503は、例えばEEPROM、HDD、SSDなどである。補助記憶デバイス503は、プロセッサ501が各種の処理を行う上で使用するデータや、プロセッサ501での処理によって生成されたデータを保存する。補助記憶デバイス503は、アプリケーションプログラムを記憶する。補助記憶デバイス503が記憶するアプリケーションプログラムの1つは、栄養データサーバ50としての動作のための制御プログラム(以下、栄養データサーバアプリと称する)P51を含む。補助記憶デバイス503の記憶領域の一部は、栄養データ領域W51として使用される。栄養データ領域W51は、会計装置10が設置される店舗で提供される飲食物(商品)のそれぞれについての栄養データを格納する。
図10は、本実施形態における栄養データのデータ構造を示す図である。
栄養データは、店舗コード511、商品コード512、カロリーデータ513及び栄養バランスデータ514を含む。
店舗コード511は、会計装置10が設置される店舗を識別するコードであり、レシートデータに含まれる店舗コードと同系列のものである。
商品コード512は、飲食物を識別するコードである。商品コード512は、店舗コード511で識別される店舗で提供される飲食物の個々に関して一意であれば良い。つまり、それぞれ異なる店舗コード511を含んだ別々の栄養データにそれぞれ含まれる商品コード512は、同一の飲食物に対してそれぞれ異なっていても良い。ただし商品コード512は、店舗コード511で識別される店舗に設置された会計装置10が生成するレシートデータに含まれる商品コードに一致する。
カロリーデータ513は、店舗コード511で識別される店舗で提供される飲食物のうちの商品コード512で識別される飲食物についてのカロリーを表す。
栄養バランスデータ514は、店舗コード511で識別される店舗で提供される飲食物のうちの商品コード512で識別される飲食物についての栄養バランスを表す。栄養バランスデータは、例えば四群点数法などにより定められた複数の食品群毎のエネルギ量を表す。
それぞれ異なる店舗A及び店舗Bに、会計装置10がそれぞれ設置されることを想定する。店舗A,Bが、それぞれレシピは異なるものの、何れも「焼肉定食」という名称の商品を提供しているとする。この場合、店舗A,Bのそれぞれの会計装置10においては、同一の商品コードが使用されても良い。この場合、2つの同じ商品コード512の栄養データが栄養データ領域W51に格納される。2つの栄養データの一方は、店舗Aを識別する店舗コード511と、店舗Aで提供している「焼肉定食」のカロリーデータ513及び栄養バランスデータ514とを含む。また2つの栄養データの他方は、店舗Bを識別する店舗コード511と、店舗Bで提供している「焼肉定食」のカロリーデータ513及び栄養バランスデータ514とを含む。
通信インターフェース504は、ネットワーク200を介したデータ通信のインターフェースである。通信インターフェース504としては、例えばインターネットを介したデータ通信を行うための周知の通信デバイスを利用できる。
栄養データサーバ50は、例えば汎用のサーバ装置やコンピュータ装置を基本ハードウェアとして用いることができる。
[ポイントシステム100の動作説明]
次に、ポイントシステム100の動作について説明する。なお、以下に説明する各種の処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。
ポイントシステム100のユーザは、ユーザ端末装置20にレシートクライアントアプリP21及び健康アプリP22をインストールする。ユーザは、予め定められた方法で、レシートサーバ30に対してユーザ登録を行う。このユーザ登録によりレシートサーバ30では、ユーザを識別する一意のユーザコードが定められるとともに、このユーザコードに対して、ユーザが指定したユーザ名とパスワードとが関連付けられる。本実施形態では、ユーザ名としてはメールアドレスを使用することとする。ユーザ名及びパスワードは、レシートサーバ30がランダムに決定しても良い。
ユーザは、ポイントシステム100に属する会計装置10が設置された店舗で飲食した場合、会計装置10を利用して会計する。
図11は、本実施形態における会計装置10での決済プログラムP11に基づくプロセッサ101の処理のフローチャートである。
Act101においてプロセッサ101は、メインメモリ102内に設定する商品リストエリアをクリアする。商品リストエリアは、買上登録が済んだ商品に関する情報のリスト(以下、商品リストと称する)を記述するための記憶エリアである。
プロセッサ101は、Act102〜Act104においては、買上登録すべき商品の指定(Act102)、ユーザコードの入力(Act103)、あるいは買上登録の締めを指定する操作(Act104)の何れかが行われるのを待ち受ける。プロセッサ101は、何れかの操作があった場合、その装置に応じた処理に移行する。また、プロセッサ101は、買上登録の締めを指定する操作が行われていないためにNoと判定したならば、Act102へと戻る。
会計装置10が設置された店舗での飲食を終えたユーザは、オーダー伝票を持参して会計コーナーに出向き、会計コーナーを担当する店員にオーダー伝票を渡す。店員は、オーダー伝票に記載された商品を指定するべく、I/Oインターフェース105に接続された入出力デバイスを操作する。例えば店員は、入出力デバイスの1つであるタッチパネルに表示された商品選択ボタンをタッチする。プロセッサ101は、このような操作がなされたためにAct102にてYesと判定したならば、Act105へと進む。
Act105においてプロセッサ101は、指定された商品を含むように商品リストを更新する。プロセッサ101はこののち、Act102〜Act104の待ち受け状態に戻る。なお、別のオーダー端末での商品指定に基づいて作成されたオーダーリストを商品リストとして取り込んでも良い。
一方で、上記の会計に関して電子レシートサービスを利用したい場合にユーザは、ユーザ端末装置20においてレシートクライアントアプリP21に基づく処理を起動する。
図12は、本実施形態における店舗装置15での商品登録プログラムに基づくプロセッサの処理のフローチャートである。
店舗装置15のプロセッサは、店舗の管理者などにより指示に応じて、商品登録プログラムを起動する。店舗装置15は、管理者による入力操作によって、ポイントシステム100においてポイントの付与対象とする、店舗内で販売する飲食物などの商品を設定する(Act120)。また、店舗装置15は、管理者による入力操作によって、ポイントの付与対象とする期限を設定する。
例えば、管理者は、店舗内での販売を促進したい商品を選択する。ここで、選択する商品には、ユーザの健康に配慮した飲食物が含まれる。健康に配慮した飲食物としては、例えば、飲食店の場合には、栄養素のバランスがとれた食材を利用した飲食物(料理、弁当)や、総カロリーが低い飲食物、低カロリー高タンパクの飲食物などがある。また、量販店の場合には、健康に配慮した飲食物としては、一般に健康食材(野菜、果物など)とされる食材などがある。
店舗装置15は、ポイントの付与対象とする商品の設定が完了すると、レシートサーバ30への登録が管理者により指示される。店舗装置15は、設定された商品を示す商品データ(図6参照)を、ネットワーク200を通じてレシートサーバ30に送信して、ポイント付与対象商品として登録する(Act121)。
レシートサーバ30は、店舗装置15から商品データを受信すると、補助記憶デバイス303の商品データ領域W32に格納する。すなわち、レシートサーバ30は、商品を登録した店舗を示す店舗コード316、ポイント付与の有効期限を示す期限データ317、及びポイントの付与対象とする各商品についての商品コード318を格納する。なお、1つの店舗に設置された店舗装置15は、異なる有効期限の商品を登録することも可能である。
図13、図14及び図15は、本実施形態におけるユーザ端末装置20でのレシートクライアントアプリP21に基づくプロセッサ201の処理のフローチャートである。
Act201においてプロセッサ201は、レシートクライアントアプリP21に基づいて、タッチパネル204にログイン画面を表示する。
図16は、本実施形態におけるログイン画面SC1の一例を示す図である。
ログイン画面SC1には、入力欄F11,F12及びボタンB11が表示される。入力欄F11は、ユーザ名として設定されたメールアドレスをユーザが入力するための欄である。入力欄F12は、メールアドレスとともにユーザコードに関連付けられたパスワードをユーザが入力するための欄である。ボタンB11は、ログインを指示するためにユーザがタッチするものである。
ユーザは、ユーザ登録の際に指定したメールアドレス及びパスワードを入力欄F11,F12にそれぞれ入力した上で、ボタンB11にタッチする。
Act202においてプロセッサ201は、ログインデータが入力されたか否かを確認する。そしてプロセッサ201は、入力欄F11,F12の何れにもデータが入力されていないためにNoと判定したならば、Act203へと進む。
Act203においてプロセッサ201は、ログインが指示されたか否かを確認する。そしてプロセッサ201は、ボタンB11がタッチされていないためにNoと判定したならば、Act202に戻る。
Act202及びAct203においてプロセッサ201は、メールアドレスまたはパスワードが入力されるか、あるいはログインが指示されるのを待ち受ける。プロセッサ201は、入力欄F11,F12の何れかにデータが入力されたためにAct202にてYesと判定したならば、Act204へと進む。
Act204においてプロセッサ201は、入力されたログインデータを、メインメモリ202へと格納する。具体的にはプロセッサ201は、入力欄F11にデータが入力されたならば、そのデータをメールアドレスとしてメインメモリ202に格納する。またプロセッサ201は、入力欄F12にデータが入力されたならば、そのデータをパスワードとしてメインメモリ202に格納する。そしてプロセッサ201はこののち、Act202及びAct203の待ち受け状態に戻る。
プロセッサ201は、ボタンB11がタッチされたためにAct203にてYesと判定したならば、Act205へと進む。
Act205においてプロセッサ201は、メインメモリ202に格納されているログインデータ(メールアドレス及びパスワード)を含んだログイン要求を、通信インターフェース205からレシートサーバ30に宛ててネットワーク200へと送信する。
ネットワーク200を介してログイン要求がレシートサーバ30へと伝送されると、このログイン要求を通信インターフェース304が受信する。通信インターフェース304は、受信したログイン要求をメインメモリ302または補助記憶デバイス303に格納する。
図17及び図18は、本実施形態におけるレシートサーバ30でのレシートサーバアプリP31に基づくプロセッサ301の処理のフローチャートである。
Act301においてプロセッサ301は、ログイン要求が受信されたか否かを確認する。そしてプロセッサ301は、ログイン要求が通信インターフェース304によって受信されていないためにNoと判定したならば、Act301を繰り返す。かくしてAct301においてプロセッサ301は、ログイン要求が受信されるのを待ち受ける。そしてプロセッサ301は、ログイン要求が通信インターフェース304によって受信されたためにYesと判定したならば、Act302へと進む。
Act302においてプロセッサ301は、受信されたログイン要求に含まれたログインデータに基づいて認証処理を行う。具体的にはプロセッサ301は、ログイン要求に含まれたメールアドレスとパスワードとに関連付けられたユーザコードが設定されているか否かを確認する。
Act303においてプロセッサ301は、認証に成功したか否かを確認する。そしてプロセッサ301は、メールアドレスとパスワードとに関連付けられたユーザコードが設定されていないためにNoと判定したならば、Act304へと進む。
Act304においてプロセッサ301は、エラー通知を通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する。その後、プロセッサ301は、Act301の待ち受け状態に戻る。
プロセッサ301は、メールアドレスとパスワードとに関連付けられたユーザコードが設定されているためにAct303でYesと判定したならば、図18内のAct305へと進む。なお、この場合にプロセッサ301は、メールアドレスとパスワードとに関連付けられたユーザコードを、ログイン中のユーザのユーザコードとしてメインメモリ102に格納しておく。
Act305においてプロセッサ301は、トップ画面データを生成し、このトップ画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する。
トップ画面データは、ユーザ端末装置20のタッチパネル204にトップ画面を表示させるための画像を表す。トップ画面データは、ユーザコードを含む。
図19は、本実施形態におけるトップ画面SC2の一例を示す図である。
トップ画面SC2は、バーコードC21と、ボタンB21,B22,B23,B24とを含む。
バーコードC21は、ログイン要求に含まれたメールアドレスとパスワードとに関連付けられたユーザコードを表す。ボタンB21は、トップ画面への移行を指示するためにユーザがタッチするものである。ボタンB22は、レシート閲覧画面への移行を指示するためにユーザがタッチするものである。ボタンB23は、栄養閲覧画面への移行を指示するためにユーザがタッチするものである。ボタンB23は、トップ画面、レシート閲覧画面及び栄養閲覧画面とは別の画面への移行を指示するためにユーザがタッチするものである。当該画面は、例えば各種の設定のためのユーザ操作を受け付けるための画面である。
ボタンB21,B22,B23,B24は、現在の画面がどの画面であるかを表すインジケータの機能も有する。図19では、トップ画面SC2に対応するボタンB21の枠を他のボタンB22〜B24に比べて太くしている。
プロセッサ201は、図13に示すAct205においてログイン要求を送信した後には、Act206へと進む。
Act206においてプロセッサ201は、エラーが通知されたか否かを確認する。ネットワーク200を介してエラー通知がユーザ端末装置20へと伝送されると、通信インターフェース205は、エラー通知を受信する。通信インターフェース205は、エラー通知を受信した旨をプロセッサ201へと通知する。プロセッサ201は、この通知がなされたためにAct206にてYesと判定したならば、Act201に戻ってそれ以降の処理を前述したのと同様に繰り返す。
ネットワーク200を介してトップ画面データがユーザ端末装置20へと伝送されると、通信インターフェース205は、トップ画面データを受信する。通信インターフェース205は、トップ画面データをメインメモリ202または補助記憶デバイス203へと格納する。プロセッサ201は、トップ画面データの受信に応じて、Act206にてNoと判定する。この場合、プロセッサ201は、図14のAct207へと進む。
Act207においてプロセッサ201は、受信されたトップ画面データに基づき、タッチパネル204にトップ画面を表示する。これにより、タッチパネル204の画面には、ユーザコードを表したバーコードが表示される。
ユーザは、バーコードが表示されたユーザ端末装置20を、店員に提示する。定員は、会計装置10のI/Oインターフェース105に接続された入出力デバイスの1つであるハンディスキャナにバーコードを読み取らせる。
会計装置10のプロセッサ101は、ハンディスキャナによりバーコードが読み取られたために図11内のAct103にてYesと判定したならば、Act106へと進む。
Act106においてプロセッサ101は、読み取られたバーコードが表すユーザコードを、メインメモリ102または補助記憶デバイス103に格納する。この後、プロセッサ101は、Act102〜Act104の待ち受け状態に戻る。このため、バーコードの読み取りが複数回行われることがあるが、この場合には最後に読み取られたバーコードが表すユーザコードで、メインメモリ102または補助記憶デバイス103に既に格納されているユーザコードを上書きする。ユーザコードは、ユーザの識別コードに相当する。
店員は、伝票に記載された商品の全てを指定し終えたならば、例えば入出力デバイスの1つであるタッチパネルに表示された小計ボタンをタッチする。プロセッサ101は、このような操作がなされたためにAct104にてYesと判定したならば、Act107へと進む。
Act107においてプロセッサ101は、商品リストに示された商品の提供に関わる代金の決済のための決済処理を行う。この決済処理は、既存のPOS装置などで実施している処理をそのまま利用できる。
Act108においてプロセッサ101は、ユーザコードがメインメモリ102または補助記憶デバイス103に格納されているか否かを確認する。そしてプロセッサ101は、ユーザコードが格納されているためにYesと判定したならば、Act109へと進む。
Act109においてプロセッサ101は、図5に示すような構成のレシートデータを作成する。
Act110においてプロセッサ101は、紙レシートを発行するか否かを確認する。具体的にはプロセッサ101は、紙レシートの発行をユーザが希望するか否かを問い合わせる画面をタッチパネルに表示する。そしてプロセッサ101は、タッチパネルでの操作により紙レシートを発行しない旨の入力がなされたためにNoと判定したならば、Act111へと進む。なお、Act110を省略して、プロセッサ101はAct109からAct111へと進むようにしても良い。
Act111においてプロセッサ101は、Act109で作成したレシートデータをレシートサーバ30へと送信する。具体的にはプロセッサ101は、Act109で作成したレシートデータと、メインメモリ102または補助記憶デバイス103に格納されたユーザコードとを含んだ伝送ファイルを生成する。そしてプロセッサ101は、伝送ファイルを、通信インターフェース104からレシートサーバ30へと宛ててネットワーク200へと送信する。この後、プロセッサ101は、Act101に戻り、それ以降の処理を前述と同様にしてやり直す。
プロセッサ101は、ユーザコードが格納されていないためにAct108にてNoと判定したならば、Act112へと進む。プロセッサ101は、タッチパネルでの操作により紙レシートを発行する旨の入力がなされたためにAct110にてYesと判定した場合にも、Act112へと進む。
Act112においてプロセッサ101は、I/Oインターフェース105に接続された入出力デバイスの1つであるプリンタを制御して、紙レシートを発行する。この後、プロセッサ101は、Act101に戻り、それ以降の処理を前述と同様にしてやり直す。
ネットワーク200を介して、レシートデータを含んだ伝送ファイルがレシートサーバ30へと伝送されると、通信インターフェース304は、伝送ファイルを受信する。通信インターフェース304は、受信した伝送ファイルをメインメモリ302または補助記憶デバイス303に格納する。
なお、レシートサーバ30のプロセッサ301は、図17及び図18に示す処理とは別のレシートデータ受信処理を、図17及び図18に示す処理と並列的に実行する。レシートデータ受信処理は、会計装置10から送信されるレシートデータの格納と、ユーザ購入した商品に対するポイント付与のための処理である。
図20は、本実施形態におけるレシートデータ受信処理のフローチャートである。
Act401においてプロセッサ301は、レシートデータを含む伝送ファイルが受信されたか否かを確認する。プロセッサ301は、伝送ファイルが受信されていないためにNoと判定したならば、Act401を繰り返す。かくしてAct401においてプロセッサ301は、レシートデータを含む伝送ファイルが受信されるのを待ち受ける。そしてプロセッサ301は、レシートデータが受信されたためにYesと判定したならば、Act402へと進む。
Act402においてプロセッサ301は、受信された伝送ファイルに含まれるレシートデータを、同伝送ファイルに含まれたユーザコードに関連付けて、補助記憶デバイス303の電子レシート領域W31に格納する。
さらに、プロセッサ301は、レシートデータに含まれる明細データ314をもとに、ユーザ購入した商品についてポイントを付与するかを判定する。このために、Act403においてプロセッサ301は、レシートデータに含まれるユーザコード312が示すユーザに対して送信された「おすすめ商品データ」を閲覧サーバ40に要求する。プロセッサ301は、通信インターフェース304を通じて、おすすめ商品データ要求を閲覧サーバ40に送信する。
「おすすめ商品データ」は、後述する閲覧サーバ40における処理(図28に示すフローチャートの処理)によって、ユーザが購入した商品(飲食物)をもとに作成された、おすすめ商品を示すデータである。「おすすめ商品データ」は、栄養バランスを示すデータを含むユーザ別の栄養データをもとに、ユーザの健康に良いと判定された商品群を示すデータである。おすすめ商品は、各店舗からレシートサーバ30に登録された商品群からユーザ別の栄養データをもとに選択される。
例えば、ユーザ別の栄養データが特定の食品群の不足を示す場合、おすすめ商品として、不足する食品群に含まれる食材を多く含む商品(飲食物)が選択される。また、栄養データが摂取カロリーオーバを示す場合、おすすめ商品として、総カロリーが少ない商品(飲食物)が選択される。
プロセッサ301は、Act404において、おすすめ商品データが受信されると、レシートデータの明細データ314が示す飲食物が、商品データ領域W32に格納された各店舗により登録された飲食物(商品)と一致し、かつ「おすすめ商品データ」が示す商品であるかを判定する。すなわち、Act405においてプロセッサ301は、明細データ314が示す購入された商品のそれぞれについて、前述する条件に該当する、ポイント付与の対象とする商品であるかを判定する。
ここで、プロセッサ301は、明細データ314が示す商品(飲食物)が、前述した条件に該当すると判定された場合、この判定結果に基づいてポイントデータを設定する。
プロセッサ301は、ポイントデータ領域W33に格納された、レシートデータのユーザコード312と同じユーザコード320が設定されたポイントデータについて、レシートデータの決済データ313に含まれる店舗コードと同じ店舗コード321と対応づけられたポイント322を設定する。ポイント322は、ポイントが付与された日付、獲得ポイントを示すデータが含まれる。なお、獲得ポイントは、例えば店舗毎に決められていても良いし、商品(飲食物)毎に決められていても良い。また、獲得ポイントは、商品が購入された日時が、予め設定された何れの期間に含まれるかに応じて決められても良い。
この後、プロセッサ301は、Act401の待ち受け状態に戻り、新たな伝送ファイルが受信されるのに備える。
このようにして、本実施形態におけるレシートサーバ30は、ユーザが店舗で商品(飲食物)を購入することにより生成されるレシートデータを、補助記憶デバイス303に蓄積する。また、レシートサーバ30は、レシートデータをもとに、ユーザが購入した商品についてポイントを付与する。ポイントは、ユーザ別の栄養データをもとに、ユーザの健康に良いと判定された商品群に含まれる商品に対して付与される。すなわち、ポイントシステム100は、健康を配慮した飲食物の購入に対してポイントを付与することで、ユーザによる健康に配慮した飲食物の取得を支援することができる。
さて、ユーザ端末装置20のプロセッサ201は、図14のAct207において、タッチパネル204にトップ画面を表示した後にAct208へと進む。
プロセッサ201は、Act208〜Act210においては、レシート表示(Act208)あるいは栄養データ表示(Act209)を指示するための操作か、あるいはその他の何らかの操作(Act210)が行われるのを待ち受ける。ここでプロセッサ201は、その他の操作がユーザにより行われたためにAct210にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
ユーザは、レシートを閲覧したい場合、トップ画面内のボタンB22にタッチする。プロセッサ201は、ボタンB22へのタッチがタッチパネル204で検出されたためにAct208にてYesと判定したならば、Act211へと進む。
Act211においてプロセッサ201は、タッチパネル204に選択画面を表示する。具体的にはプロセッサ201は、レシートサーバ30に宛てのレシート表示要求を、通信インターフェース205からネットワーク200へ送信する。そしてプロセッサ201は、レシート表示要求に応答してレシートサーバ30から送信された選択画面データが通信インターフェース205により受信されると、選択画面データに基づき、タッチパネル204に選択画面を表示する。
ネットワーク200を介してレシート表示要求がレシートサーバ30へと伝送されると、このレシート表示要求を通信インターフェース304が受信する。通信インターフェース304は、受信したレシート表示要求をメインメモリ302または補助記憶デバイス303に格納する。
プロセッサ301は、図18のAct305にてトップ画面データを送信した後には、Act306へ進む。
Act306及びAct307においてプロセッサ301は、レシート表示要求が受信されるか(Act306)、ユーザによる何らかの操作(Act307)がなされるのを待ち受ける。ここでプロセッサ301は、ユーザによる何らかの操作が行われたためにAct307にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
プロセッサ301は、通信インターフェース304によってレシート表示要求が受信されたためにAct306にてYesと判定したならば、Act308へと進む。
Act308においてプロセッサ301は、選択画面データを生成し、この選択画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する。
選択画面データは、ユーザ端末装置20のタッチパネル204に選択画面を表示させるための画像を表す。選択画面は、ログイン中のユーザのユーザコードに関連付けて電子レシート領域W31に格納されたレシートデータのうちの1つをユーザに選択させるために画面である。
ネットワーク200を介して選択画面データがユーザ端末装置20へと伝送されると、この選択画面データを通信インターフェース205が受信する。通信インターフェース205は、受信した選択画面データをメインメモリ202または補助記憶デバイス203に格納する。そしてプロセッサ201は、通信インターフェース205により受信された選択画面データに基づいて、前述のように図14内のAct211において、タッチパネル204に選択画面を表示する。プロセッサ201は、タッチパネル204に選択画面を表示した後、Act212へと進む。
プロセッサ201は、Act212〜Act215においては、レシートの指定(Act212)、トップ画面の表示指示(Act213)、栄養データの表示指示(Act214)、及びその他の操作(Act215)の何れかがなされるのを待ち受ける。ここでプロセッサ201は、その他の操作がユーザにより行われたためにAct215にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
ユーザは、表示したいレシートを指定するべく選択画面内で操作を行う。プロセッサ201は、選択画面内での操作がタッチパネル204で検出されたために図14内のAct212にてYesと判定したならば、図15内のAct216へと進む。
Act216においてプロセッサ201は、タッチパネル204にレシート画面を表示する。具体的にはプロセッサ201は、指定されたレシートの電子レシートコードを含んだレシート指定通知を、通信インターフェース205からレシートサーバ30に宛ててネットワーク200へと送信する。そしてプロセッサ201は、このレシート指定通知に応答してレシートサーバ30から送信されたレシート画面データが通信インターフェース205により受信されたならば、このレシート画面データに基づき、タッチパネル204の画面をレシート画面とする。
ネットワーク200を介してレシート指定通知がレシートサーバ30へと伝送されると、このレシート指定通知を通信インターフェース304が受信する。通信インターフェース304は、受信したレシート指定通知をメインメモリ302または補助記憶デバイス303に格納する。
プロセッサ301は、図18内のAct308にて選択画面データを送信した後には、Act309へ進む。
Act309においてプロセッサ301は、レシート指定通知が受信されたか否かを確認する。そしてプロセッサ301は、レシート指定通知が受信されていないためにNoと判定したならば、Act310へと進む。
Act310においてプロセッサ301は、ユーザによる何らかの操作がなされたか否かを確認する。そしてプロセッサ301は、何らの操作も行われていないためにNoと判定したならば、Act309へと戻る。
Act309及びAct310においてプロセッサ301は、レシート指定通知が受信されるか、ユーザによる何らかの操作がなされるのを待ち受ける。ここでプロセッサ201は、ユーザによる何らかの操作が行われたためにAct310にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
プロセッサ301は、通信インターフェース304によってレシート指定通知が受信されたためにAct309にてYesと判定したならば、Act311へと進む。
Act311においてプロセッサ301は、レシート指定通知に含まれた電子レシートコードによって特定されるレシートデータに基づいてレシート画面データを生成する。そしてプロセッサ301は、この生成したレシート画面データを通信インターフェース304からユーザ端末装置20に宛ててネットワーク200へと送信する。レシート画面データは、ユーザ端末装置20のタッチパネル204にレシート画面を表示するための画像を表す。
図21は、本実施形態におけるレシート画面SC3の一例を示す図である。なお、図19に示すトップ画面SC2と同一の表示オブジェクトについては、図19と同一の符号を付し、その詳細な説明は省略する。
レシート画面SC3は、レシート領域A31と、ボタンB21〜B24とを表す。レシート領域A31は、決済データ313及び明細データ314が示す情報を文字列などにより表す。レシート画面SC3では、ボタンB22の枠を他のボタンB21,B23,B24に比べて太くしている。
本実施形態においては、プロセッサ301は、レシート画面SC3に例示されるように、レシート領域A31に各商品のカロリー及び塩分量を表している。これらのデータはレシートデータには含まれていない。プロセッサ301は、栄養データサーバ50からこれらのデータを取得する。レシート領域A31には、カロリー及び塩分量の何れか一方のみを表しても良いし、栄養データに含まれる別のデータを表しても良い。ただし、レシート領域A31に栄養データを表すことは、必須ではない。
ネットワーク200を介してレシート画面データがユーザ端末装置20へと伝送されると、このレシート画面データを通信インターフェース205が受信する。通信インターフェース205は、受信したレシート画面データをメインメモリ202または補助記憶デバイス203に格納する。プロセッサ201は、通信インターフェース205により受信された選択画面データに基づいて、Act216において、タッチパネル204にレシート画面を表示する。そして、プロセッサ201は、タッチパネル204にレシート画面を表示した後、Act217へと進む。
プロセッサ201はAct217〜Act220においては、選択画面の表示指示(Act217)、トップ画面の表示指示(Act218)、栄養データの表示指示(Act219)、及びその他の操作(Act220)の何れかがなされるのを待ち受ける。ここで、プロセッサ201は、ここでいずれかの操作があった場合には、操作に応じた処理に移行する。プロセッサ201は、その他の操作がユーザにより行われたためにAct220にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
一方、プロセッサ301は、図18のAct311にてレシート画面データを送信したのち、Act312へと進む。従って、プロセッサ201が図15のAct217〜Act219の待ち受け状態にあるとき、プロセッサ401は、図18のAct312〜Act314の待ち受け状態にある。
プロセッサ301は、Act312〜Act314の待ち受け状態においては、レシート画面の表示要求(Act312)、トップ画面の表示要求(Act313)、及びその他の操作(Act314)の何れかがなされるのを待ち受ける。プロセッサ301は、何れかの要求があった場合、その要求に応じた処理に移行する。また、プロセッサ301は、その他の操作がユーザにより行われたためにAct314にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
ユーザは、表示するレシートを変更したい場合には、レシート画面内のボタンB22にタッチする。プロセッサ201は、ボタンB22へのタッチがタッチパネル204で検出されたためにAct217にてYesと判定したならば、図14内のAct211に戻り、それ以降の処理を前述と同様に繰り返す。このため、ユーザ端末装置20からは、レシート表示要求がレシートサーバ30に宛ててネットワーク200へと送信される。
ネットワーク200を介してレシート表示要求がレシートサーバ30へと伝送されると、このレシート表示要求を通信インターフェース304が受信する。通信インターフェース304は、受信したレシート表示要求をメインメモリ302または補助記憶デバイス303に格納する。プロセッサ301は、レシート表示要求が受信されたためにAct312にてYesと判定したならば、Act308に戻り、それ以降の処理を前述と同様に繰り返す。
これにより、前述と同様にして、タッチパネル204に選択画面が表示される。
ユーザは、画面をトップ画面に戻したい場合には、レシート画面内のボタンB21にタッチする。プロセッサ201は、ボタンB21へのタッチがタッチパネル204で検出されたためにAct218にてYesと判定したならば、図14内のAct207に戻り、それ以降の処理を前述と同様に繰り返す。このため、ユーザ端末装置20からは、トップ表示要求がレシートサーバ30に宛ててネットワーク200へと送信される。
ネットワーク200を介してトップ表示要求がレシートサーバ30へと伝送されると、このレシート表示要求を通信インターフェース304が受信する。通信インターフェース304は、受信したトップ表示要求をメインメモリ302または補助記憶デバイス303に格納する。そしてプロセッサ301は、このようにトップ表示要求が受信されたためにAct313にてYesと判定したならば、Act305に戻り、それ以降の処理を前述と同様に繰り返す。
これにより、前述と同様にして、タッチパネル204にトップ画面が表示される。
ユーザは、摂取した栄養の分布及びカロリーを確認したい場合には、レシート画面内のボタンB23にタッチする。プロセッサ201は、ボタンB23へのタッチがタッチパネル204で検出されたためにAct219にてYesと判定したならば、Act221へと進む。
Act221においてプロセッサ201は、健康アプリP22に基づく処理を別タスクの処理として起動する。
図22、図23、図24及び図25は、本実施形態におけるユーザ端末装置20での栄養アプリP22に基づくプロセッサ201の処理のフローチャートである。
図22のAct501においてプロセッサ201は、栄養閲覧要求を通信インターフェース205から閲覧サーバ40に宛ててネットワーク200へと送信する。プロセッサ201は、メインメモリ202または補助記憶デバイス203に格納されたトップ画面データに含まれたユーザコードを、栄養閲覧要求に含める。
ネットワーク200を介して栄養閲覧要求が閲覧サーバ40へと伝送されると、通信インターフェース404は、栄養閲覧要求を受信する。通信インターフェース404は、受信したログイン要求をメインメモリ402または補助記憶デバイス403に格納する。
図26、図27、図28、図29、及び図30は、本実施形態における閲覧サーバ40での閲覧サーバアプリP41に基づくプロセッサ401の処理のフローチャートである。
Act601においてプロセッサ401は、栄養閲覧要求が受信されたか否かを確認する。そしてプロセッサ401は、栄養閲覧要求が受信されていないためにNoと判定したならば、Act601を繰り返す。プロセッサ401は、Act601において、栄養閲覧要求が受信されるのを待ち受ける。プロセッサ401は、栄養閲覧要求が通信インターフェース404によって受信されたためにYesと判定したならば、Act602へと進む。
Act602においてプロセッサ401は、対象期間を当日の一日に設定する。
Act603においてプロセッサ401は、レシートサーバ30にアクセスし、栄養閲覧要求に含まれたユーザコードに関連付けて電子レシート領域W31に格納されたレシートデータのうちで、決済日時が対象期間内であるレシートデータを取得する。プロセッサ401は、取得したレシートデータを、メインメモリ402または補助記憶デバイス403に格納する。
Act604においてプロセッサ401は、栄養データ要求を、通信インターフェース404から栄養データサーバ50に宛ててネットワーク200へと送信する。プロセッサ401は、対象期間と、取得したレシートデータ内の店舗コードと同レシートデータ内の商品コードのそれぞれとの組み合わせからなるキーデータとを栄養データ要求に含める。
ネットワーク200を介して栄養データ要求が栄養データサーバ50へと伝送されると、この栄養データ要求を通信インターフェース504が受信する。通信インターフェース504は、受信した栄養データ要求をメインメモリ502または補助記憶デバイス503に格納する。
図31は、本実施形態における栄養データサーバ50での栄養データサーバアプリP51に基づくプロセッサ501の処理のフローチャートである。
Act701においてプロセッサ501は、栄養データ要求が受信されたか否かを確認する。そしてプロセッサ501は、栄養データ要求が通信インターフェース504によって上記のように受信されていないためにNoと判定したならば、Act701を繰り返す。Act701においてプロセッサ501は、栄養データ要求が受信されるのを待ち受ける。プロセッサ501は、栄養データ要求が通信インターフェース504によって受信されたためにYesと判定したならば、Act702へと進む。
Act702においてプロセッサ501は、補助記憶デバイス503の栄養データ領域W51に格納された栄養データの中から必要な栄養データを抽出する。ここでの抽出対象は、栄養データ要求に含まれたキーデータのそれぞれに関して、そのキーデータに店舗コード511及び商品コード512の組み合わせが一致する栄養データである。
Act703においてプロセッサ501は、抽出した栄養データを閲覧サーバ40へと送信する。具体的にはプロセッサ501は、Act702で抽出した全ての栄養データを含んだ伝送ファイルを生成する。そしてプロセッサ501は、伝送ファイルを、通信インターフェース504から閲覧サーバ40に宛ててネットワーク200へと送信する。その後、プロセッサ501は、Act701の待ち受け状態に戻る。
ネットワーク200を介して、栄養データを含んだ伝送ファイルが閲覧サーバ40へと伝送されると、この伝送ファイルを通信インターフェース404が受信する。通信インターフェース404は、受信した伝送ファイルをメインメモリ402または補助記憶デバイス403に格納する。
プロセッサ401は、図26内のAct604にて栄養データ要求を送信した後には、Act605へ進む。
Act605においてプロセッサ401は、栄養データが受信されたか否かを確認する。そしてプロセッサ401は、栄養データを含んだ伝送ファイルが受信されていないためにNoと判定したならば、Act605を繰り返す。
Act605においてプロセッサ401は、栄養データが受信されるのを待ち受ける。そしてプロセッサ401は、上述のように通信インターフェース404によって栄養データを含んだ伝送ファイルが受信されたためにAct605にてYesと判定したならば、Act606へと進む。
Act606においてプロセッサ401は、栄養画面データを補助記憶デバイス403の閲覧画像領域W41内に生成する。
栄養画面データは、ユーザ端末装置20のタッチパネル204に栄養閲覧画面を表示するための閲覧画像を表す。
図32は、本実施形態における栄養閲覧画面SC4の一例を示す図である。なお、図19に示すトップ画面SC2と同一の表示オブジェクトについては、図19と同一の符号を付して、詳細な説明は省略する。
栄養閲覧画面SC4は、ボタン群BG41、画像IM41,IM42,IM43及びボタンB21,B23,B24,B41を含む。
ボタン群BG41は、対象期間を変更するためにユーザがタッチする複数のボタンを含む。ボタン群BG41は、現在の対象期間の設定状況を表すインジケータの機能も有する。ボタン群B41では、「今日」という文字が表されたボタンと、「1日」という文字が表されたボタンとを太枠としていることにより、対象期間が当日の1日に設定されていることを表す。
画像IM41は、対象期間において摂取された栄養素のバランスを表す。画像IM42は、対象期間において摂取されたカロリーを表す。画像IM43は、予め定められた条件に合致する補足情報を表す。ただし、図32においては、画像IM43に表されるべき補足情報の図示を省略している。
ボタンB41は、グラフ画面への移行を指示するためにユーザがタッチするものである。
プロセッサ401は、例えば、全てのボタンの枠線を破線により表すボタン群画像を、閲覧画像領域W41内の予め定められた領域に展開する。ボタン群画像は、例えば、予め補助記憶デバイス403に格納されている。また、プロセッサ401は、栄養閲覧要求に示された対象期間を表すように一部のボタンの枠線を太線により表示する。
プロセッサ401は、例えば、伝送ファイルに含まれた栄養データのそれぞれに含まれた栄養バランスデータ514に示された点数を栄養素毎に積算し、栄養素毎の総点数を算出する。そしてプロセッサ401は、栄養素毎の総点数のバランスを表す図32に示す様な画像IM41を生成し、閲覧画像領域W41内の予め定められた領域に展開する。
プロセッサ401は、例えば、伝送ファイルに含まれた栄養データのそれぞれに含まれたカロリーデータ513に示されたカロリーを積算し、総カロリーを算出する。そしてプロセッサ401は、総カロリーを表す図32に示す様な画像IM42を生成し、閲覧画像領域W41内の予め定められた領域に展開する。
プロセッサ401は、例えば、予め定められた条件に従って画像IM43を生成し、閲覧画像領域W41内の予め定められた領域に展開する。
Act607においてプロセッサ401は、閲覧画像領域W41に格納された栄養画面データを、通信インターフェース404からユーザ端末装置20に宛ててネットワーク200へと送信する。
ネットワーク200を介して、栄養画面データがユーザ端末装置20へと伝送されると、この栄養画面データを通信インターフェース205が受信する。通信インターフェース205は、受信した伝送ファイルをメインメモリ202または補助記憶デバイス203に格納する。
プロセッサ201は、図26内のAct501にて栄養閲覧要求を送信した後には、Act502へ進む。
Act502においてプロセッサ201は、栄養画面データが受信されたか否かを確認する。そしてプロセッサ401は、栄養画面データが受信されていないためにNoと判定したならば、Act502を繰り返す。
Act502においてプロセッサ201は、栄養画面データが受信されるのを待ち受ける。そしてプロセッサ201は、通信インターフェース205によって栄養画面データが受信されたためにAct502にてYesと判定したならば、Act503へと進む。
Act503においてプロセッサ201は、タッチパネル204に営業画面データが表す栄養閲覧画面を表示する。
プロセッサ201は、Act504〜Act507,Act540,Act541においては、対象期間の変更指示(Act504)、トップ画面の表示指示(Act505)、グラフの表示指示(Act506)、スタンプ帳の表示指示(Act507)、健康ポイントの表示指示(Act540)、画面指示(Act541)、及びその他の操作(Act542)の何れかがなされるのを待ち受ける。プロセッサ201は、何れかの指示があった場合、その指示に応じた処理に移行する。また、プロセッサ201は、その他の操作がユーザにより行われたためにAct541にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
ユーザは、対象期間を変更したい場合、栄養閲覧画面上で操作を行う。そしてプロセッサ201は、対象期間の変更を指示する操作がなされたためにAct504にてYesと判定したならば、Act508へと進む。
なおプロセッサ201は、栄養閲覧画面におけるボタン群のうちの枠線が破線であるボタンへのタッチを、対象期間の変更の指示として入力する。プロセッサ201は例えば、栄養閲覧画面SC4における「夕食」という文字が表されたボタンがタッチされたならば、対象期間を当日の夕食期間に変更する指示として入力する。プロセッサ201は例えば、栄養閲覧画面SC4における「週別」または「月別」という文字が表されたボタンがタッチされたならば、対象期間を、当日を含む過去の一週間または一月間に変更する指示として入力する。
あるいはプロセッサ201は、タッチパネル204の画面内を左方向または右方向にフリックする操作を日付の変更の指示として入力する。例えば栄養閲覧画面SC4は、2014年12月22日における栄養閲覧画面の一例である。プロセッサ201は、栄養閲覧画面SC4内を左方向にフリックする操作がタッチパネル204にて検出されたならば、対象期間を2014年12月21日の1日に変更する指示として入力する。またプロセッサ201は、過去を対象期間としている栄養閲覧画面内を右方向にフリックする操作がタッチパネル204にて検出されたならば、対象期間を翌日に変更する指示として入力する。
ところでプロセッサ201は、ボタン群BG41に含まれた各ボタンがタッチされた場合にどのような対象期間を設定するかは、各ボタンに関連付けて期間を記述した設定データを参照して決定すれば良い。設定データは、例えば補助記憶デバイス203に格納される。設定データは、ユーザに拘わらずに、例えばレシートクライアントアプリP21の作成者などにより作成されたものを共通に使用しても良い。しかしながら、食事を摂取する時間帯は、ユーザそれぞれのライフスタイルに応じて異なる。そこで、プロセッサ201が、設定データの記述をユーザによる指示に応じて変更しても良い。
Act508においてプロセッサ201は、対象期間の変更の指示内容を示した期間変更要求を、通信インターフェース205から閲覧サーバ40に宛ててネットワーク200へと送信する。
ネットワーク200を介して期間変更要求が閲覧サーバ40へと伝送されると、この期間変更要求を通信インターフェース404が受信する。通信インターフェース404は、受信したログイン要求をメインメモリ402または補助記憶デバイス403に格納する。
プロセッサ401は、図26内のAct607にて栄養画面データを送信したのち、図27内のAct608へと進む。
プロセッサ401は、Act608〜Act611、Act618〜Act620においては、対象期間の変更要求(Act608)、終了通知(Act609)、グラフの表示要求(Act610)、おすすめ商品の表示要求(Act611)、スタンプ帳の表示要求(Act618)、健康ポイントの表示要求(Act619)、及びその他の操作(Act620)の何れかがなされるのを待ち受ける。プロセッサ401は、何れかの要求があった場合、その要求に応じた処理に移行する。また、プロセッサ401は、その他の操作がユーザにより行われたためにAct620にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
プロセッサ401は、期間変更要求が受信されたためにAct608にてYesと判定したならば、Act612へと進む。
Act612においてプロセッサ401は、受信された期間変更要求に示された指示内容に応じて対象期間を変更する。そしてプロセッサ401はこののち、図26内のAct603へと戻り、それ以降の処理を前述と同様に繰り返す。かくして、決済日時が変更後の対象期間内であるレシートデータが再取得され、このレシートデータに基づく栄養画面データが再作成される。
図33は、本実施形態における栄養閲覧画面SC5の一例を示す図である。なお、図19及び図32に示すトップ画面SC2及び栄養閲覧画面SC4と同一の表示オブジェクトについては、図19及び図32と同一の符号を付し、その詳細な説明は省略する。
栄養閲覧画面SC5は、図32に示す栄養閲覧画面SC4におけるボタン群BG41の内の「夕食」という文字が表されたボタンがタッチされた場合に再作成される栄養閲覧画面の一例である。
栄養閲覧画面SC5は、ボタン群BG51、画像IM51,IM52,IM53及びボタンB21,B23,B24,B41を表す。
ボタン群BG51は、「1日」という文字が表されたボタンの枠線を破線とするとともに、「夕食」という文字が表されたボタンを太枠とした点が、図32に示すボタン群BG41に対する変更である。
画像IM51は、当日の夕食において摂取された栄養素のバランスを表す。画像IM52は、当日の夕食において摂取されたカロリーを表す。画像IM53は、再取得したレシートデータに示された店舗名や商品名を表す。
ユーザは、画面を栄養閲覧画面からトップ画面に戻したい場合、栄養閲覧画面内のボタンB21にタッチする。プロセッサ201は、ボタンB21へのタッチがタッチパネル204で検出されたために図23内のAct505にてYesと判定したならば、Act509へと進む。
Act509においてプロセッサ201は、レシートクライアントアプリP21に基づく処理に対してトップ表示を要求する。またプロセッサ201は、終了通知を、通信インターフェース205から閲覧サーバ40に宛ててネットワーク200へと送信する。そしてプロセッサ201はこののち、健康アプリP22に基づく処理を終了する。
プロセッサ201は、レシートクライアントアプリP21に基づく処理においては、図15内のAct221にて健康アプリに基づく処理を起動したのちには、Act222へと進む。
Act222においてプロセッサ201は、トップ表示が要求されたか否かを確認する。そしてプロセッサ201は、当該要求がなされていないためにNoと判定したならば、Act222を繰り返す。
プロセッサ201は、Act222においては、トップ表示が要求されるのを待ち受けている。そしてプロセッサ201は、前述のようにAct509の処理によりトップ表示が要求されたためにAct222でYesと判定したならば、図14内のAct207に戻り、それ以降の処理を前述と同様に繰り返す。これにより、タッチパネル204の画面は、トップ画面に戻される。
一方、Act509でユーザ端末装置20から送信された終了通知がネットワーク200を介して閲覧サーバ40へと伝送されると、この終了通知を通信インターフェース404が受信する。通信インターフェース404は、終了通知を受信したことをプロセッサ401に通知する。この時にプロセッサ401は、図27内のAct608〜Act611、Act618〜Act620の待ち受け状態にある。そこでプロセッサ401は、上記のように終了通知が受信されたためにAct609でYesと判定することになる。そしてこの場合にプロセッサ401は、Act601の待ち受け状態に戻る。
ユーザは、画面を栄養閲覧画面からグラフ画面に変更したい場合、栄養閲覧画面内のボタンB41にタッチする。プロセッサ201は、ボタンB41へのタッチがタッチパネル204で検出されたために図22内のAct506にてYesと判定したならば、図23内のAct510へと進む。
Act510においてプロセッサ201は、グラフ表示要求を通信インターフェース205から閲覧サーバ40に宛ててネットワーク200へと送信する。このときにプロセッサ201は、無線インターフェース206を介して活動量計300から予め定めたグラフ期間に関する活動量データを取得し、この活動量データをグラフ表示要求に含める。グラフ期間は任意であるが、例えば健康アプリP22の作成者またはユーザにより定められる。この期間は、例えば当日から1週間前までの期間とすることが想定される。
活動量計300は、ユーザの活動量に関わる数値を定期的に計測し、それを表した活動量データを時系列に蓄積している。活動量データにどのような項目の数値を含むかは任意であるが、本実施形態では消費カロリー及び歩数を含むこととする。
ネットワーク200を介してグラフ表示要求が閲覧サーバ40へと伝送されると、このグラフ表示要求を通信インターフェース404が受信する。通信インターフェース404は、受信したログイン要求をメインメモリ402または補助記憶デバイス403に格納する。
このときにプロセッサ401は、図27内のAct608〜Act611、Act618〜Act620の待ち受け状態にある。そしてプロセッサ401は、グラフ表示要求が通信インターフェース404によって上記のように受信されたためにAct610でYesと判定したならば、Act613へと進む。
Act613においてプロセッサ401は、摂取画面データを補助記憶デバイス403の閲覧画像領域W41内に生成する。
グラフ画面データは、タッチパネル204の画面を、日ごとの摂取カロリー及び消費カロリーの変化の様子のグラフを含んだがグラフ閲覧画面とするためのデータである。
図34は、本実施形態におけるグラフ閲覧画面SC6の一例を示す図である。なお、図19及び図32に示すトップ画面SC2及び栄養閲覧画面SC4と同一の表示オブジェクトについては、図19及び図32と同一の符号を付し、その詳細な説明は省略する。
グラフ閲覧画面SC6は、画像IM61及びボタンB21,B23,B24,B41を表す。
画像IM61は、日毎の摂取カロリーの変化を表した第1の棒グラフと、日毎の消費カロリーの変化を表した第2の棒グラフと、日毎の摂取カロリーと消費カロリーとの差分を表した折れ線グラフと、日毎の歩数とを表す。
プロセッサ401は、レシートサーバ30にアクセスし、ユーザコードに関連付けて電子レシート領域W31に格納されたレシートデータのうちで、決済日時がグラフ期間内であるレシートデータを取得する。またプロセッサ401は、栄養データサーバ50にアクセスし、上記の取得したレシートデータに含まれた店舗コードと商品コードとによって特定される商品に関する栄養データを取得する。プロセッサ401は、取得したレシートデータ及び栄養データを、メインメモリ402または補助記憶デバイス403に格納する。
そしてプロセッサ401は、メインメモリ402または補助記憶デバイス403に格納されたレシートデータ、栄養データ及びグラフ表示要求に基づいて、各グラフ及び歩数をそれぞれ表す画像を、閲覧画像領域W41に展開する。プロセッサ401は、閲覧画像領域W41内にグラフ画面データを生成する。ただしプロセッサ401は、閲覧画像領域W41内で栄養画面データを既に格納している領域とは別の領域にグラフ画面データを生成し、栄養画面データはそのまま格納しておく。
Act614においてプロセッサ401は、閲覧画像領域W41に格納されたグラフ画面データを、通信インターフェース404からユーザ端末装置20に宛ててネットワーク200へと送信する。
ネットワーク200を介して、グラフ画面データがユーザ端末装置20へと伝送されると、このグラフ画面データを通信インターフェース205が受信する。通信インターフェース205は、受信した伝送ファイルをメインメモリ202または補助記憶デバイス203に格納する。
プロセッサ201は、図23内のAct510にてグラフ表示要求を送信した後には、Act511へ進む。
Act511においてプロセッサ201は、グラフ画面データが受信されたか否かを確認する。そしてプロセッサ401は、グラフ画面データが受信されていないためにNoと判定したならば、Act502を繰り返す。
かくしてAct511においてプロセッサ201は、グラフ画面データが受信されるのを待ち受ける。そしてプロセッサ201は、上述のように通信インターフェース205によってグラフ画面データが受信されたためにAct511にてYesと判定したならば、Act512へと進む。
Act512においてプロセッサ201は、タッチパネル204にグラフ画面データが表すグラフ閲覧画面を表示する。
プロセッサ201は、Act513〜Act515、Act550〜552においては、トップ画面の表示指示(Act513)、栄養データの表示指示(Act514)、スタンプ帳表示指示(Act515)、健康ポイント表示指示(Act550)、画面指示(Act551)、及びその他の操作(Act552)の何れかがなされるのを待ち受ける。プロセッサ201は、何れかの指示があった場合、その指示に応じた処理に移行する。プロセッサ201は、その他の操作がユーザにより行われたためにAct515にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
Act551においてプロセッサ201は、グラフ閲覧画面のグラフを示す画像IM61が指示されたか否かを確認する。例えば、摂取カロリーの変化を表したグラフを示す範囲の指示を受け付ける。プロセッサ201は、当該操作がなされていないためにNoと判定したならば、Act513へと戻る。
なおプロセッサ201は、Act513〜Act515の待ち受け状態において、Act512でタッチパネル204の画面をグラフ閲覧画面としてからの経過時間が予め定めた時間(例えば1分)となったことに応じて、Act510へと戻るようにしても良い。このようにすれば、常に、最新の活動量データに基づいたグラフ閲覧画面とすることができる。
なお、プロセッサ201は、栄養閲覧画面SC4,SC5、グラフ閲覧画面SC6が表示されている間に、ボタンB24がタッチされた場合、その他の処理の実行ボタンを一覧表示させる。実行ボタンの一覧表示において、何れかの実行ボタンがタッチされた場合、プロセッサ201は、実行ボタンに応じた、その他の処理を実行する。本実施形態では、その他の処理として、スタンプ帳表示、健康ポイント表示を実行することができる。
Act507あるいはAct515においてスタンプ帳表示が指示されると、プロセッサ201は、図24のAct520において、ユーザコードを含むスタンプ帳表示要求を閲覧サーバ40に送信する。
閲覧サーバ40のプロセッサ401は、図27のAct618においてスタンプ帳表示要求が受信されると、スタンプ帳表示要求のユーザコードに対応するポイントデータをレシートサーバ30に要求する。レシートサーバ30のプロセッサ301は、ユーザコードに対応するポイントデータを補助記憶デバイス303のポイントデータ領域W33から読み出し、閲覧サーバ40に送信する。プロセッサ401は、Act640において、レシートサーバ30から送信されるポイントデータを取得する。
プロセッサ401は、ポイントデータをもとにスタンプ帳画面データを生成し(Act641)、このスタンプ帳画面データをユーザ端末装置20に送信することによりスタンプ帳画面を表示させる(Act642)。
プロセッサ201は、閲覧サーバ40からスタンプ帳画面データを受信すると(Act521のYes)、スタンプ帳画面をタッチパネル204を表示する(Act522)。
図35は、本実施形態におけるスタンプ帳画面SC7の一例を示す図である。なお、図19及び図32に示すトップ画面SC2及び栄養閲覧画面SC4と同一の表示オブジェクトについては、図19及び図32と同一の符号を付し、その詳細な説明は省略する。
スタンプ帳画面SC7は、複数の店舗のそれぞれに対応する複数の画像IM71〜IM73、及びボタンB21,B24,B42,B43を含む。
各画像IM71〜IM73は、店舗名、有効期限、ポイントシートを含む。ポイントシートには、ユーザに付与されたポイントを表すポイントマークと、ポイントが付与された日付が表示される。また、各画像IM71〜IM73には、健康メニューボタンB71〜B73がそれぞれ設けられる。健康メニューボタンB71〜B73は、各店舗がレシートサーバ30に登録した商品(飲食物)を表示せるためのボタンである。
このように、スタンプ帳画面SC7では、店舗ごとに、それぞれの店舗で商品を購入することにより獲得したポイントを確認することができる。従って、ユーザは、スタンプ帳画面SC7を確認しながら、各店舗での商品の購入によるポイントの獲得を楽しむことができる。
プロセッサ201は、スタンプ帳画面SC7の健康メニューボタンB71〜B73がタッチされると(Act523のYes)、おすすめ商品データの送信要求をレシートサーバ30に送信する(Act524)。例えば、健康メニューボタンB71がタッチされた場合、プロセッサ201は、健康メニューボタンB71が表示された画像IM71に対応する店舗が登録した商品についてのおすすめ商品データを要求する。
閲覧サーバ40のプロセッサ401は、図27のAct611において、おすすめ商品データの送信要求が受信されると、該当店舗の商品データの送信要求をレシートサーバ30に送信する(Act630)。レシートサーバ30のプロセッサ301は、商品データの送信要求に応じて、商品データ領域W32に格納された該当店舗の商品データを閲覧サーバ40に送信する。
プロセッサ401は、商品データを受信すると(Act631のYes)、ユーザに対して提示するおすすめ商品を選択する(Act632)。プロセッサ401は、例えば栄養データサーバ50からユーザに対応する栄養データを取得し、栄養データに基づいて、おすすめ商品を選択することができる。
例えば、プロセッサ401は、ユーザ別の栄養データが特定の食品群の不足を示す場合、おすすめ商品として、不足する食品群に含まれる食材を多く含む商品(飲食物)を選択する。また、栄養データが摂取カロリーオーバを示す場合、プロセッサ401は、おすすめ商品として、総カロリーが少ない商品(飲食物)を選択する。なお、おすすめ商品には、栄養データに基づいて選択した商品の他、該当店舗がレシートサーバ30に登録した商品が含まれていても良い。
プロセッサ401は、おすすめ商品を表示するためのおすすめメニュー画面データを生成し(Act633)、このメニュー画面データをユーザ端末装置20に送信して、メニュー画面(商品一覧)を表示させる。
ユーザ端末装置20のプロセッサ201は、メニュー画面データを受信すると(Act525のYes)、おすすめ商品の一覧画面を表示する(Act526)。
図36は、本実施形態における商品一覧画面SC8の一例を示す図である。
商品一覧画面SC8は、おすすめ商品として選択された商品を一覧表示する画像IM75が含まれる。なお、商品一覧画面SC8では、商品一覧において何れかの商品をタッチすることで、商品の詳細(例えば、材料名、総カロリー、値段など)を示す画面を表示させることができる。
プロセッサ401は、商品一覧画面SC8において商品が選択されたことがユーザ端末装置20から通知されると(Act635のYes)、選択された商品についての閲覧データを閲覧履歴領域W42に格納する(Act636)。閲覧データには、閲覧日時、閲覧商品を示すデータが含まれる。
プロセッサ401は、ユーザ端末装置20において商品の一覧表示が終了されると、その他の処理を実行する(Act637のYes)。その他の処理の詳細については省略する。
なお、ポイントデータが予め決められたポイント数に到達している場合、スタンプ帳画面SC7では、目標達成に対するサービスを提供するための画像が表示される。本実施形態では、目標達成に対して、例えば該当店舗で使用可能なクーポンデータや食事無料券データを提供する。
図37は、本実施形態における食事無料券データを提供する商品一覧画面SC9の一例を示す図である。
図37に示す商品一覧画面SC9は、商品一覧画面SC8の画像IM71が変更された画像IM71aを含む。画像IM71aは、スタンプシートの全て(例えば10個)にスタンプを表示すると共に、食事無料券データの提供を示すマークを表示するための画像である。
閲覧サーバ40のプロセッサ401は、商品一覧画面SC9の食事無料券データの提供を示すマークがタッチされた場合、食事無料券データをユーザ端末装置20に送信し、クーポン画面をポップアップ表示させる。ユーザは、ユーザ端末装置20に表示されたクーポン画面を店舗において提示することで、食事無料のサービスを受けることができる。
なお、スタンプ帳画面SC7,SC8では、ボタンB21,B24,B42,B43のタッチによりその他の処理に移行することができる。プロセッサ401は、ボタンB21,B24,B42,B43の操作によりその他の処理の実行が要求された場合に(Act527)、その他の処理を実行する。その他の処理の詳細な説明については省略する。
一方、Act540あるいはAct550において健康ポイント表示が指示されると、プロセッサ201は、図25のAct530において、ユーザコードを含む健康ポイント表示要求を閲覧サーバ40に送信する。
閲覧サーバ40のプロセッサ401は、図27のAct619において健康ポイント表示要求が受信されると、健康ポイント表示要求のユーザコードに対応するポイントデータをレシートサーバ30に要求する。レシートサーバ30のプロセッサ301は、ユーザコードに対応するポイントデータを補助記憶デバイス303のポイントデータ領域W33から読み出し、閲覧サーバ40に送信する。プロセッサ401は、図30のAct650において、レシートサーバ30から送信されるポイントデータを取得する。
プロセッサ401は、ポイントデータをもとに健康ポイント画面データを生成し(Act651)、この健康ポイント画面データをユーザ端末装置20に送信することにより健康ポイント画面を表示させる(Act652)。
プロセッサ201は、閲覧サーバ40から健康ポイント画面データを受信すると(Act531のYes)、健康ポイント画面をタッチパネル204を表示する(Act532)。
図38は、本実施形態における健康ポイント画面SC10の一例を示す図である。なお、図19及び図32に示すトップ画面SC2及び栄養閲覧画面SC4と同一の表示オブジェクトについては、図19及び図32と同一の符号を付し、その詳細な説明は省略する。
健康ポイント画面SC10は、画像IM81,IM82、及びボタンB21,B24,B42,B43を含む。
画像IM81は、複数の店舗の商品を購入することにより付与されたポイントの合計(健康ポイント)を表示するための画像、画像IM82は、複数の店舗のそれぞれについて、各店舗で商品を購入することにより付与されたポイントを一覧表示するための画像である。画像IM82には、店舗名とポイントが含まれる。
このように、健康ポイント画面SC10では、ポイントシステム100を利用した獲得したポイント合計を確認することができる。従って、ユーザは、健康ポイント画面SC10を確認しながら、複数の店舗における商品の購入によりポイントの獲得を楽しむことができる。
プロセッサ201は、健康ポイント画面SC10のポイントの一覧表示において、何れかの店舗がタッチされると(Act533のYes)、各店舗が提供するサービスの問い合わせをレシートサーバ30に送信する(Act534)。
閲覧サーバ40のプロセッサ401は、サービスの問い合わせが受信されると、店舗が商品データに設定したクーポンデータを表示させるためのクーポン画面データを生成し、このクーポン画面データをユーザ端末装置20に送信して、クレーン画面を表示させる。
ユーザ端末装置20のプロセッサ201は、クーポン画面データを受信すると(Act535のYes)、クーポン画面を表示する(Act536)。
図39は、本実施形態におけるクーポン画面SC11の一例を示す図である。
クーポン画面SC11は、店舗が商品データにより登録したクーポンを一覧表示する画像IM85が含まれる。なお、クーポン画面SC11では、クーポン一覧において何れかのクーポンをタッチすることで、クーポンの詳細(健康食品の引き換え、商品の割引きなど)を示す画面を表示させることができる。また、表示対象とするクーポンは、各店舗の商品を購入することにより付与されたポイントの合計に応じて、選択されるようにしても良い。例えば、1つの店舗から付与されたポイントが高いほど、提供されるクーポンの数が多くなるようにする。
なお、前述した説明では、ポイントの一覧表示(画像IM82)において何れかの店舗がタッチされた場合にクーポン画面を表示する場合について説明しているが、画像IM81がタッチされた場合についても同様にクーポン画面等を表示するようにしても良い。例えば、プロセッサ201は、ポイントの合計(健康ポイント)に応じたクーポンなど、他のサービスの提供を受けるための画面データを閲覧サーバ40から受信して表示する。
他のサービスとしては、例えば他のポイントサービスとのポイント交換、スマートレシートの利用時に有効なクーポン提供、各種健康関連施設のクーポン提供などがある。なお、他のサービスは、ポイントの合計(健康ポイント)に応じて、提供されるサービスが選択されるものとする。
なお、健康ポイント画面SC10では、ボタンB21,B24,B42,B43のタッチによりその他の処理に移行することができる。プロセッサ401は、ボタンB21,B24,B42,B43の操作によりその他の処理の実行が要求された場合に(Act537)、その他の処理を実行する。その他の処理の詳細な説明については省略する。
このように、健康を配慮した飲食物の購入によって獲得されたポイントによって特別なサービスを提供できるようにすることで、ユーザに対して、より健康を配慮した飲食物の購入を促すことができる。すなわち、ポイントシステム100により、ユーザによる健康に配慮した飲食物の取得を支援することができる。
ところで、栄養閲覧画面SC4,SC5が表示されている時に、例えば栄養素のバランスを表す画像IM41の範囲がタッチされた場合(Act541のYes)、プロセッサ201は、図24のAct524において、おすすめ商品データの送信要求をレシートサーバ30に送信する(Act524)。例えば、栄養閲覧画面SC4,SC5の栄養バランスの画像がタッチされた場合、プロセッサ201は、タッチされた栄養素のバランスの範囲を判別し、この範囲に含まれる食材を含む商品についてのおすすめ商品データを要求する。
例えば、栄養素のバランスを表す画像において、摂取が不足していることを表す「魚、肉」の範囲がタッチされた場合、プロセッサ201は、食材「魚、肉」を含む商品についてのおすすめ商品データを要求する。
閲覧サーバ40のプロセッサ401は、、おすすめ商品データの送信要求が受信されると、レシートサーバ30から各店舗が登録した商品データを受信し(Act631のYes)、ユーザに対して提示するおすすめ商品を選択する(Act632)。すなわち、プロセッサ401は、ユーザ端末装置20において栄養閲覧画面SC4,SC5において指定された食材を含む商品を、おすすめ商品として選択する。ここでは、複数の店舗から登録された商品から、おすすめ商品が選択される。
プロセッサ401は、おすすめ商品を表示するためのおすすめメニュー画面データを生成し(Act633)、このメニュー画面データをユーザ端末装置20に送信して、メニュー画面(商品一覧)を表示させる。
なお、前述したように、閲覧サーバ40は、ユーザ端末装置20においてメニュー画面(商品一覧)から商品が選択された場合、閲覧履歴を記録する(Act635,636)。
また、グラフ閲覧画面SC6が表示されている時に、例えば摂取カロリーと消費カロリーの変化を表す画像IM61の範囲がタッチされた場合(Act551のYes)、プロセッサ201は、図24のAct524において、おすすめ商品データの送信要求をレシートサーバ30に送信する(Act524)。例えば、グラフ閲覧画面SC6のカロリーの変化を表す画像がタッチされた場合、プロセッサ201は、例えば当日の摂取カロリーと消費カロリーのバランスに応じた商品についてのおすすめ商品データを要求する。
例えば、当日の摂取カロリーと消費カロリーのバランスが、消費カロリーに対して摂取カロリーが多いことを示す場合、プロセッサ201は、総カロリーが低い商品についてのおすすめ商品データを要求する。
閲覧サーバ40のプロセッサ401は、、おすすめ商品データの送信要求が受信されると、レシートサーバ30から各店舗が登録した商品データを受信し(Act631のYes)、ユーザに対して提示するおすすめ商品を選択する(Act632)。すなわち、プロセッサ401は、ユーザ端末装置20においてグラフ閲覧画面SC6において指定された、当日の摂取カロリーと消費カロリーのバランスに応じた商品を、おすすめ商品として選択する。ここでは、複数の店舗から登録された商品から、おすすめ商品が選択される。
プロセッサ401は、おすすめ商品を表示するためのおすすめメニュー画面データを生成し(Act633)、このメニュー画面データをユーザ端末装置20に送信して、メニュー画面(商品一覧)を表示させる。
なお、前述したように、閲覧サーバ40は、ユーザ端末装置20においてメニュー画面(商品一覧)から商品が選択された場合、閲覧履歴を記録する(Act635,636)。
このようにして、栄養閲覧画面SC4,SC5及びグラフ閲覧画面SC6に表示された画像に対するタッチ操作によって、現在の栄養バランスや摂取カロリーに応じたおすすめ商品をユーザに提示することができる。ユーザは、おすすめ商品として提供された商品を購入することで、健康に配慮して商品を購入したことになり、また商品の購入によってポイントが付与される。このため、ユーザによるポイントシステム100を利用した商品の購入が期待され、さらにユーザによる健康に配慮した商品(飲食物)の取得を支援することができる。また、閲覧履歴を記録することにより、おすすめ商品の提供についての広告効果を測定することができる。
一方、プロセッサ401は、図27内のAct614にてグラフ画面データを送信したのち、Act615へと進む。従って、プロセッサ201がAct513〜Act515の待ち受け状態にあるとき、プロセッサ401は図27内のAct615〜Act617の待ち受け状態にある。
Act615においてプロセッサ401は、栄養データの再表示が要求されたか否かを確認する。そしてプロセッサ401は、当該要求がなされていないためにNoと判定したならば、Act616へと進む。
Act616においてプロセッサ401は、終了通知がなされたか否かを確認する。そしてプロセッサ401は、当該通知がなされていないためにNoと判定したならば、Act617へと進む。
Act617においてプロセッサ401は、Act615,Act616で確認しているのとは別の操作がなされたか否かを確認する。そしてプロセッサ401は、当該操作がなされていないためにNoと判定したならば、Act615へと戻る。
プロセッサ401はAct615〜Act617の待ち受け状態においては、終了通知、栄養データの表示要求及びその他の操作の何れかがなされるのを待ち受ける。ここでプロセッサ401は、その他の操作がユーザにより行われたためにAct617にてYesと判定したならば、その操作に応じた処理に移行する。この場合の処理についての説明は省略する。
ユーザは、画面をグラフ閲覧画面からトップ画面に戻したい場合、グラフ閲覧画面内のボタンB21にタッチする。プロセッサ201は、ボタンB21へのタッチがタッチパネル204で検出されたために図23内のAct513にてYesと判定したならば、Act516へと進む。
Act516においてプロセッサ201は、レシートクライアントアプリP21に基づく処理に対してトップ表示を要求する。またプロセッサ201は、終了通知を、通信インターフェース205から閲覧サーバ40に宛ててネットワーク200へと送信する。この後、プロセッサ201は、健康アプリP22に基づく処理を終了する。プロセッサ201は、レシートクライアントアプリP21に基づく処理においては、図15内のAct222の待ち受け状態にある。従ってプロセッサ201は、上記の終了通知を受けてAct222でYesと判定し、図14内のAct207に戻る。
ネットワーク200を介して終了通知が閲覧サーバ40へと伝送されると、この終了通知を通信インターフェース404が受信し、その旨をプロセッサ401へと通知する。プロセッサ401は、この通知を受けたためにAct616でYesと判定したならば、図26内のAct601の待ち受け状態に戻る。
ユーザは、画面をグラフ閲覧画面から栄養閲覧画面に戻したい場合、グラフ閲覧画面内のボタンB23にタッチする。プロセッサ201は、ボタンB23へのタッチがタッチパネル204で検出されたために図23内のAct514にてYesと判定したならば、Act517へと進む。
Act517においてプロセッサ201は、再表示要求を通信インターフェース205から閲覧サーバ40に宛ててネットワーク200へと送信する。
ネットワーク200を介して再表示要求が閲覧サーバ40へと伝送されると、この再表示要求を通信インターフェース404が受信し、その旨をプロセッサ401へと通知する。プロセッサ401は、この通知を受けたために図27内のAct615でYesと判定したならば、Act607へと戻り、それ以降の処理を前述と同様に繰り返す。ただしこのときにプロセッサ401は、閲覧画像領域W41に格納されたままとなっている栄養画面データを再送信する。これにより、タッチパネル204の画面は、グラフ閲覧画面から、そのグラフ閲覧画面の前における栄養閲覧画面に戻される。
この実施形態は、次のような種々の変形実施が可能である。
前述した説明では、レシートサーバ30、閲覧サーバ40、栄養データサーバ50は、それぞれ独立した装置として説明しているが、何れか2つのサーバ、あるいは3つのサーバの機能を兼ね備えたサーバ装置に置き換えても良い。
また、ユーザ端末装置20におけるタッチパネル204の画面は、閲覧サーバ40により作成された画面データにより表示させるのではなく、プロセッサ201によって画面データを生成して表示するようにしても良い。また、ユーザ端末装置20では、タッチパネル204だけでなく、他の表示デバイスにより画面を表示しても良い。
この実施形態は、次のような種々の変形実施が可能である。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。