亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

Spring Boot印刷報(bào)價(jià)系統(tǒng)源碼解析:從Excel到自動(dòng)化報(bào)價(jià)引擎

Spring Boot印刷報(bào)價(jià)系統(tǒng)源碼解析:從Excel到自動(dòng)化報(bào)價(jià)引擎 簡(jiǎn)介一份面向印刷行業(yè)的報(bào)價(jià)管理系統(tǒng)源碼包適合中小型印刷企業(yè)及C#初學(xué)者參考。系統(tǒng)覆蓋報(bào)價(jià)、客戶(hù)管理、產(chǎn)品管理、材料管理、設(shè)備管理等核心業(yè)務(wù)能根據(jù)成本與行情快速生成報(bào)價(jià)單同時(shí)提供客戶(hù)檔案跟蹤、材料庫(kù)存預(yù)警及設(shè)備維護(hù)提醒有助于提升報(bào)價(jià)效率與管理水平。壓縮包共118個(gè)文件約57.85MB包含33個(gè)C#源碼文件、Access數(shù)據(jù)庫(kù)accdb、可執(zhí)行程序exe及動(dòng)態(tài)庫(kù)dll等還附帶項(xiàng)目工程、配置文件與圖片資源可直接打開(kāi)解決方案查看源碼或運(yùn)行體驗(yàn)。目前已吸引841人學(xué)習(xí)下載。該包未采用分層架構(gòu)代碼存在混寫(xiě)現(xiàn)象但功能覆蓋完整適合初學(xué)者理解業(yè)務(wù)邏輯與入門(mén)級(jí)C/S程序開(kāi)發(fā)。通過(guò)該源碼包可學(xué)習(xí)窗體界面、數(shù)據(jù)庫(kù)操作、報(bào)表生成等實(shí)用技巧也可在此基礎(chǔ)上二次開(kāi)發(fā)優(yōu)化系統(tǒng)結(jié)構(gòu)。1. 印刷企業(yè)報(bào)價(jià)系統(tǒng)讓業(yè)務(wù)員擺脫 40 格 Excel 報(bào)價(jià)單做過(guò)印刷行業(yè)需求的開(kāi)發(fā)者會(huì)熟悉一個(gè)場(chǎng)景業(yè)務(wù)員收到詢(xún)價(jià)單后要先查材料價(jià)目表、算展開(kāi)尺寸、確定拼版方式再套印刷機(jī)的計(jì)價(jià)表最后還要手工加上加放率和模切版費(fèi)。這套邏輯分散在 Excel、紙表和老師傅的腦子里有人報(bào)得快有人報(bào)得慢漏一項(xiàng)就少賺一塊。這個(gè)名叫“印刷企業(yè)報(bào)價(jià)系統(tǒng)”的源碼包把這套過(guò)程固化成了一套可運(yùn)行的報(bào)價(jià)引擎前端按成品尺寸、數(shù)量、工藝路線(xiàn)填單后端按材料價(jià)目表、工序價(jià)目表、加放率逐項(xiàng)算出成本與建議售價(jià)同時(shí)保留歷史報(bào)價(jià)單和價(jià)格快照。適合三類(lèi)人在印刷廠(chǎng)被 Excel 折磨的報(bào)價(jià)員、正在選型或?qū)嵤?MIS/ERP 的負(fù)責(zé)人、想快速切入印刷行業(yè)定制系統(tǒng)開(kāi)發(fā)的開(kāi)發(fā)者。2. 技術(shù)棧與工程結(jié)構(gòu)Spring Boot 報(bào)價(jià)中臺(tái)是怎么分層的2.1 技術(shù)選型為什么是 Java 而不是一個(gè) Python 腳本先看這套資源里實(shí)際用的技術(shù)組合層次選型說(shuō)明后端Java 17 Spring Boot 3.x打一個(gè) jar 就能部署持久層MyBatis-Plus單表 CRUD 不用寫(xiě) SQL復(fù)雜查詢(xún)走自定義 XML數(shù)據(jù)庫(kù)MySQL 8.0印刷企業(yè)內(nèi)網(wǎng)最常見(jiàn)的關(guān)系庫(kù)緩存Redis 6存材料價(jià)目表和系統(tǒng)配置可選前端Vue 3 Element Plus Vite給業(yè)務(wù)員用的后臺(tái)表單場(chǎng)景足夠選型上有三個(gè)實(shí)際考慮。第一是成本核算要?jiǎng)邮聞?wù)報(bào)價(jià)單從估算到落庫(kù)是一條完整寫(xiě)入鏈路中間某道工序算錯(cuò)或?qū)憥?kù)失敗整體要能回滾不能出現(xiàn)報(bào)價(jià)單頭有了、明細(xì)丟了一半的情況這類(lèi)原子性需求用 Java 的聲明式事務(wù)最順手。第二是印刷企業(yè)內(nèi)網(wǎng)環(huán)境基本是 Windows Server MySQLJava 后端導(dǎo)出一個(gè) jar 丟上去就能運(yùn)行不像 Python 還得裝解釋器和一堆依賴(lài)。第三是報(bào)價(jià)規(guī)則未來(lái)要開(kāi)放給報(bào)價(jià)員在頁(yè)面上配置Java 生態(tài)做這類(lèi)后臺(tái)管理系統(tǒng)成熟招人也容易。這套工程沒(méi)上 Spring Cloud、沒(méi)拆微服務(wù)。單廠(chǎng)內(nèi)部用中臺(tái)系統(tǒng)單體打包足夠真到哪天要接多家工廠(chǎng)再按材料庫(kù)和工藝庫(kù)拆服務(wù)也不遲?,F(xiàn)在拆了反而增加運(yùn)維負(fù)擔(dān)。2.2 工程目錄按“報(bào)價(jià)域”而不是按層分包下載解壓后目錄是這樣quote-system/ ├── src/main/java/com/example/quote/ │ ├── application/ # 用例編排層一個(gè)用例一個(gè) Service │ │ ├── QuoteService.java │ │ └── dto/ # 請(qǐng)求/響應(yīng)對(duì)象 │ ├── domain/ │ │ ├── pricing/ # 報(bào)價(jià)引擎核心 │ │ │ ├── QuoteEngine.java │ │ │ ├── PriceRule.java │ │ │ └── rules/ # 各工序計(jì)價(jià)實(shí)現(xiàn) │ │ ├── process/ # 工藝路線(xiàn)建模 │ │ │ ├── RouteStep.java │ │ │ └── RouteParser.java │ │ └── quote/ # 報(bào)價(jià)單聚合根 │ ├── infra/ # 技術(shù)框架集成 │ │ ├── mapper/ # MyBatis-Plus Mapper │ │ ├── config/ # Redis、事務(wù)、線(xiàn)程池配置 │ │ └── repository/ │ └── web/ │ ├── controller/ # 薄薄的 HTTP 層 │ └── handler/ # 全局異常處理 ├── script/ │ └── init.sql # 建庫(kù)、建表、示例材料價(jià)格 └── frontend/ ├── src/views/quote/ │ ├── QuoteForm.vue # 詢(xún)價(jià)參數(shù)表單 │ └── QuoteResult.vue # 報(bào)價(jià)明細(xì)展示 └── src/api/這個(gè)分法和常規(guī) controller-service-dao 三層不一樣核心原因是計(jì)價(jià)規(guī)則太容易膨脹。如果把紙張、印刷、覆膜、模切、裝訂全部寫(xiě)進(jìn)一個(gè) Service幾百行是遲早的事后面任何一條計(jì)價(jià)口徑調(diào)整都會(huì)變成在長(zhǎng)方法里找定位?,F(xiàn)在這個(gè)結(jié)構(gòu)把引擎和規(guī)則拆開(kāi)QuoteEngine只依賴(lài)PriceRule接口具體工序?qū)崿F(xiàn)放進(jìn)domain/pricing/rules新增工藝不碰主流程。2.3 一個(gè)報(bào)價(jià)請(qǐng)求的完整鏈路前端構(gòu)造出來(lái)的詢(xún)價(jià)參數(shù)大概是這個(gè)形狀{ productName: 四色宣傳單頁(yè), quantity: 5000, finishedW: 210, finishedH: 140, unfoldW: 216, unfoldH: 146, route: PAPER,PRINT-4C-4C,LAMINATE-MATT,DIE-CUT, machineType: SM-102, paperType: 銅版紙, weight: 157, size: 889x1194 }請(qǐng)求到達(dá)后端后走的完整鏈路是QuoteController收參數(shù)并做基礎(chǔ)校驗(yàn) →QuoteService加載系統(tǒng)配置加放率、毛利率、稅率 →RouteParser把 route 字符串拆成RouteStep列表 →QuoteEngine循環(huán)每個(gè)步驟從ruleRegistry找到對(duì)應(yīng)實(shí)現(xiàn)逐項(xiàng)算價(jià) → 最后把單據(jù)和價(jià)格快照一起落庫(kù) → 返回帶明細(xì)的 JSON。鏈路里最容易踩坑的是參數(shù)校驗(yàn)和 route 解析。前端漏傳一個(gè)unfoldW后端會(huì)在 controller 層直接返回 400業(yè)務(wù)員看不到任何計(jì)算結(jié)果route 里的工序編碼寫(xiě)錯(cuò)RouteParser會(huì)拋一個(gè)UnknownProcessException日志里能明確看到是哪一段編碼不識(shí)別。開(kāi)發(fā)和二次開(kāi)發(fā)時(shí)先拿這份 JSON 樣例做聯(lián)調(diào)基準(zhǔn)后面再調(diào)任何邏輯都有個(gè)對(duì)照。3. 核心數(shù)據(jù)模型材料價(jià)目表和工序價(jià)目表怎么支撐自動(dòng)計(jì)價(jià)3.1 五張核心表從詢(xún)價(jià)到成交一次走完這套數(shù)據(jù)模型核心是五張表已經(jīng)覆蓋一次報(bào)價(jià)從詢(xún)價(jià)到成交的全過(guò)程表名職責(zé)關(guān)鍵字段quote_header報(bào)價(jià)單頭客戶(hù)、報(bào)價(jià)日期、狀態(tài)、總價(jià)quote_item報(bào)價(jià)明細(xì)產(chǎn)品參數(shù)、工藝路線(xiàn)、價(jià)格快照material_price材料價(jià)目表紙張類(lèi)型、克重、規(guī)格、供應(yīng)商、價(jià)格、生效日期process_price工序價(jià)目表工序編碼、機(jī)臺(tái)類(lèi)型、計(jì)費(fèi)口徑、單價(jià)sys_config全局配置加放率、毛利率、稅率、調(diào)機(jī)紙數(shù)量quote_header和quote_item是一對(duì)多的父子關(guān)系一張報(bào)價(jià)單可以包含多個(gè)產(chǎn)品明細(xì)每個(gè)明細(xì)有獨(dú)立的產(chǎn)品參數(shù)和工藝路線(xiàn)。process_price是這次設(shè)計(jì)里值得細(xì)看的一張表工序單價(jià)按編碼和機(jī)臺(tái)分檔可配置性從數(shù)據(jù)庫(kù)層面就支持了。3.2 工藝路線(xiàn)怎么建模一張明細(xì)行里存一串工序編碼核心建模思路是把工藝路線(xiàn)做成編碼串存進(jìn)quote_item.route字段PAPER,PRINT-4C-4C,LAMINATE-MATT,DIE-CUT每個(gè)逗號(hào)分隔的RouteStep由“工序編碼 參數(shù)”組成。PRINT-4C-4C的語(yǔ)義是正面四色、背面四色第一個(gè)數(shù)值是正面色數(shù)第二個(gè)是背面色數(shù)。這樣引擎在算印工費(fèi)時(shí)能區(qū)分單面印刷和雙面翻版不至于把雙面四色按單面四色的兩倍價(jià)格報(bào)出去。RouteParser負(fù)責(zé)把編碼串解析成帶類(lèi)型和參數(shù)的RouteStep列表。二次開(kāi)發(fā)時(shí)如果你們廠(chǎng)有獨(dú)特工序只改這個(gè)解析器加一個(gè)工序枚舉不用動(dòng)引擎主邏輯。3.3 建表 SQL初始化腳本里可以直接抄的兩張表script/init.sql里已經(jīng)帶了建庫(kù)建表和示例數(shù)據(jù)核心兩張表的畫(huà)風(fēng)是這樣CREATE TABLE material_price ( id BIGINT PRIMARY KEY AUTO_INCREMENT, paper_type VARCHAR(32) NOT NULL COMMENT 銅版紙/膠版紙/白卡, weight INT NOT NULL COMMENT 克重如 128/157/250, size VARCHAR(32) NOT NULL COMMENT 規(guī)格統(tǒng)一存 寬x高, supplier VARCHAR(64) DEFAULT COMMENT 供應(yīng)商可為空取默認(rèn), price DECIMAL(10,4) NOT NULL COMMENT 單價(jià)元/令, effective_date DATE NOT NULL COMMENT 生效日期, version INT NOT NULL DEFAULT 1, KEY idx_type_weight (paper_type, weight) );CREATE TABLE quote_item ( id BIGINT PRIMARY KEY AUTO_INCREMENT, quote_id BIGINT NOT NULL, product_name VARCHAR(128) NOT NULL, quantity INT NOT NULL, finished_w INT NOT NULL COMMENT 成品寬mm, finished_h INT NOT NULL, unfold_w INT NOT NULL COMMENT 展開(kāi)寬mm, unfold_h INT NOT NULL, route VARCHAR(255) NOT NULL COMMENT 工序路線(xiàn)編碼, price_snapshot JSON COMMENT 計(jì)價(jià)時(shí)價(jià)格快照, amount DECIMAL(12,2) NOT NULL, KEY idx_quote (quote_id) );material_price的高頻查詢(xún)是“按紙張類(lèi)型 克重 規(guī)格找到當(dāng)前生效價(jià)格”所以索引建在paper_type weight上size字段在寫(xiě)入時(shí)強(qiáng)制統(tǒng)一成寬在前、高在后避免同一個(gè)規(guī)格兩種寫(xiě)法查不到。quote_item的price_snapshot字段是 JSON 類(lèi)型這是報(bào)價(jià)系統(tǒng)的關(guān)鍵設(shè)計(jì)點(diǎn)。3.4 價(jià)格版本與快照改價(jià)不翻歷史賬material_price里有effective_date生效日期和version版本號(hào)系統(tǒng)取數(shù)時(shí)按“小于等于當(dāng)前日期最近一條”來(lái)取。這意味著材料漲價(jià)后新報(bào)價(jià)單自動(dòng)用新價(jià)格老報(bào)價(jià)單不受影響。比生效日期更重要的是quote_item.price_snapshot。這個(gè) JSON 字段在報(bào)價(jià)計(jì)算完成時(shí)把整條工藝路線(xiàn)當(dāng)時(shí)用的單價(jià)、加放率、毛利率、稅率全部存下來(lái)。老報(bào)價(jià)單重新打開(kāi)時(shí)頁(yè)面只讀快照不再 join 當(dāng)前價(jià)格表。這個(gè)設(shè)計(jì)解決了一個(gè)很現(xiàn)實(shí)的報(bào)價(jià)回款問(wèn)題印刷報(bào)價(jià)單是有合同效力的客戶(hù)拿著一個(gè)月前的報(bào)價(jià)單來(lái)簽合同結(jié)果材料已經(jīng)漲了報(bào)價(jià)員打開(kāi)系統(tǒng)一看金額自動(dòng)變了這單要么虧本要么跟客戶(hù)扯皮。有了快照歷史單據(jù)永遠(yuǎn)保持提交那一刻的口徑。有人圖省事在明細(xì)行里直接 joinmaterial_price這是最容易翻車(chē)的寫(xiě)法后面避坑章會(huì)再提一次。4. 報(bào)價(jià)引擎核心代碼一個(gè)加工單從參數(shù)到價(jià)格的完整計(jì)算鏈路4.1 引擎主流程規(guī)則注冊(cè)表驅(qū)動(dòng)逐段算價(jià)報(bào)價(jià)引擎是整個(gè)系統(tǒng)的心臟核心入口方法如下public QuoteResult calculate(QuoteRequest req, PriceContext ctx) { ListRouteStep steps RouteParser.parse(req.getRoute()); BigDecimal total BigDecimal.ZERO; ListQuoteLine lines new ArrayList(); for (RouteStep step : steps) { PriceRule rule ruleRegistry.get(step.getProcessCode()); if (rule null) { throw new QuoteException(未注冊(cè)的工序編碼: step.getProcessCode()); } BigDecimal cost rule.calc(step, req, ctx); lines.add(new QuoteLine(step.getProcessCode(), cost, rule.getDisplayName())); total total.add(cost); } BigDecimal margin ctx.getConfigRate(quote.margin); // 毛利率 BigDecimal tax ctx.getConfigRate(quote.tax); // 稅率 BigDecimal finalPrice total .multiply(BigDecimal.ONE.add(margin)) .multiply(BigDecimal.ONE.add(tax)) .setScale(2, RoundingMode.HALF_UP); return QuoteResult.of(lines, finalPrice); }引擎本身不知道印刷怎么計(jì)價(jià)、覆膜怎么計(jì)價(jià)它只做三件事解析路線(xiàn)、路由到規(guī)則、匯總金額。每道工序算出來(lái)的成本單獨(dú)放進(jìn)lines前端拿到結(jié)果后可以展示“紙張多少錢(qián)、印刷多少錢(qián)、覆膜多少錢(qián)”業(yè)務(wù)員能一眼看出報(bào)價(jià)構(gòu)成。參數(shù)說(shuō)明里最關(guān)鍵的是ruleRegistry。它是一個(gè)MapString, PriceRuleSpring 啟動(dòng)時(shí)把所有工序?qū)崿F(xiàn)類(lèi)按Component注冊(cè)進(jìn)去引擎調(diào)用get(processCode)精確路由。新增工序只需要實(shí)現(xiàn)PriceRule并在注冊(cè)表登記引擎方法本體一行不用改。4.2 紙張用量計(jì)算展開(kāi)尺寸、拼版、加放一次算清紙張成本是印刷報(bào)價(jià)里最容易出偏差的一塊因?yàn)樯婕俺鲅弧⑵窗娣较蚝图臃怕嗜齻€(gè)變量。核心計(jì)算代碼private int calcPiecesPerSheet(int sheetW, int sheetH, int unfoldW, int unfoldH) { // 橫排和豎排都試一遍取能排更多產(chǎn)品的方向 int a (sheetW / unfoldW) * (sheetH / unfoldH); int b (sheetW / unfoldH) * (sheetH / unfoldW); return Math.max(a, b); } private int calcSheetQty(int productQty, int piecesPerSheet) { return (productQty piecesPerSheet - 1) / piecesPerSheet; } public BigDecimal calcPaperCost(QuoteRequest req, PriceContext ctx) { int piecesPerSheet calcPiecesPerSheet( ctx.getSheetWidth(), ctx.getSheetHeight(), req.getUnfoldW(), req.getUnfoldH()); int pressSheets calcSheetQty(req.getQuantity(), piecesPerSheet); BigDecimal addRate ctx.getAddRate(req.getPaperType()); // 加放率 BigDecimal makeReady ctx.getMakeReadySheets(); // 調(diào)機(jī)紙 BigDecimal totalSheets BigDecimal.valueOf(pressSheets) .multiply(BigDecimal.ONE.add(addRate)) .add(makeReady); BigDecimal pricePerSheet ctx.getPaperPrice( req.getPaperType(), req.getWeight(), req.getSize()); return totalSheets.multiply(pricePerSheet); }這里的參數(shù)含義需要逐個(gè)說(shuō)明。unfoldW/unfoldH是展開(kāi)尺寸成品尺寸加出血位通常上下左右各加 3mmsheetW/sheetH是印刷機(jī)可用的最大紙張幅面不是紙張標(biāo)稱(chēng)尺寸要扣除咬口和拉規(guī)區(qū)域比如 889×1194 的全開(kāi)紙實(shí)際印刷面積可能只有 860×1140piecesPerSheet是拼版數(shù)橫排豎排都算一遍取較大值因?yàn)楹芏喈a(chǎn)品旋轉(zhuǎn) 90 度能讓一張紙上多排好幾個(gè)pressSheets是印張數(shù)向上取整哪怕多出來(lái)半張也要按一張算。加放率按紙張類(lèi)型給銅版紙常見(jiàn) 8%~10%膠版紙 12%~15%特殊紙可能到 20%以各廠(chǎng)車(chē)間經(jīng)驗(yàn)為準(zhǔn)。調(diào)機(jī)紙是開(kāi)機(jī)前調(diào)整顏色、套準(zhǔn)消耗的紙張屬于一次性成本和訂單數(shù)量無(wú)關(guān)訂單越小攤得越貴。這兩項(xiàng)一開(kāi)始就要配置進(jìn)sys_config不要硬編碼在代碼里。4.3 工序成本PriceRule 策略接口與印刷工序?qū)崿F(xiàn)所有工序的計(jì)價(jià)實(shí)現(xiàn)統(tǒng)一實(shí)現(xiàn)同一個(gè)接口public interface PriceRule { String getProcessCode(); String getDisplayName(); BigDecimal calc(RouteStep step, QuoteRequest req, PriceContext ctx); }印刷工序?qū)崿F(xiàn)類(lèi)長(zhǎng)這樣Component public class PrintingRule implements PriceRule { Override public String getProcessCode() { return PRINT; } Override public BigDecimal calc(RouteStep step, QuoteRequest req, PriceContext ctx) { BigDecimal sheetQty req.getPressSheets(); int frontColors step.getIntParam(0); // 正面色數(shù) int backColors step.getIntParam(1); // 背面色數(shù) int totalColors frontColors backColors; // 單價(jià)口徑元/千印張/色 BigDecimal unitPrice ctx.getProcessPrice( PRINT, req.getMachineType(), PER_1000_SHEETS_PER_COLOR); return sheetQty .multiply(BigDecimal.valueOf(totalColors)) .divide(BigDecimal.valueOf(1000), 4, RoundingMode.HALF_UP) .multiply(unitPrice); } }這個(gè)實(shí)現(xiàn)值得注意的點(diǎn)有三個(gè)。第一PRINT-4C-4C的正背色數(shù)被拆開(kāi)雙面印刷按正反總色數(shù)計(jì)費(fèi)單面印刷不會(huì)多算一倍的印工。第二計(jì)費(fèi)口徑統(tǒng)一從process_price表里讀單位是“元/千印張/色”如果你們廠(chǎng)業(yè)務(wù)員習(xí)慣按“色令”報(bào)價(jià)改配置里的換算系數(shù)就行代碼不感知口徑差異。第三sheetQty用的是已經(jīng)加了放損的印張數(shù)不是原始成品數(shù)量這一步和材料成本保持同一個(gè)基準(zhǔn)。覆膜、模切、裝訂的實(shí)現(xiàn)類(lèi)結(jié)構(gòu)完全一樣只是計(jì)算維度不同覆膜按展開(kāi)面積乘單價(jià)再乘損耗系數(shù)模切按張數(shù)乘單價(jià)再加一次性模切版費(fèi)裝訂按手工/膠裝不同口徑配置。4.4 匯總與精度不要把 double 帶進(jìn)報(bào)價(jià)資金相關(guān)的計(jì)算一律用BigDecimal這是報(bào)價(jià)系統(tǒng)最容易忽視的細(xì)節(jié)。double 在累加多道工序、再乘毛利率和稅率時(shí)會(huì)出現(xiàn)精度丟失比如 0.1 0.2 不等于 0.3對(duì)單筆報(bào)價(jià)可能差幾分錢(qián)對(duì)整月報(bào)價(jià)匯總就不是小數(shù)了。匯總順序也有講究總成本先乘以毛利率得到含毛利金額再乘以稅率得到含稅總價(jià)最后setScale(2, RoundingMode.HALF_UP)保留兩位小數(shù)。這里的順序不要調(diào)整先含稅后含毛利還是先毛利后稅會(huì)有細(xì)微差別合同口徑通常以“含稅含毛利”為最終報(bào)價(jià)所以毛利先加、稅后加。想支持批量階梯價(jià)就在引擎外層套折扣邏輯不要塞進(jìn)引擎內(nèi)部。5. 部署與避坑本地起不來(lái)先查這五個(gè)問(wèn)題5.1 本地運(yùn)行初始化 SQL、改配置、起后端、起前端環(huán)境要求如下依賴(lài)版本要求JDK17Maven3.8Node.js18MySQL8.0Redis6可暫時(shí)不啟項(xiàng)目含降級(jí)配置跑起來(lái)四步。第一步建庫(kù)mysql -uroot -p script/init.sqlinit.sql會(huì)創(chuàng)建數(shù)據(jù)庫(kù)、五張核心表并插入幾十條常見(jiàn)的銅版紙和膠版紙價(jià)格記錄還有幾條默認(rèn)工序價(jià)格導(dǎo)入后直接有數(shù)據(jù)可算不需要先手工維護(hù)一堆基礎(chǔ)資料。第二步改后端配置打開(kāi)src/main/resources/application-dev.yml把datasource的密碼改成你本地的 MySQL 密碼Redis 地址如果不在默認(rèn) localhost:6379 也要改。第三步啟動(dòng)后端mvn spring-boot:run -Dspring-boot.run.profilesdev看到 “Started QuoteApplication” 日志就說(shuō)明后端起來(lái)了。第四步啟動(dòng)前端cd frontend npm install npm run dev前端默認(rèn)跑在 5173 端口訪(fǎng)問(wèn)后端的/api走 Vite 代理本地開(kāi)發(fā)不需要處理跨域。啟動(dòng)后打開(kāi)頁(yè)面填一個(gè) 210×140 的傳單詢(xún)價(jià)單走一遍完整計(jì)算流程能返回帶紙張、印刷、覆膜明細(xì)的報(bào)價(jià)單就算環(huán)境通了。5.2 常見(jiàn)問(wèn)題五條真實(shí)踩坑記錄第一類(lèi)問(wèn)題后端啟動(dòng)直接報(bào)數(shù)據(jù)庫(kù)連接失敗?,F(xiàn)象是控制臺(tái)拋Communications link failure或者Access denied for user。原因大多是兩種MySQL 密碼沒(méi)改對(duì)或者連接串里少了時(shí)區(qū)參數(shù)。解決方法是把a(bǔ)pplication-dev.yml的 JDBC 連接串加上serverTimezoneAsia/Shanghai參數(shù)MySQL 8 默認(rèn)時(shí)區(qū)處理容易導(dǎo)致連接建立即失敗。第二類(lèi)問(wèn)題頁(yè)面填單后提示“未找到材料價(jià)格”明明剛才導(dǎo)入了示例數(shù)據(jù)?,F(xiàn)象是前端傳的規(guī)格是1194x889數(shù)據(jù)庫(kù)里存的是889x1194方向不一致導(dǎo)致查詢(xún)索引沒(méi)命中。原因就是規(guī)格字段沒(méi)有做歸一化不同業(yè)務(wù)員按自己的習(xí)慣填寫(xiě)寬高順序。解決方法是入庫(kù)前統(tǒng)一規(guī)則寬不小于高width height強(qiáng)制調(diào)整后再落庫(kù)并在material_price加一個(gè)size_standard字段專(zhuān)門(mén)存標(biāo)準(zhǔn)化后的值。第三類(lèi)問(wèn)題印工費(fèi)算出來(lái)比實(shí)際報(bào)價(jià)高好幾倍?,F(xiàn)象是同樣一臺(tái)機(jī)器系統(tǒng)算出來(lái)的印刷成本和老師傅估的差一大截。原因是計(jì)費(fèi)口徑搞混了——計(jì)價(jià)員嘴里的“色令”有的是指 500 張印張一色有的是指 1000 印張一色還有人把雙面四色當(dāng)成 8 個(gè)色直接乘忘了翻版共享一個(gè)印張。解決方法是先確認(rèn)你們廠(chǎng)的計(jì)價(jià)口徑然后統(tǒng)一維護(hù)到process_price表的unit_type字段里代碼側(cè)按unit_type決定除 500 還是除 1000不要靠猜。這一步多花半天和計(jì)價(jià)員對(duì)口徑后面省一個(gè)月返工。第四類(lèi)問(wèn)題覆膜報(bào)價(jià)總是偏低簽回來(lái)才發(fā)現(xiàn)成本倒掛?,F(xiàn)象是覆膜面積按成品尺寸 210×140 算實(shí)際生產(chǎn)時(shí)展開(kāi)尺寸是 216×146還要留搭邊每張膜的實(shí)際用量比成品尺寸大 5% 以上。原因是算覆膜時(shí)忘了用展開(kāi)尺寸加搭邊損耗。解決方法是LaminateRule里統(tǒng)一用unfoldW 3mm、unfoldH 3mm再乘 1.05 的搭邊系數(shù)這 5% 的損耗是行業(yè)通用做法。第五類(lèi)問(wèn)題老報(bào)價(jià)單的金額會(huì)隨材料漲價(jià)自動(dòng)變化客戶(hù)拿著一個(gè)月前的報(bào)價(jià)單來(lái)對(duì)賬系統(tǒng)里金額已經(jīng)變了。原因是明細(xì)行直接關(guān)聯(lián)了material_price當(dāng)前價(jià)格沒(méi)有存快照。解決方法是把price_snapshot字段用起來(lái)QuoteService落庫(kù)前把當(dāng)時(shí)的所有單價(jià)、加放率、稅率序列化成 JSON 存入quote_item讀單只讀快照不查現(xiàn)價(jià)。我接手這類(lèi)項(xiàng)目時(shí)通常先檢查這一點(diǎn)存量訂單如果已經(jīng)丟快照就補(bǔ)一個(gè)定時(shí)任務(wù)按日終價(jià)格回填一次。6. 二次開(kāi)發(fā)把現(xiàn)成報(bào)價(jià)引擎改成你們廠(chǎng)的計(jì)價(jià)規(guī)則6.1 新工序怎么加寫(xiě)一個(gè)類(lèi)、配一行規(guī)則、前端加一欄比如你們廠(chǎng)有一套 UV 上光工序按面積計(jì)價(jià)。只需要新增一個(gè)類(lèi)Component public class UVCoatingRule implements PriceRule { Override public String getProcessCode() { return UV-COATING; } Override public BigDecimal calc(RouteStep step, QuoteRequest req, PriceContext ctx) { BigDecimal area req.getUnfoldAreaInMeters(); // 展開(kāi)面積平方米 BigDecimal unitPrice ctx.getProcessPrice(UV-COATING, req.getMachineType(), PER_SQM); return area.multiply(unitPrice).setScale(2, RoundingMode.HALF_UP); } }同時(shí)往process_price表插一條記錄工序編碼寫(xiě)成UV-COATING前端詢(xún)價(jià)表單的工藝路線(xiàn)選擇器加一個(gè)選項(xiàng)就完成了新工藝接入。引擎主流程、匯總邏輯、快照機(jī)制全部復(fù)用這是策略模式加注冊(cè)表最大的收益。6.2 報(bào)價(jià)策略怎么調(diào)毛利率、加放率、稅率全在配置表里調(diào)價(jià)不需要改代碼。毛利率在sys_config里改quote.margin稅率改quote.tax加放率按紙張類(lèi)型分別配置。如果想按客戶(hù)等級(jí)打折可以在quote_header加一個(gè)客戶(hù)等級(jí)字段QuoteService在調(diào)用引擎前從sys_config讀對(duì)應(yīng)等級(jí)的毛利率覆蓋默認(rèn)值。這樣業(yè)務(wù)員在頁(yè)面上就能調(diào)不用等開(kāi)發(fā)發(fā)版。6.3 驗(yàn)證方法拿三張歷史報(bào)價(jià)單回歸每次改完計(jì)價(jià)規(guī)則我都會(huì)強(qiáng)制走一遍回歸流程從歷史報(bào)價(jià)單里挑三張覆蓋不同工藝路線(xiàn)、不同數(shù)量級(jí)的單子——一張純書(shū)刊、一張包裝盒帶模切、一張大批量傳單——用新代碼重新估算和原報(bào)價(jià)單逐項(xiàng)對(duì)比材料、印刷、覆膜各段差異。差異超過(guò) 1% 就查原因是配置錯(cuò)誤還是計(jì)算順序變了查清楚再讓業(yè)務(wù)員試用。從那以后我每次改計(jì)價(jià)規(guī)則都強(qiáng)制走一遍三單回歸這個(gè)習(xí)慣幫我堵住過(guò)好幾次報(bào)價(jià)算低的翻車(chē)。印刷行業(yè)毛利本來(lái)就薄一次報(bào)價(jià)失誤可能吃掉整月利潤(rùn)系統(tǒng)里任何計(jì)算口徑的改動(dòng)都不能只看單條用例通過(guò)就上線(xiàn)。希望這份項(xiàng)目解析能幫你在自己的詢(xún)價(jià)單上少踩幾個(gè)坑。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
豆花视频操逼网址| 炮色五月| 色噜噜国产精品视频一区二区| 国产高清MV操逼视频| 天天日天天爽| 男人精品区| 97在线欧洲| 亚洲天堂电影精品一区| 综合色好色| 3p国产欧美99热| 91挑色欧美| 嫖老熟女A片一二三区| 久久人妻熟女一区二区| 黄页av| 中文字幕丝袜美腿| 一区二区乱码福利| 99色色| 无码精品久久久天天影视 | 欧洲Au麻豆| 午夜欧美女人操逼| 98一区二区精品| 91丨九色丨国产丨人妻在线| 欧亚成人在线视频| 亚洲日韩av一区二区三区百合| 少妇天堂| www.成人无码| 国产亚洲人妻综合日韩 久久| 日韩激情小说一区二区| 国产一级高清免费观看| 亚洲 日本 不卡| 性爱视频久久| 91干熟女| 欧在线一二区| 日本精品一区二区不卡| 在线观看午夜婷婷久久久久清性观看| 亚州色图狠狠干| av天堂精品久久| 一级性爱视频免费在线| 啊啊啊免费视频| 视频二区美腿制服人妻欧美| 久久蜜桃一区二区| 青女偷拍网| 欧美美女在线高潮999| 国产精品乱人伊人网| 欧美一区二区三区日韩| www.久久制服糖| 国产精品91ai| 操逼逼无码| 资源在线观一 二| 伊人天天久久动态图| 久久成人东京热人妻| 中文字幕一区av| 岛国艾薇凹凸视频天堂| 91人妻素女| 久草看看看| 91熟女视频网| 91高清欧美| 久久超碰久| 欧美亚洲自拍另类人妻| 黄色大片视频在线免费看| 蜜臀99久久精品久久久懂爱| 97综合在线| a亚洲欧美色欲| 一区超碰一区| 免费亚洲国产精品久久一区| 超碰天天操| 九九久久99| 丁香五月偷拍| av天堂手机版追回 | www.久久| 91ise欧美| 亚洲一二三四区机械| 国模吧 一区二区三区| 久久久婷婷婷| 少妇三P| 中日韩久久久免费看| 色汉综合| 天天综合网网欲色| 伊人国产成人av网站| 日本幼女18+| 丝袜狠狠草尤物 91| 欧美日动态视频| 高清无码人妻久久久一区二区三区aⅴ| 久久久精| AV天堂国产| 自拍偷拍第26| 婷婷色五月激情| 5278欧美一区二区三区| 欧美国产一区二区三区麻豆传媒| 精品国产91久久久久久一区黄无| 91色香| 夜色91| 黄色av片三级三级三级免费看| 亚洲天堂综合AV| 熟女91网| 人妻81p| 日本三级久| 久久久91福利姬| 另类图片欧美激情综合| 99视频内射三四| 久久久久ab| 美女AV一区二区| 中文久久久| 能直接看AV的网站| 大香蕉久久| 久久9亚洲| 国产白嫩精品久久| 日韩精品-原创伙伴| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 日本成人A片免费看| 日本在线一二| 高树玛利亚无码流出| 午夜福利区| 中文乱码字字幕在线第5页| 欧美午夜视频免费观看| 夜夜免费视频| 大香网站| 中文区中文字幕免费看| 五月天激情视频| 欧美黑人日韩少妇色情| 精品日日人妻| 又大又白奶子| 南澳成人一级片在线播放| av天堂精品久久| 1204av韩国| 国产精品97超碰| 精品97久久| 日韩性爱视频免费在线 | 亚洲精品天堂久久A∨51成人漫 | 黄色区免费观看中文字幕| 91精品成人| 加勒比av网| 亚欧成人中文字幕一区| 日本不卡码黄色| 日韩电影免费网站麻豆视频| 午夜福利视频在线一区| 91成人无码| 97色在线观看| 在线观看无码三级少妇| 怡红院亚洲怡春院av| 免費黃色視頻觀看一| 欧美97av| 强奸乱伦日韩AV| 婷婷色香| 伊人天天久久动态图| 欧美有码激情视频一区二区三区| 亚洲国产精品无码AV久久久| 亚洲精品蜜桃久久久久久久| 人、人、摸,人、人、草| 麻豆成人AV| 香蕉一区二区三区在线视频| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 97超碰人妻| 九九综合久久| 国产又黄又爽| 午夜综合在线| 中文字幕少妇色| 成人无码欧美一级A片狼牙直播| 黑人猛交| 亚州伊人色综台| 日韩三级在线观看网站| AV中文字幕剧情1区2区3| av资源在线观看少妇| 97超碰中文在线| 成人丁香五月| 久久av无码| 欧美综合自拍亚洲综合图| 91熟女熟妇视频网站| 欧美手机在线综合| av资源在线播放天堂| 亚洲高清在线se| 又黑又大又粗 | 伊人成人中文字幕久久网| 日韩精品资源专区二区| 日韩人妻操B| 蜜桃久久一区二区| 国产亚洲人妻综合日韩 久久| 日韩av无码网站| 九九九九九九视频| 大香蕉一人在线| 欧美日韩色综合网| 91亚洲综合在线| 粉嫩小泬久久久一区二区| 啪啪91| 国产毛片片精品天天看视频| 中文字幕一二三av| 欧美躁死她一区二区| 欧美激情专区| 日韩精品资源| 后入合集| 日本黄色XXX| 午夜高清成人在线视频| 97这里有精品| 色99视频| 日本久久女同性恋视频| 日夜干射色啊| 骚熟女吞| 99热精品在线在线| 亚洲色五月| 最新国内自拍av免费| 91成人社区| 欧美香蕉视xxx| 强奸乱伦Av网| 乱伦熟女论坛| 国产成人在线观看网址| 凹凸精品熟女在线观看| 日韩免费中文字幕视频| 9997se| 骚女高跟AV在线| 国产av热热色| 五月丁香婷婷色| 欧美网站免费| 国产超碰人人爽人人做| 欧美婷婷五月天| 国产不卡免费在线视频| 一级黄色性爱裸体视频| 夜夜操夜夜高潮夜夜爽国产精品区| 91人妻PORNY九色大屁股| 青青草在线视频美女| 毛片电影一区二区三区| 青青草色情网站视频| 67194无码不卡| 国产性感骚丝袜在线| 一区二区三区在线美女| 高清无码在线播放网站| 亚洲国产成人精品无码专区| 丁香婷婷色五月| 午夜AV人气不卡| 粉嫩av久久一区二区三区| 97操97干| 亚洲欧美碰碰| 日韩免费av片高清无码| 中文字幕一区电影在线观看| 婷婷久久综合| 亚洲欧美日韩电影网站一区 | 日本东京热大香蕉a片| 欧亚成人在线视频| 亚洲se电影| 最近二区三区视频大全| 97干综合网| 91网站在线播放| 欧美狠狠弄| 99色色网| 精品人妻一区二区三区夜夜| 青青在线视频免费| 国产精品69久久久久久久| 天堂国产AV| 亚洲诱惑天堂 | 中文字幕一区二区视频在线观看| 草莓精品视频在线免费观看| 综合网色| 青青草日本中文字幕| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 绯色一区二区三区不卡少妇| 日韩亚洲中文字幕在线| 精品夜夜澡人妻无码| 在线看免费无码AV天堂的| 国产丝袜视频| 久久久啊啊| 97天天搞在线| 2019亚洲男人天堂| 亚洲色性| 蜜桃视频成a人v在线| 五月丁香婷婷啪啪| 亚洲综合校园春色| 波多野结衣之双飞调教在线播放| 88xx成人精品视频| 黄色片,com| 亚洲黄色影视| 日本精品九九九| 综合网亚洲1| 绯色一区二区三区不卡少妇| 99∨VTV| 一区黄二区黄| 学生妹天天看| 亚洲在线A| 日本操逼视频不卡直接放| 好吊妞转入那个网| 男人的天堂Va| 人人干人人操人人爱| 精品久久人妻成人网| 亚洲图片偷拍视频区| 97日视频| 日韩免费大片一级播放| 国产午夜福利专区综合| 色婷婷五月天| 中文字幕乱码人妻一区二区三区,99精品 | 翔田千里AⅤHD无码| 日本一区二区三区欧美日韩中文字幕| 2017大香蕉| 99色色网| 91丰满| 婷婷五月天av| 超碰97日韩| 手机看片1025| 揉揉揉夜夜| 久久久久亚洲Av无码专区老牛影视| 亚洲图片偷拍视频区| 久久超碰爱| 国产91丝袜 在线播放| 天天插天天操| 樱花草社区www中国| 9Ⅰ老熟女| 风间由美日韩欧美久久| 免费视频无码| 青草成人免费视频一COm| 五月天精品| 五月天激情国产综合婷婷婷| 亚洲AV免费在线| 国产精品色色| 欧美亚洲激情| 91中文精品日韩欧美在线| 亚洲 无码 偷拍| 久久超碰久| av三级电影在线播放| 日韩内射视频| 园内精品自拍视频在线播放| 97久操| 日本中文字幕在线视频| 精品91日日夜夜超清资源| 亚洲?V无码专区在线电影| 亚洲精品三| 神马午夜久久| 欧美少妇内射| 成人电影一区| 欧美,日韩,中文,另类| 100啪啪视频大全| 天天综合网91| 日本熟妇色熟妇在线视频播放| 国产精品无码论坛| 久久东京热久久| 天美麻花大全视频| 啊啊啊好多水| 日本在线一二| .精品人妻一区二区三| 亚洲丝袜99| 大香蕉亚洲中文| 摸奶性爱视频网站在线免费播放| 中文字暮97| 国产家庭乱伦表演| 欧美日韩色| 亚洲aV性爱| 亚洲不卡三级手机播放| 欧美一区二区三熟女剧情| 亚洲成人碰碰| 一区三区啪啪| 成年人黄色视频免费| 亚洲91综合| 国产精品久久发布| 国产成人无码网站在线视频| 怡红院久久老司机| 日本色婷婷| 欧美十八禁视频| 国产午夜精品一区二区三区牛牛| 婷婷激情啪啪| 欧美第一页| 青青操97| 双插性欧美一二三区| 肥臀熟女一区二区三区视频| 欧美在线视频观看一二三四区高清| 国产精品一区人妻精品阁在线| 约操熟妇| 欧美激情内射| 性色乱AV一区二区| 五月婷视频| 国产日韩欧美| 青青草国产亚洲精品久久| 九九久久99| 亚洲成人福利电影免费| 国内精品嫩模A∨私拍小视频| 国产精品白丝www| 无套内射性感少妇视频| 天天看天天日天天操| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 欧美午夜视频| 我爱大香蕉| 无码高清国产AV| 色欲久久久久综合网| 中出后入| 91欧美巨乳| 大香蕉欧美国产日韩高潮| 蜜臀亚洲中文| 亚洲天堂热| 亚洲少妇综合在线播放| 玖草在线视频| 久久久久97| 99后入| 人妻激情在线视频| 97se综合| 97国产精品在线观看| 青青草日逼视频| 操人妻少妇中文| 国产 日韩 欧美 人妻 熟女 中文| aaaa少妇高潮大片| 成人免费性爱视视| 亚洲熟妇A V黑人| 色九九久九九| 成人在线午夜视频一区| 精品人妻一区二区三区-国产| 欧美男女午夜啪啪| 国产精品第一区第一页| 欧美精品精品一区二区| 91精品国产91久久福利| 久热伊人| 色综合av综合久久| 日本高清视频xxxx| 日韩欧美经典在线观看| 日韩欧美成人午夜福利| 蜜臀视频网站| 懂色Av一区二区三区| 台湾佬中文娱乐网久久久久久久久久com| 日韩三级视频一区二区三区| 亚洲色图加勒比| 好吊妞转入那个网| 2024人人操人人摸| 台湾佬中文娱乐自偷自拍| 欧美在线l亚洲| 偷拍欧美激情| 欲色啪| 91男人天堂网| 少妇色综合| 久久爽爽精品| 欧美97av| 亚洲欧洲自拍| 顶级丝袜熟女一区二区三区| 久久av一级av少妇av高潮| 国产成人超碰在线| 国产大学生高潮在线播放| 奇米狠999| 日本三级韩国三级99| 2019AV天堂| 97超碰逼| 少妇蹲下露出大唇5| 亚洲黄色AV电影| 精品夜夜澡人妻无码AV| 天天夜躁日日躁狠狠2002| 97摸视频| 成年人三级黄色片视频| 尤物网址| 嗯嗯嗯嗯啊啊啊好紧好大| 天天影视综合网欧美精品| 岛国人妻少妇av在线观看| 2017天天操天天日| 亚洲图片另类| 大香蕉综合网| 国产怡红院| 97精品视频在线| 久久久久久加勒比| 亚洲无码一二三区| 超碰97玖玖爱| 日韩无码一区二区三区| 六月婷婷综合| 熟女高潮合集-永久久久-成人AV| yazhououmeizongya| 乱伦一二三| www.99热| 色大师网站www永久网站视频| 丝袜美腿校园春色| 久久久新亚洲AV| 欧美日韩黄片精品在线| 亚洲欧洲网站免费观看| 亚洲九九爱| 91香蕉视频在线观看免费| 国岛片视频| 五月丁香六月婷综合成人综合| 新视频sss国产| 久热伊人| 黄色免费网页无码| 一区二区不卡免费| 国产中文字幕曰本毛片| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 神马久久69| 浓厚中出中文字幕在线| 欧美亚洲影视| 久久AV无码1区2区3区| 97免费视频在线| 一区二区激情国产熟女| 黄页av| 色综合五月天| 加勒比东京热五月天天堂网| 国产精品一区二区校花| 亚洲精品97中文字幕| 欧美黑人精品在线播放| 欧美在线视频观看一二三四区高清| 九九精品无码专区免费| 大香蕉之青青草原| 国产操逼逼网| 亚洲限制级| 欧美综合亚洲综合| 中文激情网| 欧美亚洲特P| 青青草日本无码| 蜜臀va69| 久久天天性久久伊人| 成人情色综合网| 久久久A∨| 亚洲在线观看| www.人人cao| 香蕉精品二区二区| 夜夜高潮夜夜爽| 狠狠中文字幕| 国产又大又粗又长视频在线| 亚洲午夜福利在线影院 | 超碰99在线观看| 内射中国少妇高清视频免费视频| 国内精品伊人久久久久影院会| 天天欧美| AV99热18这里只有精品| 五月丁香色情| 成人性爱AV在线免费观看| 久久久91福利姬| 最新欧美色网| 综合欧美激情网| 欧美一区二区成人一卡| 熟妇女伦乱视频视频| av天堂5| 日韩有码专区| 欧美日韩国第一区| 日韩中文字幕视频在线观看| 亚洲牲交| 香蕉国产97| 五月天伊人| 国产黄色在线播放观看| 亚洲 欧美 另类 日韩 人妻一区| 手机看片1025| 精品久久久高清无码| 国产精品伦理| 99日免费视频中文字幕| 国产精品对白内射| 天天插天天操| 国产免a费看黄片在线| 欧洲综合色图| 啊啊啊啊嗯嗯在线久久久| 91超碰人人操| 五十路三级片| 玖玖无码超碰| 综合97亚洲| 国产日本久久免费精品| 婷婷色香伊人| 天天综合91入口| 素人播放一区| 色99视频| 思思久热在线精品66| 亚洲欧美校园| 九九热午夜欧亚国产视频| 曰本熟女视频| 天天干天天日天天射黄色大片 | 老色鬼成人精品视频下载大在线观看| 午夜精品视频777| 久久系列| 大香蕉中文在线| 99re黄| 蜜汁欧美| 强乱老妇中文字幕| 日本理论在线| 亚洲精品一区二区精华| 日韩97视频| 久草精品一区 | www.男人的天堂| 中出91视频| 草蕉影视亚洲无码| 亚洲综合888| 国产在线视视频有精品| 欧美亚洲国产91在线| 亚洲一区二区三区婷婷| 超碰78| 青青草中日韩在线| 人妻精品一区一区三区蜜桃91| 91久久久老司机| 美熟女逼导航AV操逼| 9997se| 殴美综合色88| 超碰 av 女人天堂| 久偷拍欧美日韩三区| 亚洲色图 图片| 久久精品视| 久操视频免费在线观看| 久久久久国产无av| 人人 操人人 操人人| 超碰97 线线 在现| 人人操人人精品影片| 国产农村妇女精品1区二区| 一牛一区二区三区久久| 茄子社区国产精品| 99re视频在线播放青草| 少妇久久久免费| 色九九九九九九| 亚洲视频二区| 亚洲情色 自拍| 伊人网高清| 亚洲精品国产日韩无码AV永久免 | 嗯,啊。舔我逼| 人妻91少妇| 日韩电影免费网站麻豆视频| 99色在线| 超碰97网址| 人妻人久久精品中文字幕| 99久在线精品99re8蜜桃| 福利视频香蕉免费一区二区在线| 日韩无码三级影院| 色婷婷激情| www.99热| 美女诱惑在线一区| 性色A∨91| 欧美性91| 操逼操逼逼操操逼91 | 韩国一级婬片A片AAAAA| 亚洲偷拍自拍在线视频| 97视频在线观看播放与子乱对白在线……| 天综合中文| 在线情色电影 91大| 好屌色综合| 九久9精品| 青青草国产欧美非洲黑人| 在线A日本| 丝袜熟女2P| 婷婷色香| 久久青青草在线视频| 91综合网站| 日本成a人v网站在线观看| 五月丁香六月综合缴清无码 | 日韩情色视频| 久久国产精品,久久国产| 久久久久熟女| 性爱乱伦网址| 天美传媒Av在线| 天天欧美| 99re国产中文字幕| 国产精品一级二级在线| 国产一区二区精品久久久不卡蜜臀| 无码人妻精品一区二区三区99不卡| 亚洲精品成人| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 成人性爱av.com| 91在线限制级| 91 欧美| 强奸乱伦大香蕉| 中文字幕乱碼在线| 欧美日韩中文视频播放| 天天干干天天干干| 91精品久久久久久77777| 96精品在线| 色欧美在线| 女欧美一区二三区| 人人考人人摸人人干| 98精品国产乱码久久久久久| 婷婷操视频| 亚洲棕合电彰| 家庭乱伦性爱av| 久久亚洲熟妇在线视频| 人妻在线大香蕉| 亚洲色图 图片| 伊人综合色网| 夜草网站| 天天精品| 狠狠干精品一二三四五六2022| 97色碰| 亚洲欧洲小说图片视频| 亚洲国产亚洲天堂| 国产 日韩,欧美 自拍| 91xingse| 日韩AV无码网站| 神马久久网| 91熟女视频网| 9久热| 日本不卡二区| 青青草十区九区爱夜| 久久97视频| 婷婷五月天福利| 亚洲男人天堂2| 手机看片1025| 96麻豆精品一区二区三区| 日韩天美| 在线黄色污污网站| 青青在线视频日韩欧美| 好淫网一二三视区| 精品国产91内射久久| 加勒比五月天| 97色婷婷| 1769国内精品视频| 97玖玖人妻| 一区操逼| AV色女综合| 色月天AV导航| 强奸乱伦Av网| 国产精品剧情| 天天综合麻豆视频| 男人的天堂不卡一区二区| 亚洲?V高清一区二区三区尤物| 伦理弟一页| 超清福利精品视频在线| 997色在线| 乱伦av国产| 91精品人妻| 日韩图区| 久久亚洲骚逼综合| 免费簧片在线观看| 草草草视频在线免费看| 久久9精品网站| 亚洲精品一二三四区| 黄片不用下载在线观看| 久9久9久9久9久9久9| 春色校园综合网| 国产精品免费视频不卡| 日本色色视频网站| 热热色91| 日韩三级网址| 国产Aα| 综合天天。| 天天干天天日天天射黄色片| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 亚洲色图殴美色图激情乱伦| 亚洲人成网站7777| 色制服丝袜夫妻av一区| 啊a一区在线| 无码操逼视频一下| 97中文字幕一区| 欧美一级久久久丰满| 天天干人妻| 大奶啊啊好爽| 思思热免费视频观看| 国产在线视频午夜精华在| 久久久免费高清中文视频| 欧美视频激情久久久久久| 国产精品久久久视频| 天天精品| 日韩性爱长视频免费| 成人日韩中文字幕| 天天弄天天操| 亚洲h片在线免费观看| 日韩综合色图| 性爱动态120秒| 中文字幕久久婷婷丁香五月天| 欧美亚洲韩国视频十五区| 亚欧美综合网。| 日本少妇va7777| 国产精品乱人伊人网| 大香蕉九九| 久操操| 1769一区| 亚洲一区日韩精品| 热久久无毒不卡| 91男同| 国产精品一二三免费网站| www.激情| 3p国产色噜噜一区| 欧美刺激色黄片免费看| 乱伦系列一区二区| 欧美日韩岛国大片在线观看| 日韩三级伊人| 超碰在线1234区| 国产日韩中文字幕欧美| 超碰人妻中文在线| 91GD.COM| 92性色国产午夜福利在线661| 天天干人人看综合| 性老妇一区二区三区| 玖玖视频在线资源一区二区三区| 婷婷精品视频| 韩国女主播青草在线| 综合网,亚洲,欧美| 国产精品熟女AV中文字幕在线播放| 韩国一级做A片免费的| 亚洲国产成人7777| 91美女小视频| 骚货操死你| 精品中文一区二区| 综合网少妇| 九色 蝌蚪 熟女自| 99久久9| 欧美日韩精品一区二区三区高清| 日韩欧美成人综合在线| 国产视频一区二区三区在线免费观看| 天天射天天色成人| 亚洲精品国产精品成人| 青娱乐黄色录像| 国产91精品在线免费| 影音先锋每日最新资源在线观看 | 中文字幕免费观看| 日本黄色天堂| 综合激情97 | 蜜臀久久精品久久久久视频| 欧美成人色| 蜜臀th| 97超色| 亚洲日韩美女丝袜美腿人妻视频| 久久性爱精品一区| 成人av性爱电影在线观看| 久久久久九九九| 911av网站免费观看| 亚洲图片欧美在线视频| 熟女自慰久久久| 久草线上视频免费看| 伊人午夜福利视频| 超碰97COm中文| 天天综合网入口~91| 欧美热图99| 国产精品一区av在线| 97视频在线| 国产亚洲日韩在线三区黑人| 欧美熟妇成人一区二区| 久久精品性| 亚洲中文人妻色| 97久久天天综合色天天综合色电影| 亚洲欧美清纯| 国产 日韩 另类 视频一区爱| 人人操人人操人人操人人操人人操人人人11.CM| 免费精品国偷自产在线在线 | 中文字幕AV片| 久久久偷拍| 26UUU欧美激情一区二区| 激情综合五| 蜜臀精品1区2区| 啊啊啊97视频| 国产精品夜夜| 逼逼逼逼操操操操操操操操操午夜剧场| 视频国产精品未满十八禁止在线观看| 丰满人妻一区二区三区四区| 伊人大香蕉在线| 亚洲精品蜜桃久久久久久久| 国产精品久久久久久久久久久久久久| 亚洲囯产精品女人久久久| 25国产精品免费观看| 天天操福利视频综合网站| 国产精品爱欲| 99热超碰| 97五月天| 男人下部插入女人下部 | 97操b| 国内毛片无遮挡国产| 欧美性巨大╳╳╳╳╳高跟鞋| 国产精品久久久久无码AV会牛| 天堂九九九九九九九九九| 麻豆福利视频导航| 91AV天美在线视频| 亚洲午夜精品久久久中文影院| 亚洲乱码国产乱码精网站| 91国产大片| 大二网站亚洲| 囯产操逼片| 蜜臀一二三区| 顶级丝袜熟女一区二区三区 | 翔田千里AⅤHD无码| 色婷婷综合久久中文字幕雪峰| 囯产精品久久久久久久久久梁医生| 国产精品福利视频播放| 欧美日韩一干二干| 亚洲图片欧美| 日韩欧美中文| 亚洲综合九| 加勒比海色香蕉婷婷| 又黑又大又粗| 人人操 欧美| 91|九色|国产熟女| 久久线上视频免费看| 99久视频| 久久伊人最新网址视频| 九九久久首页| 久久精品久久九九精品| 国产女主播视频在线观看| 亚洲av噜噜噜噜噜噜| 欧插网站| 97精品一区二区视频| 久久精品国产久精国产| 亚洲综合97| 一本正道久久熟女| 91精品导航| 久久久精久久久| 日韩A优精品在线观看| 天天日天天操VV| 久久久久久国产精品免费网站| 亚洲丝袜二区在线| 伊人AAA| 摸奶性爱视频网站在线免费播放| 黑人中出21连凳花野真衣| 色成人Www精品永久观看| 欧美亚洲成人在线一区二区三区| 中文字幕熟女人妻丝袜| 日韩精品区二区三区不卡| 国产精品久久久 | 999久久芭蕾| 九月丁香婷婷| 成人三级片一区二区三区视频| 国产精品一区二区三区在线密挑| 成人午夜高潮av猛片| 精品一区二区啪啪啪| 久久久久免费看少妇A片特黄| 精品久久艹| 一类无码操逼视频| 全国男人天堂网| 婷婷五月花| 久久久久久九| 成人五月天色网| 人妻熟女午夜精品在线| 亚洲男人综合| 国产精品suv一区| 国产色呦呦| 黄人人操人人操| www.高清无码诱惑一区.com| 8050无码八戒| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊 | 精品久久大胆人体| 欧美日韩性爱视屏免费看了| 最新av中文字幕高清| 黄网站黄视频网站进入口| 北约熟女超碰| 国产精品高潮久久久无码| 女同亚洲欧美一二三区久久电影| 在线人人人人人人精品超| 91综合天天看| 国产熟妇一区二区| 91丨九色丨东北熟女| 男女真人网18| AA特级绝黄| www熟女乱伦com| 国产精品一区二区三区免费视频| av中文在线| 91久久免费视频互動交流| 亚洲欧美setu| 操一区| 影音先锋中文字幕日本好一区二区| 欧美中文综合| 久久精品国产亚洲av水密被窝| 一本久久精品中文字| 九九黄色网| 亚洲少妇在线观看| 91男女| 欧洲精品久久| 亚州再线| 激情五月婷| 欧美大香蕉久| 麻豆一区二区三区在线看 | 安微少妇操BBB| 探花一区在线| 东京热毛片177b2viP| 久久久久9久久久久| 国产精品一区二区在钱播放| 性爱精品一区| 国产中文精品一区二区在线观看| 亚洲综合20p| 在线视频一区二区传媒| 婷婷激情四射| 中日高清无码操逼视频| 99热9| 天无日色综合| 亚洲综合色网| 唐山老熟妇露脸啪啪叫| 国产又黄又爽又刺激久久久久久| 欧美激情在线观看视频| 欧洲精品人妻| 色网在线| 翘臀vidoes| 激情五月天插| 色网站导航大全| 国产亚洲深夜激情| av毛片aaaaa免费看| 9色国产精品一区粉嫩 | 中文啪啪视频| 国产精品探花在线| 日本一级特级毛片视频| 天天日天天操天天射河南省| 网友自拍第一页| 久热在线精品免费观看| 日韩美女啪啪一区| 黄片不用下载在线观看| 五月天色图影视| 嫩草影院在线观看精品| 日本韩国国产精品一区| 国产一线二线三线av| 亚洲在线欧美| 操碰97| 久久久亚洲熟妇资源| 婷婷五月天色网| 九九九不卡| 内射夫妻三片| aaaa黄片| 97色色视频| 9l视频自拍9l九色成人| αⅴ天堂| 蜜桃视频成a人v在线| 九九RE视频在线精品| 国产极品美女高潮无套在线观看| 中日韩免费看男女操逼大全| 色九久| 精品少妇人妻av久久免费| 亚洲综合在线视频| 亚洲国产一区二区三区在线| 色情成人五月天| 91天天日| 欧美黑人猛交春色影视大全| a人片中文字幕一区二区| 久热免费视频| 9 7超碰在线免费观看| 欧美天天影院| 伊人国产AV| 日本欧美韩国国产在线| 91麻豆天美国产欧美高潮| 精品欧美不卡在线播放| 欧美日韩性爱视屏免费看了| 亚洲精品美女久久久久久久久| 欧美色图片91| 超碰久久.com| 久久伊人亚洲AV无码网站| 日本在线一二| 伊人AAA| 免费人人搞97| 97色视频在线| 精品人妻少妇| 伊人网免费视频| 婷婷五月色| 亚洲国产欧美日韩精品一区二区三区,国产一区二区三区在线看片,欧美性猛交 XXX | 欧美午夜色妇色鬼| 蜜桃臀一区二区三区久久| 亚洲限制级| 久久骚少妇| 日韩三级伦理中文字幕| 久久xx| 91麻豆天美国产欧美| 99色悠悠| 91熟女丨91老女人| 色呦呦呦在线观看视频| www99热| 性生活性生大爱77AV国产| 午夜视频久久久久一区| 亚洲熟妇乱女区二区三区| 男人的天堂久久狠| 精品一区二区三区丰满熟女-亚洲欧美一区| 久久产精品一区二区三区电影| 亚洲码在线中文在线观看| 家庭乱伦网站国产| 韩日精品福利视频一区不卡在线免| 欧美日韩1234| 日夜啪电影| 91精品少妇搡搡搡| 久久二| 亚洲老熟妇xxx| 97 超碰 人人做 人人爱| 欧美激情亚洲情色| 亚洲人精品久久久| 日韩精品国产一区二区| 久操大香蕉手机视频在线看| 二三四区精品| 视频二区美腿制服人妻欧美| 国产一区二区在线播放量| 精品然女一区二区| 欧美综合中文| 中文字幕精品一区二区精品| 男人成人黄色视频在线观看免费下载| 伊人性在线视频| 天天爽夜夜爽夜夜爽精| 久久久草成人网站久久久草成人久久久草久久久 | 日日AV加勒比| 久久精品日韩| 18禁久极品美女久久哦哟呀!| 亚洲中文国际强奸字幕| 91亚.色| 久草电影网| 日韩无码精品综合久久| 精品国产污一区二区三区| 最新亚洲黄色免费电影| 久草资源在线视频官方总站日韩丝袜美腿 | 日韩精品大香蕉伊人在线| 怡红院久久老司机| 久久久久13| 91熟女视频| 热久久国产精品视频大陆精品| 日韩一性一交一A片俄罗斯| 人人操天天爽| 高清无码 国产精品| 天天天天天天天天综合| 高清国产成人无码| 黑丝制服中文字幕| 亚洲一区二区精品福利| 亚洲精品久久久久久| 日韩精品黄片免费观看| 狠狠躁日日躁夜夜躁A| 日本一区二区三区四区免费观看| 亚洲欧美97√| 91neishe| 人人做,人人操,人人摸| 嗯嗯嗯啊啊啊操的我好爽| 一级aaaaa欧美中文字幕录像片| 欧美日韩美女精品久草一区二区三区| 久久青青草原免费视频| 亚洲熟女乱色一区二区三区久久久| japan日本高清乱xxxx| 热热色91| 久久久久久久久久久久欧美日| 午夜小电影在线插入淫高潮| A啊啊在线观看| 九九在线视频| 91痴汉| 夜夜騷av、一區二區| 久久婷五月| 久久久久久久久久精| 国产精品国产自产高清AV| 99热这里都是精品| 欧美综合加勒比在线| 欧美 亚洲 偷拍自拍| 色色97爱| 二对二中文字幕。| 白天啪啪晚上啪啪视频| 3028国产精品| 97免费视频在线| 动漫av中文| 99热99re超碰精品| 国产精品亚洲一区二区三区四区| 亚洲男人的天堂va亚洲男人社| 久久久久久久久久久久九| 国产亚洲一黄| 手机在线中文字幕国产 | 精品中文字幕第一页| 天天香香欲综合| 日本欧美中文字幕| 亚洲影院小综合| 日韩成人性爱AV| 国产精品高清2021在线| 黑人综合网| 国产无遮挡| 午夜亚洲国产理论秋霞| 青青草久久在线| 熟妇人妻一区二区 | 搞中出视频在线观看| 国产色产精品在线观看| 狠狠躁天天躁日日躁| 亚洲国产尤物yw在线观看| 欧洲黄色网| 久久后入制服| 艾草av| 色播五月丁香| 东京热免费视频| 日韩免费福利在线观看| 国产999精品久久久| 亚洲高清视频在线观看| 国产精品青青草| 日本人人操人人操| 国产白嫩漂亮KTV在线| 舔足天天操天天射| 日本熟妇色熟妇在线视频播放| 99爱久久视频频| 久操精品网| 91GD.COM| av在线一区二区三区| 亚洲国产精品无石码久久| 老女人碰碰在线碰碰视频| 日韩乱插| 偷拍三区| 老熟女网站| 久久久不卡区一区二区三区久久久| 青青草吊丝| 诱惑人妻欧美一区在线播放| 亚洲情色在线| 婷婷丁香六月| 在线一道啪| 91精品亚洲内射孕妇| 国产偷人伦激情在线观看| 成人小说另类在线| 国产精品亚洲无码| 天天躁日日躁XXXXYY| 91久久久亚洲|