閱界資訊

小程序 + WPF 掃碼覈銷:一個門店閉環,我用了 3 天跑通原型(附完整 C# 代碼)

閱閱界編輯部1閱讀6分鐘

《小程序 + WPF 掃碼覈銷:一個門店閉環,我用了 3 天跑通原型(附完整 C# 代碼)》是近期博客園技術區的好帖,信息密度大。下面分段講清它的核心內容,看到結尾你就知道該怎麼做了。

一、背景:門店爲什麼需要掃碼覈銷 做外包這些年,我接過不少「門店覈銷」的活:餐飲取餐、美容預約到店、票務覈驗、會員卡消費……需求聽起來就一句話—— 顧客出示一個碼,店員一掃,這筆就算完成 。但真做起來,甲方往往會漏掉三件事: 誰來 看數據 ?(今天覈銷了多少、誰操作的) 斷網了 還能不能覈銷 ? 同一個人 掃兩次 怎麼辦? 一篇文章講清一套最小可用的閉環: 小程序負責「掃」、.NET WebAPI 負責「判」、WPF 桌面端負責「看和打」 。三端解耦,各自能獨立升級。 二、整體架構:三端各管什麼 [代碼示例略] 小程序 :調相機掃碼拿到覈銷碼,走 wx.login 拿身份,覈銷成功後請求訂閱消息。

一、背景:門店爲什麼需要掃碼覈銷 做外包這些年,我接過不少「門店覈銷」的活:餐飲取餐、美容預約到店、票務覈驗、會員卡消費……需求聽起來就一句話—— 顧客出示一個碼,店員一掃,這筆就算完成 。但真做起來,甲方往往會漏掉三件事: 誰來 看數據 ?(今天覈銷了多少、誰操作的) 斷網了 還能不能覈銷 ? 同一個人 掃兩次 怎麼辦? 一篇文章講清一套最小可用的閉環: 小程序負責「掃」、.NET WebAPI 負責「判」、WPF 桌面端負責「看和打」 。三端解耦,各自能獨立升級。 二、整體架構:三端各管什麼 [代碼示例略] 小程序 :調相機掃碼拿到覈銷碼,走 wx.login 拿身份,覈銷成功後請求訂閱消息。 WebAPI :核心是覈銷接口—— 併發安全和防重複覈銷 都在這層做。

一、背景:門店爲什麼需要掃碼覈銷 做外包這些年,我接過不少「門店覈銷」的活:餐飲取餐、美容預約到店、票務覈驗、會員卡消費……需求聽起來就一句話—— 顧客出示一個碼,店員一掃,這筆就算完成 。但真做起來,甲方往往會漏掉三件事: 誰來 看數據 ?(今天覈銷了多少、誰操作的) 斷網了 還能不能覈銷 ? 同一個人 掃兩次 怎麼辦? 一篇文章講清一套最小可用的閉環: 小程序負責「掃」、.NET WebAPI 負責「判」、WPF 桌面端負責「看和打」 。三端解耦,各自能獨立升級。 二、整體架構:三端各管什麼 [代碼示例略] 小程序 :調相機掃碼拿到覈銷碼,走 wx.login 拿身份,覈銷成功後請求訂閱消息。 WebAPI :核心是覈銷接口—— 併發安全和防重複覈銷 都在這層做。 WPF :門店電腦上的管理後臺,本地存一份 SQLite 覈銷記錄,斷網也能查歷史、打小票。

一、背景:門店爲什麼需要掃碼覈銷 做外包這些年,我接過不少「門店覈銷」的活:餐飲取餐、美容預約到店、票務覈驗、會員卡消費……需求聽起來就一句話—— 顧客出示一個碼,店員一掃,這筆就算完成 。但真做起來,甲方往往會漏掉三件事: 誰來 看數據 ?(今天覈銷了多少、誰操作的) 斷網了 還能不能覈銷 ? 同一個人 掃兩次 怎麼辦? 一篇文章講清一套最小可用的閉環: 小程序負責「掃」、.NET WebAPI 負責「判」、WPF 桌面端負責「看和打」 。三端解耦,各自能獨立升級。 二、整體架構:三端各管什麼 [代碼示例略] 小程序 :調相機掃碼拿到覈銷碼,走 wx.login 拿身份,覈銷成功後請求訂閱消息。 WebAPI :核心是覈銷接口—— 併發安全和防重複覈銷 都在這層做。 WPF :門店電腦上的管理後臺,本地存一份 SQLite 覈銷記錄,斷網也能查歷史、打小票。 三、小程序端:掃碼 + 微信授權 + 訂閱消息 1. 調起相機掃碼 [代碼示例略] 2. 微信授權登錄(code2session 換 openid) 小程序端只拿 code , 真正的 openid 必須在後端換 ,因爲 session_key 絕不能下發給前端: [代碼示例略] 後端(.NET WebAPI): [代碼示例略] 3. 訂閱消息下發(覈銷成功提醒) access_token 有效期 7200 秒, 必須服務端緩存 ,不能每次調用現取: [代碼示例略] 四、服務端:.NET WebAPI 覈銷接口(冪等是核心) 重複覈銷 是這類系統最高頻的事故:顧客連掃兩次、店員手抖點兩下。

一、背景:門店爲什麼需要掃碼覈銷 做外包這些年,我接過不少「門店覈銷」的活:餐飲取餐、美容預約到店、票務覈驗、會員卡消費……需求聽起來就一句話—— 顧客出示一個碼,店員一掃,這筆就算完成 。但真做起來,甲方往往會漏掉三件事: 誰來 看數據 ?(今天覈銷了多少、誰操作的) 斷網了 還能不能覈銷 ? 同一個人 掃兩次 怎麼辦? 一篇文章講清一套最小可用的閉環: 小程序負責「掃」、.NET WebAPI 負責「判」、WPF 桌面端負責「看和打」 。三端解耦,各自能獨立升級。 二、整體架構:三端各管什麼 [代碼示例略] 小程序 :調相機掃碼拿到覈銷碼,走 wx.login 拿身份,覈銷成功後請求訂閱消息。 WebAPI :核心是覈銷接口—— 併發安全和防重複覈銷 都在這層做。 WPF :門店電腦上的管理後臺,本地存一份 SQLite 覈銷記錄,斷網也能查歷史、打小票。 三、小程序端:掃碼 + 微信授權 + 訂閱消息 1. 調起相機掃碼 [代碼示例略] 2. 微信授權登錄(code2session 換 openid) 小程序端只拿 code , 真正的 openid 必須在後端換 ,因爲 session_key 絕不能下發給前端: [代碼示例略] 後端(.NET WebAPI): [代碼示例略] 3. 訂閱消息下發(覈銷成功提醒) access_token 有效期 7200 秒, 必須服務端緩存 ,不能每次調用現取: [代碼示例略] 四、服務端:.NET WebAPI 覈銷接口(冪等是核心) 重複覈銷 是這類系統最高頻的事故:顧客連掃兩次、店員手抖點兩下。解決思路是「覈銷碼唯一 + 行鎖 + 狀態判定」。

建議先收藏再實操:挑其中一個點今天就試試,跑通了再看下一個。知識只有過手纔是你的,你準備先試哪一點? 來源|博客園《小程序 + WPF 掃碼覈銷:一個門店閉環,我用了 3 天跑通原型(附完整 C# 代碼)》,https://www.cnblogs.com/freebirdyyy/p/23201935.html

程式員技術場技术后端

評論(0)

暫無評論,來搶第一條。