99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

Spring Boot藥店管理系統(tǒng)實戰(zhàn):進銷存設(shè)計、數(shù)據(jù)庫與核心實現(xiàn)

Spring Boot藥店管理系統(tǒng)實戰(zhàn):進銷存設(shè)計、數(shù)據(jù)庫與核心實現(xiàn) 簡介本資源是一套面向計算機專業(yè)本科生的課程設(shè)計與畢業(yè)設(shè)計實踐項目聚焦基于SpringBoot的Java Web藥店管理系統(tǒng)開發(fā)適用于Java后端初學者鞏固Web開發(fā)全流程能力。壓縮包共包含多個核心文件涵蓋可直接運行的完整源碼、數(shù)據(jù)庫初始化腳本db.sql、開題報告與論文文檔LW、系統(tǒng)說明文檔等類型涉及Java工程代碼、SQL腳本、Word技術(shù)文檔及純文本操作指南整體大小為15.96MB。已有67人下載學習體現(xiàn)了其在教學實踐場景中的實用價值。讀者可獲得從需求分析、SpringBootMyBatis/Security技術(shù)選型、前后端交互實現(xiàn)到庫存管理、訂單處理、用戶權(quán)限控制等真實業(yè)務(wù)模塊的完整參考所有代碼經(jīng)驗證可本地一鍵運行配套文檔清晰說明環(huán)境配置與啟動步驟極大降低上手門檻是理解企業(yè)級Java Web系統(tǒng)架構(gòu)與開發(fā)規(guī)范的優(yōu)質(zhì)入門范例。 這幾年幫人看課設(shè)畢設(shè)項目Spring Boot Java Web 方向的藥店管理系統(tǒng)幾乎是每個學期都會遇到的高頻題目。這個題一聽很普通但每個人拿到的需求差別其實很大有的只要求最基礎(chǔ)的增刪改查有的要求帶上完整的進銷存、庫存預警、效期提醒還有的把會員積分、統(tǒng)計報表和 Excel 導出全部算進去。我在這類項目上前前后后迭代過好幾版也踩了不少坑今天就把完整的設(shè)計思路、技術(shù)選型、數(shù)據(jù)庫表結(jié)構(gòu)、核心業(yè)務(wù)實現(xiàn)以及交付時源碼和 LW論文/設(shè)計文檔怎么組織一次性講清楚。如果你正在做這個題或者想深入理解一個進銷存系統(tǒng)的完整鏈路這篇內(nèi)容可以直接拿來當參考。1. 為什么選藥店管理系統(tǒng)從課題價值到答辯風險都替你算了一遍1.1 藥店管理系統(tǒng)到底在解決什么問題藥店日常經(jīng)營里最煩的不是賣藥而是庫存對不上。今天入庫了一批感冒藥前臺賣了幾盒有人在盤點時又發(fā)現(xiàn)幾盒過期了如果靠 Excel 登記很容易漏記、錯記。藥品的效期、批次、供應(yīng)商批次對賬、會員積分全是細節(jié)。藥店管理系統(tǒng)本質(zhì)是一個進銷存系統(tǒng)核心是管理藥品從“采購”到“入庫”到“銷售出庫”再到“庫存盤點”的完整生命周期。除此之外還牽扯到供應(yīng)商資料、會員檔案、價格管理、臨期藥品提醒和經(jīng)營數(shù)據(jù)統(tǒng)計。把這些業(yè)務(wù)搬到線上讓每一次入庫、銷售都有據(jù)可查庫存數(shù)量所有角色看到的是一致的這就是系統(tǒng)最基礎(chǔ)的價值。1.2 為什么這個題在課設(shè)畢設(shè)里性價比高一個適合做課設(shè)/畢設(shè)的題目要滿足三點需求清晰、技術(shù)復雜度適中、有足夠的擴展空間。藥店管理系統(tǒng)恰好三點都占。第一需求清晰。進銷存是管理信息系統(tǒng)里的經(jīng)典業(yè)務(wù)模型每個老師都能理解描述起來不需要太多額外背景。第二業(yè)務(wù)關(guān)系豐富。雖然體量不大但涉及用戶、藥品、供應(yīng)商、采購單、銷售單、庫存流水、會員等實體一對多、多對多關(guān)系都有數(shù)據(jù)庫設(shè)計部分可以有內(nèi)容。第三擴展空間大。你可以在基礎(chǔ)功能上疊加近效期提醒、庫存預警、銷售趨勢分析、會員積分、導出報表甚至對接微信小程序隨便挑一個都能寫成亮點。這題比純論壇系統(tǒng)、純博客系統(tǒng)更容易體現(xiàn)工程化思維也是一個比較穩(wěn)妥的選擇。1.3 答辯老師最愛問的幾個問題要先想好這個題被問到的概率最高的三個問題提前準備一下答辯基本不會冷場。第一個藥品效期是怎么管理的你的答案要點是藥品表里有 expiry_date 字段查詢時用 SQL 把當前日期到到期日之間不足 90 天的記錄篩出來列表里用顏色標記銷售時還可以做二次校驗。第二個庫存和銷售數(shù)據(jù)的一致性怎么保證答案是事務(wù)。每次扣減庫存和生成銷售記錄放在同一個事務(wù)里任何一步失敗就整體回滾同時用庫存流水表記錄每次變動隨時可以追溯。第三個為什么用 Spring Boot 而不是傳統(tǒng)的 SSH 或 SSM答案要點是 Spring Boot 基于 Spring Boot 生態(tài)內(nèi)嵌 Tomcat不需要額外部署外部容器配置簡化適合快速迭代而且已經(jīng)成為 Java Web 開發(fā)的主流選擇。把這三個問題答順了答辯老師就會覺得你確實做過項目而不只是把 PPT 背了一遍。2. 需求拆解先別急著寫代碼把角色和流程理清楚2.1 角色劃分不同人看到的界面和功能不一樣藥店管理系統(tǒng)不是一個所有人都能操作所有功能的系統(tǒng)。最常見的角色有三種。系統(tǒng)管理員負責系統(tǒng)基礎(chǔ)配置包括用戶管理、藥品字典維護、供應(yīng)商審核、數(shù)據(jù)統(tǒng)計和日志查看。店員的日常操作是前臺售藥、退藥、會員登記以及查看自己的銷售記錄。采購員負責供應(yīng)商管理、采購單創(chuàng)建和到貨入庫。如果系統(tǒng)做得再細一點還可以增加一個店長角色能看門店的經(jīng)營報表和利潤分析但不能修改基礎(chǔ)數(shù)據(jù)。角色的意義不只是菜單顯示不同更重要的是后端接口要有對應(yīng)的權(quán)限控制。比如店員界面不應(yīng)該出現(xiàn)進貨價和利潤統(tǒng)計哪怕是接口被猜到也要能攔截下來否則做權(quán)限管理就沒有意義。2.2 功能模塊清單先畫清楚再開發(fā)在動手寫代碼之前我會先列一張功能模塊表把每個模塊的功能點和說明寫清楚。這張表既可以指導開發(fā)后面寫 LW 文檔時也能直接復用。模塊功能點說明藥品管理藥品增刪改查、藥品分類、近效期篩選藥品編碼唯一名稱、規(guī)格、廠家、批準文號必填庫存管理入庫、銷售出庫、盤點、庫存預警、流水查詢所有庫存變動必須寫流水可追溯采購管理采購單登記、審核、到貨入庫一張采購單可以包含多個藥品銷售管理前臺售藥、銷售單查詢、退貨銷售時實時校驗庫存和效期供應(yīng)商管理供應(yīng)商增刪改查包含聯(lián)系人、電話、地址、合作狀態(tài)會員管理會員發(fā)卡、積分管理、消費記錄會員按手機號唯一標識系統(tǒng)管理用戶管理、角色管理、操作日志管理員專用控制權(quán)限統(tǒng)計報表日/月銷售統(tǒng)計、低庫存、近效期、導出給店長和管理員看經(jīng)營數(shù)據(jù)2.3 核心業(yè)務(wù)流程采購入庫和前臺銷售是兩條主線整個系統(tǒng)最核心的兩條業(yè)務(wù)鏈路一條是“采購入庫”另一條是“前臺銷售”。采購入庫的流程是采購員選擇供應(yīng)商和藥品生成采購單藥品到貨后核對數(shù)量提交入庫系統(tǒng)自動增加對應(yīng)藥品的庫存同時寫一條入庫類型的庫存流水記錄本次變動前后數(shù)量。前臺銷售的流程是收銀員把顧客需要的藥品逐一加入銷售列表確認數(shù)量后收款提交系統(tǒng)校驗庫存和效期通過后扣減庫存、寫銷售流水、生成銷售主單和銷售明細單。如果顧客是會員還要同步累加積分。這兩條鏈路幾乎涵蓋了系統(tǒng)所有核心邏輯。代碼實現(xiàn)時先把這兩條流程跑通其他模塊基本都是在這兩條鏈路外圍做增刪改查。2.4 非功能性需求校驗、權(quán)限和日志課設(shè)系統(tǒng)同學容易忽略非功能性需求但答辯加分往往靠這些點。后端入?yún)⒁鲂r灡热鐜齑鏀?shù)量不能為負數(shù)、銷售數(shù)量不能大于庫存、藥品編碼不能重復。普通店員不能訪問成本價和利潤相關(guān)接口這個必須做。藥品改價、盤庫存這類操作要記錄操作人和操作時間方便追溯。3. 技術(shù)選型Spring Boot Java Web 的方案怎么定才穩(wěn)3.1 為什么 Spring Boot 成了課設(shè)“標準答案”以前做 Java Web 課設(shè)最常寫的是 SSM 整合就是在 Spring Spring MVC MyBatis 的基礎(chǔ)上手動配一堆 XML 文件。Spring 的 applicationContext.xml、Spring MVC 的 dispatcher-servlet.xml、MyBatis 的 mybatis-config.xml哪個配置寫錯一點項目啟動就會直接報錯對新手極其不友好。Spring Boot 帶來的最大改變是“約定大于配置”。它不僅把 SSM 的整合過程自動完成還內(nèi)嵌了 Tomcat開發(fā)時直接啟動 main 方法就能看到效果部署時一個 java -jar 命令就能跑。課設(shè)演示的時候再也不用先裝 Tomcat、改 server.xml、把 war 包手動拷進 webapps體驗上的提升非常明顯。從技術(shù)本質(zhì)上說Spring Boot 仍然是 Java Web 技術(shù)棧底層還是 Spring MVC只不過把繁瑣的配置收進去了。在論文里寫“基于 Spring Boot 的 Java Web 系統(tǒng)”完全站得住腳。3.2 ORM 選 MyBatis-Plus單表不用寫 SQL復雜查詢又留得住持久層框架推薦 MyBatis-Plus理由非常簡單單表的增刪改查可以直接繼承 BaseMapper自帶 selectById、insert、updateById 等方法連 SQL 都不用寫。分頁查詢有官方分頁插件邏輯刪除和字段自動填充都能配置。更重要的是MyBatis-Plus 沒有把自定義 SQL 的能力封死。統(tǒng)計報表、庫存預警這類需要多表聯(lián)查的復雜 SQL仍然可以寫在 Mapper XML 里由自己控制。這一點對課設(shè)項目很關(guān)鍵因為很多高價值的模塊恰好是那些手寫 SQL 的地方。3.3 前端方案Thymeleaf Bootstrap 優(yōu)先Vue 按需選擇前端有兩種主流方案。第一種是服務(wù)端渲染Spring Boot Thymeleaf Bootstrap。頁面由 Controller 直接返回Thymeleaf 模板負責渲染數(shù)據(jù)Bootstrap 負責樣式。優(yōu)點是工程結(jié)構(gòu)簡單不需要 Node.js 環(huán)境啟動后端就能看到一個完整的管理后臺特別適合單人開發(fā)。缺點是頁面交互比較傳統(tǒng)要實現(xiàn)復雜的前端效果會比較吃力。第二種是前后端分離Spring Boot 提供 REST API前端用 Vue3 Element Plus 搭后臺。界面確實更現(xiàn)代但這意味著你要同時維護兩套工程還要處理跨域、Token 鑒權(quán)、構(gòu)建環(huán)境等問題。如果對 Node 和 Vue 不熟答辯現(xiàn)場很容易被環(huán)境問題卡住。我的建議課設(shè)項目優(yōu)先選 Thymeleaf Bootstrap穩(wěn)定不翻車。如果你確實想讓系統(tǒng)看起來有亮點可以做一個 Vue 管理頁作為擴展但至少保證后端 API 能用 Postman 完整演示這樣即使前端出問題也有補救空間。3.4 環(huán)境版本搭配別為了新版犧牲穩(wěn)定性我見過很多項目用最新的 Spring Boot 3.x結(jié)果 JDK 版本不夠直接啟動失敗最后又回退。給你一個我長期在用的穩(wěn)定組合組件推薦版本備注JDK1.8 或 11學校電腦兼容性最好不要用 17Spring Boot2.7.x功能穩(wěn)定資料多MyBatis-Plus3.5.x3.5 以后對 Boot2 支持良好MySQL5.7 或 8.0兩者都可以8.0 注意驅(qū)動差異Maven3.6配合 IDEA 使用IDEA2022.3社區(qū)版也夠用數(shù)據(jù)庫驅(qū)動如果用的是 MySQL 8.0記得在連接串里加 serverTimezoneAsia/Shanghai否則很容易踩時區(qū)問題。3.5 再說一下“LW”和源碼壓縮包的事標題里的 LW 在課設(shè)圈里一般指“論文”或“設(shè)計文檔”也就是除了源碼之外還要交付的文檔材料。一個完整的課程設(shè)計/畢業(yè)設(shè)計交付物通常包含源碼、數(shù)據(jù)庫腳本、LW 文檔、演示視頻壓縮包命名里帶上日期或者版本號。源碼可運行是底線文檔規(guī)范是加分項兩個都不能忽視。4. 數(shù)據(jù)庫設(shè)計這幾張表是怎么一步步定下來的4.1 藥品表藥店系統(tǒng)的心臟藥品表是整個系統(tǒng)最重要的表字段需要認真設(shè)計。我用的核心字段如下字段說明id主鍵自增drug_code藥品編碼唯一索引common_name通用名比如“阿莫西林膠囊”trade_name商品名比如“再林”specification規(guī)格比如“0.25g*24?!眜nit單位盒/瓶/袋manufacturer生產(chǎn)廠家approval_number批準文號國藥準字purchase_price進貨價DECIMAL(10,2)sale_price零售價DECIMAL(10,2)stock_quantity當前庫存數(shù)量stock_lower_limit庫存下限低于這個值預警stock_upper_limit庫存上限expiry_date有效期至category_id藥品分類deleted邏輯刪除標記進貨價和零售價必須分開字段因為這兩個價格的可見人群不同。進貨價用于成本核算由管理員維護店員界面不展示。批準文號字段在答辯時能體現(xiàn)你對藥品行業(yè)的理解千萬別丟掉。4.2 用戶、角色、供應(yīng)商表用戶表 userid、username、password、real_name、phone、role_id、status。密碼不能存明文用 BCrypt 加密。角色表 roleid、role_name、role_key、description。管理員角色 key 是 admin店員是 clerk采購員是 purchaser。用戶直接掛 role_id不需要把權(quán)限系統(tǒng)做太復雜但角色要存在數(shù)據(jù)庫里不能寫死在代碼里。供應(yīng)商表 supplierid、supplier_name、contact_person、phone、address、status、remark。采購入庫時必須關(guān)聯(lián)供應(yīng)商保證采購數(shù)據(jù)能夠?qū)~。4.3 采購主單和采購明細為什么要拆兩張表采購單設(shè)計成主單 明細兩張表這是課設(shè)里非常值得講的部分。采購主表 purchase_orderid、order_no、supplier_id、total_amount、status待入庫/已入庫/已取消、create_time、create_by。采購明細表 purchase_order_itemid、order_id、drug_id、quantity、purchase_price、subtotal。為什么不把采購信息全部塞到一張表里因為一張采購單可能包含 5 種甚至 20 種藥品如果都放在一行同一張單的藥品會被拆成多行數(shù)據(jù)里就會大量重復單號查詢單據(jù)時還要處理重復。主單管理訂單整體信息明細管理每個藥品的條目一次采購單生成多條明細邊界非常清晰。后續(xù)做供應(yīng)商對賬、進貨總額統(tǒng)計都能直接通過 order_id 關(guān)聯(lián)查詢。4.4 銷售主單和銷售明細訂單模型的常見設(shè)計銷售表和采購表結(jié)構(gòu)類似。銷售主表 sale_orderid、order_no、member_id、total_amount、pay_type現(xiàn)金/微信/支付寶、status、create_time、create_by。銷售明細表 sale_order_itemid、order_id、drug_id、quantity、sale_price、subtotal。這里要注意的是 member_id 允許為空因為非會員顧客也可以買藥。如果做退貨業(yè)務(wù)可以在主單上加 status 字段區(qū)分正常和退貨退貨時重新生成一條負數(shù)的庫存流水表示庫存回補。4.5 庫存流水表整個系統(tǒng)的賬本庫存流水表 stock_record 是容易被忽略但很關(guān)鍵的一張表。字段包括id、drug_id、change_type1 入庫、2 銷售扣減、3 報損、4 盤點調(diào)整、change_quantity正數(shù)增加負數(shù)減少、before_quantity、after_quantity、biz_no關(guān)聯(lián)的采購單號或銷售單號、create_time、create_by。有了這張表你可以隨時回答“某盒藥到底什么時候進的、什么時候賣的、賣給了哪筆單子”這些問題。沒有流水數(shù)據(jù)庫里只剩一個當前庫存數(shù)字連對賬都做不了。這也是答辯時一個可靠的亮點拿出庫存流水的時候老師會覺得你不是在寫玩具。4.6 會員表和用戶表分開會員表 memberid、card_no、name、phone、points、create_time。會員是藥店面向消費者的客戶檔案用戶表是操作系統(tǒng)的人兩個模型必須分開。會員等級和積分可以先用一個字段存點數(shù)后續(xù)要擴展等級再加一個 level 字段就行。4.7 表設(shè)計的一些取舍外鍵字段邏輯關(guān)聯(lián)保留但不要在大表之間強制建物理外鍵約束。課設(shè)階段測試數(shù)據(jù)非常頻繁物理外鍵容易導致刪除失敗、導入順序報錯。邏輯外鍵的意思是在代碼和 SQL 中通過 JOIN 來保證關(guān)系由業(yè)務(wù)層控制完整性不依賴數(shù)據(jù)庫約束。金額字段一律用 DECIMAL(10,2)不要用 DOUBLE 或 FLOAT浮點數(shù)在計算金額時會有精度損失。所有業(yè)務(wù)表都加 deleted 字段實現(xiàn)邏輯刪除這是 MyBatis-Plus 的標配也方便論文里寫“系統(tǒng)支持數(shù)據(jù)恢復”。5. 從零搭建項目把 Spring Boot 項目骨架搭起來5.1 創(chuàng)建項目和引入依賴打開 IDEANew Project 選擇 Spring InitializrJava 版本選 8依賴先勾選 Spring Web、MySQL Driver、Validation、Thymeleaf。生成之后在 pom.xml 里手動加 MyBatis-Plus 和 Lombok。pom.xml 核心依賴長這樣dependency groupIdcom.baomidou/groupId artifactIdmybatis-plus-boot-starter/artifactId version3.5.3.1/version /dependency dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-thymeleaf/artifactId /dependency dependency groupIdcom.mysql/groupId artifactIdmysql-connector-j/artifactId scoperuntime/scope /dependency dependency groupIdorg.projectlombok/groupId artifactIdlombok/artifactId optionaltrue/optional /dependency5.2 application.yml 配置配置文件是最容易出錯的位置尤其是數(shù)據(jù)庫連接串。server: port: 8080 spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/pharmacy?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/Shanghai username: root password: 123456 thymeleaf: cache: false mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl map-underscore-to-camel-case: true global-config: db-config: logic-delete-field: deleted logic-delete-value: 1 logic-not-delete-value: 0這里要重點說一下 map-underscore-to-camel-case 的作用。數(shù)據(jù)庫字段一般是 create_time 下劃線風格Java 實體類是 createTime 駝峰風格這個配置打開之后 MyBatis 會自動完成映射不用手寫 resultMap。邏輯刪除配置則保證調(diào)用 deleteById 時執(zhí)行的是 UPDATE deleted 1 而不是物理刪除。5.3 分包結(jié)構(gòu)一眼能看懂的工程我習慣用下面這個結(jié)構(gòu)com.example.pharmacy ├── config ├── controller ├── entity ├── mapper ├── service ├── service.impl ├── dto ├── vo └── commoncontroller 放接口入口service 放業(yè)務(wù)邏輯mapper 放數(shù)據(jù)庫訪問entity 放表映射實體common 放統(tǒng)一返回結(jié)果和異常處理。不要把業(yè)務(wù)邏輯堆在 controller 里否則 Service 層沒有內(nèi)容論文里寫“業(yè)務(wù)層設(shè)計”會非常虛。5.4 統(tǒng)一返回結(jié)果和全局異常處理前端頁面或者接口調(diào)用方如果每次接收的數(shù)據(jù)結(jié)構(gòu)都不一樣聯(lián)調(diào)就是災(zāi)難。定義一個 Result 類全系統(tǒng)統(tǒng)一返回格式public class ResultT { private Integer code; private String message; private T data; public static T ResultT success(T data) { ResultT r new Result(); r.code 200; r.message ok; r.data data; return r; } public static T ResultT error(String message) { ResultT r new Result(); r.code 500; r.message message; return r; } }全局異常處理用 RestControllerAdvice 統(tǒng)一捕獲業(yè)務(wù)異常和未知異常避免把異常堆棧直接返回給前端。課設(shè)里的前端頁面如果直接暴露異常堆棧觀感很差而且有信息泄露風險。5.5 一個完整的藥品分頁查詢接口示例ControllerGetMapping(/drug/page) public ResultIPageDrug page(RequestParam(defaultValue 1) int page, RequestParam(defaultValue 10) int size, RequestParam(required false) String keyword) { return Result.success(drugService.pageQuery(page, size, keyword)); }Service 實現(xiàn)public IPageDrug pageQuery(int page, int size, String keyword) { PageDrug p new Page(page, size); LambdaQueryWrapperDrug wrapper Wrappers.lambdaQuery(); if (StringUtils.hasText(keyword)) { wrapper.like(Drug::getCommonName, keyword) .or().like(Drug::getTradeName, keyword); } return drugMapper.selectPage(p, wrapper); }這個接口同時支持分頁和關(guān)鍵字模糊搜索可以覆蓋藥品列表頁的全部需求。注意分頁插件需要在配置類里注冊 MybatisPlusInterceptor加上 PaginationInnerInterceptor否則 selectPage 只能查出所有數(shù)據(jù)分頁不生效。6. 庫存與銷售課設(shè)里最值得寫進論文的核心實現(xiàn)6.1 入庫操作為什么必須放在同一個事務(wù)里采購入庫涉及三步保存采購主單、更新藥品庫存、寫庫存流水。任何一個環(huán)節(jié)失敗都會造成庫存數(shù)據(jù)不一致。舉個例子如果保存采購單成功但更新庫存時報錯數(shù)據(jù)庫里就會有一個“已入庫”狀態(tài)的采購單實際藥品數(shù)量卻沒有增加。再比如庫存已經(jīng)更新了但流水沒寫成將來對賬時完全說不清這個庫存是怎么來的。解決辦法是在 Service 方法上加 Transactional(rollbackFor Exception.class)讓三個操作要么全部成功要么全部回滾。事務(wù)是數(shù)據(jù)庫保證一致性的基礎(chǔ)也是答辯時必講的技術(shù)點。核心邏輯可以寫成這樣Transactional(rollbackFor Exception.class) public void purchaseStock(PurchaseOrder order, ListPurchaseOrderItem items) { purchaseOrderMapper.insert(order); for (PurchaseOrderItem item : items) { Drug drug drugMapper.selectById(item.getDrugId()); Integer before drug.getStockQuantity(); drug.setStockQuantity(before item.getQuantity()); drugMapper.updateById(drug); stockRecordMapper.insert(new StockRecord( item.getDrugId(), 1, item.getQuantity(), before, drug.getStockQuantity(), order.getOrderNo() )); } }6.2 銷售扣庫存并發(fā)情況下怎么避免超賣銷售最容易出的問題是并發(fā)扣庫存。如果兩個收銀員同時賣出同一盒藥庫存就剩 1 盒系統(tǒng)讀到兩個“庫存為 1”各自都執(zhí)行減 1最后庫存變成 -1實際卻賣出了 2 盒。解決思路是讓扣庫存的操作變成原子性的并且只有條件滿足時才執(zhí)行。比較常用的方式是樂觀鎖在 drug 表加一個 version 字段扣庫存時使用帶條件的 updateUPDATE drug SET stock_quantity stock_quantity - #{quantity}, version version 1 WHERE id #{drugId} AND stock_quantity #{quantity} AND version #{version}如果 update 返回的影響行數(shù)為 0說明庫存不足或者版本號已變化業(yè)務(wù)層立刻拋出“庫存不足或操作沖突”提示收銀員刷新重試。這種方式在課設(shè)項目里已經(jīng)足夠可靠而且代碼量很小。6.3 庫存流水before 和 after 的妙用庫存流水的 before_quantity 和 after_quantity 字段初看是冗余的因為通過當前庫存反推也能算出來。實際用起來會發(fā)現(xiàn)這對字段在數(shù)據(jù)核對時非常有用。比如某天盤點發(fā)現(xiàn)庫存少了 3 盒如果有流水可以按時間把每筆變動列出來快速定位是哪筆操作出了問題。如果沒有流水就只能憑記憶找原因。把 before 和 after 帶上之后流水本身就是一條完整的審計鏈。寫入順序要注意先更新 drug 表的庫存再插入 stock_record流水里的 after_quantity 必須等于更新后的最新庫存。這兩個操作必須在同一個事務(wù)里否則會出現(xiàn)“流水寫了但庫存沒更新”的情況。6.4 近效期提醒用 SQL 把快過期藥品篩出來藥品效期是藥店業(yè)務(wù)里的剛需。查詢 90 天內(nèi)即將到期的藥品SELECT * FROM drug WHERE expiry_date BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 90 DAY) AND deleted 0 ORDER BY expiry_date ASC這條 SQL 可以直接用在藥品列表頁的“近效期”Tab 中。更完整一點的做法是在銷售時增加效期校驗如果藥品距離到期日不足 30 天前端彈窗提示收銀員確認后二次放行。6.5 庫存預警低于下限自動提醒庫存預警的 SQL 非常簡單SELECT * FROM drug WHERE stock_quantity stock_lower_limit AND deleted 0但要在首頁把它做成一個統(tǒng)計數(shù)據(jù)卡片比如“缺貨藥品 6 種”“近效期藥品 3 種”“今日銷售額 12800 元”這樣管理員打開系統(tǒng)第一眼就能看到異常情況。這三個數(shù)字看起來簡單實際上要做三張統(tǒng)計 SQL分別查銷售總額、低庫存數(shù)量和近效期數(shù)量。寫完這三個接口首頁的展示效果立刻不一樣。6.6 統(tǒng)計報表和導出 Excel日報表統(tǒng)計按自然日分組SELECT DATE(create_time) AS day, SUM(total_amount) AS amount FROM sale_order WHERE status 1 GROUP BY DATE(create_time) ORDER BY day DESC報表展示用折線圖或者柱狀圖可以用一個輕量級的圖表庫 ECharts通過 Thymeleaf 模板把數(shù)據(jù)拼到 JS 變量里渲染。導出功能推薦引入 EasyExcel 依賴寫一個導出接口把報表數(shù)據(jù)轉(zhuǎn)為 Excel 文件響應(yīng)給前端下載。這個功能不復雜但演示效果非常好是課設(shè)項目里一個性價比很高的亮點。7. 排錯實錄課設(shè)跑不起來的常見原因我已經(jīng)幫你踩過一遍7.1 數(shù)據(jù)庫連接失敗被時區(qū)問題卡住最常見的報錯是“Communications link failure”或者時區(qū)相關(guān)的異常。原因是連接串里沒有配置 serverTimezoneMySQL 8.0 的驅(qū)動要求明確指定時區(qū)。解決辦法就是加上 serverTimezoneAsia/Shanghai。還有一種情況是密碼錯誤報“Access denied for user rootlocalhost”要把 application.yml 里密碼改成你自己本機的數(shù)據(jù)庫密碼不要直接照抄網(wǎng)上配置。7.2 控制臺中文亂碼中文亂碼一般是字符集不統(tǒng)一造成的。確認三處設(shè)置數(shù)據(jù)庫連接串里帶上 characterEncodingutf8數(shù)據(jù)庫表結(jié)構(gòu)默認字符集是 utf8mb4IDE 的 File Encoding 全部改成 UTF-8。如果是頁面亂碼還要確認前端模板文件頭部有meta charsetUTF-8。7.3 前端提交日期參數(shù)報 400前臺頁面用表單提交一個日期字符串比如“2024-05-20 14:30”后端用 Date 類型接收時Spring MVC 默認不認識這個格式會直接返回 400。解決辦法是在實體類的日期字段上加上 DateTimeFormat(pattern yyyy-MM-dd HH:mm:ss)。如果是通過 JSON 傳輸要改用 JsonFormat(pattern yyyy-MM-dd HH:mm:ss, timezone GMT8)。這兩個注解容易搞混我每次都會檢查一下。7.4 MyBatis-Plus 自動填充不生效如果實體類里有 createTime 和 updateTime并且加了 TableField(fill FieldFill.INSERT)但插入數(shù)據(jù)后這兩個字段是 null原因是你沒有配置 MetaObjectHandler。自動填充需要一個處理器在插入時自動 set 創(chuàng)建時間和修改時間。Component public class MyMetaObjectHandler implements MetaObjectHandler { Override public void insertFill(MetaObject metaObject) { this.strictInsertFill(metaObject, createTime, LocalDateTime.class, LocalDateTime.now()); this.strictInsertFill(metaObject, updateTime, LocalDateTime.class, LocalDateTime.now()); } Override public void updateFill(MetaObject metaObject) { this.strictUpdateFill(metaObject, updateTime, LocalDateTime.class, LocalDateTime.now()); } }配置了之后createTime 和 updateTime 就會自動維護不需要每個 Service 方法手動 set。7.5 靜態(tài)資源 404頁面樣式全丟了Spring Boot 的默認靜態(tài)資源路徑是 classpath:/static/模板頁面放在 classpath:/templates/ 下。Thymeleaf 頁面里引用 CSS 時要用 th:href{/css/style.css}或者寫成 /css/style.css 絕對路徑不要用相對路徑否則從不同 URL 進入頁面時路徑會亂掉。7.6 啟動報端口占用啟動時如果提示“Port 8080本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
激情综合五月婷婷| 草榴视频黄色网| 亚洲成色综合网站免费观看| 五月婷婷草| 99精品在线| 久久这里只有精品22| 夜夜躁婷婷AV| 我想看国产大学生口爆吞精的视频| 九热...av| 五月丁香狠狠爱婷婷综合| 天堂成人久久| 婷婷中文字幕网| 精品人妻伦一二三区久久| 十月丁香九月婷婷综合| 婷婷中文字幕版| 99久在线观看| 色欲天天综合| 久9久9热久热| 色婷婷免费观看| 99热有精品在线观看| 久久婷婷五月| 99热超碰在线| 日本片日本片祼观看网站在线看中文版网页在线看 | 婷婷五月综合婷婷| 婷婷五月四狠狠| 日韩成人影片在线观看| 久久ri精品视频| 91碰碰碰| 激情五月婷婷综合秋霞| 丁香八月综合激情| 五月丁了香蕉综合| 色色五月激情| 任你搞网站| 99操不停| 91久久久久久久91| 超碰免费成人| 天搞天天天天天| 国产日韩av片| 五月婷婷干干干| 丁香五月电影院在线观看| www.com在线操视频免费观看| 婷婷五月影院| 五月婷婷丁香日韩在线| 六月婷婷日| www.97视频| 人人干人人看| 丁香婷婷欧美综合| www,com,五月色色| 综合激情婷婷| 丁香五月天欧美| 深爱五月中文字幕| 日本五月天婷婷丁香| 色婷婷激情五月天| 久久色情| 99国产在线精品视频| 国产又粗又大又爽又黄| 丁香五月成人自拍| 亚洲av网站| 五月婷婷啪啪网| 伊人网碰碰| 久久草中文日韩欧美| 14色综合婷婷| 久久久区区一久久久久久| 五月天色网站| www久久久久久久97| 色哟哟www| 成人 视频免费观看网站| 69久久99精品久久久久婷婷| 少妇性BBB搡BBB爽爽爽视頻| 婷婷丁香五月天大香蕉| 超碰在线国产| 午夜丁香五月天综合| 亚洲色网络| 久久久久亚洲AV无码网影音先锋| 无码少妇高潮喷水A片免费| 伊人无码高清| 视频一二区| 久久99视频| 精品人妻伦| 中文国产五月天| www婷婷| 开心五月综合激情网| 青草性爱视频| 伊人婷婷色| 婷婷五月天色色| 国产超碰在线| 五月天丁香综合| 99国产er热视频| 青草热视频这里只有精品| 国产精品成人av在线观看春天| 噜噜五月天综合| 武则天精品久久| 久99热| 丁香五月伊人| 热99视频精品| 深爱激情五月婷婷| 五月丁香久久色| 综合激情五月天| 亚洲、热| 欧洲色| 999九九九久久久99HD| 色色五月丁香| 九色91视频| 色色综合网www| 色99视频| 五月色婷婷影院| 噼里啪啦在线观看免费完整版视频| 婷婷丁香黄色| 五月天另类小说久久小说网| 亚洲第一成人无码A片| 激情五月份婷婷| 亚洲激情电影五月天色婷婷丁香一起草| 99热久久这里只有精品2010| 成人草榴视频| 视频这里只有精品16| www.婷婷.com| 色天堂97| 开心婷婷中文字幕| www,99色| 色五月丁香伊人五月| 亚洲另类在线观看| 五月婷婷啪| 久久人妻乱| 青草视频在线观看视频| 一區四區歐美日韓| 日本人妻伦在线中文字幕| 婷婷九月激情| 另类专区在线| 午夜激情婷婷| 精品久久99| 国产精品丝| 婷婷色爱| 肏日网在线看| 六月婷婷五月天| 久久免费高| 久久综合伊人综合在线| 超碰成人公开| 婷婷丁香人妻天天| 五月天伊人久久久久| 丁香五月婷婷影院| 久久视频婷婷| 丁香综合网| 99在线精品视频| 狠狠干综合| 99热官网精品在线| 九九热最新| 9色在线视频精品观看| 婷婷五月精品中文字幕| 婷婷五月天丁香久久| 欧美婷婷五月天综合| 亚洲亚洲人成综合网络| 射久久丁香五月| 无码 av电影| 狠狠狠狠狠狠狠狠草| 欧美激情综合| 欧美激情-区二区三区| 亚洲综合网在线| 天天综合干| 欧美日韩中文国产一区发布| 色色色.COM| 亚洲国产黄色电影| caop在线| 无码激情精品色婷婷久久久久| 福利视频在线播放| 欧美成人色婷婷| 99啪啪骑| 六月丁香啪啪啪| 广东99色在线| 激情久久综合网| 九月婷婷激情| 亚洲综合网激情五月天| 丁香五月WWW| 激情五月婷婷综合| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 天天射夜夜爽| 欧美啪啪网| 日本啪啪天堂| 日本激情五月| 在线99热| 九九精品碰| 欧美日韩123| 另类色视频| 久久R激情| 色婷婷亚洲六月婷婷中文字幕| 色久女| 久热免费视频| 九九热婷婷| 播五月婷婷开心| 国产精品激情AV久久久青桔| 婷婷丁香五月综合免费视频百花| 成人久久天天x资源站| ZpRSw| 久超超碰| 99er6热在线观看精品6| 99综合视频在线| 五月婷三级片| 五月亭亭六月天| 五月停停丁香| 天天免费成年人视频| 色婷大香蕉| 日日撸夜夜操| 五月婷婷色综图片| 久久视频这里99| 激情九月婷婷| 99riAv1国产在线观看| ..真实国产乱子伦对白在线_欧| 99这里只有精品| 亚洲五月六丁香激情| 色色色色色色色色色色色色色五月天| 五月天社区| 99久久五月婷婷| 玖玖伦理电影| 婷婷伊人綜合中文字幕小说| 日本97在线视频| 成人在线二区| 亚洲乱码精品久久久久..| 久草热在线视频| 丁香六月激情综合网| 任你日热视频| 久碰综合| 久久 无毛。| 中字幕视频在线永久在线观看免费| www.狠狠| 停停五月色宗合| 日本性激情色播| 亭亭五月丁香综合欧美| 欧美精产国品一二三区| 97久人人| 99视频网址| 影音先锋男人AV资源站| 拍色综合| 超碰A V在线| 欧美性猛交99久久久久99按摩| 99精在线| 五月天另类小说| 亚洲操操操| 久热只有这里精品| 五月丁香花婷婷玉莉AV| 五月丁香黄色视频| 99精品在线观看视频| 99热九九在线| 人人人舔人人人操人人人摸人人人97 | 无码日本精品XXXXXXXXX | 亚洲五月天婷婷| 大香蕉伊人99| 99精品色| 五月激情小说| 久久九九激情五月天| 色婷婷久久| 五月丁香六月欧美综合网站| 日韩无码专区| 99久久国产宗和精品1上映| 这里只有精品1| 色婷网| 色~性~乱~伦~噜| 99爱爱| 99人人干| 九月婷婷综合| 色五月综合激情网| 99爱爱网| 亚洲操逼网| 婷婷色色五月天| 五月花婷婷在线精品视频| 亚洲小说五月婷婷| 丁香五月综合在线观看| 99男人的天堂| 国产精品美女久久久久AV超清| 丁香五月天激情综合| 五月丁香在线| 中文字幕成人版| 亚洲免费电影2| 五月天久久激情| 色情婷| 全高清无码视頻| 深爱婷婷基地| 久久色五月天综合网| 五月丁香六月激情欧美综合| 99热精品在线| 爱穴久久| 综合久久综合| 国产色五月婷婷| 久久丁香五月婷| 久久婷婷婷| 人妻少妇色综合| 极品少妇XXXX精品少妇偷拍| 国产44页| 国产寻花在线| aaa久久| 色色综合网站| 草榴视频网| 色色色色欧洲| 第四色首页| 色色色色色色色色五月先| 五月天精品| 欧美天堂婷婷日韩| www.粉嫩av.com| 婷婷五月天第四色| 综合激情婷婷| 无码色综合| 久久久思思热| 九月激情综合| 成人综合视频网址| 青青热视频| 热思思| 日本一级一级一级一级| 超碰中文字幕在线| 99视频精品全部免费 在线| 婷婷 色 丁香 夜| 精品婷婷| 国产韩日亚洲美州欧亚综合在线 | www.五月丁香| 2025超碰| 国产夫妻操逼内射视频| 美日韩成人| 99久久综合狠狠综合久久| 操碰99| 丁香五月婷婷综合网| 操碰97| 97超碰色| 丁香五月成人在线| 天天操夜夜操| 亚洲综合在线伊人婷| 九九热99热| 99九九久久| 五月婷婷六月丁香玖玖玫瑰91| 婷婷六月色丁香视频在线观看| 91凹凸在线| 四虎99热在线观看网站| 激情网开心网| 丰满少妇猛烈A片免费看观看| 成人欧美日韩| 国产在线黄色| 亚洲视频五区| 九九色欲网| 热久91| 婷婷五月天xxx| 开心五月网 | 97干干干丁香| 婷婷丁香水多多视频| 中文字幕综合网| OUMEIRIHANCHENGREN| 亚洲丁香网| 色婷婷丁香五月| 婷婷色播婷婷| 夜夜干 夜夜操| 婷婷丁香色情| av狠狠操| 欧美激情Va| 久久五月丁香| 国产精品五月丁香| 亚洲超碰青涩| 久久五月丁香| 日本一道久久| 丁香五月天激情综合| 超碰人人干| 久久久性爱视频| www,色综合| 五月丁香婷婷成人网| 伊人超碰在线| 黄色一级影片| 天天操夜夜爽天天操| 九九精品热| 丁香五月婷婷六月婷婷| 精品一二三区久久AAA片| 狠狠色狠狠干| 天天干天天日蜜臀av| 国产高清RV综合aVa| 婷婷五月色综合香五月| 噜一噜在线| 99热1| 国产精品久久久久久白浆色欲| 91婷婷丁香| 91精品国产91久久久久青草| 五月天播播综合| 久久久久久久久久久久久9| www天天干| 在线精品97| 久久久五月四色| 婷婷五月色惰| 精品色色| 久久99网| 电影《战争与艾拉》免费观看| 人妻熟女一区二区AV| www.26uuu.com亚洲电影| 一本久久婷婷| 亚洲精品午夜国产va久久成人| 五五月丁香花激情综合网| AA片在线观看视频在线播放| 99色热视频在线| 色色色婷婷五月天| 超PEN精品在线| 性综合网| 涩涩涩婷婷| 婷婷丁香五月天色色| 性色婷婷| 五月丁香六月婷婷玖玖| 婷婷色丁香五月| 免费无码毛片一区二区A片| 丁香五月婷中字幕| 婷婷日| 色婷婷丁香社综合| 中文字幕日产A片在线看| 丁香婷婷六月在线资源观看| 九九国产精视频| 性爱技巧五月| 午夜丁香| 久99久在线观看| 噜色精品| 综激情网| 一级性爱大片| 日本色色影片| 五月婷婷五月天| 久久久久久久久人妻| 日本色频| 久久久ww| 91日精品| av在线婷婷| 婷婷六月色开| 可以直接看的av| 新99思思视频| 亚洲精品视频在线播放| 九九久久精品國產| 狠狠色综合图片| www.婷婷五月天| 天天操比比| 夜夜天天久久婷婷| 天天五月香欧美| 9久久久| 久久久天堂国产精品女人| 婷婷五月天色| AV在线观看网站| 丁香六月伊人| 久久99成人性爱高清视频| 色丁香五月婷婷婷| 欧美日本VA| 色色色色色五月| 北条麻妃九九九国产精品视频| 久久综合九九| 婷婷久久网| 99这里有精品视频| 天天澡天天狠天天天做| 色五月在线视频观看| 色婷婷婷综合五月天| 色9999日韩国产| 青996青| 丁香五月天日韩无码| 国产一区二区av免费| 激情丁香五月| 国产亚洲成AV人片在线观黄桃| 丁香色色网| 天天日天天插| w婷婷五月婷婷w| 成人性爱无码| 五月婷婷激情网| 日本人妻A片成人免费看片| 天天日天天干天天操| 婷婷开心激情五月激情网| 一级A片天天操夜夜操| 五月天堂婷婷| 婷婷五月天人妻| 婷婷六月开心网| 狠狠婷婷爱| 免费99情趣网视频| 九九久久99| 婷婷玖玖丁香| 99热在线观看| 婷婷五月丁香色色| 丁香色影院| 一级七香蕉| 亚洲啪啪精品| 亚洲免费99| 婷婷综合色色| 五月天婷五月天综合网在线观| 天天爽爽日日做做| 色婷婷狠狠色| 激情综合激情综合| 久久99热这里只有精品| 夫妇交换刺激做爰| 青青操成人福利| 久久宗合影| 操逼毛片国语对白| 色综合xx| 亚洲五月情| 天天色综合网吨吧| 成人丁香| 久久久久9999| 婷婷色色网| 乱精品一区字幕二区| 色婷婷丁香五月| 精品国产一区二区三区四区阿崩 | 新激情五月开心五月婷婷五月丁香五月| 综合在线网| 狠狠肏综合网| 色婷婷精品| 天天做天天爱| 开心激情婷婷| 爱iii做iiii日日| 99久免费视频| 色婷婷基地| 婷婷天天舔| 日日做夜夜爱| 99男人的天堂| 色婷婷丁香A片区毛片区女人区| 丁香五月天社区| 九月丁香八月婷婷加勒比| 狠干综合| 国在线激情网| 女力报到正好爱上你| 免费观看的婷婷五月视频在线| 色久丁香五| 色五月婷婷亚洲| 人妻内射一区二区在线视频| 99ri视频在线观看| 久鲁鲁色网 | 色五月婷婷丁香凹凸| 99热狠狠操| 天天舔天天插天天爱| 色 五月婷婷基地| 蜜桃人妻无码AV天堂三区| 色婷五月| 久re在线| 热热久久精品视频| 丁香六月激情综合| 激情内射人妻1区2区3区| 九伊人网| 麻豆五月丁香婷婷| 天天干天天日天天操| 日本色色视频| 色婷婷婷av | 狠狠狠狠狠| 五月丁香网站| 任你日视频| 五月综合激情视频| 丁香五月婷婷色| 男人的天堂99| 色国产五月| 丁香五月婷婷大香蕉| 国产精产国品一二三在观看| 亚洲AV日韩无码| 婷婷射图五月天| 婷婷精品| 免费啪啪亚州视频| 亚洲热综合| 国产精自产拍久久久久久蜜| 天天久久狠狠色综合| 激情婷婷网| 婷婷99狠狠| 五月婷婷偷拍| 狠狠五月天| 激情九月婷婷九月| 丁香六月婷婷综合麻豆| 五月婷丁香| 性生活视频98791| 99思思| 亚洲国产精品二二三三区| 91热在线| 97精品欧美91久久久久久久| 婷婷刺激综合| 俺去也综合| 99热香港| 婷婷射婷婷舔| 99ri网站在线观看| 婷婷激情六月天视频| 丁香激情网| 国产Va视频| 成人国产欧美大片一区| 久久天堂婷婷五月| 五月激情在线| 久热 91| 亚洲旡码| 亚洲精久久| 99在线免费观看| 欧美va精品va老师va| 五月激情影视| 五月永久激情| 狠狠狠狠草草| 丁香五月手机在线| 开心五月天私房婷婷| 99热精品在线观看| 精品无码人妻一区| 久久久久久久久久久久久久久久久精典| 婷婷五月天日日日干干干| 免费观看全黄做爰的视频 | 丁香五月激情图片婷婷| 色天天综合成人网| 色综合久久88色综合天天| 精品久久久久久久久久久久人妻| 大香蕉AV电影在线| 高清无码视频网址| WWW.久久久久久久| 深爱激情五月婷婷| 欧美综合丁香网| AAA级久久久精品| 99人人操人人摸| 香蕉久久五月| 婷婷五月丁香超碰| 精品人妻伦一二三区久| 少妇口诉沐足视频播放器网址| 日本操天堂| 狠狠色噜噜| 久久久精品99| 狠狠干夜夜干| 丁香五月亚洲综合| 五月婷婷丁香六月| 青青草成人网| 婷婷色网站| 日韩精品电影| 人妻综合网| 99热6这里只有精品6| 九色综合网| 婷婷丁香五月网| 久九色| 国产日韩欧美| 亚洲精品婷婷| 婷婷五月黄色激情在线| 久777| 播五月开心婷婷欧美综合| 亚洲AV成人在线| 一本大道伊人AV久久综合| 99热在这里只有精品| www.五月婷婷| 激情AV综合| 91超碰在线播放| 欧美va视频不用播放器的va视频网| 99热国产婷婷| 91色在线/日韩| 五月天色婷婷基地| 五月丁香五月丁香| 8区视频在线| 影音先锋五月婷婷| 五月丁香综合| 色丁香五月天| 激情小说婷婷| 婷婷五月图片小说视频| 色五月婷婷少妇人妻| 九九大香蕉黄色影院| 欧美性爱丁香五月| 婷婷丁香社区| 久久婷婷亚洲| 丁香婷婷情色五月天| 欧美综合婷婷网| 97成人丁香婷婷| 久久久久久97| 91视频久久久| 婷婷丁香综合色AV| 日韩丁香涩| 国产亚洲精品AAAAAAA片| 亚洲AV综合在线观看| 美女五月天| 五月婷婷色吧!| xxxx五月| 久久人妻爱爱| 久久综合网免费视频| 亚洲中文字幕AV| 国产精品人妻在线网址| 玖玖综合玖玖| 大香蕉人人人| 99久热精品在线| 99日本视频在线观看专区| www久久久久久久久久久| 色色激情五月天| 婷婷五月天亚洲| 欧美三级欧美一级| 91美女被操| 午夜激情婷婷| 久久99视频| 91精品丝袜久久久久久| 久久亚洲激情五码| 天天拍天天操| 婷婷五月在线视频| 熟女人妻视频| 日碰日| 九九综合九色欧美狠狠| 婷婷五月天久| 精品99在线观看| 色色影院黄大片| 99色日本| av中文在线| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 五月丁香啪啪综合网| 人人操人人操919999| 久碰久操| 欧美va视频不用播放器的va视频网| 色七色九九| 婷婷五月天手机版视频| 99热这里只有精品搜| 婷婷五月天第三页| 开心婷婷五月花| WWW、日本色丁香、co m| 婷婷五月天色综合翘| 久久狠色噜噜狠狠狠狠97| 亚洲天天免费| 五月丁香六月停停| 婷婷五月激情视频| 涩五月婷婷| 日本高清久| www.久久久.com| 91狠狠综合久久| www.五月.com| 粉嫩AV久久一区二区三区| 精品欧美一区二区三区久久久| 热91久| 97操碰免费视频| 99热在线看| 日本三级日本三级三级人妇四虎| 欧韩性爱| 婷婷五月天色综合| 激情综合网激情五月天| 天天插天天插天天插天天插| 日本一级一级一级一级| 色婷婷激情五月天丁香| 婷婷五月天久久综合88| 天天干,天天舔| 久久婷婷六月综合资源| 精品色| 亭亭色色五月天| 成人视频网| 精品自拍97| 五月天久久www| 成人羞羞啪啪 全 视频| 牛牛碰免费| 亚洲精品99| 激情第四色| 91精品刘玥| 大香蕉婷婷久久| 五月激情综合婷婷| 天天操夜夜操| 国产人妻777人伦精品HD| 丁香五月婷婷www..com| 婷婷操逼| 99热这里只要精品免费| 色99网站| 青青草网武则天| 婷婷六月天精品| 丁香五月色情| 色五月激情网| a九九热www| 婷婷色五月综合| 久久人妻视频| 99re免费精品视频| 色婷婷亚洲婷婷在线观看| 亚洲日本韩国| www久久久| 婷婷五月天视频免费在线观看| 无码AV免费精品一区二区三区| 五月丁香综合激情网| 色五月天本日| 丁香五月影| 青青夜夜狠狠夜夜狠狠| 原琪琪色影院| 丁香久久久| 五月天婷综合网站| 大香蕉啪啪啪| 欧美色色色色色色色色色色| 丰满熟女人妻一区二区三| 性欧美大战久久久久久久83| 久久综合激情五月天| 人人摸人人操人人爽| 天天综合91入口| 色婷婷视频综合| 日韩av变天就操逼不卡区| 国语对白性爱视频播放| 天天日天天色| 久久婷婷五月国产激情综合片| av网址在线| 超碰在线99热| 色色色地址| 婷婷五月天AV在线| 99精品国产在热久久婷婷| 婷婷色一二三区波多野结衣| 五月天婷婷爱| 青青草五月天| 婷婷五月天无码| 九月婷婷综合在线| 99热国产免费| 九九精品热播| 日韩99视频| 大香蕉天堂| 色狠狠综合| 九九热超碰| 五月天播播| 99色这里| 538在线精品| 激情五月亚洲综合网| 性按摩玩人妻HD中文字幕| 伊人五月人妻精品| 伊人爱爱日本| 99看片| 狠狠第四色| 免费亚洲婷婷中文字幕| 婷婷五月四狠狠| 色情成人五月天| 26uuuu精品一区二区| 大地9中文在线观看免费高清| jiujiujiuwuyuetian| 亚洲色婷婷五月天| 欧美成人日韩| 人人97碰| 异能之下短剧免费观看全集| 色婷婷久久| 欧美综合婷婷欧美综| 极品人妻VIDEOSSS人妻| 天天射综合网天天插| 99婷婷精品推荐在线视频| 色综合网综合| 婷婷丁香五月基地| 丁香久月| 97久久人人操| AV电影在线播放| 色婷婷五月天激情综合| 九九色video| 这里只有精品无码| 91色久| 丁香五月影院| 蜜乳中文字| 国产综合婷婷| 99热97| 手机AVAV天堂看网| www.一起草av| 中文资源在线a | 久热视频这里只有精品68| 亚洲精品另类| 九九综合九九| www.狠狠操.com| 久久婷婷五月综合色天| 精品女人九九九| 五月丁香综合激情在线观看| 3p九色在线| 五月婷激情影院| 99热无码精品| 久久色吧| 99热这里只有精品8| 色色色色色色97| 激情视频综合| 97人人射| 激情六月色| 九九99在线观看视频| 色五月婷婷777| WWW.17C亚洲精品| 综合婷婷六月| 九九九九无码| 99久久9| 色爱亚洲| 青草青草久9视频在线视频| 国产精品视频网| 操人91| 丁香六月婷婷| 久久久久久综合五月婷婷| 色婷婷色99国产综合精品| 91久久18| 国产肥白大熟妇BBBB视频| 操久久网| 99在线免费观看| 另类激情五月| 五月丁香美女| 五月丁香性爱| 日韩伊人大香蕉| 丁香五月天AV在线 | 黄色中文字目| 99综合免费视频| 久久九九爽| 色婷婷久久综合中文久久一本| 婷婷五月天影视网址| 天堂色色色| 九热av| 亚洲欧洲另类图片| 五月婷色| 六月丁香网| 日日.c| 亲子乱AV一区二区三区下载| 婷婷五月花| 五月丁香六月激情欧美综合| 色婷婷激情五月天在线观看| 五月综合亚洲| 欧美色播综合在线观看| av婷婷丁香 六月| 九九综合精品| 色~性~乱~伦~噜| 操操自拍| 五月天天堂久久| 色在线99| 99精品一二三四视频| 日本3级片一区2区| 一级二级色大片| www.com色播五月天| 色婷婷亚洲综合网站| 久热99视频在线观看| 激情操逼婷婷| 91九色超碰| av在线免费播放观看| 天天色凹凸| 婷婷久久女人| 偷拍九九五月丁香婷婷| 在线中文亚洲| 免费婷婷| 丁香六月婷婷综合色| 丁香五月AV综合| 婷婷激情五月天在线视频| 九九这里只这里只有精品| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 久久久ww| 可以看的AV| 99久久婷婷国产综合精品草原| 五月天激情网图片| 99年操人人爽| 99视频日韩| 色综合视频| 婷婷91| 凹凸7777操操操| 日韩久综合| 色五月婷婷影院| 亚洲人妻Av| 狠狠久久婷五月| 久热人妻| 丁香香五月激情免费视频| 熟女激情网| 婷婷综合成人五月天| 久色中文| 深爱激情丁香五月| 狠狠色大香蕉| 五月丁香综合| 超碰av在线| 99精品国产在热久久| 色色色九九九五月婷婷| 二区成人视频| 97人人爱人人操| 在线观看中文字幕亚洲| 丁香婷婷激情综合五月激情| jiujiu无码五区| 五月婷六月丁香| 无码人妻一区| 九九自拍网| 婷婷天堂站| 成人.在线日韩| 婷婷丁香五月天操逼| 九艹在线| 噜噜色五月| 天天看夜夜看| 色女人久久| 亚洲激情网| 色九九中文字幕| 99九九在线视频| 婷婷久久午夜网| 天天操天天日天天爽| 天天操天天操天天操天天操天天操| 国产精品爽爽久久久久久| 色五月综合网| 狠狠干五月| 激情五月天啪啪| 99高级会所久久| 色五月第四色| 五月婷婷av| 蜜乳av一级av| 91九色熟女| 五月熟妇婷婷久久| 五月婷婷在线视频观看| www.91久久| 9色操| 国产亚洲色婷婷久久99精品91| 婷婷六月插屄激情| 日本视频99| 亚洲亚洲人成综合网络| 丁香五月先锋| 色五月视频无码播放| 婷婷午夜综合| 4438亚洲欧美| 99ri国产| 99色色色色| 91久久久久久久| 婷婷丁香五月天大香蕉| www.av视频xx999.com| 99精品视频在线观看| 婷婷五月丁香综合网| 国产噜一噜天天噜| 五月天丁香久久| 97在线日韩| www.操逼comm| 天天干一干| 六月色播| 天天插天天插| 狠狠色婷婷丁香五月| 天天干天天操天天上| 九九AV| 丁香五月亚洲激情婷婷射| 亚洲99在线| 五月天激情综合网| 五月婷婷人妻| 玖玖色综合色| 国产精品-第3页-91JQ就要激情网91JQ5.JQJQ926.XYZ | www.久久久久久| 操逼棍操逼| 五月婷婷操操| 九九热99精品在线| 色色无码| a69在线视频| 可以直接看的av| 国产99热| 99综合网| 激情五月丁香五月| 超碰久热| jiujiu热在线视频| www久久99| 综合久久综合| 色优久久| 婷婷成人网五月天| 俺去也综合| 亚洲一个色| 五月丁香香蕉| 色五月丁香五月激情五月激情| 丁香六月在线| 婷婷色播色五月五色五月天色妇| 色五月 五月婷婷| 激情五月黄色小说| 婷婷五月激情综合| 五月丁香拍拍激情综合| 亚洲妇女熟BBW| 丁香五月婷婷欧美成人色图| 激情综合五月丁香六月婷婷| 99色色色色| 狠狠se| 五月婷婷色影院| www婷婷| 五月综合视频| 99亚洲欧洲| 婷婷五月丁香综合瑟瑟| 26UUU精品一区二区| 中文字幕AV网址| 99热这里只有精品1025| 99在线观看视频免费| 97人妻碰碰中文无码久热丝袜| 欧美成人无码高清一区二区三区| 色噜噜狠狠色综无码久久合欧美| 激情婷婷狠狠干| 91在线人| 99热亚洲| 26uuu.| 九九九激情网| 狠狠综合网| 轮奸综合网| 亚洲网站观看视频| 色婷婷的五月天| 婷婷激情五月综合| 国产日韩精品SUV| 婷婷五月天激情文学| w婷婷五月婷婷w| 免费无码毛片一区二区A片| 婷婷五月天激情五月天| 六月丁香婷婷色狠狠久久| 久久久久人妻网址| 日韩欧美一区二区三区四区| 91凹凸在线| 五月丁香网站| 丁香婷婷十月| 激情婷婷丁香五月天| 中文字幕人成乱码在线观看| 婷婷开心激情五月激情网| www.色五月.com| 久草热8精品视频在线观看 | 婷婷六月激情综合| 91综合色| 五月天激情图| 操久久网| 丁香狠狠色婷婷久久无码视频| 丁香狠狠色婷婷| 丁香激情合作五月| 激情亚洲婷婷| 精品久久久中文字幕大豆网推荐理由| 天天做天天爱天天高潮| 五月丁香六月欧美综合| 亚洲第一av| 国产精品VIDEOSSEX久久发布| 可以直接看的av| 日本精品。999| 激情99| www.99.色| 九九热在线视频观看| 婷婷金品综合视频| 色A网| 色五月五月婷婷| 99在线看视频| 日日操天天操| 超碰97免费在线| 青青福利网| 婷婷开心深爱五月天| 97人妻碰碰碰碰碰久久久久久| 黄桃AV无码免费一区二区三区| AV成人在线播放| 五月天婷网| 激情开心五月婷婷| 色玖玖综合网| 久久精品99久久久久久久久| BBWCUCKOLD精品熟妇| 操一区| 六月丁丁香| 夜夜爽天操| 婷婷五月天Av| 激情色播| 婷婷五月色综合| 9999热免费视频视频| 天天综合色| 日本五月婷| 六月久久婷婷| 日日操夜夜骑| 久8色色| 思思热精品免费视频| 色狠狠999综合网| 九热视频| 色丁香婷婷| 色哟哟www| 在线观看亚洲AV| 操操熟女| 婷婷成人av| 激情综合网激情五月俺也去| 成人国产欧美大片一区| 91九色精品熟女内射| 9久精品视频| 五月丁香琪琪| 日韩在线观看亚洲| 丁香五月婷婷六月丁香| 精品无吗va视频免费观看| 五月丁香婷婷成人综合网| 亭亭五月激情亚洲在线| 99亚洲大片精品永久在线观看| 亚洲精99| 99re在线观看视频| site:wpjngj.com| 秋霞午夜理论| 中文字幕丁香五月| 伊人六月丁香婷婷| 久热最新视频| 久久精品永久免费| 亚洲色亚洲精品| 黄色笑话深爱激情网丁香五月婷婷啪啪啪啪啪 | 六月丁香激情网| 天天操天天操天天操天天操天天操天天操天天操天天操天天操 | www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 激情综合无码| 久热无码| 九九色热| 亚洲精品又粗又大又爽A片 | 影音先锋美国A| 操操综合网婷婷| 91九色成人原创视频| 99日视频在线| 日本婷久久| 激情五月丁香婷婷夜夜操| 久久综合网免费视频| 79成人网| 九九热免费| www.色婷婷.com| 九九99精品视频在线观看| 这里只有精品久久| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 久久综合网桃花| 五月精品| 人人操91| 丁香婷婷久久 | 黄色91在线观看| 碰碰女| 亚洲一个色| 色色婷婷综合网| 亚洲中文乱字字幕在线永久| 国产avapp 网| 日韩操人| 依人大香蕉在钱1| 天堂爱啪啪| 亭亭丁香久久五月| 五月天婷婷高清无码| 在线成人视频免费| 99成人| 欧美偷偷操| 午夜丁香| 天天操夜夜爱| 色色色国产| 午夜无码熟熟妇丰满人妻| 日日噜噜久久婷婷五月天| 91色综合| 婷婷丁香五月欧美人| www.婷婷,com| 疯狂做受XXXX高潮A片| 五月婷天堂视频| 精品久久二6| 99热在线观看精品| 综合色播| 肏日网在线看| 亚洲综人色综网| 激情九九这里只有精品| 久久综合干| 综合 激情 婷婷| 武则天精品久久| 五月丁香婷婷伊人| 91九色精品女同系列| 婷婷丁香色五月天| 日韩久热| 秋霞三及片| 五月天激情四射| 第四色网婷婷| 久久这里只有精品网| 99免费热视频在线| 综合久久激情久久| 婷婷丁香久久| 91人人爽久久涩噜噜噜| 久久99久久99久久99人受| 在线看av| 2025天天爽天天摸| 色五月综合在线| wwww.9免费视频| 色婷婷在线综合色播网| 狠狠人妻色综合| 亞洲自怕| 精品国产va久| 亚洲AV网站| 色婷婷色| 色综合综合网| 无码99| 丁香五月色色| 99视频在线观看网址| 五月婷婷影视| 99re这里只有精品国产99| 久久99久久99精品免观看粉嫩| 波多婷婷久久| www.色婷婷。com| 99热这里只有精品4| 国产精品成人AV在线| 丰满熟女人妻一区二区三 | 国产肏屄大片| 欧美激情综合色丁香婷婷五月天| 五月天偷拍| 五月丁香久久| 91欧美日韩综合| 91视频免费后入强操| 狠狠激情五月天| 91狠狠色丁香婷婷综合久久狠丁香综合久久精品 | 亚洲综合色色| 五月激情射| 婷婷五月六| 亚洲视频在线网| 99性感视频| 亚洲激情四射色| 亚洲激情高潮| 99热18| 五月天·www·com| 99热在线精品观看| 激情综合五| 婷婷五月色惰| 久9精品| 99资源在线视频| 停停五月色宗合| 五月天婷婷综合| 婷婷五月天久久综合88| 性综合网| 久热超碰91| 婷婷月综合| 99热这里都是精品| 五月天激情图片| 色五月丁香五月| 欧美在线视频99| 丁香五月婷婷狠狠色| 色五月激情| www.25五月婷婷| 777精品久无码人妻蜜桃| 婷婷丁香水多多视频| 国产偷人爽久久久久久老妇APP| 天天草婷婷五月| 性爱激情综合网| 人人摸人人搞|